Научная статья на тему 'ОРГАНИЗАЦИЯ ЛАБОРАТОРНОГО ПРАКТИКУМА ПО ПРОЕКТИРОВАНИЮ НА ПЛИС ЦИФРОВЫХ УСТРОЙСТВ И СИСТЕМ НА ОСНОВЕ ПЛАТЫ DE10-LITE'

ОРГАНИЗАЦИЯ ЛАБОРАТОРНОГО ПРАКТИКУМА ПО ПРОЕКТИРОВАНИЮ НА ПЛИС ЦИФРОВЫХ УСТРОЙСТВ И СИСТЕМ НА ОСНОВЕ ПЛАТЫ DE10-LITE Текст научной статьи по специальности «Электротехника, электронная техника, информационные технологии»

CC BY
72
19
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПРОГРАММИРУЕМАЯ ЛОГИЧЕСКАЯ ИНТЕГРАЛЬНАЯ СХЕМА / FPGA MAX 10 / ПЛАТА DE10-LITE / ЦИФРОВОЕ УСТРОЙСТВО / РЕКОМЕНДАЦИИ / РЕЖИМ РАБОТЫ / ТАКТИРОВАНИЕ

Аннотация научной статьи по электротехнике, электронной технике, информационным технологиям, автор научной работы — Кучеренко А.А., Руднев И.В.

В статье рассмотрены практические вопросы, возникающие при организации лабораторного практикума на основе платы DE10-Lite фирмы Terasic. Руководствуясь фирменной документацией, разработаны рекомендации по выбору режима работы платы, организации доступа к выводам ПЛИС и тактирования исследуемых цифровых устройств.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по электротехнике, электронной технике, информационным технологиям , автор научной работы — Кучеренко А.А., Руднев И.В.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ORGANIZATION OF A LABORATORY WORKSHOP ON THE DESIGN OF DIGITAL DEVICES AND SYSTEMS BASED ON THE DE10-LITE BOARD ON FPGA

The article deals with practical issues that arise when organizing a laboratory workshop based on the Terasic DE10-Lite board. Guided by the proprietary documentation, recommendations have been developed for choosing the operating mode of the board, organizing access to the FPGA outputs and clocking the digital devices under study.

Текст научной работы на тему «ОРГАНИЗАЦИЯ ЛАБОРАТОРНОГО ПРАКТИКУМА ПО ПРОЕКТИРОВАНИЮ НА ПЛИС ЦИФРОВЫХ УСТРОЙСТВ И СИСТЕМ НА ОСНОВЕ ПЛАТЫ DE10-LITE»

УДК 378.162.33

КУЧЕРЕНКО А.А., канд. техн. наук, доцент (Донецкий институт железнодорожного транспорта)

РУДНЕВ И.В., ассистент (Донецкий институт железнодорожного транспорта)

Организация лабораторного практикума по проектированию на ПЛИС цифровых устройств и систем на основе платы DE10-Lite

Kucherenko A.A., Candidate of Technical Science, Associate Professor (DRTI) Rudnev I.V., Assistant (DRTI)

Organization of a laboratory workshop on the design of digital devices and systems based on the DE10-Lite board on FPGA

Введение

Быстрый рост сложности современных электронных схем требует применения интегральных микросхем с высокой степенью интеграции. ПЛИС, помимо решения этой задачи, дополнительно обеспечивает

максимальную гибкость при

модификации аппаратуры и позволяет сократить процесс проектирования и отладки цифровых устройств. Недавно на рынке ПЛИС появился мощный конкурент для ведущей фирмы Xilinx, который выкупил активы фирмы Altera за 16,7 миллиардов долларов, - фирма Intel. Интерес Intel к Altéra обусловлен рядом причин:

1. Intel готовятся выйти за рамки конструирования и производства центральных процессоров;

2. Обладание собственным семейством FPGA (Field - Programmable Gate Array, или по-русски ПЛИС) поможет Intel укрепить свои позиции на рынке серверов;

3. Фабрики Intel будут работать с полной загрузкой;

4. Intel надеется закрепиться на рынке Интернета вещей. Микросхемы FPGA активно используются при

создании решений для умных городов, систем промышленной автоматизации и коммуникационного оборудования. Приобретение Altera открывает перед Intel новые горизонты и сулит соответствующее наращивание объёмов продаваемой продукции.

Проектирование цифровых

устройств на основе ПЛИС имеет свои особенности. Для разработки цифровых устройств используются специально созданные САПР, в которых для ввода схем могут использоваться языки описания аппаратуры или

универсальные схемные редакторы. С целью упрощения процесса изучения и практического освоения этапов проектирования цифровых устройств на основе ПЛИС FPGA, фирма Intel рекомендует использовать плату DE10-Lite.

Данная статья посвящена вопросам практического освоения этой платы для организации на её основе учебного процесса в ДОНИЖТ.

Анализ последних исследований и публикаций

Лабораторные практикумы по проектированию на ПЛИС можно

разделить на две группы: первая группа посвящена изучению языков описания цифровых устройств и их моделированию [2, 3], а вторая -изучению особенностей

программирования и прошивки ПЛИС для реализации заданных цифровых устройств [4].

Лабораторные практикумы второй группы отражают особенности используемого в работах

инструментального модуля и разделы изучаемой дисциплины. Но есть ряд общих проблем, которые необходимо решить не зависимо от изучаемой дисциплины: выбор режима работы платы, организация выводов ПЛИС и тактирование изучаемых цифровых устройств.

Цель работы

Целью настоящей статьи является выбор режима работы платы БЕЮ-ЬИе, выработка практических рекомендаций по формированию выводов ПЛИС и тактовых импульсов для изучаемых цифровых устройств.

Основная часть

Плата DE10-Lite содержит все узлы, необходимые для совместной работы с компьютером под управлением 64-разрядной версии Win 7/Win 10.

На рис. 1 представлен макет платы с указанием разъёмов и основных компонентов.

Arduino Connector

5V Power USB-Blaster

64MB SDRAM

5V/CND 2-Pin Header

7-Segment Display x6

2x20 CPIO

Intel FPGA MAX10 10M50DAF484C7G

Accelerometer

4-bit Resistor VGA

Button x2

LED xlO Switch xlO

Рис. 1. Плата DE10-Lite

Здесь обозначены: 5 V Power

USB-Blaster - встроенный программатор (USB-разъём типа B);

64MB SDRAM - память для хранения кодов конфигурации ПЛИС; 5V/GND

2-Pin Header - 2-штырьковый разъём питания +5 вольт;

7-Segment

Display x6 - 6-разрядная 7-сегментная индикация;

Arduino

Connector - разъёмы Arduino Uno R3, включая 6 каналов АЦП;

2x20

GPIO - разъём расширения на 40 контактов;

Intel FPGA MAX10

10M50DAF484C7G - ПЛИС FPGA MAX 10 с 484 выводами;

Accelerometer - БИС

акселерометра;

4 bit Resistor VGA - 4-битный ЦАП с резисторной сетью для VGA (разъём DB15 на 15 контактов высокой плотности);

Button x2 - две кнопки с подавлением дребезга контактов;

LED x10 - 10 светодиодов;

Switch x10 - 10 ползунковых переключателей.

Плата имеет множество функций, которые позволяют пользователям реализовывать широкий спектр цифровых устройств: от простых до различных мультимедийных проектов. Но основным назначением платы DE 10-Lite является практическое изучение методов проектирования цифровых устройств на основе ПЛИС FPGA.

Ядром платы является ПЛИС FPGA MAX10 10M50DAF484C7G, которая имеет 50 тысяч программируемых логических

элементов, 1638 Кбит памяти, 144 умножителя 18 х 18 и 4 структуры PLLs. ПЛИС FPGA MAX10 обладает высоким быстродействием, большим объёмом логических и трассировочных ресурсов. Время проектирования цифрового устройства или системы существенно уменьшается за счёт исключения этапов проектирования их интерфейса (используются ресурсы

кристалла ПЛИС) и применения САПР Quartus Prime 17.0 или более старшей версии. Для моделирования цифровых устройств рекомендуется загрузить пакет ModelSim Altera Edition. Эти программы являются платными, но они имеют и студенческие бесплатные версии (свободно скачиваются с сайта Intel FPGA).

Для изучения и практического освоения студентами различных этапов проектирования цифровых устройств на основе ПЛИС FPGA необходимо разработать лабораторный практикум. Первая русскоязычная работа [1], созданная совместными усилиями преподавателей и инженеров РФ, США, Украины, нацеленная на подъём электроники в странах постсоветского пространства, рекомендует применять отладочную плату De10-Lite от компании Terasic, на основе ПЛИС MAX10 производства корпорации Intel FPGA. Эти платы популярны в РФ и ближнем зарубежье. В этой книге даны коды многочисленных примеров на языке описания цифровых устройств Verilog, которые можно положить в основу лабораторного практикума специального курса «Проектирование цифровых устройств на основе ПЛИС» для наших студентов.

Основные сведения по

техническим характеристикам и архитектуре платы DE10-Lite изложены в руководстве пользователя (Системный диск платы. Файл DE10-Lite_User_Manual.pdf. Интернет:

http://DE 10-Lite.terasic.com). Используя данные 6-ти глав этого руководства, разработаем практические

рекомендации для лабораторного практикума по изучения процесса проектирования цифровых устройств на основе ПЛИС FPGA фирмы Intel.

Конфигурация ПЛИС MAX10 FPGA на плате

Существует два метода настройки, поддерживаемых платой DE10-Lite:

1. Конфигурация JTAG: настройка с использованием портов JTAG.

Этот метод позволяет напрямую настраивать ядро устройства с помощью контактов JTAG - контакты TDI, TDO, TMS и TCK. Программное обеспечение САПР Quartus II автоматически генерирует файлы .sof, которые используются для настройки JTAG с помощью кабеля загрузки и программного обеспечении САПР.

2. Внутренняя конфигурация: настройка с использованием внутренней

флэш-памяти. Перед настройкой запрограммировать конфигурации во

внутренней необходимо данные флэш-память

конфигурации (CFM), которая обеспечивает энергонезависимое

хранение потока битов. Информация сохраняется в CFM, даже если плата DE10-Lite выключена. Когда плата включена, данные конфигурации из CFM автоматически загружаются в ПЛИС MAX 10.

Для выполнения лабораторного практикума нам необходимо

использовать конфигурацию JTAG. Подключение к выводам ПЛИС На рис. 2 дана блок-схема платы.

Рис. 2. Блок-схема платы DE10-Lite

Все соединения осуществляются через ПЛИС FPGA MAX10, что обеспечивает максимальную гибкость для пользователя при реализации любого системного проекта. Доступ к выводам ПЛИС FPGA MAX 10 можно получить только через 40-контактный разъём расширения GPIO (рис. 2). В таблице 1 приведено распределение контактов разъёма расширения GPIO и выводов ПЛИС.

Общий ^N0) подключен к 12 и 30 контактам GPIO. Напряжения питания платы подключены: 5 Вольт - к 11, а 3,3 Вольта - к 29 контактам GPIO.

36 контактов ПЛИС достаточно для проведения лабораторного практикума.

Рекомендуем распаять розетку разъёма GPIO и сформировать 40 контрольных точек. Это упростит процесс тестирования разработанного цифрового устройства.

Таблица 1

Распределение выводов разъёма расширения ОРЮ_

№ вывода ПЛИС № контакта GPIO Стандарт ¡/О

РШ_У10 1 3.3-У ЬУТТЬ

PIN_W10 2 3.3-У ЬУТТЬ

РШ_У9 3 3.3-У ЬУТТЬ

PIN_W9 4 3.3-У ЬУТТЬ

PIN_У8 5 3.3-У ЬУТТЬ

PIN_W8 6 3.3-У ЬУТТЬ

PIN_У7 7 3.3-У ЬУТТЬ

PIN_W7 8 3.3-У ЬУТТЬ

PIN_W6 9 3.3-У ЬУТТЬ

PIN_У5 10 3.3-У ЬУТТЬ

PIN_W5 13 3.3-У ЬУТТЬ

PIN_AA15 14 3.3-У ЬУТТЬ

PIN_AA14 15 3.3-У ЬУТТЬ

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

PIN_W13 16 3.3-У ЬУТТЬ

PIN_W12 17 3.3-У ЬУТТЬ

PIN_AB13 18 3.3-У ЬУТТЬ

PIN_AB12 19 3.3-У ЬУТТЬ

PIN_Y11 20 3.3-У ЬУТТЬ

PIN_AB 11 21 3.3-У ЬУТТЬ

PIN_W11 22 3.3-У ЬУТТЬ

PIN_AB10 23 3.3-У ЬУТТЬ

PIN_AA10 24 3.3-У ЬУТТЬ

PIN_AA9 25 3.3-У ЬУТТЬ

PIN_Y8 26 3.3-У ЬУТТЬ

PIN_AA8 27 3.3-У ЬУТТЬ

PIN_Y7 28 3.3-У ЬУТТЬ

PIN_AA7 31 3.3-У ЬУТТЬ

PIN_Y6 32 3.3-У ЬУТТЬ

PIN_AA6 33 3.3-У ЬУТТЬ

PIN_Y5 34 3.3-У ЬУТТЬ

PIN_AA5 35 3.3-У ЬУТТЬ

PIN_Y4 36 3.3-У ЬУТТЬ

PIN_AB3 37 3.3-У ЬУТТЬ

PIN_Y3 38 3.3-У ЬУТТЬ

PIN_AB2 39 3.3-У ЬУТТЬ

PIN_AA2 40 3.3-У ЬУТТЬ

Переключатели и кнопки Плата БЕ10-Ьке имеет две кнопки KEY0 и KEY1, которые позволяют пользователю взаимодействовать с

ПЛИС МЛХ10. Каждая из этих кнопок использует схему исключения дребезга (74AUC17) на основе триггера Шмитта, как показано на рис. 3.

Рис. 3. Соединения между кнопками и ПЛИС MAX 10

Триггер Шмитта вносит гистерезис во входной сигнал для отключения от дребезга контактов подключенных кнопок. Сигналы с выхода кнопок удобны, например, при

потактовой проверке работы регистров или счётчиков. В таблице 2 перечислены пин-коды

пользовательских кнопок.

Таблица 2

Назначение контактов кнопок

Имя сигнала № вывода ПЛИС Описание Стандарт I/O

KEY0 PIN_B8 Кнопка 0 3.3 V, триггер Шмита

KEY1 PIN_A7 Кнопка 1 3.3 V, триггер Шмита

На плате DE10-Lite имеется десять ползунковых переключателей SW0 -SW9, подключенных к ПЛИС (рис. 4). Эти переключатели используются для формирования логических уровней «0» и «1» для входов тестируемой схемы. Каждый переключатель подключается непосредственно и индивидуально к контакту ПЛИС MAX 10. Когда

переключатель находится в нижнем положении (ближе к краю платы), он обеспечивает логический уровень «0», а когда переключатель находится в верхнем положении, он обеспечивает логический уровень «1» для ПЛИС. В таблице 3 перечислены назначения и пин-коды ползунковых

переключателей.

NUkX. 10

|f15 |вИ f A14 f a13 |b12 |a12 |ci2 |d12 |cil f CIO Logic'V

ПП8ПП I i

ээзэзлэзэз ai

SW9 SW8 SW7 SW6 SW5 SW4 SW3 SW2 SW1 SWO Logic'O"

Рис. 4. Соединения ползунковых переключателей с ПЛИС MAX10

Таблица 3

Назначение контактов ползунковых переключателей_

Имя сигнала № вывода ПЛИС Описание Стандарт I/O

SW0 PIN_C10 Переключатель 0 3.3-V LVTTL

SW1 PIN_C11 Переключатель 1 3.3-V LVTTL

SW2 PIN_D12 Переключатель 2 3.3-V LVTTL

SW3 PIN_C12 Переключатель 3 3.3-V LVTTL

SW4 PIN_A12 Переключатель 4 3.3-V LVTTL

SW5 PIN_B12 Переключатель 5 3.3-V LVTTL

SW6 PIN_A13 Переключатель 6 3.3-V LVTTL

SW7 PIN_A14 Переключатель 7 3.3-V LVTTL

SW8 PIN_B14 Переключатель 8 3.3-V LVTTL

SW9 PIN_F 15 Переключатель 9 3.3-V LVTTL

Индикация

На плате DE10-Lite есть линейка из десяти управляемых пользователем светодиодов LEDRO - LEDR9, подключенных к ПЛИС FPGA. Каждый светодиод управляется непосредственно и индивидуально соответствующим выводом ПЛИС MAX 10. Перевод этого

вывода на логический уровень «1» включает светодиод, а перевод на логический уровень «0» - выключает его. Резисторы R ограничивают ток светодиодов. На рис. 5 показаны соединения между светодиодами и ПЛИС MAX 10. В таблице 4 приведено

назначение контактов пользовательских светодиодов LED.

Плата DE10-Lite имеет шестиразрядный 7-сегментный дисплей

для отображения цифровых данных. На рис. 6 показано подключение 7-сегментного индикатора (общий анод) к выводам ПЛИС MAX 10.

R

EDR0,

ft*

TP

W

п

п

Рис. 5. Соединения линейки светодиодов и ПЛИС MAX 10

Таблица 4

Назначение выводов светодиодов

Имя сигнала № вывода ПЛИС Описание Стандарт I/O

LEDR0 PIN_A8 Светодиод 0 3.3-V LVTTL

LEDR1 PIN_A9 Светодиод 1 3.3-V LVTTL

LEDR2 PIN_A10 Светодиод 2 3.3-V LVTTL

LEDR3 PIN_B10 Светодиод 3 3.3-V LVTTL

LEDR4 PIN_D13 Светодиод 4 3.3-V LVTTL

LEDR5 PIN_C13 Светодиод 5 3.3-V LVTTL

LEDR6 PIN_E14 Светодиод 6 3.3-V LVTTL

LEDR7 PIN_D14 Светодиод 7 3.3-V LVTTL

LEDR8 PIN_A11 Светодиод 8 3.3-V LVTTL

LEDR9 PIN_B 11 Светодиод 9 3.3-V LVTTL

Сегмент индикатора можно включить или выключить, подавая, соответственно, логический уровень «0» или логический уровень «1» от ПЛИС. Каждый сегмент на индикаторе дисплея

5 1

6

4 2

3 DP

НЕХ0{4]

НЕХ0(5]

НЕХ0(6]

НЕХ0(7]

нумеруется от 0 до 6 и DP (десятичная точка). Позиции сегментов и их номера приведены на рис. 6. В таблице 5 показано назначение выводов ПЛИС для 7-сегментных индикаторов дисплея.

НЕХ0(0]

HEX0J1]

НЕХ0(2]

НЕХ0(3]

МАХ 10

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Рис. 6. Соединение 7-сегментного индикатора НЕХ0 и ПЛИС МАХ10

Таблица 5

Н азначение контактов для 7-сегментных дисплеев

Имя сигнала № вывода ПЛИС Описание Стандарт I/O

1 2 3 4

НЕХ00 РШ_С14 сегмент0[0] 3.3-V LVTTL

НЕХ01 РШ_Е15 сегмент0[1] 3.3-V LVTTL

НЕХ02 РШ_С15 сегмент0[2] 3.3-V LVTTL

НЕХ03 РШ_С16 сегмент0[3] 3.3-V LVTTL

НЕХ04 РШ_Е16 сегмент0[4] 3.3-V LVTTL

НЕХ05 РШ_Б17 сегмент0[5] 3.3-V LVTTL

НЕХ06 РШ_С17 сегмент0[6] 3.3-V LVTTL

НЕХ07 РШ_Б15 сегмент0[7] БР 3.3-V LVTTL

НЕХ10 РШ_С18 сегмент 1[0] 3.3-V LVTTL

НЕХ11 РШ_Б18 сегмент1[1] 3.3-V LVTTL

НЕХ12 РШ_Е18 сегмент 1[2]

НЕХ13 РШ_Б16 сегмент 1[3] 3.3-V LVTTL

НЕХ14 РШ_Л17 сегмент 1[4] 3.3-V LVTTL

1 2 3 4

НЕХ15 PIN_Л18 сегмент 1[5] 3.3-У ЬУТТЬ

НЕХ16 PIN_B17 сегмент 1[6] 3.3-У ЬУТТЬ

НЕХ17 PIN_Л16 сегмент 1[7] DP 3.3-У ЬУТТЬ

НЕХ20 PIN_B20 сегмент2[0] 3.3-У ЬУТТЬ

НЕХ21 PIN_Л20 сегмент2[1] 3.3-У ЬУТТЬ

НЕХ22 PIN_B19 сегмент2[2] 3.3-У ЬУТТЬ

НЕХ23 PIN_Л21 сегмент2[3] 3.3-У ЬУТТЬ

НЕХ24 PIN_B21 сегмент2[4] 3.3-У ЬУТТЬ

НЕХ25 PIN_C22 сегмент2[5] 3.3-У ЬУТТЬ

НЕХ26 PIN_B22 сегмент2[6] 3.3-У ЬУТТЬ

НЕХ27 PIN_Л19 сегмент2[7] DP 3.3-У ЬУТТЬ

НЕХ30 PIN_F21 сегментЗ [0] 3.3-У ЬУТТЬ

НЕХ31 PIN_E22 сегментЗ [ 1] 3.3-У ЬУТТЬ

НЕХ32 PIN_E21 сегментЗ [2] 3.3-У ЬУТТЬ

НЕХ33 PIN_C19 сегментЗ [3] 3.3-У ЬУТТЬ

НЕХ34 PIN_C20 сегментЗ [4] 3.3-У ЬУТТЬ

НЕХ35 PIN_D19 сегментЗ [5] 3.3-У ЬУТТЬ

НЕХ36 PIN_E17 сегментЗ [6] 3.3-У ЬУТТЬ

НЕХ37 PIN_D22 сегментЗ [7] DP 3.3-У ЬУТТЬ

НЕХ40 PIN_F 18 сегмент4[0] 3.3-У ЬУТТЬ

НЕХ41 PIN_E20 сегмент4[1] 3.3-У ЬУТТЬ

НЕХ42 PIN_E19 сегмент4[2] 3.3-У ЬУТТЬ

НЕХ43 PIN_J18 сегмент4[3] 3.3-У ЬУТТЬ

НЕХ44 PIN_H19 сегмент4[4] 3.3-У ЬУТТЬ

НЕХ45 PIN_F19 сегмент4[5] 3.3-У ЬУТТЬ

НЕХ46 PIN_F20 сегмент4[6] 3.3-У ЬУТТЬ

НЕХ47 PIN_F17 сегмент4[7] DP 3.3-У ЬУТТЬ

НЕХ50 PIN_J20 сегмент5[0] 3.3-У ЬУТТЬ

1 2 3 4

HEX51 PIN_K20 сегмент5 [ 1] 3.3-V LVTTL

HEX52 PIN_L18 сегмент5 [2] 3.3-V LVTTL

HEX53 PIN_N18 сегмент5[3] 3.3-V LVTTL

HEX54 PIN_M20 сегмент5 [4] 3.3-V LVTTL

HEX55 PIN_N19 сегмент5[5] 3.3-V LVTTL

HEX56 PIN_N20 сегмент5[6] 3.3-V LVTTL

HEX57 PIN_L19 сегмент5[7] DP 3.3-V LVTTL

Формирование тактовых

импульсов

Блок синхронизации платы (БИС CDCE937) формирует для ПЛИС МАХ 10 три последовательности тактовых импульсов с низким дрожанием, стандарта I/O 3.3-V LVTTL:

- ADC_CLK_10 (PIN_N5) с частотой 10 МГц для тактирования АЦП;

- MAX 10_CLK 1_50 (PIN_P11), MAX 10_CLK2_50 (PIN_N14) с частотой 50 МГц для использования в качестве источников синхронизации пользовательской логики.

Для выполнения лабораторного практикума необходимы три вида тактовых импульсов:

- импульс по нажатию кнопки (генератор одиночного импульса);

- импульсная последовательность секундной длительности (для индикации состояния цифрового устройства на светодиодных индикаторах);

- импульсные последовательности частотой 5 или 10 кГц (для отображения входных и выходных сигналов цифрового устройства на осциллографе).

В руководстве пользователя предупреждают, чтобы не изменяли настройки блока синхронизации.

Неправильная настройка приведёт к тому, что система не будет работать!

На плате DE10-Lite имеются две кнопки KEY0, KEY1 со схемой исключения дребезга, которые и выполнят роль генератора одиночного импульса. Аппаратное решение упростило программное обеспечение лабораторного практикума.

САПР Quartus II предлагает пользователю простой схемотехнический редактор, в котором отсутствует (в отличии от фирмы Xilinx) ряд важных элементов: многоразрядные счётчики, регистры и компараторы. Будем надеяться, что в ближайшее время фирма Intel FPGA исправит этот недостаток. В связи с этим обстоятельством формирование импульсных последовательностей

секундной длительности и частотой 5 или 10 МГц выполним в виде модулей на основе языка Verilog. В работе [1] утверждают, что Verilog и ПЛИС - вход во всю современную цифровую электронику. Огромное число инженеров, которые сейчас

разрабатывают БИС в фирмах Apple, Intel и других электронных компаниях, прошли через лабораторные работы с применением отладочных плат на ПЛИС. Поэтому изучение языка Verilog просто необходимо нашим студентам.

Модуль импульсной

формирования последовательности

секундной длительности выполнен на языке Verilog.

GOI1

'timescale 1ns / 1ps module GOI1 (

input CLK, BTN, output reg IMP, output reg CN, output reg [1:0] data, output reg [25:0] cnt

// входы тактовый и от кнопки // выходной сигнал модуля // импульс переноса // регистр ЯБ-триггера // регистр 26-разрядного счётчика

initial data = 2'b00; // инициализация сигналов модуля initial cnt = 26'b00_0000_0000_0000_0000_0000_0000; initial IMP = 0; initial CN = 0;

always @ (negedge CLK) begin

data <= {data[0], BTN}; // формирование RS- триггера

IMP <= ~(~(data[1] | IMP) | CN); // выходной сигнал модуля

end

always @ (posedge CLK) begin

if (CN) // сброс счётчика

begin

cnt <= 26'b00_0000_0000_0000_0000_0000_0000;

CN <= 1'b0;

end

else if (IMP) // режим счёта

begin

cnt <= cnt + 1'b1; CN <= 1'b0; end

if (cnt == 26'b10_1111_1010_1111_0000_1000_0000) // компаратор CN <= 1'b1; // формирование переноса

else

CN <= 1'b0;

end

endmodule

Модуль формирует сигнал IMP с периодом в 1 секунду. На тактовый вход CLK необходимо подключить последовательность импульсов

MAX 10_CLK 1_50 (PIN_P11) или MAX 10_CLK2_50 (PIN_N14) с частотой

50 МГц. Модуль содержит описание 26-разрядного двоичного счётчика еи1. Счётчик сП формирует импульс переноса СК если его содержимое достигает значения 26-разрядной константы

26'Ь10_1111_1010_1111_0000_1000_000 задаётся установкой 26-разрядной

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

0. Таким образом реализуется константой компаратора:

компаратор. Модуль счёта М счётчика

Г = 50 МГц = 5 107 Гц. Т = Ш = 1/ (5 107) = 2 10-8 С. М = 1/(2 10-8) = 5 107.

Константу модуля счёта записываются в двоичном коде:

М = 26'Ь10_1111_1010_1111_0000_1000_0000.

Изменяя константу, можно на светодиодах. формировать импульсы заданной Модуль БУКС_5 формирует

длительности для исследования тактовые импульсы с частотой 5 кГц. цифровых схем с индикацией состояния

'timescale 1ns / 1ps module SYNC_5 (

input CLK, R, // входы тактовый и сброса

output reg F 10k, // выход импульса на 10 кГц output reg FS, // выходной сигнал модуля

output reg [12:0] cnt // 13-разрядный регистр счётчика

);

always @ (posedge CLK) begin

if (~ R) // сброс счётчика

begin

cnt <= 13 'b0_0000_0000_0000; F10k <= 1'b0; FS <= 1'b0; end

else

cnt <= cnt + 1'b1; if (cnt == 13'b1_0011_1000_1000) // компаратор begin

F10k <= 1'b1;

cnt <= 13'b0_0000_0000_0000; end

else

F10k <= 1'b0; if (F10k == 1'b1) // Т-триггер

FS <= ~FS;

end

endmodule

Тактовая последовательностью MAX10_CLK2_50 (PIN_N14) с частотой MAX 10_CLK 1_50 (PIN_P11) или 50 МГц платы подаётся на вход CLK

модуля. Константа

13'Ь1_0011_1000_1000 сравнивается с содержимым счётчика сП и формирует импульс переноса Б10к частотой 10 кГц. Эти «тонкие импульсы» Т-триггером преобразуются в последовательность меандров ББ частотой 5 кГц. Проверка выходов схемы с помощью осциллографа показала, что амплитуда импульсов равна 3,32 В и сигналы формируются с высокой точностью. Для проверки удобно использовать розетку разъёма расширения ОРЮ с 40 контрольными точками.

Выводы

1. Для записи конфигурационной последовательности в ПЛИС платы DE10-Lite необходимо использовать конфигурацию JTAG и встроенный USB - Blaster[USB-0].

2. При исследовании простых цифровых устройств доступ к выводам ПЛИС FPGA можно организовать, используя контакты разъёма расширения GPIO.

3. Доступ к выводам ПЛИС FPGA MAX 10 упрощается при использовании розетки разъёма GPIO с 40 контрольными точками.

4. Для организации тактирования исследуемых цифровых устройств рекомендуются модули формирователей секундных и последовательности импульсов с частотой 5 кГц.

Список литературы:

1. Цифровой синтез:

практический курс / под общ. ред. А.Ю. Романова, Ю.В. Панчула. - М.: ДМК Пресс, 2020. - 556 с.

2. Строгонов А.В., Кошелева Н.Н., Буслаев А.Б. Проектирование цифровых устройств в базисе ПЛИС: Лабораторный практикум: Учебное пособие. - Воронеж: ВГТУ, 2017. - 123 с.

3. Кучеренко А.А. Разработка и моделирование цифровых устройств на ПЛИС фирмы Xilinx: Учебное пособие. - Донецк: ДОНИЖТ, 2020. - 140 с.

4. Фунтиков М.Н. Методические указания к выполнению лабораторных работ и внеаудиторной самостоятельной работы по дисциплине «Разработка аппаратно-программируемых радиотехнических устройств». -Донецк: ДНТУ, 2020. - 88с.

Аннотации:

В статье рассмотрены практические вопросы, возникающие при организации лабораторного практикума на основе платы DE10-Lite фирмы Terasic. Руководствуясь фирменной документацией, разработаны рекомендации по выбору режима работы платы, организации доступа к выводам ПЛИС и тактирования исследуемых цифровых устройств.

Ключевые слова: программируемая логическая интегральная схема, FPGA MAX 10, плата DE10-Lite, цифровое устройство, рекомендации, режим работы, тактирование.

The article deals with practical issues that arise when organizing a laboratory workshop based on the Terasic DE10-Lite board. Guided by the proprietary documentation, recommendations have been developed for choosing the operating mode of the board, organizing access to the FPGA outputs and clocking the digital devices under study.

Keywords: programmable logic integrated circuit, FPGA MAX 10, DE10-Lite board, digital device, recommendations, operating mode, clocking.

i Надоели баннеры? Вы всегда можете отключить рекламу.