- •Проектирование микроконтроллеров
- •Isbn 5-7629-0812-7 сПбГэту «лэти», 2008
- •Список использованных сокращений
- •1.Цели и задачи курсового проектирования. Уточнение задания
- •2.Разработка структурной схемы контроллера Типы разрабатываемых контроллеров-имитаторов
- •2.1.Схемы алгоритмов функционирования контроллеров
- •2.2.Варианты заданий на курсовой расчет
- •2.3.Спецификация входных и выходных сигналов контроллеров
- •2.4.Параметры радионавигационного сигнала
- •2.5.Форматы пакетов управления и пакета «старт»
- •2.6.Упрощенная структурная схема контроллера
- •3.Разработка функциональных блоков контроллера
- •3.1.Блок cpu
- •3.2.Блок памяти
- •3.3.Блок приема пакетов управления
- •3.4.Входные сигналы параллельного интерфейса блока приема управляющих пакетов и пакета «старт»
- •3.5.Последовательный интерфейс для приема пакетов управления
- •3.6. Блок индикации
- •3.7.Электрический расчет драйверов сид-дисплея
- •3.8.Особенности построения сид-индикатора на приборах с оа
- •3.9.Блок формирования временного паттерна
- •3.10.Реализация интерфейса для передачи дельта-импульсов
- •3.11.Табличное представление временного паттерна
- •Другие варианты построения таймера временного паттерна, встречающиеся в курсовом расчете
- •3.12.Селектор адреса
- •4.Уточненная структурная схема контроллера
- •5.Разработка программного обеспечения
- •5.1.Программный модуль курсового расчета
- •5.2.Структура данных модуля
- •5.3.Конструирование программного модуля
- •6.Описание шаблонов программного обеспечения, представленного на cd
- •Последовательность действий для запуска исполняемого модуля программы
- •Варианты управления контроллером
- •6.1.Варианты шаблонов формирования временного паттерна
- •6.2.Варианты шаблона "Динамическая индикация"
- •Список иллюстраций Список таблиц
- •Список литературы
- •Типы схем
- •Проектирование микроконтроллеров
- •197376, С.-Петербург, ул. Проф. Попова, 5.
3.12.Селектор адреса
В табл. 3.7 представлена сводная информация по функциональным блокам, определенным на рис. 2.12.
Кроме указанных в задании двух элементов памяти, в табл. 3.3 представлен третий, который входит в состав прибора 8755 и, в соответствии с заданием, должен быть использован для построения устройства ввода-вывода пакетов управления (IO1). Таким образов, в пространстве памяти контроллера должны быть расположены три прибора (объемом 32 Кбайт, 2 Кбайт и 256 байт). Поскольку прибор 8755 кроме памяти типа ROM содержит еще регистры пространства УВВ, а прибор 8155 кроме памяти также содержит регистры УВВ, то построение селектора адреса целесообразно выполнять для двух пространств одновременно.
Таблица 3.10. Память и устройства ввода/вывода контроллера
Функциональные блоки |
Память |
Размер |
Адрес |
УВВ |
Размер |
Тип ИМС |
CPU |
|
|
|
|
|
|
ROM |
Да |
32 Кбайт |
С адреса 0000h |
|
|
27С256 |
RAM |
Да |
256 байт |
Любое |
|
|
8155 |
Индикаторное устройство |
|
|
|
Да |
2 байт |
555ИР23 |
Устройство ввода пакетов управления (IO1) |
|
|
|
Да |
4 байт |
8755 |
Таймер временного паттерна |
|
|
|
Да |
6 байт |
8155 |
Устройство формирования дельта-импульсов (IO2) |
|
|
|
Да |
2 бит |
8155 |
Типичным решением построения селектора адреса является использование микросхемы адресного дешифратора, например 555ИД7. Многочисленные примеры использования этого прибора приведены в [3]. Учитывая двухуровневую дешифрацию адреса в микросхемах памяти: внутреннюю, использующую дешифраторы самой микросхемы, и внешнюю, в качестве которой может применяться дешифратор адреса, можно полагать, что на входе внешнего дешифратора должны быть использованы свободные от внутренней дешифрации линии адреса (табл. 3.8).
Из табл. 3.8 видно, что общие незанятые линии адреса, которые могли бы использоваться для внешней дешифрации, представлены только одной линией A15, поэтому прямое использование внешнего дешифратора невозможно. Выход из этой ситуации существует, если для селекции памяти типа ROM использовать линию адреса A15 (CSROM# = A15 = 0), а внешний дешифратор всех остальных элементов расположить в пространстве, для которого A15 = 1 (8000h – FFFFh). Тогда пространства 32 Кбайт хватит для расположения 16 блоков по 2 Кбайт (2 Кбайт размер самого большого оставшегося элемента памяти).
Таблица 3.11. Адресные линии, используемые для внешней дешифрации
Тип прибора |
Адресные линии |
Объем, байт |
|||
занятые |
свободные |
||||
27С256 |
A0, A1, …, A14 |
A15 |
32 К |
||
RAM 8155 |
A0, A1, …, A7 |
A8, A9, …, A15 |
256 |
||
8155 |
A0, A1, …, A10 |
A11, A12, …, A15 |
2 К |
||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
а |
|
б |
Рис. 3.35. Схема дешифратора адреса и карта памяти |
На рис. 3.22 представлена схеме внешнего селектора адреса (а) и карта памяти (б).
Карта пространства ввода-вывода может быть легко получена, если учесть, что при обращении к портам ввода-вывода используется только один байт (8 разрядов) шины адреса. Учитывая совмещенность некоторых узлов в приборах 8155 и 8755 и их расположение внутри непрерывного пространства, карты памяти и УВВ можно представить в виде табл. 3.9.
Как видно из табл. 3.9 модули памяти 27С256 и ROM 8755 расположены в соседних областях, чтобы получить непрерывное пространство и не создавать дополнительных трудностей программирования.
Таблица 3.12. Адреса модулей и устройств проектируемого контроллера
Функциональные блоки |
Память |
УВВ |
Сигнал выбора |
||
Размер |
Адрес |
Адрес |
Размер |
||
1 |
2 |
3 |
4 |
5 |
6 |
Модули памяти |
|||||
ROM (27С256) |
32 Кбайт |
0000h-7FFFh |
|
|
CSROM# |
RAM (RAM 8155) |
256 байт |
8800h-8FFFh |
|
|
CS88# |
ROM (ROM 8755) |
2 Кбайт |
8000h-87FFh |
|
|
CS80# |
Окончание табл. 3.9
1 |
2 |
3 |
4 |
5 |
6 |
|
Устройства ввода-вывода |
||||||
Индикаторное устройство |
Регистр данных 555ИР23 |
|
|
90h |
1 байт |
CS90# |
Регистр разрядов 555ИР23 |
|
|
98h |
1 байт |
CS98# |
|
Таймер прибора 8155* |
|
|
8Ch…8Dh |
2 байт |
CS88# |
|
Устройство вводов пакетов управления (IO1) |
Регистры данных (ports A, B прибора 8755**) |
|
|
80h…81h |
2 байт |
CS80# |
Таймер временного паттерна |
Регистры временного хранения (ports A, B, C прибора 8155*) |
|
|
89h…8Bh |
3 байт |
CS88# |
Устройство формирования дельта-импульсов (IO2) |
(port C прибора 8155*) |
|
|
8Bh |
2 бита |
CS88# |
* Для прибора 8155 не учтен регистр RGCW, который занимает 1 байт со смещением 0 (адрес в пространстве УВВ 80h).
** Для прибора 8755 не учтены регистры DDRA и DDRB, которые используются для задания направления передачи и занимают по 1 байту со смещением 2 и 3 (адреса 82h и 83h соответственно).
