4.6.9.10 Операции чтения и записи команд/данных
Рисунок 86. Запись команды/данных в ЖКИ
Рисунок 87. Чтение данных из ЖКИ
Пример программирования ЖКИ стенда SDK-1.1 приведен в подразделе
6.5.
4.7 Внешняя память программ и данных
Внешняя память программ и данных стенда SDK-1.1 (см. подраздел 4.4.2)
– статическое ОЗУ (SRAM), имеющее страничную организацию и
предназначенное для размещения пользовательских программ и данных.
Подключается к МК ADuC812 по системной шине (как и ПЛИС).
Так как МК ADuC812 имеет Гарвардскую архитектуру, то доступ к
внешней памяти по чтению команд и данных организован по-разному.
218
Используется одна и та же шина адреса и данных, а шина управления
отличается.
Сначала рассмотрим цикл чтения команды из внешней памяти программ:
Рисунок 88. Интерфейс подключения внешней памяти программ к МК ADuC812
В такой схеме для портов P0 и P2 должна быть выбрана альтернативная
функция (т.е. не порты ввода-вывода), при этом порт P0 превращается
мультиплексированную шину адреса/данных. Сначала через P0 передается
младший байт счетчика команд, который запоминается регистром-защелкой
(Latch) по синхроимпульсу ALE (Address Latch Enable). Через P2 передается
старший байт счетчика команд. Далее вырабатывается сигнал PSEN (Program
Store Enable), по которому из внешней памяти программ считывается команда в
ADuC812 через P0.
Рисунок 89. Диаграмма цикла чтения команды из внешней памяти программ
Рассмотрим схему подключения внешней памяти данных объемом 16 Мб
(больше 64 Кб) к МК ADuC812:
219
Рисунок 90. Интерфейс подключения внешней памяти данных (16 Мб) к МК ADuC812
В такой схеме подключения используется два регистра-защелки. Цикл
чтения байта данных организован следующим образом: через порт P0
выставляется младший байт адреса (содержимое SFR-регистра DPL), а через
порт P2 — старший байт адреса (регистр DPP). Каждый байт адреса
сохраняется по сигналу ALE в соответствующем регистре-защелке. Далее через
порт P2 выставляется средний байт адреса (регистр DPH), и по сигналу RD
ADuC812 читает байт данных через порт P0.
Рисунок 91. Диаграмма цикла чтения байта из внешней памяти данных
220
Если второго регистра-защелки нет, то объем доступной внешней памяти
данных равен 64 Кб.
Цикл записи байта во внешнюю память данных выполняется аналогично,
только вместо сигнала RD используется сигнал WR, а через порт P0 передается
записываемый байт.
Таким образом, для обращения к внешней памяти данных и к памяти
программ используются одни и те же шина адреса и шина данных, но разные
управляющие сигналы. Для чтения памяти программ вырабатывается сигнал
PSEN (Program Store Enable), а для чтения памяти данных вырабатывается
сигнал RD. Для записи информации в память данных вырабатывается сигнал
WR. То есть память программ доступна только для чтения, а память данных
доступна и для чтения, и для записи любой информации, записанной в
двоичном коде.
Рисунок 92. Диаграмма цикла записи байта во внешнюю память данных
221
Do'stlaringiz bilan baham: |