Регистры на микросхемах
Начнем с рассмотрения четырехразрядного регистра на микросхеме ТТЛ 74173. В программе EWB войдем в меню выбора цифровых микросхем (Digital ICs) и далее в библиотеку моделей с номерами 741 хх. Найдя нужную микросхему (см. рис. 147,а), выводим ее в центр рабочего экрана и щелкаем по ее УГО ПКМ, а затем - ЛКМ по позиции Help в появившемся подменю. На экране появится таблица истинности данной микросхемы (см. рис. 147,6). Как следует из ее ТИ и цоколевки (см. рис. 147,а), эта микросхема представляет собой четырехразрядный статический регистр, построенный на D-триггерах с прямыми динамическими входами 1D...4D, входом сброса Clear и выходами 1Q...4Q с третьим (Z) состоянием, управляемым сигналом G1' и G2*. При обычной работе на управляющих выводах надо задать низкий уровень напряжения; аналогично низкий уровень напряжения подается на входы разрешения записи М и N. Вход сброса имеет высокий активный уровень. Стоящий в таблице символ POS - усеченное от POSITIVE - положительный, означает, что смена состояний D-триггеров происходит, когда напряжение тактового импульса нарастает от лог. О до лог. 1. Таким образом, данные поступают в регистр на фронте каждого тактового импульса CLC. Для исследования регистра соберем схему, в которой в качестве источника данных будем использовать генератор слов (Word Generator). Этот прибор выбирается в панели Instruments по его пиктограмме L2SS2J. После двойного щелчка Л КМ по схемному изображению генератора (рис. 148,а) откроется его лицевая панель с установочными и управляющими кнопками (см. рис. 148,6). На выходах генератора (рис. 148,а) можно получить коды шестнадцатиразрядных двоичных слов, выбираемых на пользовательской панели. Для набора слова надо щелкнуть ЛКМ в соответствующем разряде экранного буфера (заполненного нулями) и набрать с клавиатуры соответствующую цифру 0 или 1, стоящую в данном разряде. Дальше, как при печати таблиц, лучше пользоваться клавиатурой Все комбинации задаются в шестнадцатеричном коде. Номер редактируемой ячейки показывается в окошке Edit блока Address, при этом верхняя ячейка считается нулевой. Следующее окошко Current показывает номер текущей ячейки, кодовая комбинация с которой в данный момент поступает на выход генератора В окошках Initial и Final указываются соответственно номер начальной и конечной ячеек, в которые заносится информация. Занесение данных в выделенную ячейку можно выполнить в коде ASCII или бинарном коде (окошко Binary). При печати слов в этих кодах программа автоматически преобразует их в гексагональный код и заносит в редактируемую ячейку. Этим можно воспользоваться для занесения цифр шестнадцатеричного кода от А до F. При наборе слов в ячейках в шестнадцатеричном коде, можно увидеть их бинарное представление. 16 нижних окошек на лицевой панели служат для индикации состояний разрядов на выходе генератора в процессе его работы. В схемном компоненте генератора (рис. 148,а) этим показаниям соответствуют уровни напряжения на 16 клеммах. С этих клемм поразрядные сигналы по подключенным к ним проводам подаются на соответствующие цифровые узлы. В правой части этого схемного компонента мы будем использовать также нижнюю из двух клемм для получения тактовых импульсов. Частота следования тактов задается на лицевой панели в окошке Frequency (с учетом единиц измерения Hz, kHz, MHz). Генератор может работать с этой частотой при нажатии на кнопку Cycle или с заранее выбранного слова до конца при нажатии на кнопку Burst. Очень удобным является также пошаговый режим (Step), заменяющий цифровые ключи. Кнопка Совет При проведении моделирования с цифровыми устройствами полезно иметь перед глазами таблицу соотношений между десятичными, двоичными и шестнадца-теричными числами в пределах 0-15ю, например, для этого можно воспользоваться левой половиной таблицы 3. В случае использования больших чисел целесообразно выполнять переводы из одних кодов в другие на компьютере, обратившись к калькулятору, входящему в пакет стандартных программ Microsoft Office. Рис. 149. 4-разрядный статический регистр на микросхеме 74173 (EWB) Собрав схему по рис. 149, проведем испытания регистра. Открыв лицевую панель генератора слов, сделаем на ней необходимые установки и выберем пошаговый режим (см. рис. 148,6). Включаем моделирование и, нажимая многократно ЛКМ клавишу Step, шаг за шагом загружаем в регистр выбранные слова, что соответствует двум нижним строкам ТИ (рис. 147,6). Очистку регистра можно произвести ключом [R], кратковременно подав на вход CLC лог. 1 (см. верхнюю строку ТИ на рис. 147,6). Если в схему добавить управление по входам разрешения записи М, N и выхода GT, G2', введя дополнительные ключи или специальные кодовые сигналы от генератора, то можно исследовать и другие режимы работы регистра Исследуем работу этой же интегральной схемы в программе МС. Выберем из цифровой библиотеки компонентов микросхему 74173 и будем использовать следующие генераторы цифровых сигналов: типа Stiml - генератор одноразрядного цифрового сигнала как тактовый и Stim4 - генератор четырехразрядного цифрового сигнала в качестве генератора данных, задав их в следующем формате: .DEFINE G1 + +0NS 0 + label=begin + +250NS 1 + +250NS 0 + +250NS goto begin -1 times .DEFINE G2 +0NS0 +label=start +500NS incr by 1 +1000NS goto start until GE F Для индикации выходов регистра по-прежнему будем использовать дешифратор двоичного кода 7448 в сборке с семи-сегментным индикатором (см. рис. 101). Собранная схема показана на рис. 150,а и, соответственно, на рис. 150,6 - графики состояний ее цифровых узлов. Здесь надо отметить, что как состояния цифровых узлов, так и показание индикаторного дисплея соответствуют состоянию регистра в конечный момент времени моделирования. На рис. 150 - это 5.0и = 5 микросекунд. (Напомним, что в программе МС дольная приставка «микро» обозначается латинской буквой «и», а основная единица измерения (s -секунда) опускается; десятичным разделителем служит не запятая, а точка.) Графики двоичных сигналов на рис. 150,6 сверху вниз таковы: d(18) - тактовые импульсы; d(16)...d(13) - входы регистра; d(9)...d(12) - выходы регистра Если сделать отсчет по графику для входных и выходных сигналов в момент 5.0и (по его ординате), то с учетом расположения разрядов в обоих случаях получим 1001(9 - на индикаторе после декодирования) Если же в меню анализа Transient выбрать другое время окончания моде-лирования, то, как это следует из приведенных графиков, отсчет будет иным, например для З.Ои получим 01012=5ю. Примером четырехразрядного статического сдвигового регистра на микросхеме КМОП может служить микросхема 4015. В программе EWB имеется подборка микросхем сдвиговых реги- SR6 стров, находящаяся в библиотеке Digital no пиктограмме------- (SRG - сокращение от Shift REGister - сдвиговый регистр) Открывающаяся библиотека регистров показана на рис. 151 Выберем необходимую микросхему. Она имеет в одном корпусе два четырехразрядных регистра, отмаркированных соответственно буквами А и В. Все триггеры в данной микросхеме двухступенчатые D-типа. Соберем схему на регистре В (см. рис. 152,а). Для удобства интерпретации результатов выход регистра будем контролировать и в цифровой форме и поразрядно логическими пробниками. В качестве данных будем использовать выход самого младшего разряда генератора слов, подав сигнал с соответствующей клеммы на последовательный вход DB (Data В) Тактовые импульсы с генератора подадим на вход синхронизации СРВ (Clock Pulse В). Регистр имеет вход асинхронного сброса MRB (Mode control Reset ВО), действующего при лог. 1. Мы соединили его с выходом второго разряда генератора, поэтому, задавая в определенной ячейке двоичный выход в этом разряде лог 1, будем автоматически получать сброс регистра. Наберем следующие кодовые последовательности: 0000, 0001, 0000, 0001, 0000, 0003. Нажмем клавишу Step. Включим моделирование на дисплее загорится 0, индикаторы не горят. Нажмем Step дисплей - 1, индикаторы - 0001. Еще раз Step: дисплей - 2, индикаторы -0t)10 Далее, Step: дисплей - 5, индикаторы - 0101. Продолжаем, Step дисплей - А, индикаторы - 1010. Последний раз -Step дисплей - 0, все разряды обнулены и индикаторы - 0000б) Рис. 152. Четырехразрядный сдвиговый регистр на микросхеме 4015 (EWB) Среди различных регистров в интегральном исполнении выделяется однокорпусная микросхема 74194, представляющая собой четырехразрядный двунаправленный универсальный регистр сдвига. Этот регистр позволяет сдвигать информацию 228 и влево, и вправо, загружать данные как последовательно, так и параллельно. Регистр можно каскадировать и использовать для кольцевого перемещения информации. В программе EWB, войдя в библиотеку регистров, выбираем микросхему 74194 и, обратившись к предметной помощи, открываем ТИ этого регистра (см. рис. 153,а). Анализ этой таблицы показывает, что если на вход (CLEAR)'поступает напряжение низкого уровня, то на выходах QA...QD также устанавливается низкий уровень независимо от состояний всех других входов (они помечены меткой безразличного состояния х). При подаче на вход (CLEAR)" напряжения низкого уровня, режим работы регистра определяется состояниями входов S1 и SO. Данные, поступающие последовательно на вход SL (Serial Left - последовательно влево), когда на вход SO подается напряжение низкого уровня, а на вход S1 - напряжение высокого уровня (S1=1,S0=0), сдвигаются влево (в соответствии с принятым выше определением понятий «лево» и «право») на каждом фронте тактового импульса CLC (на переходе - POS). Сдвиг данных вправо происходит, когда на вход SO подается напряжение высокого уровня, а на вход S1 - напряжение низкого уровня (S1=0, S0=1), при этом данные поступают последовательно на вход SR (Serial Right - последовательно вправо). Синхронная параллельная загрузка данных через входы A D производится при S1=S0=1. В это время последовательные вводы и сдвиги запрещены (соответствующие порты заперты). Заканчивая рассмотрение таблицы, укажем, что дополнительные индексы 0 и п, которыми помечены выходы Q, означают их состояния соответственно до и после прохождения тактовых импульсов. В сжатом виде таблица операций такова: S1 SO ■ Операция
|