Лабораторная работа 4.1
Регистры
Цель работы
Изучение схемных разновидностей регистров и их функционирования, приобретение навыков в определении характеристик регистров. Файлы для моделирования регистров расположены в папке Lab_4_1\Модели.
Основные теоретические положения
Регистром называется организованная по определенному принципу совокупность триггеров, предназначенная для хранения информации в виде двоичных слов и выполнения над ними микроопераций.
Микрооперация - это элементарное машинное действие, выполняемое, например, в микропроцессоре, в результате которого изменяется значение слова или осуществляется его пересылка.
Регистр состоит из триггеров, для хранения информации и логических элементов, осуществляющих управление его работой.
Последовательный регистр
Функциональная схема последовательного (сдвигающего) регистра приведена на рис.1.
Рис. 1 Функциональная схема четырехразрядного последовательного регистра
Входная информация в виде двоичных последовательных кодов поступает на вход DS(встречается обозначение D) начиная со старшего разряда. Запись в регистр осуществляется по переднему фронту тактового сигнала C(замыкание выключателя C), по одному биту за такт. За четыре такта сигнала C входной код будет записан во все триггеры регистра. Сдвиг данных в регистре происходит слева направо, в сторону старшего разряда Q3.
Информацию, записанную в регистр, можно считывать одновременно в параллельном коде с выходов триггеров Q0, Q1, Q2, Q3 или последовательным кодом с выхода триггера старшего разряда Q3 за четыре такта сигнала C, подключив к входу DS потенциал логического нуля.
Число разрядов (триггеров) называют длиной регистра. Регистр может находиться в состояниях, т. е. в него можно записать различных комбинаций двоичных кодов (слов). Длина слова соответствует длине регистра.
Для увеличения разрядности регистра используются дополнительные триггеры (рис. 2).
Рис. 2 Функциональная схема шестиразрядного последовательного регистра
Параллельно-последовательный регистр
Различают синхронные и асинхронные регистры. В асинхронном регистре (рис. 3) для записи информации в триггеры D1, D2, D3 используются приоритетные установочные входы R, S.
К этим входам подключены логические элементы, которые по команде L=1 (Write) параллельным кодом записывают в триггеры информацию, уже поступившую на входы D0, D1, D2, при L=0 переводят асинхронные входы триггеров (на схеме инверсные) в режим хранения и они не влияют на работу регистра.
Для выполнения операции считывания информации поразрядно в последовательном коде с выхода Y, на вход C (Read) подаются тактовые сигналы. Сдвиг данных в регистре происходит в сторону старшего разряда по заднему фронту сигнала C(размыкание выключателя).
Регистр выполняет микрооперацию преобразования параллельного кода в последовательный код.
Рис. 3 Функциональная схема трехразрядного параллельно-последовательного регистра
При записи информации вначале выбирают значения D0, D1, D2 и C=0, затем устанавливают L=1 (запись). Для считывания L=0, на вход Cподается тактовый сигнал (замыкание, размыкание выключателя C). Комбинация L=1, C=1 запрещена с целью исключения ошибок.
Настройка регистра на соответствующую микрооперацию осуществляется предварительной установкой ее кода на управляющих входах. В синхронных регистрах микрооперации выполняются по тактирующему сигналу.
В асинхронных регистрах тактирующий вход отсутствует. Каждая микрооперация осуществляется под действием собственного управляющего сигнала.
На рис. 4 представлена функциональная схема трехразрядного параллельно-последовательного регистра. Эта схема позволяет записывать информацию в параллельном и последовательном коде и считывать информацию в обоих кодах.
Обозначение «1» применено к блокам, в которых находятся логические элементы, использующиеся для управления асинхронными приоритетными входами R, S.
Данные блоки использованы с целью упрощения схемы, их можно раскрыть двойным щелчком мыши.
Рис. 4 Функциональная схема трехразрядного параллельно-последовательного регистра
Схема отличается от предыдущей схемы дополнительными возможностями:
- наличием входа Input для записи последовательного кода DSпо тактовым сигналам C;
- способностью сброса информации, записанной в регистр с помощью приоритетного асинхронного входа Reset, если R =0 (выключатель разомкнут).
Кольцевой сдвигающий регистр
Кольцевым сдвигающим регистромназывается последовательный регистр, выход которого Q2 замкнут на вход D. Данные перемещаются в замкнутом цикле по кругу. Функциональная схема этого регистра представлена на рис. 5.
В регистр обычно записывают только одну единицу, которая через n тактов будет появляться на выходе одного и того же триггера, где n – число разрядов регистра. В схеме (рис. 5) последовательность наборов Q2Q1Q0: 001, 010, 100, 001 и т.д. Для последовательной записи информации используются асинхронные (инверсные) входыR, S триггера D1.
Рис. 5 Функциональная схема трехразрядного кольцевого сдвигающего регистра
Логические индикаторы Q2, Q1, Q0 служат для определения значения, записанного в соответствующий триггер. Индикатор DEG указывает десятичный эквивалент хранящегося в регистре двоичного кода.
Задание 1
Определить максимально возможное десятичное целое положительное число, значение которого в двоичном выражении можно записать в четырехразрядный последовательный регистр (рис. 1, модель L4_RG_01.ewb). Ответ указать в таблице 1.
Таблица к заданию 1 Таблица 1
Ответ: |
Задание 2
В шестиразрядный последовательный регистр (рис. 2, модель L4_RG_02.ewb) записать двоичное число, значение которого в десятичном выражении равно числам из таблицы 2. Полученный двоичный код занести в таблицу, указав значения всех разрядов регистра.
Таблица к заданию 2 Таблица 2
№ |
Десятичное число |
Двоичное число |
1 |
7 |
|
2 |
13 |
|
3 |
24 |
|
4 |
63 |
Задание 3
В трехразрядный параллельно-последовательный регистр (рис. 3, модель L4_RG_03.ewb) в параллельном коде записать двоичное число 011.
Затем осуществить сдвиг этого кода на один разряд. Указать полученный результат в виде десятичного числа и выполненную микрооперацию в таблице 3, удалив неправильные ответы.
Таблица к заданию 3 Таблица 3
№ |
Микрооперация |
Результат (десятичное число) |
1 |
Возведение в степень |
|
2 |
Деление на десятичное число 2 |
|
3 |
Деление на десятичное число 4 |
|
4 |
Умножение на двоичное число 011 |
|
5 |
Умножение на двоичное число 110 |
|
6 |
Умножение на десятичное число 2 |
|
7 |
Умножение на десятичное число 4 |
|
8 |
Сложение с двоичным числом 010 |
|
9 |
Сложение с двоичным числом 100 |
Задание 4
В трехразрядный параллельно-последовательный регистр (рис. 4, модель L4_RG_04.ewb) в параллельном коде записать двоичное число 001.
Затем, не сбрасывая сохраненных данных, осуществить запись в последовательном коде двоичного числа 00. Указать полученный результат в виде десятичного числа и выполненную микрооперацию в таблице 4, удалив неправильные ответы.
Таблица к заданию 4 Таблица 4
№ |
Микрооперация |
Результат (десятичное число) |
1 |
Возведение в степень |
|
2 |
Деление на десятичное число 2 |
|
3 |
Деление на десятичное число 4 |
|
4 |
Умножение на двоичное число 010 |
|
5 |
Умножение на двоичное число 110 |
|
6 |
Умножение на десятичное число 2 |
|
7 |
Умножение на десятичное число 4 |
|
8 |
Сложение с двоичным числом 010 |
|
9 |
Сложение с двоичным числом 100 |
Задание 5
Определить необходимое количество триггеров в кольцевом сдвигающем регистре, чтобы уменьшить частоту выходных сигналов на один порядок (рис. 5, модель L4_RG_05.ewb). Ответ указать в таблице 5.
Таблица к заданию 5 Таблица 5
Ответ: |
Задание 6
В схеме модели регистра L4_RG_06.ewb (рис. 6) допущена ошибка, причину которой надо оставить в табл. 6, удалив неверные ответы.
Рис. 6 Кольцевой сдвигающий регистр
Таблица к заданию 6 Таблица 6
№ |
Причина ошибки в схеме |
1 |
Не правильно подключен вход C |
2 |
Не правильно подключен вход DS |
3 |
Не правильно соединены между собой триггеры |
4 |
Не правильно соединен вход с выходом регистра |
5 |
Не правильно подключены индикаторы Q0, Q1, Q2 |
6 |
Не правильно подключен индикатор DEG |
7 |
Не правильно обозначены индикаторы |
8 |
Не правильно обозначены выходы триггеров |
Выводы
Регистры могут применяться:
- для преобразования параллельных кодов в последовательные коды и наоборот;
- передачи информации (модем, компьютерные сети);
- хранения информации;
- осуществления некоторых арифметических и логических операций над сохраняемой в них информацией.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.