Logo GenDocs.ru

Поиск по сайту:  

Загрузка...

Баравой В.Т. Микропроцессорные устройства - файл Баравой В.Т. Микропоцессорные устройства. 2-3 разделы.doc


Баравой В.Т. Микропроцессорные устройства
скачать (10274.9 kb.)

Доступные файлы (2):

Баравой В.Т. Микропоцессорные устройства. 1 раздел.pdf3275kb.06.06.2011 04:14скачать
Баравой В.Т. Микропоцессорные устройства. 2-3 разделы.doc8993kb.01.07.2011 06:28скачать

Баравой В.Т. Микропоцессорные устройства. 2-3 разделы.doc

1   2   3
1 Структурная схема модуля памяти

На структурной схеме (рис. 2. 1) видно, что модуль памяти состоит из! оперативного запоминающего устройства (ОЗУ), служащего для записи, хранения и чтения данных; шинного формирователя (ШФ), обеспечивающего двунаправленное действие шины данных; логической схемы (ЛС), использующей управляющие сигналы ЧТЗУ и ЗПЗУ, которые поступают по шине управления для создания не­обходимых логических уровней (0) или (1). Подключение модуля памяти к общей шине выполняется с помощью много контактно­го разъёма ХР.



^ Рисунок 2.1- Модуль памяти
Обычно простейшие микро-ЭВМ комплектуются памятью, состоящей только из ОЗУ. Объем такой памяти насчитывает 1-4 Кбайт. При дальнейшей модернизации микро-ЭВМ объем ОЗУ может быть увеличен до 16-64 Кбайт, а также добавлено ПЗУ емкостью 28 Кбайт. Размещение дополнительных микросхем ПЗУ можно предусмотреть на плате первоначального модуля памяти или же собрать их в виде отдельного добавочного модуля, подключаемого к резервному разъему общей шины.

Промышленность выпускало большое количество типов микросхем для ОЗУ и ПЗУ, что облегчает их выбор и приобретение. Исходя из требования наименьшей дефицитности, для ОЗУ описываемой микро-ЭВМ выбрана самая распространенная (хотя и несколько устаревшая) микросхема типа К565РУ2, содержащая 1024 запоминающих элементов. Расположение выводов этой микросхемы приведено на рис.2.2. Микросхема имеет десять адресных выводов АО-А9 и выводы управления ЗП и ВК, которые активизируются низким потенциалом, имеется также один вход для ввода данных.



Рисунок 2.2 - Микросхема К565РУ2
Нормальная работа К565РУ2 обеспечивается при уровне логического нуля на выводе . Если же на вывод подать уровень логической единицы, то выход D0 микросхемы К565РУ2 переходит в высокоимпедансное состояние.

Для чтения бита данных, выдаваемого на выход D0 микросхемы, на вывод необходимо подать уровень логической единицы, проследив при этом, чтобы на выводе сохранялся уровень логического нуля. Запись бита данных в элемент памяти производится путем подключения логического уровня (1 или 0) этого бита ко входу D1 микросхемы и подачи на ее вывод уровня логического нуля. При этом выполнение режима записи имеет свои особенности. Заключаются они в том, что нулевые уровни логических напряжений на выводы

и должны подаваться на 0,5 мк. сек. позже, чем сигналы А0 – А9, поступающие на адресные выводы. Режим чтения данных выполняется без временных ограничений. На выводы и достаточно подать уровень логической единицы, чтобы на выводе D0 появилось содержимое элемента памяти, адрес которого установлен выводах А0 – А9. При изменении адреса на вывод D0 будет выдано содержимое нового элемента памяти, соответствующее новому адресу.

Рассмотрим принцип действия статического ОЗУ на примере ОЗУ объемом , т. е. 2К слов данных по 8 бит (один байт) каждое (рис.2.3). Для хранения 2К байт информации требуется 2.1024=2048 8-разрядных регистров. Эти регистры организованы в матрицу регистров с 8 столбцами и 256 строками (8.256=2048). Для выбора одного из регистров необходимо задать номер столбца и номер строки. Эту функцию выполняют дешифраторы строк и столбцов. Адрес одной из 2048 ячеек памяти поступает по 11-разрядной шине адреса А10 – А0 процессора. Старшие 8 линий шины адреса А10 – A3 с помощью дешифратора строк задают одну из 256



^ Рисунок 2.3 - Структура статического ЗУПВ
строк матрицы регистров, а младшие 3 линии адреса А2 – А0 с помощью дешифратора столбцов – один из 8 столбцов.

Единовременно в ОЗУ записывается или считывается 1 байт информации. Внутренняя двунаправленная 8-разрядная шина ввода - вывода информации DI/07 - DI/00 соединяется для этого с шиной данных МПС D7 – D0. Запись чтение информации возможны только после подачи сигнала

выбора кристалла на БИС ОЗУ. Только в этом случае начинает работать один из 8-разрядных вентилей DD1 или DD2. Первый, при наличии сигнала (разрешение записи) обеспечивает передачу байта данных с шины данных МПС в выбранную ячейку памяти. Второй при наличии сигнала (разрешение вывода) обеспечивает считывание байта данных из выбранной ячейки ОЗУ на шину данных МПС. Если сигнал неактивен (высокий уровень), то оба вентиля запираются. При этом шина DI/7 - DI/00 переходит в так называемое третье (высокоимпедансное) состояние, характеризующееся бесконечно большим входным сопротивлением. Интегральная схема ОЗУ как бы «отключается» от шины данных МПС. Тем самым реализуется магистральный принцип обмена данными МПС: к магистрали подключается только то устройство, с которым предполагается обмен данными, все остальные отключаются от шины.

На рис. 2.4 приведено схематическое обозначение ОЗУ (RAM) КР537РУ8.МС выполнена на основе КМОП-технологии, внутренняя структура которой подобна рассмотренной выше. Отличие состоит в использовании двух сигналов выборки кристалла и (объединены по И) и одного сигнала (запись/чтение). Если сигнал имеет низкий уровень производится запись данных, в противном случае – чтение. Знаком обозначены входы - выходы БИС с тремя состояниями.



Рисунок 2.4- ОЗУ (RAM) КР537РУ8
2 Принципиальная электрическая схема модуля памяти.

На рис. 2.5 приведена принципиальная электрическая схема модуля памяти. В связи с тем, что МП К580 выполняет действие с восьмиразрядными данными, а К565РУ2 запоминает только один разряд (бит) данных, то приходится устанавливать восемь корпусов (DD1 – DD8) этих микросхем, что позволяет записывать, запоминать или считывать 1024 байта данных.

Адресные выводы А0 – А9 на всех восьми корпусах К565РУ2 соединяются параллельно и подключаются непосредственно к выводам ША0 – ША9 адресной шины разъема ХР1. Входы D1 всех восьми микросхем DD1 – DD8 подключаются к выводам С1 – С4 шинных формирователей DD9 - DD10, а выходы D0 – к выводам А1 – А4. Выводы В1 – В4 подсоединяются к выводам ШД0 – ШД7 шины данных при помощи разъема ХР1.

Шинные формирователи DD9 и DD10 подобно шинным формирователям DD9 и DD10 микропроцессорного модуля обеспечивают двунаправленное действие шины данных, а также осуществляют отключение ячеек памяти от общей шины.

Восемь управляющих выводов на микросхемах памяти DD1 - DD8 и два управляющих вывода на шинных формирователях DD9 – DD10 соединяются друг с другом и подключаются к выходу 6 логического элемента DD11.2. В рабочем состоянии модуля памяти


на этом выходе 6 должен быть уровень логического нуля. С появлением уровня логической единицы все выходы D0 микросхем DD1-DD8 переходят в высокоимпедансное состояние и отключаются от общей шины.

Восемь управляющих выводов микросхем DD1 – DD8 соединяются параллельно друг с другом и подключаются к выводу общей шины, что позволяет осуществлять режим чтения (когда = 1) или записи (когда = 0). Кроме того, сигналы и поступают на входы логического элемента D11.1, который совместно с элементом DD11.2 вырабатывает управляющий сигнал, подаваемый на десять выводов для отключения модуля памяти от общей шины в тот момент, когда микропроцессор не обращается к памяти.

Сигнал «Блокировка ОЗУ», подаваемый на вывод А4 разъема ХР1, используется при совместной работе модуля памяти и дополнительного модуля в виде ПЗУ или внешних запоминающих устройств, подключаемых к общей шине. Подача уровня логического нуля на вывод А4 позволяет выключать модуль памяти и считывать данные с других запоминающих устройств, подсоединенных к общей шине. Приведём примеры БИС (рис.2.6), наиболее часто используемых в электрических схемах.



Рисунок 2.6- Расположение (а) и назначение (б) выводов 8-раз­рядных БИС перепрограммируемых ПЗУ семейства К556


Рисунок 2.7- Расположение (а) и назначение (б) выводов БИС ма­сочных ПЗУ семейства К568


Лекция 3 Запоминающие устройства, их проектирование
^ 1 Управление памятью со стороны процессора

2 Проектирование запоминающих устройств микропроцессорных систем
1 Управление памятью со стороны процессора

В зависимости от требуемого объема память МПС может состоять из нескольких кристаллов ОЗУ (RAM) и нескольких кристаллов ПЗУ (ROM) (рис. 2.1). Одноименные разряды шины адреса МПС и шин адреса БИС памяти со­единяются между собой. Шины ввода - вывода БИС памяти соединяются с шиной данных МПС.



Рисунок 3.1- Организация памяти в микропроцессорной системе
Для управления записью данных в память служит сигнал шины управления , чтением из памяти – сигнал . Выбор конкретного кристалла памяти осуществляется с помощью дешифратора адреса памяти ДША, на вход которого поступают старшие разряды с шины адреса МПС (те, которые не подаются на собственно шины адреса БИС). Эти разряды определяют номер кристалла, к которому будет обращение со стороны процессора.

Выходы дешифратора адреса соединяются для этого со входами выбора кристалла отдельных БИС. В качестве дешифратора используются ИС средней степени интеграции -дешифраторы двоичного кода в десятичный.

Обмен данными между микропроцессором и памятью можно проиллюстрировать на временных, диаграммах (рис.3.2), из которых видно, как формируются сигналы считывания и запи­си информации.

Нам уже известно, что минимальный интервал времени, в течение которого микропроцессор выполняет те или иные дейст­вия называется тактом. Он определяется тактовой частотой гене­ратора, входящего в микропроцессорную систему.

Несколько тактов, в течение которых следует одно обра­щение к памяти или устройству ввода/вывода, называется ма­шинным циклом.

^ Рассмотрим обмен данными по тактам.

Цикл считывания начинается тактом Т1 с выдачи на ши­ну адреса ША микропроцессорной системы (МПС) адреса ячейки памяти, к которой последует обращение.

В такте Т2 формируется сигнал чтение памяти MEMRD. Спустя время, равное времени обращения к памяти, данные из памяти поступают на шину данных ШД МПС.

Такт ТЗ может дополнительно вводиться в некоторых МП для проверки «действительно ли информация выдана на ШД».

В такте Т4 данные с ШД МПС считываются внутрь про­цессора.

Цикл записи отличается тем, что в такте Т2 процессор сначала выдаёт на ШД МПС данные, подлежащие записи в па­мять, а затем формируется сигнал записи MEMWR.

По заднему фронту сигнала MEMWR в такте Т4 информа­ция, выданная процессором, поступает на внутреннюю шину данных и далее в ячейку, адрес которой находится на шине адре­са.





^ Рисунок 3.2- Упрощённые временные диаграммы
2 Проектирование запоминающих устройств микро­процессорных систем

Запоминающие устройства (ЗУ) микропроцессорных сис­тем предназначены для хранения программ и данных.

Основными параметрами ЗУ являются:

  • разрядность;

  • объём памяти;

  • быстродействие;

  • потребляемая мощность;

  • устойчивость к возникновению ошибок.

В своих интересах пользователь может воздействовать только на два параметра ЗУ - на разрядность ОЗУ • ПЗУ и на объем памяти,, остальные параметры формируются заводом — изготовителем. При проектировании ЗУ решаются следующие задачи:

  • распределение объёма памяти между оперативным и по­стоянным запоминающими устройствами;

  • проектирование требуемого объёма памяти;

  • проектирование требуемой разрядности ОЗУ и ПЗУ;

  • разработка средств сопряжения ОЗУ и ПЗУ с системной шиной.

Запоминающие устройства строятся на основе БИС. Обо­значим разрядность БИС – ni, а объём её памяти - Ni. Как правило, требуемая разрядность проектируемого запоминающего устрой­ства обеспечивается наращиванием разрядности путём соедине­ния параллельно адресуемых БИС ЗУ (рис.3.3,а). Данное пра­вило выражается формулой

к = n/ni,

где к – количество БИС, привлекаемых для наращивания требуемой разрядности;

n – требуемая разрядность модуля БИС; ni – разрядность БИС, привлекаемых для наращивания разрядности.

Требуемый объём памяти N обеспечивается наращиванием объёма памяти путём соединения последовательно адресуемых бло­ков БИС ЗУ (рис. 3.3,б) каждый из которых обычно реализуется на к БИС ЗУ, имеет разрядность n = к.ni и объём, равный объёму Ni.

Можно записать, L = N/Ni,

где L – число БИС для реализации требуемого объёма па­мяти;

N – требуемый объём памяти

Ni – объём памяти i – той БИС

ЗУ больших объёмов обычно разбивается на несколько модулей, каждый из которых имеет объем, выбираемый исходя из возможности реализации, и может располагаться в произволь­ном месте адресного пространства ЗУ.



^ Рисунок 3.3- Схемы взращивания разрядности (а), и объёма памяти БИС ЗУ (б)
Средства сопряжения ЗУ с системной шиной обеспечивают согласование временных соотношений работы БИС ЗУ и операций чтения/записи, выполняемых на системной шине, согласование по нагрузочной способности сигналов и по уровням. Для сопряжения ЗУ необходимо сформировать входные сигналы в соответствии с временными соотношениями работы БИС ЗУ. Для согласования ЗУ с системной шиной по нагрузочной способности выходной ток шинных формирователей должен превышать входные токи ЗУ, при данной емкости нагрузки. Если нагрузочная способность шины недостаточна, то необходимо устанавливать шинные формирователи или буферные регистры на входах ЗУ. Для согласования сигналов по уровням также можно использовать согласующие формирователи. Состав и структура средств сопряжения ЗУ с системной шиной определяется архитектурой и нагрузочной способностью системной шины, а также типом ЗУ.

БИС ОЗУ общего назначения наиболее просто сопрягаются с системными шинами, имеющими раздельные шины адресов и данных. ОЗУ с двунаправленными входами данных сопрягаются с системной шиной данных (рис. 3.4), а ее адресные входы подключаются непосредственно к соответствующим разрядам адресной шины. На вход записи/чтения необходимо подать сигнал с управляющей линии записи/чтения, а на вход - строб записи/чтения.



Рисунок 3.4- Схема сопряжения ОЗУ с системной шиной
Если в составе системной шины нет линии управления чтением/записью, то можно использовать для этой цели сигнал с линии записи. Однако при этом необходимо контролировать временные соотношения между сигналами выборки и записи БИС. Для сопряжения ОЗУ с раздельными шинами данных и двунаправленной системной шиной ^необходимы согласующие шинные формирователи (рис. 3.5 а), или буферные регистры данных (рис. 3.5 б).



Рисунок 3.5- Схема сопряжения ОЗУ с системной шиной при отсутствии линии управления

чтением/ записью
Адресный селектор АС используется для настройки модуля на требуемый адрес в адресном пространстве ЗУ. БИС ОЗУ имеют уровни ТТЛ и не требуют дополнительных средств для согласования, а для согласования нагрузочной способности могут потребоваться шинные формирователи.
Постоянные запоминающие устройства (ПЗУ)

реализуются на БИС ПЗУ четырех типов:

  • с масочной записью данных,

  • однократно программируемые (ППЗУ),

  • многократно программируемые со стиранием ультрафиолетовым освещением (РПЗУ),

  • многократно программируемые с электрическим сти­ранием (ЭРПЗУ).

БИС ПЗУ объемом Ni, и разрядностью ni; имеет адресную шину разрядностью , выходную шину данных разрядностью ni и входы выборки БИС (рис. 3.6 а). Временные диаграммы сигналов на выводах БИС в режиме чтения показаны на рис.3.6 б . Формирователи выходов данных выполняются по схеме с открытым коллектором либо по схеме с тремя состояниями. БИС ПЗУ, выполненные по схеме с тремя состояниями, имеют вход разрешения выходов. Программируемые БИС ПЗУ имеют вход программирования, а для записи данных при программировании используются выводы данных БИС.



^ Рисунок 3.6- Назначение выводов (а) и временные диаграммы сигналов на них (б)
Наращивание разрядности и объема ПЗУ выполняется так же, как и для БИС ОЗУ. Для сопряжения ПЗУ с системной шиной необходимо сформировать сигналы выборки и чтения, удовлетворяющие временным соотношениям БИС ПЗУ. Основными временными параметрами при этом являются времена выборки адреса ТАА и цикла TCY. При сопряжении ПЗУ с системной шиной, имеющей раздельные шины данных и адресов, входы адресов и выходы данных ПЗУ подключаются непосредственно или через шинные формирователи к системным шинам адресов и данных соответственно (рис. 3.7). Входы выборки используются для адресной селекции ПЗУ, а вход разрешения выдачи – для подачи сигнала чтения. В ПЗУ, которые не имеют входа разрешения выходов, сигнал чтения подается на один из входов выборки.



^ Рисунок 3.7 – Схема сопряжения ПЗУ с системной шиной
В составе ЗУ ОЗУ и ПЗУ обычно используется контрол­лер, назначение которого состоит в следующем: мультиплекси­рование адресов, арбитраж доступа к памяти, дешифрация блоков, формирование сигналов записи/чтение. Приведем пример (рис. 3.8) структурной схемы контроллера ОЗУ динамического типа.



Рисунок 3.8 – Структурная схема контроллера ОЗУ
Представляется возможным формирование памяти тремя спо­собами (рис.3.9):

  • на одном кристалле (рис 3.9,а);

  • на двух кристаллах (рис 3.9,6);

  • на восьми кристаллах (рис 3.9.д);



Рисунок 3.9- Формирование памяти
ЛЕКЦИЯ 4 Буферная, стековая память,

1 Буферная память, её использование

2 Стековая память. Ветвление и выполнение подпрограмм обслужива­ния прерывания
В вычислительных системах наряду с рассмотренными видами памяти используются также буферная память и стековая память.

^ Буферная память используется для систем, имеющих под­системы с различным быстродействием, и в частности, с различ­ной скоростью передачи данных (рис. 4.1). Обычно обмен дан­ными в таких подсистемах реализуется с использованием преры­ваний или канала прямого доступа к памяти. При использовании прерываний формируется сигнал за­проса на обслуживание по мере готовности данных к обмену, на что теряется много времени.

Использование канала прямого доступа к памяти эффек­тивно с точки зрения быстродействия, но для его реализации не­обходим довольно сложный контроллер прямого доступа к памя­ти.



^ Рисунок 4.1 – Применение буферной памяти
Наиболее эффективно обмен данными между подсистемами с различным быстродействием реализуется при наличии между ними специальной буферной памяти.

^ Отличительной особенностью буферной памяти является запись данных с быстродействием и под управлением подсисте­мы 1, а считывание – с быстродействием и под управлением под­системы 2.

В общем случае память должна выполнять операции записи и считывания совершенно независимо и даже одновременно, что устраняет необходимость синхронизации подсистем. Буферная память должна работать по принципу «первое записанное слово считывается первым» (First Input First Output- FIFO).

Таким образом, под буферной памятью типа FIFO понима­ется ЗУ, которое автоматически следит за порядком поступления данных и выдаёт их в том же порядке, допуская выполнение не­зависимых и одновременных операций записи и считывания.

Покажем структурную схему буферной памяти типа FIFO ёмкостью 64x4 (рис. 4.2).



Рисунок 4.2 – Структурная схема буфера 64x4
На кристалле размещены 64 четырёхбитных регистра с не­зависимыми цепями сдвига, организованных в четыре последова­тельных 64 – битных регистра данных и 64 – битный управляю­щий регистр, а также схема управления. Входные данные посту­пают по линиям D10 – D13, а вывод данных осуществляется через линии D00 – D03. Ввод данных осуществляется управляющим сиг­налом SI (shift in), а вывод (считывание) – сигналом вывода (SO). Ввод данных производится при наличии сигнала готовности ввода IR (input ready), а вывод - наличии сигнала готовности вывода OR (output ready). Управляющий сигнал R (reset) производит сброс содержимого буфера.

Рассмотренный принцип организации FIFO допускает вы­полнение записи и считывания данных независимо и одновре­менно. Скорость ввода определяется временным интервалом, не­обходимым для передачи данных из Р1, а выводить данные мож­но с такой же скоростью.

В буферах FIFO, выполненных по МОП-технологии и имеющих ёмкость 64 слова, время распространения сигнала со­ставляет примерно 30 мкс, а в биполярных FIFO такой же ёмко­сти – примерно 2 мкс. Буферы можно наращивать как по числу слов, так и по их длине.

Стековой называют память, доступ к которой организо­ван по принципу: «последним записан – первый считан» ( Last In­put First Output- LIFO).

Использование принципа доступа к памяти на основе меха­низма LIFO началось с больших ЭВМ. В малых ЭВМ этот прин­цип используется при реализации процедур вызова подпрограмм и при обработке прерываний.

^ Принцип реализации стековой памяти показан на рис. 4.3 Когда слово А помещается в стек, оно располагается в первой свободной ячейке памяти. Следующее записываемое слово пере­мещает предыдущее на одну ячейку вверх и занимает его место и т.д. Запись 8-го кода после Н приводит к переполнению стека и потере кода А. Считывание слов из стека осуществляется в об­ратном порядке, начиная с кода Н, который был записан послед­ним. Выборка, например, кода Е невозможна до выборки кода F, что определяется механизмом обращения при записи и чтении типа LIFO. Для фиксации переполнения стека необходимо фор­мировать признак переполнения.

Перемещение данных при записи и считывании информа­ции в стековой памяти подобно тому, как это имеет место в сдви­гающих регистрах.



^ Рисунок 4.3 – Принцип работы стековой памяти
По структуре своей стек представляет собой совокупность регистров, связи между которыми организованы таким образом, что при записи и считывании данных содержимое стека автома­тически сдвигается.

Ёмкость стека ограничена (от нескольких единиц регистров до нескольких десятков регистров), поэтому в большинстве МП такой стек используется для хранения содержимого программного счётчика и его называют стеком команд, который реализуется, как мы видим, аппаратно. Основное достоинство аппаратного стека – это высокое быстро­действие, а недостаток – ограниченная ёмкость.

Лучшим вариантом организации стека в ЭВМ является исполь­зование областей памяти. Для адресации стека используется указатель стека, который предварительно загружается в регистр н определяет адрес последней занятой ячейки.

Помимо команд CALL (вызвать) и RET (возврат) по которым записывается в стек и считывается содержимое программного счётчи­ка, имеются команды PUSH (поместить) и POP (извлечь), которые ис­пользуются для временного запоминания в стеке содержимого регист­ров и их считывания соответственно.

Рассмотрим несколько примеров: 1) помещение (PUSH) в стек содержимого регистра адреса / данных и содержимого аккумулятора и регистра состояния: 2) извлечение (POP) из стека содержимого реги­стра адреса / данных и содержимого аккумулятора и регистра состоя­ния.

Помещение (PUSH) в стек содержимого регистра адреса/ данных (рис 4.4).



Рисунок 4.4 – Последовательность операций при помещении в стек содержимого регистра

адреса/ данных
Прокомментируем выполняемые операции.

1 Указатель стека МП декрементируетея от 220АН до 2209Н.

2 Указатель стека показывает на ячейку памяти 2209Н по адресной ши­не и старший байт 0000 00002 помещается в стек.

3 Указатель стека снова декрементируется от 2209Н до 2208Н,

4 Указатель стека показывает на ячейку памяти 2208Н (по адресной шине системы) и младший байт из регистра данных (0000 11112) за­гружается в стек.
^ Помещение (PUSH) в стек содержимого аккумулятора и регистра состояния (рис. 4.5)



Рисунок 4.5 – Последовательность операций при помещении в стек со­держимого аккумулятора и регистра состояния
Прокомментируем выполняемые операции.

1 До операции указатель стека указывает на последнюю ячейку стека. Её называют вершиной стек. Затем указатель стека декрементируется до2207Н.

2 Указатель стека указывает на ячейку памяти 2207Н и содержимое аккумулятора (0101 01012) загружается в стек по этому адресу.

3 Указатель стека декрементируется от 2207Н до 220611

4 Указатель стека указывает на ячейку памяти 2206Н. Содержимое регистра состояния (1111 11112) загружается по этому адресу.

Извлечение из стека содержимого регистра адреса/данных, а также извлечение из стека содержимого аккумулятора и регистра состояния покажем на рис. 4.6 а, б соответственно. Комментарии излиш­ни.



Рисунок 4.6 а - Извлечение (POP) из стека содержимого регистра адреса/ данных



Рисунок 4.6 б – Извлечение (POP) из стека содержимого аккумулятора и регистра состояния
Рассмотрим этапы обработки прерывания в типовом МП, для чего воспользуемся диаграммой (рис. 4.7).

1 Интерфейс ввода выдаёт сигнал требования прерывания в на­правлении МП.

2 МП завершает выполнение текущей команды, находящейся в памяти по адресу 2006Н.

3 Так как последующее обращение будет к команде по адресу 2007H, то содержимое счётчика команд (именно 2007Н) и содер­жимое большинства регистров МП помещается в СТЕК (зона ОЗУ). Это содержимое будет позже извлечено в определённом порядке в регистры МП и в счётчик команд.

4 МП разветвляется в определённый адрес памяти и начинает выполнение подпрограммы обслуживания прерывания (20D0H).

МП выполняет команды подпрограммы, которые обеспечивают выполнение операций ввода. По адресу 20DEH МП находит конец этой подпрограммы обслуживания и получает приказ вер­нуться в основную программу.

5 Перед возвращением в основную программу данные регистров и счётчик команд, помещённые в стек, возвращаются в МП.

6 Теперь счётчик команд отсылает МП в память по адресу 2007Н, т.е. в основную программу, и нормальное её выполнение про­должается.

Прерывание является очень нужным способом, позволяющим пе­риферии вмешиваться и заставлять МП выполнять требуемую операцию почти сразу.



Рисунок 4.7 – Этапы обработки прерывания

^ РАЗДЕЛ III МОДУЛЬ ВВОДА/ВЫВОДА
ЛЕКЦИЯ 4 Понятии о вводе/выводе информации....………………………………………........3

1 Назначение, характеристики модуля ввода/вывода, его составляющие-порты ввода/вывода

2 Интерфейс ввода и вывода информации

ЛЕКЦИЯ 5 Общие принципы построении интерфейса устройств ввода/вывода..……....14

1 Организация ввода и вывода информации в MПС

^ 2 Использование программируемых БИС для ввода/вывода информации

ЛЕКЦИЯ 6 Программируемый параллельный интерфейс (ППИ) КР580ВВ55........…….....24

1 Назначение, характеристики, каналы интерфейса

2 Устройство каналов, их про1ршмировапие, использование

ЛЕКЦИЯ 7 Программируемый контроллер примого доступа к памяти (ПК ПДП) КР580ВТ57……………………………………………………………………………………………41

1 Назначение ПК ИДИ, организация обмена данными принцип работы канала

2 Назначение выводов, устройство контроллера, пример его применения
^ Лекция 4 Понятия о вводе/ выводе информации

1 Назначение, характеристики модуля ввода/вывода, его составляющие - порты

ввода/вывода

2 Интерфейс ввода и вывода информации
Модуль ввода/вывода (В/В) предназначен для сопряжения микропроцессора с внешними устройствами (ВУ), которые делятся на два класса: ВУ ввода и ВУ вывода. К ВУ ввода современного компьютера относятся клавиатура, сканер, мышь, джойстик, предназначенные для ввода команд и данных в систему.

^ ВУ вывода это монитор, принтер, выполняющие функции вывода информации, т.е. её отображения. Микропроцессор КР580 разрешает подключать к ШД 256 устройств ввода и 256 устройств вывода.

Модуль В/В характеризуется:

  • числом каналов, каждый из которых обслуживает отдельное ВУ;

  • пропускной способностью;

  • разрядностью этих каналов.

Кроме того, каждый канал содержит средства сопряжения с системной шиной (интерфейс), средства управления вводом/выводом и реализуется аппаратными средствами, к которым относятся микросхемы и шины.

Тип канала выбирается с учётом его пропускной способности. Каналы с невысокой пропускной способностью реализуются как программные каналы с обслуживанием по программе или по прерыванию.

Каналы с высокой пропускной способностью строятся как не программные каналы прямого доступа к памяти (ПДП).

На рис.4.1 наряду с микропроцессорным модулем и модулем памяти показан модуль В/В, который состоит из n-каналов ввода/вывода, взаимодействующих с шиной данных через порты ввода и вывода. Каждый порт ввода и вывода имеет свой номер, позволяющий МП распознать порты и включать их в работу в нужный момент времени.


Данные через порт передаются (принимаются) при условии поступления адреса данного порта по адресной шине МП, образования управляющего сигнала ВМ и прихода управляющего сигнала ЧТВВ (ЗПВВ).

Для независимого (управляемого) ввода данных каждое устройство ввода подсоединяется к ШД через специальное устройство – порт ввода (рис. 4.2), который представляет собой микросхему, содержащую адресуемый многорежимный буферный регистр с тристабильными схемами и логикой управления.

Более точно можно сказать, порт-это регистр памяти со средствами сопряжения с ВУ и системной шиной.




^ Рисунок 4.2 – Структура порта ввода
Порт ввода сопрягается с ВУ через выходы шипы ввода. При стробируемом вводе порт принимает данные по стробу ввода и запоминает их.

Принцип действия порта ввода можно представить следующим образом. Двоичное число, которое нужно ввести в МП, набирается с помощью переключателя П и подается на выводы

К0 – К7, которые соединены с выводами М0 – М7, куда подключена ШД. Включение а0 – а7, а значит и разрешение прохождения данных через порт, производится при помощи управляющего сигнала ЧТВВ через ввод управления ВШ, Данные подаются на логическую схему совпадения 2И. Адресное число пересылается по восьми младшим разрядам А0 – А7 адресной шины МП, а порт имеет дешифратор, который в ответ на адрес выдает разрешающий сигнал ВМ на логический элемент 2И для включения а0 – а7.

Можно кратко сформулировать условия работы порта ввода. Данные через порт передаются, если:

  • образуется управляющий сигнал ВМ;

  • поступают адресные данные порта на А0 – А7;

  • поступает управляющий сигнал ЧТВВ на вывод ВШ.

Сигнал па включение а0 – а7 подается тогда, когда ВМ=1 и ВШ=1 на логическом элементе 2И. Дешифратор адреса преобразовывает адресный код в разрешающий сигнал, посылаемый в нужный порт. Роль а0 – а7 могут выполнять логические элементы И, ИЛИ.

Порт вывода (рис. 4.3) устроен аналогично, но данные перемещаются в другом направлении (от выводов ШД М0 – М7 к выводам К0 – К7). На управляющий вывод BШ порта подается сигнал ЗПВВ.

Рассмотрим схему соединения модулей МПС (рис. 4.1). Микропроцессор КР580 может выполнять четыре вида действий с данными:

  • чтение (получение) данных из памяти;

  • запись (размещение) данных в память;

  • чтение данных из устройства В/В;

  • запись данных в устройство В/В.




Рисунок 4.3 – Структура порта вывода
Исполнение этих действий (рис. 4.1) осуществляется при помощи четырёх управляющих сигналов:

  • ЧТЗУ, посылаемых в память при чтении данных;

  • ЗПЗУ, посылаемых в память при записи данных;

  • ЧТВВ, посылаемых в порт ввода при чтении данных;

  • ЗПЗУ, посылаемых в порт вывода при записи данных.

Эти сигналы являются основными управляющими сигналами по пересылке данных. Эти сигналы формируются через выводы ПМ, ВД, С микропроцессора и блок Р (блок регистров).

^ Приведём пример пересылки данных с использованием портов ввода и вывода.

Пусть микропроцессору требуется получить данные из ячейки памяти №1. Для этого он выдаст на адресную шину число 0000 0000 0000 0000. Это число одновременно поступает и на дешифратор памяти, разрешая работу ячейки №1, и в дешифратор адресов портов, вызывая порт ввода №1 и порт вывода №1. Из этих трех вызванных источников данных к шине данных подключится только один – ячейка памяти №1, потому что микропроцессор пошлет на шипу данных дополнительный сигнал ЧТЗУ.

Аналогично, если нужно получить данные из порта ввода №1, то микропроцессор должен послать по шине управления в порт ввода №1 сигнал ЧТВВ, в результате чего данные только этого порта поступят на шину данных, т.к. этот порт получит два разрешающих сигнала: сигнал ВМ от дешифратора и сигнал ЧТВВ от шины управления.

В случае записи данных в ячейку №1 нужно послать в память сигнал ЗПЗУ, а при записи в порт ввода №1 – сигнал ЗПВВ.

^ Можно сделать вывод: комбинируя двоичным адресным кодом на шине адреса и сигналами ЧТЗУ, ЗПЗУ, ЧТВВ, ЗПВВ на шине управления, можно независимо друг от друга вводить и выводить данные из любой ячейки памяти и любого порта ввода или вывода.

^ 2 Интерфейсы устройств ввода/вывода реализуются в виде программируемых БИС, структура и функции которых изменяются при программировании.

Модуль ввода/вывода в зависимости от назначения системы может содержать как совокупность портов ввода/вывода на основе буферных регистров КР580ИР82 и шинных формирователей КР580ВА86, так и некоторые из специализированных интерфейсных БИС:

КР580ВВ55А – программируемое устройство ввода/вывода параллельной информации для организации параллельного интерфейса;

КР580ВВ51А – программируемое устройство ввода/вывода последовательной информации для организации последовательного интерфейса;

КР580ВИ53 – трёхканальный программируемый интервальный таймер для формирования и счета временных интервалов;

КР580ВВ79 – программируемое устройство ввода данных с клавиатуры;

КР580ВГ75 – программируемый контроллер вывода информации на электронно-лучевую трубку;

КР580ВК91 – программируемое устройство сопряжения МПС с каналом общего пользования (применяется в информационно-измерительной технике).

Особенностью перечисленных БИС является программирование с помощью управляющих слов (УС), для записи которых в состав интерфейса вводят программно доступные регистры управляющих слов(РУС).

Различают структуры интерфейсов программных каналов ввода/вывода с обслуживанием по программе и с обслуживанием по прерыванию (рис. 4) и (рис. 5) соответственно.

В программном канале с обслуживанием по программе обмен осуществляется по инициативе микропроцессора и под его управлением.

Микропроцессор выполняет программный опрос состояния готовности порта, и если порт готов к обмену (данные приняты в порт при вводе или считаны при выводе), то микропроцессор осуществляет обмен ввода или вывода данных. Если порт не готов к обмену, то микропроцессор повторно анализирует готовность порта, ожидая ввод данных от ВУ или вывод из ВУ.

Для программного обмена с обслуживанием по программе интерфейс содержит порт состояния, предназначенный для хранения состояния готовности.



Рисунок 4.4 – Структуры интерфейсов программных каналов ввода (а) и вывода (б) по программе


Рисунок 4.5 – Структуры интерфейсов программных каналов ввода (а) и вывода (б) по прерыванию
Поясним взаимодействие микропроцессора и портов ввода/вывода, для чего используем схемы портов с реальной маркировкой сигналов (рис. 4.6).



^ Рисунок 4.6 – Схемы портов с реальной маркировкой сигналов:

а) порт ввода; б) порт вывода
Ввод данных. При вводе данных состояние готовности устанавливается по стробу ввода (STB), который одновременно записывает данные в порт данных.

Микропроцессор считывает содержимое порта состояния через ШД, выставляя его адрес на ША, а затем анализирует его содержимое.

По окончании считывания о состоянии готовности ВУ формируется сигнал и порт состояния сбрасывается. Выход строба вывода указывает, заполнен регистр порча вывода данных или нет.

^ Вывод данных. ВУ подтверждает приём данных стробом подтверждения вывода данных (по нему определяется готовности порта состояния).

Процессор записывает данные в порт вывода сигналом записи . Окончание записи осуществляется сигналом .

Выход подтверждения ввода порта состояния указывает о состоянии готовности порта ввода данных и его можно использовать для синхронизации вывода через выход цепи ВУ.

Каналы могут формироваться не только на основе портов, но и на основе буферных запоминающих устройств (БЗУ). Для управления БЗУ ввода/вывода (рис. 4.7) необходимо на их выводы подать сигналы «Адрес порта, Адрес записи, Адрес чтения». Можно сказать, что БЗУ – это ОЗУ небольшого объема и служит средством адресации и сопряжения с ВУ и системной шиной.



Рисунок 4.7 – Буферные запоминающие устройства

а) ввода; б) вывода

Для адресации БЗУ в состав интерфейса включается адресный регистр. На рис. 4.8 обозначение в виде наклонной черты означает разрядность данных (адреса); запись (Nxn) – это число строк и число столбцов памяти БЗУ соответственно

Сопряжение интерфейса с системной шиной представлено на рис. 4.8.



Рисунок 4.8 – Подключение интерфейса к системной шине
Разрядность портов ввода/вывода или БЗУ определяется разрядностью пересылаемых данных и разрядностью системной шины.

^ Существует правило:

если разрядность данных меньше разрядности шины данных, то разрядность порта выбирается равной разрядности данных;

если разрядность данных больше разрядности шины данных, то разрядность порта выбирается равной разрядности шины данных, а число портов определяется соотношением разрядности пересылаемых данных и разрядности системной шины.
^ Лекция 5 Общие принципы построения интерфейса устройств ввода/вывода

1 Организация ввода и вывода информации в МПС

2 Использование программируемых БИС для ввода/вывода информации
Рассмотрим общие принципы построения интерфейса устройств ввода/вывода, которые называют периферийными. На практике интерфейс периферийных устройств часто представляет собой совокупность портов ввода – вывода информации с дополнительными схемами управления. Сами порты ввода — вывода можно рассматривать как своеобразную «буферную память» между собственно процессором и периферией. При выводе информации из МПС данные сначала попадают в порт вывода, фиксируются и только затем поступают в периферийное устройство. При вводе информации в МПС сначала происходит фиксация текущей информации па выходах периферийного устройства в портах ввода, а затем – считывание се в процессор. Для удобства читателя дальнейшее изложение построим на примерах.

^ Как организовать вывод из МПС однобитовой информации? Для этой цели можно использовать обычный D-триггер (рис. 5.1), вход данных которого соединен с любым разрядом ШД МПС, например DO. Дешифратор адреса устройства ввода – вывода можно предельно упростить, выполнив его в виде логического элемента И – НЕ, на прямой вход которого подключен любой разряд ША МПС, a на инверсный – сигнал с шипы управления (запись в устройство ввода - вывода). Цикл записи информации в устройство ввода - вывода подобен циклу записи в память. По команде OUT 80H (80H - шестнадцатеричный адрес порта) сначала на шину адреса будет выдан код 8080H (1000 0000 1000 0000 В) и разряд А15 станет равным 1. Напомним, что однобайтовый адрес порта выдастся и в младшем, и в старшем байте адреса. Затем данные, подлежащие выводу, поступят на ШД МПС и будет сформирован сигнал , по окончании которого передним фронтом импульса на входе С произойдет запись требуемого бита в триггер. Например, если из процессора выдан код 0000 0001, то сигнал на выходе порта станет равен логической 1 и исполнительное реле сработает.



^ Рисунок 5.1 – Принцип организации вывода однобитной информации с помощью D-триггера.
Как организовать вывод из МПС однобайтовой информации? Для этого необходимо в схеме на рис. 5.1 заменить триггер регистром и соединить его информационные входы с шиной данных МПС (рис. 5.2). Такой порт можно использовать, например, для управления семисегментным индикатором. Каждый сегмент индикатора а – h представляет собой фотодиод, который будет светиться при наличии напряжения высокого уровня на соответствующем выходе регистра.



^ Рисунок 5.2 – Принцип организации вывода байтовой информации с помощью регистра
Как организовать ввод однобитовой информации в МПС? Используем для этой цели обычный D-триггер, выход которого соединен с одним из разрядов ШД МПС через выходной буфер (электронный ключ) (рис. 5.3). О назначении буфера вы, видимо, догадались. Он отключает порт ввода от ШД МПС тогда, когда процессор не «хочет иметь с ним дело», например, когда процессор обменивается данными с памятью. Если бы этого буфера не было, то разряд D0 ШД МПС всегда имел бы потенциал выхода Q триггера, что недопустимо. Процесс ввода данных подобен процессу считывания информации из памяти и начинается с выдачи адреса порта ввода на шину адреса (команда IN 80H). Далее формируется сигнал , фронт которого стробирует процесс фиксации текущего состояния датчика (реле, конечного выключателя и т.д.) в триггере. Одновременно открывается выходной буфер и зафиксированная в порту виола информация поступает на шину данных МПС. После её считывания и МПС сигнал снимается и выход буфера переходит в состояние, характеризуемое большим сопротивлением, отключая порт от ШД.



^ Рисунок 5.3 – Принцип организации ввода однобитовой информации с помощью D-триггера и буфера данных

Как организовать ввод однобитовой информации в МПС? Для этого необходимо заменить в схеме на рис. 5.3 триггер регистром, а однобитовый выходной буфер – 8-разрядным буфером (рис. 5.4).

Электронная промышленность выпускает специальные регистры для ввода – вывода информации в МПС, например БИС КР580ИР82 (рис. 5.5). Их особенностью является встроенный выходной каскад с выходами, имеющими дополнительное, третье состояние, характеризующееся большим сопротивлением. Такой регистр без дополнительных схем выполняет функцию порта ввода данных (рис. 5.6). Вход «разрешения выхода» регистра соединяется непосредственно с шпион управления МПС (сигнал ), а вход синхронизации записи С подключается к выходу дешифратора адреса.



^ Рисунок 5.4 – Принцип организации ввода байтовой информации с помощью регистра и буфера данных


Рисунок 5.5 – Восьмиразрядный буферный регистр


Рисунок 5.6 – Организация порта ввода на ИС КР580ИР82
В последнее время для ввода информации все шире применяются так называемые шинные формирователи с тремя состояниями как на входах, так и на выходах, например

БИС КР580ВА86 (рис. 5.7 а). Вход является входом разрешения работы БИС, а вход TF – входом направления передачи информации. На рис. 5.7, б приведены режимы работы БИС. Вы видите, что при передаче данных с входов А па выходы B входы А находятся в состоянии, характеризуемом большим сопротивлением. Это значит, что ток от периферийного устройства при вводе данных в МПС не потребляется. Последнее обстоятельство позволяет легко согласовывать электрически порт ввода с любой периферией.



^ Рисунок 5.7 – Восьмиразрядный формирователь с тремя состояниями на входах- выходах КР580ВА86
Как организовать несколько портов ввода - вывода информации? Используем для ввода информации буферы с тремя состояниями входов - выходов, а для вывода - обычные регистры (рис. 5.8). Дешифратор адреса ввода - вывода подключим к ША МПС. Его выходы будем рассматривать как сигналы выбора отдельных портов , и т.д. На вход разрешения работы порта ввода подадим сигнал, который будет активен только тогда, когда данный порт выбран и сформирован сигнал чтения ввода - вывода (). Во всех других случаях порт «не выбирается», т.е. его входы и выходы переходят в высоко импедансное состояние и не



^ Рисунок 5.8 – Принцип организации ввода/вывода в микропроцессорных системах управления
мешают обмену с другими устройствами. Запись информации в порт вывода разрешена только в том случае, если соответствующий порт выбран (CSj) и сформулирован сигнал записи в устройство ввода/ вывода (). В остальных случаях порты вывода будут хранить ранее записанную в них информацию.

^ Как использовать специализированные многофункциональные программируемые БИС для ввода/вывода информации? Большинство микропроцессорных комплектов БИС содержат специальные БИС, ориентированные исключительно на ввод/вывод данных. Они называются программируемыми контроллерами (в некоторых источниках – адаптерами), позволяют передавать (принимать) данные как в параллельном, так и в последовательном коде.

В качестве примера использования БИС рассмотрим КР580ВВ55. Периферийное оборудование (датчики, АЦП, ЦАП и т.д.) подключаются к трем двунаправленным портам (рис. 5.9 ) РА, РВ или PC, каждый из которых программным путём настраивается на ввод или вывод данных. Шина данных БИС соединяется с ШД МПС, адресные входы А0, А1 – с соответствующими разрядами шины адреса МПС, а вход CS – как обычно, с одним из выходов дешифратора адреса ввода/вывода. Входы RD и WR подключаются к шине управления МПС. Вход R обеспечивает установку начального состояния БИС. Буферы шины данных имеют третье, высоко импедансное состояние, что позволяет подключать к ШД МПС любое количество таких БИС.

Если данная БИС выбрана (имеется сигнал CS), то два младших бита шины адреса А0 и А1 определяют, к какому из четырёх внутренних устройств БИС последует обращение (рис. 5.9,а) к портам РА, РВ, РС или к специализированному регистру, называемому регистром управляющего слова (РУС).

Запись информации в РУС производится с целью программной настройки режимом работы БИС, а запись в один из портов или чтение из него – с целью вывода (или ввода) информации из (в) МПС.

Возможны три режима ввода – вывода. Режим 0 – простой ввод – вывод без дополнительных управляющих сигналов. При чтении порта в МПС передается мгновенное состояние входных линий порта. При записи информация хранится на выходе порта до новой записи пли смены режима работы БИС. Режимы 1 и 2 используются для однонаправленного и двунаправленного стробируемого ввода – вывода с помощью специальных сигналов управления, сопровождающих обмен (сигналов квантования). Эти режимы позволяют вводить и выводить информацию по прерываниям. Подробное описание режимов работы БИС можно найти в Л. Мы же ограничимся тем, что рассмотрим приемы программирования БИС.

Формат 1 управляющего слова используется для задания режимов работы портов и направления передачи информации (рис. 5.9, б). Вы видите, что биты D6, D5 определяют режим работы порта РА, бит D4 – направление передачи данных через порт РА. Биты D2, D1 используются дли задания направления передами и режима работы порта РВ. Порт PC разделен па два четырех битовых порта, работающих в режиме 0 с независимым заданием направления передачи битами D3 и DO.

Пример. Все порты работают в режиме 0, PA, PВ – на вывод, PC – на ввод. Управляющее слово имеет вид 10001001 В=89H.

БИС допускает поразрядный сброс и установку отдельных разрядов порта PC путем записи в РУС управляющего слова в формате 2 (рис. 5.9, б). Это значит, что порт PC можно рассматривать как совокупность восьми однобитовых портов с независимым, управлением.


^ Лекции 6 Программируемый параллельный интерфейс (ППИ) КР580ВВ55

1 Назначение, общая характеристика, каналы интерфейса
1   2   3



Скачать файл (10274.9 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации