Выработка внутренних стробирующих сигналов
Следующая важная функция интерфейсной части УС — выработка внутренних стробирующих сигналов синхронно с магистральными командными сигналами (-IOR, -IOW, -MEMR, -MEMW) в случае обращения по адресам проектируемого УС. Условно узел, выполняющий эту функцию, может быть представлен в следующем виде (рис. 9.16). На его входы подаются сигналы ADRO ... ADRN с выхода селектора адреса, SBHE (в случае необходимости разделения 8- и 16-разрядных циклов), а также буферированные магистральные стробы записи и чтения (R и W). Выходы — это сигналы STRO ... STRn, соответствующие обращениям с записью или чтением по всем адресам или группам адресов УС. Рассмотрим несколько методов построения этого узла.
Рис. 9.16. Структура блока выработки внутренних стробов. |
Самый простейший подход — использование логических элементов — удобен в случае малого числа внутренних стробов STR. На рис. 9.17 показана схема для двух адресов УС, доступных по чтению и записи. Достоинства такого подхода — малое число элементов и высокое быстродействие, а недостаток состоит в том, что каждый раз приходится разрабатывать свою схему для нового УС.
В случае необходимости выработки большого числа внутренних стробирующих сигналов удобно использовать микросхемы дешифраторов. Пример такого решения представлен на рис. 9.18. Здесь два младших разряда адреса подаются не на селектор адреса, а непосредственно на дешифратор, верхняя половина которого управляется сигналом с селектора адреса и сигналом -IOR, а нижняя — сигналом с селектора адреса и -IOW. Таким образом, выходы STRO ... STR3 соответствуют циклам чтения из четырех последовательных адресов, a STR4 ... STR7 — записи в эти адреса. Отметим, что не обязательно надо использовать все выходы дешифратора. Достоинства этого подхода — однотипность схемы рассматриваемого узла для всех УС и малые аппаратурные затраты при необходимости получения большого количества внутренних стробов обмена.
Рис. 9.17. Выработка внутренних стробов с помощью логических элементов
В некоторых случаях удобно не разделять интерфейсную часть УС на селектор адреса и формирователь внутренних стробов.
Рис. 9.18. Использование микросхемы дешифратора для выработки внутренних стробов |
Пусть, например, УС должно работать только в циклах записи по его адресам (или только в циклах чтения). При этом оба рассмотренных узла могут быть выполнены на одной микросхеме ППЗУ (рис. 9.19). Здесь к моменту прихода магистрального строба обмена ППЗУ уже успеет сформировать выходные сигналы (закончится время выборки адреса). Поэтому внутренние стробы обмена будут задержаны относительно магистральных стробов только на время выбора ППЗУ. Такой недостаток всех микросхем ППЗУ, как неопределенность выходных сигналов в течение некоторого времени после любого изменения адреса, здесь не сказывается на работе схемы. Однако не следует надеяться, что схема будет работать также нормально при подаче одного или обоих магистральных стробов обмена (-IOR и -IOW) на адресные входы ППЗУ.
Особо следует остановиться на организации 16-разрядного обмена и разделении пересылок старшего и младшего байтов. Здесь участвуют два сигнала магистрали, которые не используются при 8-битном обмене: -SBHE и -I/O CS 16 (или -MEM CS 16). При этом сигнал -SBHE должен обрабатываться УС только в случае необходимости как 16, так и 8-разрядного обмена (вспомним, что он определяет тип цикла обмена совместно с сигналом SAO в соответствии с таблицей 9.3). На рис. 9.20 в качестве примера приведена схема формирователя внутренних стробов для 16-разрядного УС, работающего только в цикле записи 16-разрядного слова, старшего байта или младшего байта.
Рис. 9.19. Объединение селектора адреса и формирователя внутренних стробов. |
Рис. 9.20. Реализация 8 и 16-разрядной записи в 16-разрядное УС. |
Выходной строб формирователя STR0 соответствует записи старшего байта или слова, а выходной строб STRI — записи младшего байта или слова. Сигнал -I/O CS 16 вырабатывается при любом обращении к нашему УС, детектируемым селектором адреса. Отметим, что этот сигнал может формироваться и элементом с тремя состояниями, но в этом случае надо обеспечить активный нулевой уровень при селектировании адреса и высокоимпедансное состояние в противном случае (рис. 9.21). Это предотвратит конфликт на линии -I/O CS 16 сигналов от разных плат расширения.
Рис. 9.21. Использование элемента с тремя состояниями для формирования сигнала - I/O CS 16. |
Дата добавления: 2016-03-10; просмотров: 1250;