Информационная емкость СОЗУ определяется по формуле:
Необходимое быстродействие ОЗУ определяется по временным диаграммам ЦП. Для МК ATmega162 время цикла записи (чтения) tС равно 3ТМТ, где ТМТ - длительность машинного такта.
При частоте кварцевого резонатора fтг = (8-16) МГц время Тмт = 345нс.
Время цикла микросхемы памяти tcy должно удовлетворять неравенству:
В качестве микросхемы ОЗУ выберем К537РУ17, поскольку она будет (прогнозируемо) наименее избыточна для данного случая. Для данной микросхемы памяти
.Рассчитаем число БИС ОЗУ в ряду матрицы:
где nБИС - разрядность выбранной микросхемы памяти. Квадратные скобки здесь и в дальнейшем показывают, что результат необходимо округлить до большего значения.
Определим число разрядов матрицы:
где NБИС - количество ячеек памяти выбранной микросхемы памяти.
Общее число БИС ОЗУ равно
Таким образом, число корпусов ОЗУ = 3.
Определяем токовую IDL и IDH и емкостную СD нагрузки для схем ввода информации в ОЗУ по формулам:
IDL = mc * IIDL = 3 * 3,2 = 9,6 мА
IDH = mc * IIDH = 3 * 2 = 6 мА
CD = mc * CID + Cm = 3 * 5 + 20 = 35 пФ
где IIDL, IIDH - входные токи логического 0 и логической 1 по информационным цепям выбранной БИС ОЗУ. CID - входная емкость по информационному входу БИС ОЗУ.
Определяем токи нагрузки и емкостную нагрузку для схем ввода адреса по адресным цепям БИС ОЗУ по формулам:
IAL = m * IIAL = 3 * 3,2 = 9,6 мА
IAH = m * IIAH = 3 * 2 = 6 мА
CA = m * CIA + Cm = 3 * 5 + 20 = 35 пФ
где IIАL, IIAH - входные токи логического 0 и логической 1 по адресным цепям выбранной БИС ОЗУ. CIА - входная емкость по адресному входу БИС ОЗУ.
Определяем токи нагрузки ICSL и ICSH и величину емкостной нагрузки СCS по цепям выбора микросхем (CS) по формулам:
ICSL = mp * IICSL = 1 * 3,2 = 3,2 мА
ICSH = mp * IICSH = 1 * 2 = 2 мА
CCS = mp * CICS + Cm = 1 * 5 + 20 = 25 пФ
где IICSL, IICSH - входные токи логического 0 и логической 1 по цепям выбора (CS) БИС ОЗУ. CСS - входная емкость по цепям выбора (CS) БИС ОЗУ.
Рис. 3 Условное графическое обозначение ОЗУ К537РУ17
Наименование выводов:
A0 ÷ A12 – адресные входы.
W/R – запись/чтение.
CS1, CS2 – chip select, чип выбора.
CEO – разрешающий выход.
D0 ÷ D7 – шина данных ввода/вывода.
ОЗУ представляет собой статическое асинхронное оперативное запоминающее устройство.
Режимы работы:
W/R | CS1 | CS2 | OE | A0..12 | D0..7 | Режим |
Х | Н | X | X | Адрес | Данные | Хранение |
Х | Х | L | Х | Хранение | ||
Н | L | Н | H | Запрет выхода | ||
Н | L | H | L | Чтение | ||
L | L | Н | Н | Запись | ||
L | L | Н | L | Запись |
Х – любая комбинация уровней либо L, либо H
2.3 Описание адаптера параллельного интерфейса
Адаптер параллельного интерфейса служит для расширения разрядности шины данных, а также приводит к повышению нагрузочной способности.
Адаптер параллельного интерфейса i8255 имеет три восьмиразрядных порта А, В и С с 3-м состоянием. Причем порт С разделен на две тетрады. Все три порта могут быть запрограммированы на ввод или вывод, причем каждая тетрада порта С может быть запрограммирована раздельно. Данные поступают в АПИ через шину данных D0…D7. С помощью сигнала CS осуществляется выбор кристалла, если сюда поступает низкий уровень сигнала, то порты будут установлены в 3-е состояние. А1, А0 – младшие разряды адреса, они служат для адресации внутренних регистров адаптера. Если количество линий ввода и вывода превышает возможности адаптера, то следует применить несколько адаптеров.
Рис. 4 Условное графическое обозначение АПИ i8255
Наименование выводов:
D0 ÷ D7 – шина данных.
CS – выбор кристалла, активный 0 – адаптер подключен к PPI, если 1 – адаптер имеет третье высокоимпедансное состояние.
A0, A1 – младшие разряды адреса, служат для адресации внешних регистров адаптера.
WR – запись, поступает от МК.
RD – чтение, поступает от МК.
RESET – системный сброс.
PA0 ÷ PA7 – 8-разрядный двунаправленный порт A с третьим состоянием.
PB0 ÷ PB7 – 8-разрядный двунаправленный порт B с третьим состоянием.
PB0 ÷ PB7 – разделен на 2 части, 8-разрядный двунаправленный порт С с третьим состоянием.
Адаптер имеет три режима роботы. Рассмотрим некоторые особенности каждого из режимов:
Режим 0 применяется в программно-управляемом вводе-выводе с медленно действующими периферийными устройствами. В режиме 0 базового ввода-вывода могут работать все три порта, причем порт С разделяется на два независимых четырехбитных порта.
Режим 1 - стробируемый ввод-вывод. Он предназначен для однонаправленных передач данных, инициируемых прерываниями. Собственно передача слов данных осуществляется через порты А и В, а шесть линий порта С используются для управления обменом. Данный режим предоставляет пользователю следующие возможности: запрограммировать один или два параллельных порта с линиями квитирования и прерывания, каждый из которых может работать на ввод или вывод; при использовании только одного порта остальные 13 линий запрограммировать в режиме 0; при определении двух портов в режиме 1 оставшиеся две линии порта С использовать для ввода или вывода в режиме 0. На рис. 5. приведено расположение линий порта С при вводе информации (рис. 5, а) и при выводе информации (рис. 5, б) через порты А и В, где
IO - ввод или вывод в зависимости от значения бита D4 слова приказа (СП).
IBF - ввод в буфер. Устанавливается в 1 и поддерживается в течении всего времени от записи данных ( в А или В ) до момента их чтения из МП.
STB - строб приема. По данному сигналу информация записывается в выбранный порт.
INT - запрос прерывания. Информирует МП о готовности данных к выводу. Подается на вход запрос прерывания ЦП.
OBF - выходной порт полон. Сигнализирует ВУ, что данные находятся в порту А или В.
ACK - подтверждение. ВУ подтверждает прием данных.
Режим 2 - совместный ввод - вывод с квитированием. Осуществляется только по порту А, при этом порт А используется для двунаправленной передачи данных, канал С - выполняет функции управления (квитирования) и прерываний. Порт В можно запрограммировать на ввод или вывод в режимах 0 или 1.
На рис. 6. Приведено расположение линий порта С в режиме 2.
Рис. 5 Распределение линий порта С: а) при вводе информации в порты А и В; б) при выводе информации.
Рис. 6 Расположение линий порта С в режиме 2.
2.4 Программирование адаптера параллельного интерфейса
Программирование адаптера заключается в загрузке слова приказа (СП) в регистр управляющего слова ICW1.
Формат данного регистра представлен ниже
D7 D0
1 | M1 | M0 | BB | BB | M | BB | BB |
Описание битов:
· D7 – признак ICW1
· D6, D5 – режим работы для группы А
· D4 – ввод/вывод по порту А (вывод – 0, ввод – 1)
· D3 – ввод/вывод по порту C4…7 (вывод – 0, ввод – 1)
· D2 – режим работы для группы В
· D1 – ввод/вывод по порту B (вывод – 0, ввод – 1)
· D0 – ввод/вывод по порту C0…3 (вывод – 0, ввод – 1)
В данном случае слово приказа можно составить двумя способами:
ICW1=10011110=9Еh
D7 D0
1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 |
ICW1=10110011=В3h
D7 D0
1 | 0 | 1 | 1 | 0 | 0 | 1 | 1 |
В первом случае:
- в режиме 0 задействовано всего 10 входов – 8 входов порта А и 2 входа порта С, которые работают на ввод;
- в режиме 1 задействовано всего 8 входов – 8 входов порта В, которые работают на ввод.
Во втором случае:
- в режиме 0 задействовано всего 10 входов – 8 входов порта В и 2 входа порта С, которые работают на ввод;
- в режиме 1 задействовано всего 8 входов – 8 входов порта А, которые работают на ввод.
Напишем программу для инициализации АПИ в первом случае:
AddrPPI equ 6000h
ICW1equ 9Еh
movA,#ICW1
movx@dptr,A
Выводы
В ходе выполнения работы была разработана система обработки данных с заданными параметрами ОЗУ и адаптера параллельного интерфейса. Были изучены основные способы разработки устройств обработки информации, базовые методы расчета количества микросхем ОЗУ для обеспечения необходимого количества ячеек памяти микроконтроллеру, способы планирования и синтеза схем на основе микроконтроллеров.
1. Микропроцессорный комплект К1810: Структура, программирование, применение / Ю.М. Казаринов, В.Н. Номоконов, Г.С. Подклетнов, В.Ф. Филиппов; Под ред. Ю.М. Казаринова. – М.: Высш. шк., 1990. – 269с
3. Проектирование микропроцессорной электронно-вычислительной аппаратуры: Справочник / В.Г. Артюхов, А.А. Будняк, В.Ю. Лапий и др. – К.: Техника, 1998. – 263 с
4. Сташин В.В., Урусов А.В., Мологонцева О.Ф. Проектирование цифровых устройств на однокристальных микроконтроллерах. – М.: Энергоатомиздат, 1990. – 224 с
5. Боборыкин А.В. и др. Однокристальные микро-ЭВМ. М.: МИКАП, 1994, - 400 с.: ил.
6. Лебедев О.Н. Применение микросхем памяти в электронных устройствах: Справ. пособие. - М.: Радио и связь, 1994. - 216 с.
7. Евстифеев А.В. Микроконтроллеры AVR семейство Classic фирмы "ATMEL" - 2-е изд., стер. - М.: Издательский дом "Додека XXI", 2004. - 288 с.: ил.
8. Евстифеев А.В. Микроконтроллеры Tiny и Mega фирмы "ATMEL" - М.: Издательский дом "Додека XXI", 2004. - 560 с.
ПРИЛОЖЕНИЕ А
Структурная схема микроконтроллера ATmega162