МИНОБРНАУКИ РОССИИ САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ ЭЛЕКТРОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ «ЛЭТИ» ИМ. В.И. УЛЬЯНОВА (ЛЕНИНА) Кафедра РС ОТЧЕТ по лабораторной работе №6 по дисциплине «Цифровая электроника» Вариант 4 Студент гр. 2493 Возный И.А. Преподаватель Овчинников М.А. Санкт-Петербург 2024 Лабораторная работа № 6 Задание на лабораторную работу №6 Вариант 4 1. Собрать схему четырехразрядного регистра сдвига. Для этого воспользоваться кодом из приложения. Изучить схему, реализованную в RTLViewer. Построить временные диаграммы, иллюстрирующие работу устройства. Период тактового сигнала задать 20 нс. Изменить код программы (Регистр сдвига «неправильная версия»). Открыть полученную схему в RTL-Viewer. Что изменилось в схеме, почему? 2. Собрать схему дешифратора , тип 2 (дешифратор – схема преобразования двоичного кода в унитарный). Для этого воспользоваться кодом из приложения. Изучить схему, реализованную в RTL-Viewer. Построить временные диаграммы, иллюстрирующие работу устройства. Период тактового сигнала задать 40 нс. Запрограммировать в отладочную плату. Тип ПЛИС – Altera Cyclone IV EEP4CE22F17C6. Указать входные сигналы на sw5..sw6, выходные – на LED7..LED4. 3. Собрать схему дешифратора двоичного кода в код семисегментного индикатора. Для этого воспользоваться кодом из приложения. Самостоятельно дописать коды символов с D по F. Запрограммировать в отладочную плату. Указать входные сигналы на sw5..sw8, выходные сегменты – на seg_a..seg_g, разряд индикатора выбрать dig3. 4. К коду задания 3 добавить счетчик с управлением от кварцевого резонатора (50 МГц). Из всех выходов 32-разрядного счетчика для отображения информации взять q[28:25]. Запрограммировать в отладочную плату. Какова частота смены состояний на индикаторе? Ход работы 1. Опишем четырехразрядный регистр сдвига при помощи языка Verilog Рис.1 — код четырехразрядный регистр сдвига в текстовом редакторе 2. С помощью инструмента RLT Viewer посмотрим, как интерпретирует код Quartus II Рис.2 — схема четырехразрядного регистра сдвига в RTL Viewer 3. Построим временную диаграмму с задержками. Входной сигнал clock задаем в виде меандра с периодом 20 нс, шаг сетки при моделировании – 10нс. Длительность сигнала - 500 нс. Рис.3 — временная диаграмма работы кода четырехразрядного регистра сдвига с задержками 4. Опишем код четырехразрядного регистра сдвига(«неправильная версия») при помощи языка Verilog. Рис.4 — код синхронного двоично-десятичного четырехразрядного счетчика в текстовом редакторе 5. Интерпретируем схему при помощи RTL Viewer Рис.5 — схема синхронного двоично-десятичного четырехразрядного счетчика в RTL Viewer Что изменилось в схеме, почему? В коде «неправильной версии», после замены «<=» на «=» (то есть жесткого присваивания на мягкое), схема оказывается упрощена, что мы и наблюдаем в RTL-Viewer. Схема представляет собой 4 параллельно включенных синхронных D-триггера. Все они управляются тактовым сигналом, но сигнал ds одновременно поступает на входы всех четырех триггеров и по тактовому сигналу на всех выходах будет один и тот же результат. 6. Опишем схему дешифратора , тип 2 при помощи языка Verilog Рис.6 — код дешифратора , тип 2 в текстовом редакторе 7. С помощью инструмента RLT Viewer посмотрим, как интерпретирует код Quartus II Рис.7 —схема дешифратора , тип 2 в RTL Viewer 8. Построим временную диаграмму с задержками. Входной сигнал in[0] задаем в виде меандра с периодом 40 нс in[1] – 80нс, шаг сетки при моделировании – 10 нс. Длительность сигнала - 1000 нс. Рис.8 — временная диаграмма работы кода дешифратора задержкам , тип 2 с 9. Опишем дешифратор двоичного кода в код семисегментного индикатора, cамостоятельно допишем коды символов с D по F. Рис.9 — код дешифратора двоичного кода в код семисегментного индикатора в текстовом редакторе 10. Интерпретируем схему при помощи RTL Viewer. Рис.10 —схема дешифратора двоичного кода в код семисегментного индикатора в окне RTL Viewer 11. К предыдущему коду добавим счетчик с управлением от кварцевого резонатора (50 МГц). Из всех выходов 32-разрядного счетчика для отображения информацию взять q[28:25]. Рис.11 — код дешифратора двоичного кода с счетчиком в текстовом редакторе 12. Интерпретируем схему при помощи RTL Viewer. Рис.11 — схема дешифратора двоичного кода с счетчиком в окне RTL Viewer Какова частота смены состояний на индикаторе? Чтобы определить частоту смены состояний на индикаторе, нужно узнать входную частоту. Входная частота 50 МГц. Выходной регистр представляет собой 32-битное значение. Частота смены состояния составляет fвх/2^(n+1) согласно формуле делителя частоты. Так как 25, это наибольшая частота, то n = 25. Получим 50*10^6/2^(25+1) = 0,74 Гц. Это значит, что каждый цикл смены состояния около 1/(0,74) = 1,351 секунд. Вывод: Вывод: в ходе лабораторной работы была освоена работа с регистрами сдвига и дешифраторами, включая четырехразрядный регистр сдвига, дешифратор преобразования двоичного кода в унитарный, дешифратор преобразования двоичного кода в код семисегментного индикатора, дешифратор с добавлением счетчика. Был продемонстрирован принцип работы каждого из устройств, разобрана «неправильная версия» регистра сдвига и причины ее неправильной работы. С помощью формулы делителя частоты определена частота смены состояний на индикаторе = 0,74 Гц.