Министерство цифрового развития, связи и массовых коммуникаций Российской Федерации
Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования
Московский технический университет связи и информатики
___________________________________________________________________
Факультет
«Радио и телевидение»
Кафедра
«Радиотехнических систем»
Лабораторная работа №3 по дисциплине «Микропроцессорные устройства» «Реализация цифровой схемы последовательного типа на ПЛИС»
Выполнили |
|
|
Студент группы БРВ2201 |
_________________________ |
Велит А.И. |
Студент группы БРВ2201 |
_________________________ |
Мусаев Д.Ш. |
Студент группы БРВ2201 |
_________________________ |
Зейналов Р.А. |
Проверил |
|
|
Ассистент кафедры РТС |
_________________________ |
Шубин Д.Н. |
Москва 2025
1. ЦЕЛЬ РАБОТЫ
Целями выполняемой лабораторной работы являются: изучение САПР Xilinx ISE; ознакомление с основами языка VHDL; реализация на ПЛИС цифровой схемы последовательного типа с использованием модулей на языке описания аппаратуры VHDL.
2.РАСЧЁТНАЯ ЧАСТЬ
2.1.Исходные данные
Необходимо реализовать на языке VHDLмодуль, который будет представлять собой 8-ми битный контроллер чётности.
2.2. Описание устройства
Котроллер чётности проверяет количество единиц в принятом «слове» на чётность, то есть считает сумму единиц и проверяет сумму на чётность. Проверка осуществляется путём последовательного применения операции «XOR» к между битом «слова» и результатом предыдущего «XOR».
Впроцессе изучения было найдено два варианта реализации: контроллеры с одним выходом или с двумя. Контроллер с одним выходом возвращает 0, «слово» чётно и «1», если «слово» нечётно. У контроллера с двумя выходами один выход отвечает за чётность, а другой – за нечётность. То есть на «чётный» выход подаётся единица в случае, если число чётное, в то время как на «нечётный» выход подаётся ноль. И наоборот.
Врамках лабораторной работы будет реализовываться первый вариант контроллера.
2.3.Модель устройства
Вкачестве модели устройства было выбрано устройство с восемью входами и одним выходом. Изображение устройства в окне графического редактора представлено ниже на рисунке 2.3.1.
Внутренняя логика устройства была реализована на языке VHDL путём применения операции «XOR» ко всем входам и подачи результата на выход. Листинг программы представлен на рисунке 2.3.2.
Рисунок 2.3.1 – Внешний вид устройства в графическом редакторе
Рисунок 2.3.2 – Листинг кода программы-описания устройства
2.4. Параметры для симуляции
Для симуляции работы устройства необходимо подать на входы устройства «классическую» таблицу истинности для n-элементов: такая
таблица истинности содержит 2n элементов. Однако в построении полной таблицы истинности нет необходимости, потому что она описывается простым правилом: нули и единицы повторяются в ТИ через разряд. То
есть в первом разряде сначала идёт 2n-1 нулей, а потом 2n-1 единиц (или наоборот, так как в рамках лабораторной работы это не имеет значения);
в втором разряде сначала идёт 2n-2 нулей, потом 2n-2 единиц, потом снова
2n-2 нулей, потом снова 2n-2 единиц. И так повторяется до конца, пока ноль и единица не будут чередоваться каждый знак.
Таким образом, можно подобрать значения для симуляции, задав только период импульса для первого разряда, а периоды для последующих разрядов будут рассчитываться путём деления на два в нужной степени.
В качестве периода импульсов для первого разряда было выбрано значение 256 микросекунд, так как число 256 – это два в восьмой степени, что делает дальнейшие расчёты весьма удобными. Ниже приведена матрица значений периодов импульсов T для каждого из разрядов контроллера, где первая строчка – первый разряд, вторая строчка – второй разряд и так далее.
256 |
|
|
|
|
128 |
|
|
|
64 |
|
|
|
32 |
|
|
T= |
μs |
– матрица периодов импульсов для каждого из разрядов. |
|
|
16 |
|
|
|
8 |
|
|
|
4 |
|
|
|
2 |
|
|
Остальные параметры были выбраны одинаковыми для каждого из входов:
Leading Edge Value = 1;
Trailing Edge Value = 0;
Starting at Time Offset = 0;
Cancel after Time Offset = 256us;
Duty Cycle (%) = 50.
3.ЭКСПЕРИМЕНТАЛЬНАЯ ЧАСТЬ
3.1.Симуляция устройства
Описание исследуемого устройства представлено в пункте 2, а схема исследуемой установки представлена на рисунке 2.3.1.
Симуляция осуществляется по значениям, описанным в пункте 2.4. Результаты симуляции представлены ниже, на рисунках 3.1.1 и 3.1.2. На них входные сигналы обозначены зелёным цветом, сигнал выходной – жёлтым.
Рисунок 3.1.1 – Увеличенный участок графиков симуляции
Рисунок 3.1.2 – График симуляции котроллера чётности
Как видно из рисунка 3.1.1, котроллер чётности работает корректно: в моменты времени, когда количество входных импульсов со значением «1»
– чётное, значение выходного импульса равно нулю; когда количество входных импульсов со значением «1» – нечётное, значение выходного импульса равно единице. То есть можно сделать вывод, что программный код устройства написан верно, а само устройство выполняет требуемые от него функции.
4.ВЫВОДЫ
Врезультате выполнения лабораторной работы был разработан восьмибитный контроллер чётности, работоспособность которого была проверена с помощью симуляции.
Было установлено, что язык VHDL, в купе с техническими возможностями ПЛИС, позволяет сравнительно кратко описывать (моделировать) устройства, которые имею в своём составе сравнительное большое количество логических элементов разного типа. Иными словами, программирование на языке VHDL упрощает работу с комплексными устройствами, отчасти превращая их в так называемые «чёрные ящики».
