Часть 6. Функциональные блоки.

advertisement
Встроенные Системы
Часть 6. Функциональные
блоки
Кафедра Информатики, мат-мех СПбГУ
Copyright © 2004 Victor Vengerov vvv@oktetlabs.ru
http://www.oktetlabs.ru/~vvv/es-2004
Контроллер Памяти
Интерфейс с различными типами
ОЗУ, ПЗУ, а так же с
периферийными устройствами
Декодирование адреса
Конфигурируемое время доступа
Конфигурируемая ширина доступа
Разновидности Памяти
SRAM (Synchronous RAM)
DRAM (Dynamic RAM)
SDRAM (Synchronous DRAM)
ROM (Read-Only Memory)
PROM (Programmable ROM)
EEPROM (Electronically Erasable PROM)
Synchronous Flash
Интерфейс памяти
Базовые сигналы:





A[0:N] – Address
D[0:M] - Data
CS - Chip Select
OE – Output Enable
WE[0:K] – Write Enable
Flash Memory
Память разбита на блоки
Блок можно стереть (все биты
переходят в состояние «1»)
После стирания допустим переход
из «1» в «0», но не наоборот.
Синхронная Память
Допускает «постраничное» обращение:
доступ к странице происходит
последовательно, без отдельного цикла
адресации на каждое слово.
В сочетании с кэшем или DMA
обеспечивает улучшение
производительности.
Synchronous flash – допускает страничное
чтение – эффективно при исполнении
кода прямо из flash памяти.
Периферийные устройства
как память
Некоторые периферийные
устройства могут подключаться
через интерфейс памяти.
Доступ к регистрам устройств
осуществляется как к памяти.
Управление Потребляемой
Энергией
Изменение тактовой частоты
Изменение напряжения питания
Отключение неиспользуемых блоков
Изменение режимов работы блоков
Режим сна


Работа процессора приостанавливается
Выход из режима сна по наступлению
внешнего отслеживаемого события
Watchdog
Блок, независимо отслеживающий
нарушение работы системы и
перезапускающий ее.
Обычно, перезапуск осуществляется
если в течении контрольного
времени в регистры не была
записана ключевая
последовательность.
GPIO – General Purpose I/O
Некоторые выводы микросхемы
могут быть сконфигурированы как



Входные (состояние может быть
прочитано)
Выходные (состоянием можно
управлять)
Линии прерываний (изменение
состояния приводит к возникновению
прерывания)
Мультиплексирование
Выводов
Хотя корпуса современных микросхем
могут иметь до нескольких сотен
выводов, это ценный ресурс: внутренние
возможности богаче.
Часто часть выводов может быть
использована по разному, в зависимости
от приложения.
Часто функция вывода микросхемы
может быть выбрана программно.
Таймер
Генерация временных меток
Генерация импульсов требуемой
формы и частоты
Источник периодических
прерываний
Подсчет импульсов
Таймер – регистровая
модель
Регистр управления




Выбор режима работы
Разрешение/запрещение
Выбор источника импульсов
Установка предварительного делителя
Счетчик
Константа перезагрузки/барьер
RTC - Часы Реального
Времени
Энергонезависимы
Обычно имеют независимый
генератор импульсов
Поддерживают текущее
астрономического время (день,
месяц, год, часы, минуты, секунды)
Прерывание по будильнику
RTC - Часы Реального
Времени
Энергонезависимы
Обычно имеют независимый генератор
импульсов
Поддерживают текущее
астрономического время (день, месяц,
год, часы, минуты, секунды)
Прерывание по будильнику
Иногда совмещены с энергонезависимой
памятью (NVRAM)
Контроллер Прерываний
Обеспечивает мониторинг линий
прерываний и формирует запрос
прерывания процессору.
Определяет номер прерывания, для
обработки.
Обрабатывает приоритет
прерывания.
Контроллер Прерываний –
Регистровая Модель
Регистр ожидающих прерываний
Регистр запрета прерываний
Регистры уровня и приоритета
Регистры подтверждения
прерываний
Регистр номера текущего
прерывания
Контроллеры Периферийных
Интерфейсов
UART
Шины









I2C
PCI
PCMCIA, Compact Flash
IDE
SCSI
AC’97
USB
SPI
MMC
Коммуникационные




Ethernet
HDLC
ATM
IrDA
Parallel I/O
LCD/VGA display
ЦАП/АЦП
Keypad (клавиатура)
Контроллеры – Общие
Принципы
Определена регистровая модель
Контроллер находится под
управлением ПО, но функционирует
независимо
Контроллер формирует запрос
прерывания при наступлении
значимых событий
UART
UART – Universal Asynchronous
Receiver/Transmitter
Типовой контроллер – 16550 (его
разновидности часто используются)
16550 UART – Регистровая
Модель
16550 UART – Регистровая
Модель
Download