РЕГИСТРЫ
Лабораторная работа № 6 ИЗУЧЕНИЕ РЕГИСТРОВ И СЧЕТЧИКОВ Цели работы: 1. Ознакомиться с назначением и принципом действия регистров. 2. Собрать и исследовать работу параллельного последовательного (сдвигового) и универсального регистров на ИМС KI55TM5 и К155ИР1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ РЕГИСТРЫ Регистр - это узел цифровой ЭВМ, предназначенный для приёма, хранения, выдачи и преобразования информации. В устройстве управления ЭВМ регистр принимает из запоминающего устройства и хранит код команды, которая будет выполняться в течение очередного такта работы машины. В АЛУ регистр передает в сумматор слагаемые, а также осуществляет сдвиг чисел на определенное число разрядов вправо или влево при осуществлении таких операций, как умножение, деление и др. Их также можно использовать для преобразовании параллельного кода числа в последовательный и наоборот. В автоматических устройствах регистры могут применяться как самостоятельные узлы в распределителях кольцевых счетчиках, переключающих устройствах и др. В качестве элементов хранения в регистрах используются RS, JK и D триггеры. Их число соответствует количеству разрядов кода числа. Кроме триггеров в состав регистров входят логические элементы. На практике применяются различные способы записи информации (чисел) в регистр и ее считывания из регистра. В соответствии с этим регистры делятся на параллельные, последовательные (сдвиговые) и параллельно-последовательные. В параллельном регистре все разряды числа вводятся и выводятся одновременно, причем каждый разряд по своей шине, т.е. в параллельной форме. В последовательном регистре разряды числа вводятся и выводятся последовательно, разряд за разрядом, по одной входной и выходной шине. В параллельно-последовательном регистре ввод числа может быть произведен в параллельной форме, а вывод в последовательной или наоборот. Практическая реализация всех этих методов записи и считывания информации обеспечивается различными способами соединения между собою триггеров, входящих в состав регистра. Так, в одной из возможных схем параллельного регистра (регистра хранения), представленной на рис. 1, основной частью ("хранилищем" информации) является n синхронных RSC-триггеров, связанных между собой только по синхровходам "С". Такая связь обеспечивает одновременную (синхронную) работу всех триггеров по разрешающему сигналу на шине "С". Следует отметить, что объединение синхровходов характерно для схем регистров всех типов. Существенно, что входы и выходы триггеров друг с другом не связаны. Это обеспечивает независимое от состояния других триггеров регистра функционирование каждого триггера, что необходимо для параллельного ввода и вывода информации. Разрядность регистра определяется количеством триггеров, входящих в его состав. Обнуление, прием и выдача информации производится не в любой момент времени, а только по команде. Для выполнения этого требования в схеме рис. 1 предусмотрены специальные шины ("Уст. 0", "Прием", "Выдача информации"), с которыми через конъюнкторы соединяются соответствующие входы и выходы триггеров регистра. Для установления регистра в нулевое состояние нужно одновременно подать сигнал "1" на шину "Уст. 0" и на шину "С". Запись информации, поступившей на входы X, производится при подаче сигнала "1" на шины "Прием" и "С". Выдача информации в прямом и обратном коде происходит при подаче единичного сигнала на соответствующую шину. В последовательном (сдвиговом) регистре информация записывается в последовательном коде, а выдаваться может как в последовательном, так и в параллельном. Следовательно, такой регистр является преобразователем последовательного кода в параллельный. Кроме того, в последовательном регистре можно осуществить сдвиг двоичных чисел в сторону старшего (влево) и младшего (вправо) разрядов, на один или несколько разрядов одновременно. Для построения последовательного регистра нужно его триггеры (каждый из которых соответствует разряду числа) соединить последовательно и обеспечить передачу информации из каждого разряда в последующий с одновременным приемом новой информации из предыдущего. При этом следует учесть, что прием и передача информации триггером не могут происходить одновременно, поэтому их необходимо разделить во времени в каждом разряде регистра. Это можно осуществить за счет применения двухступенчатых синхронных JК- и RS-триггеров или синхронных D-триггеров с динамическим управлением записью (рис. 2). Если в регистр записывают двоичное число, начиная с младшего разряда, то левый триггер регистра будет хранить старший разряд числа, а правый - младший. Можно записывать двоичное число в регистр, начиная со старшего разряда, но в этом случае входной триггер будет представлять младший разряд, а последний (правый) - старший. В дальнейшем будем записывать (если это не оговорено особо) число в регистр, начиная с младшего разряда. По фронту тактового импульса во входную (первую) ступень каждого триггера будет записываться информация из выходной (второй) ступени предыдущего триггера, а по его срезу она будет переписываться в выходную ступень. С приходом фронта следующего тактового импульса во входной ступени триггера информация может быть заменена новой (из предыдущего триггера), при этом предыдущая информация сохраняется во второй ступени; она заменится новой по срезу тактового импульса. В триггерах с динамическим управлением записью прием информации происходит за время фронта или среза тактового импульса, а смена выходной информации (изменение состояния выходa триггера) происходит с некоторой задержкой во времени, (которое может превышать время фронта или среза синхроимпульса), вызванной переходными процессами при переключении самого триггера. На рис. 2 представлен один из вариантов последовательного 4-х разрядного регистра на D-триггерах с динамическим управлением (по фронту). Перед записью двоичного числа регистр обнуляют, подав сигнал "0" на шину "Уст. 0". Четырехразрядное двоичное число подается на вход регистра, начиная с младшего разряда этого числа, и за время фронта тактового импульса сигнал X (0 или 1) со входа D регистра воспримется триггером Т1 и придет на его выход Q 1 с некоторой задержкой, большей времени фронта синхроимпульса (задержка вызвана переходными процессами в триггере). Из-за этой задержки сигнал X не воспринимается другими триггерами регистра, кроме T1, т.к. X появится на выходе Q 1 уже после окончания действия фронта синхроимпульса на объединенные входы С всех триггеров, в течение которого они только и способны воспринимать информацию со своих D-входов. А т.к. D-вход каждого последующего триггера регистра соединен с Q-выходом предыдущего, то приход синхроимпульса приведет к переключению выхода каждого последующего триггера в то состояние, которое было на выходе предыдущего до прихода тактового импульса. Иначе говоря, приход синхроимпульса вызовет следующие переключения: Каждый тактовый импульс сдвигает код числа в регистре на один разряд вправо. Для записи N-разрядного числа требуется N тактовых импульсов. Для выдачи в последовательном коде записанного числа нужно на вход регистра подать x = 0, а на вход "С" - N тактовых импульсов, при этом число считывается с выхода Q4 триггера младшего разряда. Одновременно происходит стирание информации из регистра (обнуление). Считывание информации в параллельном коде производится с выходов . Внеся некоторые изменения в схему рис. 2, можно получить регистр, сдвигающий влево. Регистры, в которых сдвиг информации может быть осуществлен как вправо, так и влево, называются реверсивными. Параллельно-последовательные регистры используются для преобразования параллельного кода в последовательный и наоборот. Для приема числа в параллельной форме он должен иметь триггеры с нетактируемыми входами S и R (см. рис. 1), с помощью которых можно получить параллельный регистр. Информация в последовательном коде снимается с выхода триггера младшего разряда при подаче на вход "С" тактовых импульсов. При преобразовании последовательного кода в параллельный число вводится в регистр последовательно разряд за разрядом, а снимается одновременно с выходов всех триггеров. В качестве примера рассмотрим ИМС К155ИР1, представляющую собой универсальный регистр. Он состоят из 4-х динамических триггеров (подобно тому, как показано на рис. 2) и логических элементов. ИМС К155ИР1 может выполнять следующие операции: ввод информации параллельным и последовательным кодом, сдвиг информации вправо и влево, хранение. Условное изображение регистра KI55ИР1 показано на рис. 4. Регистр имеет два синхровхода: C1 и С2, для работы в режиме сдвига вправо и влево и в режиме параллельной записи (С2), управляющий вход выбора режима V2, пять информационных входов (V1 для ввода информации в последовательном коде и четыре входа D1 – D4 для записи информации в параллельном коде), а также четыре выхода с каждого разряда регистра. Триггеры, образующие регистр, двухступенчатые, срабатывающие по перепаду из 1 в 0 (по срезу) входных импульсов, поступающих на один из тактовых входов C1 или С2. Рабочий режим регистра определяется уровнем сигнала на входе V2. ПРАКТИЧЕСКАЯ ЧАСТЬ Задание 1. Познакомиться с работой четырехразрядного параллельного регистра. 1. Собрать параллельный четырехразрядный регистр на D-триггерах с потенциальным управлением (рис. 2), используя для этого ИМС KI55TM5 (рис. 5). К информационным входам D1-D4, к синхровходу "С" и к выходам регистра Q1, Q2, Q3 и Q4, подключить светодиоды, определяющие состояние выходов. Если светодиод светится, то на выходе "I", в противном случае - "О". 2. Обнулить регистр, подав на входы D1=D2=D3=D4=0, а на синхронный вход "С"=1. 3. Исследовать работу регистра в статическом режиме, подавая на его входы в параллельном коде четырехзначные двоичные числа. Убедиться, что запись числа происходит только при "С"=1. Результат представить в виде таблицы 1. Таблица 1.
Задание 2. Познакомиться с работой 4-х разрядного последовательного регистра. 1. Собрать последовательный четырехразрядный регистр на D-триггерах с динамическим управлением, используя для этого ИМС KI55TМ2 (рис. 4). Графическое изображение ИМС К155ТМ2 дано на рис. 6. К выходам и входам регистра подключить светодиоды БИ. Вход регистра "С" подключить к выходу генератора ГТИ, используя его в режиме одиночных импульсов. 2. Исследовать работу регистра в статическом режиме; а) обнулить регистр, подав сигнал "0" на шину "Уст.0": б) записать в регистр двоичное число 1010, подавая его на вход регистра разряд за разрядом, начиная с младшего разряда. Процесс записи контролировать, определяя состояние выходов регистра после каждого тактового импульса. Здесь вы наблюдаете последовательную запись числа, т.к. с каждым тактовым импульсом записываемое число смещается вправо на один разряд и за четыре тактовых импульса будет полностью записано в регистр. Считать число можно сразу со всех выходов регистра Q1, Q2, Q3 и Q4, т.е. в параллельном коде. Следовательно, такой регистр является преобразователем последовательного кода в параллельный. Считайте число в последовательном коде с младшего разряда регистра, подав на его вход 0. Данные опытов занести в таблицу 2. в) проверить работу регистра в режиме сдвига направо. Записать в регистр число 1100, затем подать на вход регистра и послать два тактовых импульса, после каждого из которых считать число, записанное в регистре. Сделать выводы. 3. Осуществить работу последовательного регистра в динамическом режиме. Для этого с генератора импульсов БВ подать на вход регистра сигнал с выхода 3, на синхронизирующий вход регистра сигнал с выхода I, а вход "синхр" коммутатора подключить к выходу 6. Входы "С" и "X" и выходы Q1, Q2, Q3 и Q4 регистра соединить со входами коммутатора БВ 1,2,3,4,5,6 соответственно. Зарисовать осциллограмму и сделать соответствующие выводы. Таблица 2.
Задание 3.. Познакомиться с работой универсального регистра ИМС К155ИР1 (рис. 7). 1. Записать в регистр число 1010 в параллельном коде. Для этого подать на вход V2 единицу, записываемое число на входы D1 - D4и один тактовый импульс на вход С2. Контроль чисел, вводимых и записанных в регистр, производить светодиодами БИ. 2. Считать информацию в последовательном кодe с выхода 1, подавая на вход D4 = 0, а на C2 три тактовых импульса. Записать полученный результат. 3. Записать в регистр число 1100 в последовательном коде, подавая его разряд за разрядов на вход V1, тактовые импульсы - на вход C1, на вход V2 = 0. Осуществить сдвиг вправо на два разряда, подавая на вход C1 два тактовых импульса, при этом V1=V2=0. Записать полученный результат. 4. Осуществить сдвиг информации влево. При этом поток информации имеет обратное направление: от четвертого триггера к третьему, от третьего - ко второму и т.д., для чего необходимо произвести внешние соединения выходов Q4, Q3, Q2со входами D3, D2, D1 соответственно. Для сдвига влево необходимо: а) соединить выводы ИМС К155ИР1 следующим образом: 2 с 12, 3 с 11, 4 с 10; б) на вход V2 подать единицу (V2=1); в) записываемое число (0011) вводить разряд за разрядом через вход D4, подавая тактовые импульсы на вход C2; г) для сдвига на 2 разряда влево подать на D4=0, а на вход С2два тактовых импульса. Записать полученный результат. Контрольные вопросы: 1. Какие функции может выполнять регистр? 2. Поясните работу функциональной схемы параллельного регистра. 3. Объясните принцип построения и работу последовательного регистра. 4. Какие изменения нужно произвести в схеме последовательного регистра (рис. 2) для сдвига записанного числа влево? 5. Какие изменения в схеме (рис. 2) нужно произвести, чтобы регистр преобразовать в кольцевой, в котором информация при считывании сохраняется? 6. Объясните назначение входов и выходов регистра К155ИР1. Как произвести запись информации в параллельном коде, последовательном коде? Как сдвинуть занесенное число вправо, влево? 7. Чем отличаются регистры, изображенные на рис. 1 и 2? Литература 1. Мальцева Л.А., Фромберг Э.М., Ямпольский В.С. Основы цифровой техники. - М.: Радио и связь, 1986. - С. 38-40. 2. Грицевский П.М., Мамченко А.Е., Степенский Б.М. Основы автоматики, импульсной и вычислительной техники. - М.: Радио и связь, 1987. - С. 138-142. 3. Мальцева Л.А. и др. Основы цифровой техники. - М.: Радио и связь, 1986. - С. 40-47. 4. Браммер Ю.А., Пащук И.Н. Импульсная техника. - М.: Высшая школа, 1985. - С. 266-271, 274-280. 5. Шило В.Л. Популярные цифровые микросхемы. - М.: Радио и связь, I988. - С. 89-93. 6. Схемотехника ЭВМ. Под редакцией Соловьева Г.Н. - М.: Высшая школа, 1985. - С. 105-110.
|