Разработка микропроцессорной системы
Микропроцессор К1821ВМ85А (ВМ85А) — однокристальный микропроцессор общего применения, являющийся усовершенствованным вариантом первого 8-разрядного микропроцессора фирмы Inteli8080. Обладая, при относительной простоте, многими чертами и характеристиками, свойственными более производительным современным процессорам, i8085 удобен для изучения в качестве базового, учебного МП. Рассмотренные далее… Читать ещё >
Разработка микропроцессорной системы (реферат, курсовая, диплом, контрольная)
ФГОУ ВПО «Чувашский государственный университет имени И.Н. Ульянова»
Кафедра промышленной электроники Курсовая работа на тему
" Разработка микропроцессорной системы"
Выполнила студентка гр. РТЭ-31−06
Васильева Е.С.
Чебоксары 2009
Задание на курсовой проект
1. Микропроцессор К1821ВМ85А
2. Структурная схема
3. Микросхемы памяти
4. Карта распределения адресного пространства памяти
5. Адресное пространство системы ввода/вывода
6. Расчет потребляемой устройством мощности
7. Текст подпрограмм
Целью данного курсового проекта является углубление знаний по аппаратным принципам построения устройств микропроцессорной техники и приобретение практических навыков по разработке микропроцессорных систем и их программного обеспечения.
Проектирование микропроцессорной системы заключается в обеспечении управления необходимыми шинами микропроцессорного устройства с учетом требуемой нагрузочной способности. Нагрузочная способность обеспечивается буферными регистрами и шинными формирователями, при этом необходимо различать статистическую и динамическую нагрузки. Архитектура данного типа МП — двухшинная, МП имеет совмещенные ША и ШД.
Задание на курсовой проект
Исходные данные: спроектировать микропроцессорное устройство, содержащее: МП К1821ВМ85А, ОЗУ — 16 Кбайт (с адреса 0А000h), ПЗУ — 2 Кбайт, 1 восьмиразрядный порта ввода, 2 четырехразрядных порта вывода.
Дополнительные требования: наличие буферов шины данных, восемь клавиш управления, индикация — 2 индикатора АЛС324.
1. Микропроцессор К1821ВМ85А (18 085)
Вводные замечания
Микропроцессор К1821ВМ85А (ВМ85А) — однокристальный микропроцессор общего применения, являющийся усовершенствованным вариантом первого 8-разрядного микропроцессора фирмы Inteli8080. Обладая, при относительной простоте, многими чертами и характеристиками, свойственными более производительным современным процессорам, i8085 удобен для изучения в качестве базового, учебного МП. Рассмотренные далее режимы работы процессора: чтения, записи, подтверждения прерываний, прямого доступа к памяти, а также способы его адресации и принципы программирования с некоторыми изменениями могут быть отнесены и ко многим другим микропроцессорам. Таким образом, знание принципов аппаратно-программной организации ВМ85А значительно облегчает освоение и других микропроцессорных БИС.
В настоящее время ВМ85А находит применение в недорогих системах управления различной аппаратурой, при отсутствии высоких требований к ее быстродействию.
Основные характеристики ВМ85А:
разрядность — 8 бит;
тактовая частота — 3 МГц (5 МГц у I8085A-2);
адресуемая память — 64 Кбайт;
подсистема ввода/вывода — 256 байт;
напряжение питания — 5 В;
технология изготовления — n-МОП (5000 тыс. транзисторов);
исполнение — DIP-корпус, 40 выводов;
аналогi8085А.
Архитектура и интерфейс МП ВМ85А
Большинство МП сами по себе функционально ограничены, поэтому возникает необходимость в применении дополнительных БИС: микросхем ПЗУ, ОЗУ, контроллеров прерываний, прямого доступа в память, адаптеров последовательного и параллельного ВВ и т. д. Сам МП функционирует как элемент микропроцессорной системы. Соединения между элементами внутри системы составляют интерфейс.
Под интерфейсом понимается совокупность унифицированных технических и программных средств, необходимых для подключения данных устройств к системе или одной системы к другой.
Структурная схема МП приведена на рис. 1. Особенностью микропроцессора является наличие совмещенной шины адреса/данных, по которой передается младшая часть адресной информации и 8-разрядные данные.
В состав интерфейса МП ВМ85А входят:
AD7-AD0 Двунаправленная трехстабильная мультиплексированная шина младшей части адреса/данных;
А15-А8 Трехстабильная шина старшей части адреса;
XI, Х2 Входы для подключения внешнего кварцевого резонатора, LC или RC-цепей. Вход X1 может быть использован для приема тактовых импульсов от внешнего задающего генератора.
CLK Выход тактовых импульсов;
RESIN Вход для приема сигнала сброса МП в начальное состояние (RESET IN);
RESET Выходной сигнал системного сброса, синхронизированный с CLK, может использоваться для начальной установки других устройств МС;
SO, SI Состояние МП:
SI S2 Назначение О 0 Halt (останов) О 1 WRITE (запись)
1 0 READ (чтение)
1 1 FETCH (выборка команды)
Для фиксации сигналов во внешнем регистре может использоваться спад ALE;
ALE Трехстабильный строб разрешения фиксации адреса (по срезу);
RD/WR Трехстабильные линии вывода стробов чтения и записи;
IO/M Трехстабильная линия выбора памяти или устройств ВВ;
READY Вход для приема сигналов подтверждения обмена при чтении/записи информации;
INTR Вход для приема запроса прерывания, может быть запрещен программно;
INTA Выход подтверждения прерывания; генерируется в ответ на запрос по входу INTR и используется аналогично сигналу RD для чтения вектора прерывания, выставленного внешним устройством на ШД;
RST 5.5
RST 6.5
RST 7.5 Входы (в порядке увеличения приоритета) для принятия запросов типа RST n; приоритет входов выше, чем у INTA, прерывания могут быть запрещены независимо друг от друга;
TRAP Вход немаскируемого запроса прерывания (не может быть запрещен программно), имеет наивысший приоритет;
SID, SOD Вход и выход последовательной передачи данных;
HOLD Вход для приема запроса на захват шины;
HLDA Линия подтверждения захвата шины, активизируется в ответ на сигнал HOLD.
Рис. 1. Структурная схема микропроцессора ВМ85А
Схема МП (рис. 1) содержит следующие функциональные блоки: 8-разрядное арифметико-логическое устройство (ALU); аккумулятор (АC); регистр признаков (флагов) (RF); регистр временного хранения (TR); регистр команд (IR); блок регистров (шесть регистров общего назначения B-L; два буферных регистра W, Z; указатель стека SP, счетчик команд и регистр адреса со схемой инкремента/декремента INC/DEC); блоки синхронизации и управления шиной, прерываниями и последовательным вводом/выводом.
Восьмиразрядное АЛУ выполняет предусмотренные системой команд МП арифметические и логические операции, результат которых помещает в аккумулятор, а также в зависимости от результатов операций (нуль, переполнение и т. д.) устанавливает регистр признаков RF.
Устройство управления и синхронизации на основе сигналов дешифратора команд формирует сигналы управления, передаваемые во все устройства системы для координации выполнения команд, а также формирует сигналы управления внешними устройствами (памятью, устройствами ввода/вывода и т. д.).
Блок управления прерываниями осуществляет переключение выполняемых программ (задач) МП по внешним сигналам управления, что необходимо для быстрой реакции МП на внешние события (нажатие клавиши на клавиатуре, переполнение буфера принтера и т. п.).
Блок управления последовательным вводом/выводом осуществляет программный ввод или вывод последовательных данных через внешние выводы SID, SOD соответственно.
Часть внутренних регистров используется процессором для собственных целей и является программно недоступным. К ним относится регистр IR, используемый для хранения, выбранной из памяти команды и регистры временного хранения данных — ТR, W, Z. Другие регистры программно доступны и могут использоваться программистом для собственных целей промежуточного хранения данных.
Программная модель ВМ85А
Блок программно-доступных регистров МП ВМ85А (рис. 2) отличается большой функциональной неоднородностью, что проявляется в выполнении большинством регистров МП присущих только им функций. В результате часто отсутствует необходимость в явном задании операндов и команды кодируются более коротко. В то же время усложнилось программирование из-за возникшей необходимости учитывать функциональные особенности регистров.
Подробнее рассмотрим программно-доступные регистры МП.
Аккумулятор, А — 8-разрядный регистр, являющийся ядром большинства операций МП — при выполнении арифметических и логических операций он обычно является источником одного из операндов, в него же помещается результат. Другой операнд может находиться в одном из регистров МП или ячейке памяти и явно задается в команде МП. Аккумулятор также используется при обмене данными между МП и УВВ.
Регистры общего назначения B, C, D, E, H, L — в зависимости от выполняемой команды могут быть использованы как шесть 8-разрядных регистров или три 16-разрядные регистровые пары. Кроме того, регистровая пара HL используется МП для хранения адреса памяти при косвенной адресации данных. Несколько команд позволяют использовать и пары ВС и DE для адресации данных, но обычно они являются общецелевыми регистровыми парами временного хранения данных.
Счетчик команд PC используется для указания на адрес следующей выполняемой команды. Содержимое PC может быть изменено командами переходов, вызова подпрограмм и возврата из них.
Указатель стека SP предназначен для адресации особым образом организованной области памяти, называемой стеком. Он всегда указывает на вершину стека, содержащую последний введенный в него элемент. Стек заполняется в сторону младших адресов, что считается стандартным для МС.
Регистр состояния (флагов или индикаторов) RF использует 5 битов (флажков) хранения информации о состоянии МП. Флажки имеют следующее назначение:
CY — признак переноса из старшего разряда АЛУ;
Р — признак четного числа единиц в результате операции;
АС — признак дополнительного переноса из младших четырех разрядов АЛУ;
Z — признак нулевого результата;
М — знак результата.
Автоматическая установка битов в единицу происходит в результате выполнения арифметических и логических операций при условии наступления соответствующего назначению бита события, в противном случае содержимое битов сбрасывается в нуль. Эти биты используются командами условных переходов, вызова подпрограмм и возврата из них.
Кодирование команд и адресация данных
Команды ВМ85А требуют для кодирования от 1 до 3 байт. Первый байт всегда содержит код операции. Второй и при необходимости третий байты отводятся под непосредственные данные, адрес порта или ячейки памяти (рис. 3).
Рис. 3. Формат команд МП ВМ85А: аоднобайтовый, бдвухбайтовый, втрехбайтовый
Поля dst и src предназначены для кодирования операндов в однои двухбайтовых командах МП согласно правилу
где фиктивный регистр М задает в качестве операнда ячейку памяти, косвенно адресуемую через регистровую пару HL.
Команды МП содержат именную часть команды или код операции, а также адресную часть, содержащую сведения об адресах операндов. Источниками и приемниками операндов могут служить: регистры МП, ячейки памяти, а также порты ВВ. Сведения о месторасположении операндов могут задаваться в двух формах: явной и неявной. Неявная форма обеспечивает передачу адресной информации через код операции, для чего используются поля dst и src на рис. 3. Достоинства такого подхода — в малой длине машинных команд, требующих меньшего времени для своего выполнения.
Большей гибкостью обладают команды, использующие явную форму задания адресной информации, что позволяет связывать с одной командой множество адресов, повышая ее эффективность. Однако при этом возрастает длина машинной команды и соответственно снижается эффективность объектного кода. На практике часто встречаются и комбинированные формы адресации, содержащие явную и неявную части.
Примеры команд, использующих явную адресацию: LXIrp, datal6; LHLD addr ADI data8
Примеры команд с неявной адресацией: MOV R1, R2; LDAX D ADDR
Метод задания адресов операндов в памяти называется способом адресации. Для повышения эффективности программного кода (т. е. минимизации длины программы или времени ее выполнения) разработан ряд способов адресации, каждый из которых наиболее эффективен для своей конкретной ситуации. Правильное использование всего набора позволяет обеспечить эффективный доступ к структурированным данным (массивы, стеки), сократить длину программного кода и число обращений к магистрали.
МП ВМ85А имеет следующие способы адресации: прямую, регистровую, непосредственную, косвенную регистровую. В случае регистровой адресации операнд находится в одном из внутренних регистров МП. Примеры команд с регистровой адресацией: MOV R1, R2. ADDR.
Поскольку для ссылки на регистр требуется всего лишь несколько бит, включаемых в код операции, команды данного типа имеют наименьшую длину и не требуют циклов обращения к магистрали. Все это обеспечивает командам регистровой адресации наибольшую эффективность.
Команды с прямым способом адресации используют для задания места расположения данных в памяти второй и третий байты команды. Прямая адресация позволяет явно выбрать любую ячейку памяти или порт ВВ во всем адресном пространстве МП. Примеры команд данного типа: IN, port; LHLD addr
В случае непосредственной адресации источником данных служит сама команда, второй и, если необходимо, третий байт которой служат для задания констант. Например: LXI В, 1234; MVI D, 5.
Основной недостаток непосредственной адресации заключается в невозможности манипуляции данными без изменения программного кода, что привело к созданию способов с вычисляемым адресом, к простейшим из которых относится косвенная регистровая адресация. В командах с косвенной адресацией указывается не прямой адрес ячейки памяти, а регистровая пара МП, содержащая адрес операнда. К командам, использующим косвенный способ адресации, в частности, относятся: MOV A, M;LDAX B.
Временные диаграммы режимов работы ВМ85А
В каждом машинном цикле МП выполняет операцию ввода или вывода одного байта информации согласно временным диаграммам на рис. 4. Для синхронизации обмена используются стробы ALE, RD, WR соответственно типовому протоколу обмена по двухшинной магистрали. Непосредственно для ВВ информации отводятся 3 машинных такта: в такте 71 производится установка адресного кода на ША, а в тактах 72 и 73 — обмен данными. При необходимости к этим тактам может быть добавлено произвольное число тактов ожидания готовности канала Тw, включаемых между тактами Т2 и 73. Для реализации подобного асинхронного режима работы используется сигнал READY, проверка которого выполняется в середине 72 и всех следующих за ним тактов Tw. Для обеспечения надежного считывания этот сигнал должен быть установлен в 0 за 110 не до момента его первой проверки. Манипуляция сигналом READY позволяет удлинить строб RD или WR до значения (1,5+N)T-80 не (N — число периодов ожидания Tw) необходимого для надежного обмена данными с медленной памятью и У ВВ. В синхронном режиме работы сигнал READY=] на протяжении всего машинного цикла, дополнительные периоды ожидания отсутствуют (N=0) и длительность стробов RD, WR минимальна, составляя 1,5Г-80 не. Отметим, что действительность данных обеспечивается только в момент формирования задних фронтов этих стробов.
При обращении к устройствам ВВ 8-разрядный адрес порта присутствует как на младшей, так и старшей половинах ША, что позволяет ориентировать модули ВВ на использование сигналов А15 — A8, для приема которых отсутствует необходимость во внешнем адресном регистре.
На рис. 5 приведен пример командного цикла IN port без тактов ожидания. Команда содержит три машинных цикла: Mlвыборка кода операции, М2 — чтение из памяти второго байта команды и МЗ — выдача содержимого аккумулятора в порт ВВ. Циклы М2 и МЗ требуют трех машинных тактов, цикл Ml — четырех. Дополнительный такт здесь требуется для реализации внутренних операций в МП, связанных с декодированием команды.
Рис. 4. Временные диаграммы: а — циклов чтения, б — записи МП ВМ85 А
Рис. 5. Временные диаграммы командного цикла IN port
МП ВМ85А имеет пять входов приема запросов на прерывание: TRAP, RST 5.5, RST 6.5, RST 7.5, INTR и один выход управления им — INTA. Первым четырем входам запроса сопоставлены фиксированные вектора прерываний, расположенные по адресам: 24Н, 2СН, 34Н, ЗСН. Уточним, что под вектором прерываний подразумевается информация, необходимая для перехода к соответствующей подпрограмме обслуживания. В простейшем случае — это просто адрес этой подпрограммы в памяти.
Линия LNTR предназначена для приема запроса на прерывание, при котором адрес обслуживающей подпрограммы определяет внешнее устройство, передавая по шине данных команду CALL или, что более удобно, команду RSTn. При этом для обеспечения приема команды, сформированной внешней аппаратурой, в ответ на запрос INTR генерируется один или три машинных цикла подтверждения прерывания, аналогичных циклам чтения памяти (без тактов ожидания), однако с активным сигналом INTA вместо сигнала RD (рис. 6).
микропроцессор память программный мощность
Рис. 6. Временные диаграммы цикла подтверждения прерывания и захвата шины
Вход TRAP имеет наивысший приоритет и является немаскируемым, т. е. прерывания по нему не могут быть запрещены программно. На этот вход подаются сигналы, оповещающие о наиболее важных событиях в МС, требующих немедленной реакции МП (например, связанных с аварийным изменением напряжения питания). Запросы по входам RST и INTR являются маскируемыми и управляются программно командами EI (разрешить прерывания) и DI (запретить прерывания), управляющими общим флагом разрешения прерываний. Существует также возможность раздельного маскирования запросов по входам RST, обеспечиваемая с помощью команды SIM.
Сопряжение ВМ85А с шинами микропроцессорной системы
В ряде применений однокристальные МП не могут быть непосредственно соединены с шинами МС по причине недостаточной нагрузочной способности их выходов. Для организации сопряжения МП с системными шинами в этом случае находят применение буферные регистры и шинные формирователи. Ниже рассмотрены некоторые типичные представители данных классов микросхем.
Буферный регистр КР580ИР82/ИР83 представляет собой 8-разрядный регистр-защелку, обеспечивающий выходной ток до 32 мА, и емкость нагрузки до 300 пФ и используемый в качестве фиксатора или буфера. На рис. 7 приведены схема и условное графическое обозначение регистра КР580ИР82, в отличие от которого КР580ИР83 имеет инверсные выходные сигналы.
Рис. 7. Буферный регистр КР580ИР82: аструктурная схема; бусловное графическое обозначение
Основой схемы является 8-разрядный регистр со статическим управляющим входом STB, разрешающим запись при высоком уровне сигнала и хранение при низком уровне. Регистр содержит трехстабильный выходной буфер, управляемый сигналом ОЕ. При активном уровне этого сигнала (ОЕ=0) данные передаются на выход микросхемы, в ином случае буфер закрыт и находится в высокоомном состоянии. Временные диаграммы работы регистра представлены на рис. 8.
Рис. 8. Временные диаграммы работы регистров КР580ИР82/ИР83
Шинный формирователь КР580ВА86/ВА87 предназначен для реализации 8-разрядных однои двунаправленных буферных схем с тремя состояниями на выходе. На рис. 9 приведены схема и условное графическое обозначение БИС КР580ВА86, в отличие от которого КР580ИР83 имеет инверсные выходные сигналы.
Рис. 9. Шинный формирователь КР580ВА86: аструктурная схема; бусловное графическое обозначение
Основой схемы являются трехстабильные 8-разрядные буферные схемы, обеспечивающие со стороны канала, А ток нагрузки до 16 мА при емкости нагрузки до 100пФ и со стороны канала В ток нагрузки до 32 мА при емкости нагрузки до 300 пФ. Таким образом, нагрузочная способность буфера является различной. Буферы выбираются только при низком уровне сигнала ОЕ, обеспечивая передачу данных из, А в В при высоком уровне сигнала на входе Г и в обратном направлении в ином случае. Временные диаграммы работы буфера представлены на рис. 10.
Рис. 10. Временные диаграммы работы формирователей КР580ВА86/ВА87
Схема центрального процессора на базе ВМ85А приведена на рис. 11. Схема не требует внешнего тактового генератора, для запуска процессора необходим лишь кварцевый резонатор ZQ1, подключенный к входам XTAL1, XTAL2. В качестве схемы сброса используется RС-цепочка на элементах R1, R2, С5, постоянная времени которой рассчитывается из требований, накладываемых на длительность сигнала Reset.
Возможности выходов ВМ85А по току составляют 1<�х = 2 мА, 1он = 400 мкА. Зная требования по постоянному току подключаемых элементов, можно оценить нагрузочную способность МП. Кроме токовой составляющей необходимо учитывать и емкостную составляющую нагрузки. Временные соотношения для ВМ85А гарантируются при CL < 150 пФ. При превышении этого значения временные соотношения ухудшаются, изменяясь приблизительно на 0,2 нс/пФ.
Шина данных МС через резисторы R4, R3 подключена к источнику питания. В результате чтение команды из несуществующей области памяти приведет к выполнению команды RST 7, что может быть использовано в отладочных целях.
Три сигнала МС — запрос на захват шины, подтверждение захвата HLDA и разрешение шины BUSENслужат для организации доступа к системной магистрали со стороны других активных моделей системы. При отсутствии таких модулей требуется установка перемычек 1−2 и 3−4.
Системный контроллер представляет собой комбинационную схему, предназначенную для преобразования выходных сигналов МП в стробы синхронизации и управления доступом к памяти и УВВ. Возможна его реализация на микросхемах малой степени интеграции, а также ПЛМ.
Рис. 11. Схема центрального процессора на базе микропроцессора ВМ85А
2. Структурная схема
Проектируемое устройство состоит из трех блоков: блока центрального процессора, подсистемы памяти и подсистемы ввода-вывода. Обобщенная структурная схема устройства приведена на рисунке. Структура подсистем памяти и ввода-вывода на рисунке показана не полностью.
Рис. 12. Структурная схема устройства
Подсистема памяти включает в себя устройство выборки микросхем памяти (адресный селектор), оперативное запоминающее устройство (ОЗУ) и постоянное запоминающее устройство (ПЗУ). Для реализации ОЗУ используется микросхема статического ОЗУ КР537РУ17, имеющая информационную емкость 16Кбайт. ПЗУ реализуется на микросхеме К573РР2 с информационной емкостью 2Кбайта.
Подсистема ввода-вывода (УВВ) содержит в своем составе адресный селектор и устройства ввода-вывода: 1 восьмиразрядный порта ввода, 2 четырехразрядных порта вывода, устройство индикации на 2 светодиодах, 8 клавиш ввода. Порты ввода и вывода допускают только прямой ввод или прямой вывод данных, соответственно.
3. Микросхемы памяти
Микросхемы ОЗУ и ПЗУ выбираем исходя из условий: напряжение питания +5 В и емкость ПЗУ 2Кбайт, ОЗУ 16Кбайт (в связи с трудностью поиска 16Кбайтного ОЗУ выбираем две микросхемы ёмкостью по 8 Кбайт и соединяем их каскадно). Наиболее подходящими являются К573РР2 и КР537РУ17. Описание данных микросхем приводится ниже.
Рис. 13. УГО микросхемы КР537РУ17
Микросхема КР537РУ17 имеет два равнозначных сигнала выбора. Условие разрешения доступа к микросхеме =0, CS2=1. Таблица истинности приведена ниже.
CS2 | A0…A12 | DIO0…DIO7 | Режим работы | ||||
М | М | Х Х | Х | Х А А А | Z D0…D7 z D0…D7 | Хранение Запись Запрет выхода Считывание | |
Микросхема ПЗУ приведена на рис. 14.
Рис. 14. УГО микросхемы К573РР2
Режимы работы микросхемы К573РР2
Сигнал | Стирание | Запись | Считывание | Хранение | |||
Общее | По адресу | Общая | По адресу | ||||
CS OE UPR, B DIO tw, мс | 12 В | 12 В Х | DI | DO 0,35 мкс | Х Z ; | ||
4. Карта распределения адресного пространства памяти
Рис. 15. Карта распределения адресного пространства
Согласно приведенной карте адресного пространства 16 Кб ОЗУ расположено c адреса А000h, а 2 Кб ПЗУ с адреса 0000h. Выбор местоположения ОЗУ произведен в соответствии с техническим заданием, а местоположение ПЗУ обусловлено тем, что в МП ВМ85А после сброса управление передается по адресу 0000, находящемся в области ПЗУ. Резервная область памяти может быть использована либо для изменения местоположения ОЗУ в адресном пространстве с помощью перемычки, либо для увеличения объема.
Селектор ОЗУ
Первая микросхема ОЗУ, объёмом 8Кбайт, будет занимать ячейки памяти с А000 до BFFF, что соответствует адресу 101х хххх хххх хххх. А вторая микросхема с аналогичным объёмом начиная с ячейки С000 и заканчивая ячейкой DFFF, что соответствует адресу 110х хххх хххх хххх.
Микросхема | A15 | A14 | A13 | А12 | А11 | А10 | А9 | А8 | А7 | А6 | А5 | А4 | А3 | А2 | А1 | А0 | |||
1-ая | |||||||||||||||||||
2-ая | |||||||||||||||||||
Х | Х | Х | Х | Х | Х | Х | Х | Х | Х | Х | Х | Х | |||||||
в остальных случаях | |||||||||||||||||||
Селектор ПЗУ
ПЗУ объёмом 2Кбайт занимает ячейки памяти с 0000 до 7FF, что соответствует адресу 0000 0ххх хххх хххх.
A15 | A14 | A13 | А12 | А11 | А10 | А9 | А8 | А7 | А6 | А5 | А4 | А3 | А2 | А1 | А0 | |||
в остальных случаях | ||||||||||||||||||
Адресное пространство ОЗУ и ПЗУ удобно сделать на дешифраторе 3 в 8 К555ИД7.
Рис. 16. Адресный селектор памяти
Где на входы подаются сигналы А15, А14, А13. Так как по ним можно точно определить какая именно микросхема будет задействована: вывод 9 — микросхема ОЗУ 2; вывод 10 — микросхема ОЗУ 1; вывод 15 — микросхема ПЗУ.
Подсистема ввода-вывода
Порты ввода-вывода
Один восьмиразрядный порт ввода реализуем на буферной микросхеме КР1533АП14:
Микросхема КР1533АП14 (рис. 17) содержит восемь однонаправленных буферных элементов с возможностью перевода их выходов в высокоимпедансное состояние. При подаче на оба входа разрешения Е лог. 0 выходы микросхемы переходят в активное состояние и на них появляются без инверсии сигналы с соответствующих входов D1 — D8. При поступлении на любой из входов Е лог. 1 выходы переходят в высокоимпедансное состояние.
Два четырехразрядных порта вывода реализуем на буферных микросхемах КР1533ИП7:
Рис. 18. УГО микросхемы К555ИП7
Микросхема ИП7 (рис. 18) — четыре двунаправленных буферных элемента. Логика работы входов управления Е1 и Е2 следующая: при лог. 0 на обоих входах передача сигналов происходит от выводов А1 — А4 к выводам В1 — В4, при лог. 1 на обоих входах — от выводов В1 — В4 к А1 — А4. При лог. 1 на входе Е1 и лог. 0 на входе Е2 все информационные выводы микросхемы переходят в Z-состояние, подача лог. 0 на вход Е1 и лог. 1 на вход Е2 одновременно недопустима. Треугольники на графическом обозначении микросхемы и входов Е1 и Е2 символизируют усиление и направление распространения информации при подаче активных сигналов на эти входы.
Клавиши управления Для упрощения задачи выбираем ещё один восьмиразрядный буфер, ранее предназначенный для системы ввода, и реализуем на нём 8 клавиш управления.
Рис. 19. Реализация клавиш управления
Индикация Светодиодные индикаторы серий АЛС321, АЛС324, АЛС333 и многие другие имеют хорошие светотехнические характеристики, но в номинальном режиме потребляют довольно большой ток — для каждого элемента около 20 мА. При динамической индикации амплитудное значение тока в несколько раз больше.
В качестве преобразователей двоично-десятичного кода в семиэлементный промышленность выпускает дешифраторы К514ИД1, К514ИД2, КР514ИД1, КР514ИД2. Для совместной работы с указанными индикаторами с общим катодом они непригодны, так как максимально допустимый ток выходных ключевых транзисторов дешифраторов К514ИД1 и КР514ИД1 не превышает 4…7 мА, а К514ИД2 и КР514ИД2 предназначены только для работы с индикаторами, имеющими общий анод.
На рис. 19 показан вариант согласования дешифратора К514ИД1 и мощного индикатора АЛС321 А с общим катодом. Для примера на схеме показано включение элемента «а». Остальные элементы включают через аналогичные транзисторно-резисторные цели. Выходной ток дешифратора не превышает 1 мА при токе питания элемента индикатора около 20 мА.
Рис. 20. Реализация индикации Устройство вывода представляет собой 2 светодиодных индикатора. Схема их подключения приведена на рис. 19. Сигнал с шины данных поступает на вход дешифратора DD1 КР514ИД1. Двоичный код подается на вход HC1 с выхода дешифратора через транзисторы VT1, которые замыкаются на землю. Транзисторы служат для стабилизации работы устройства.
Для повышения яркости свечения элементов индикатора в динамическом режиме можно несколько увеличить напряжение питания индикаторов или уменьшить сопротивление резисторов в эмиттерной цепи транзисторов. Амплитудное значение тока через элементы индикаторов увеличится, но среднее значение останется в допустимых пределах.
5. Адресное пространство системы ввода/вывода Так как устройств ввода/вывода немного, то будем использовать частичную дешифрацию:
адреса | А7 | А6 | А5 | порт | |||
1F | Порт ввода | ||||||
3F | Порт вывода | ||||||
5F | Порт вывода | ||||||
7F | АЛС324 | ||||||
9F | АЛС324 | ||||||
A0 BF | 8 клавиш управления | ||||||
В качестве селектора адреса используем дешифратор 3 в 8 К555ИД7. На входы подаются разряды А7, А6, А5.
Рис. 21. УГО микросхемы К555ИД7
На выводах:
15 — Порт ввода
14 — Порт вывода
13 — Порт вывода
12 — АЛС324
11 — АЛС324
10 -8 клавиш управления
6. Расчет потребляемой устройством мощности
Микросхема | Ток потребления, мА | Потребляемая мощность, мВт | Количество | |
К1821ВМ85А | ||||
К555ИД7 | 9,7 | |||
КР537РУ17 | ||||
К537РР2 | 600(300) | |||
КР555ИП7 | 20,5 | |||
КР1533АП14 | 7,5 | |||
КР580ИР82 | ||||
КР580ВА86 | ||||
К155ЛЕ1 | 64,8 | |||
К500ЛЕ106Е | 34,23 | |||
Для определения мощности, потребляемой устройством, необходимо просуммировать мощности, потребляемые каждым элементом в отдельности:
.
Максимальная мощность (клавиши нажаты), рассеиваемая на резисторах R2-R9, сопротивлением кОм:
мВт.
Значит мощность, потребляемая устройством:
мВт.
В качестве источника питающего напряжения можно применить преобразователь напряжения 2205 В с использованием микросхемы-стабилизатора напряжения КР142ЕН5 В, обеспечивающую максимальный ток на выходе до 2 А и позволяющей подключить нагрузку потребляющую до 25= 10 Вт, что покрывает необходимые потребности.
Спецификация
Поз. обозначение | Наименование | ||
DD1 | К1821ВМ85А | ||
DD5,DD13 | К555ИД7 | ||
DD6,DD7 | КР537РУ17 | ||
DD8 | К537РР2 | ||
DD15,DD16 | КР555ИП7 | ||
DD11,DD10 | АЛС324 | ||
DD14,DD17 | КР1533АП14 | ||
DD9,DD12,DD2,DD3 | КР580ИР82 | ||
DD4 | КР580ВА86 | ||
Элементы 2ИЛИ-НЕ | К155ЛЕ1 | ||
Элементы ИЛИ-НЕ | К500ЛЕ106Е | ||
R1-R10 | С2−23−0,25−1 кОм ± 5% А-В-В | ||
R20-R27,R13 | С2−23−0,25−10 кОм ± 5% А-В-В | ||
R12 | С2−23−0,25−3 кОм ± 5% А-В-В | ||
VD1 | КД520Д | ||
7. Текст подпрограмм
Текст подпрограмм
В независимости от функционального назначения устройства алгоритм его работы содержит последовательность типовых операций: инициализация системы, чтение/запись памяти, чтение клавиатуры и портов ввода, вывод информации на индикаторы и порты вывода и др.
Рассмотрим примеры инициализации и работы с устройствами ввода-вывода разработанного устройства.
Чтение клавиш управления:
IN AL, А1h
IN AH, А2h
RET
Вывод на индикатор:
MOV AL, data
OUT 80h, AL
RET
Запись в 4 разрядный порт:
OUT 20h, AL
RET
Чтение портов:
IN AL, 00h
RET
Cписок литературы
1. Угрюмов Е. П. Цифровая схемотехника. / Е. П. Угрюмов Спб.: BHV, 2001.
2. Якубовский С. В. Ниссельсон Л.И., Цифровые и аналоговые интегральные схемы С. В. Якубовский, Л. И. Ниссельсон М.: «Радио и связь», 1990.
3. Мочалов М. Ю. Основы микропроцессорной техники: Учебное пособие. М. Ю. Мочалов, Г. В Малинин Чебоксары: изд-во Чуваш. ун-та, 2004.
Ресурсы Интернет
1. Справочник по микросхемам памяти: http://www.inp.nsk.su/~kozak/mem/mem00.htm
2. Источник информации об индикаторах АЛС. http://boni2.narod.ru/s2/vk-7el.html