* Ref(01_Adder):Уд-ие лога о результатых симуляции * Ref(01_Adder):Улучш-ие логирования * Ref(01_Adder_32):Доб-ие timeunit * Fix(01_Adder):Доб-ие #1 для ожидания line_dump * Ref(01_Adder):Доб-ие инфы в тб для 32 битного сумматора * Ref(01_Adder):Дополнение информацией board файла * Ref(01_Adder):Итализация названия рисунка 3 * Ref(01_Adder):Испр-ие грамматических ошибок в board файле * Revert "Ref(01_Adder):Доб-ие инфы в тб для 32 битного сумматора" This reverts commit96380b56dc
. * Revert "Fix(01_Adder):Доб-ие #1 для ожидания line_dump" This reverts commit34670f21f8
. * Revert "Ref(01_Adder_32):Доб-ие timeunit" This reverts commit11c97ac431
. * Revert "Ref(01_Adder):Улучш-ие логирования" This reverts commit92147fa303
. * Revert "Ref(01_Adder):Уд-ие лога о результатых симуляции" This reverts commit33c8dda06c
. * Ref(01_Adder):Испр-ие грамматики в README board files * Ref(01_Adder): Применение правок по MD bordfiles после ревью Co-authored-by: Andrei Solodovnikov <VoultBoy@yandex.ru> * Ref(01_Adder):Замена рисунка в MD board_files * Ref(01_Adder):Замена текста на ссылку по прошивке плис в board_files * Style(01_Adder):Испр-ие названия рисунков * Ref(01_Adder):Доб-ие ссылки на source window в board files * Ref(01_Adder):Испр-ие орфографии в md board_files * Style(01_adder_board):Разбивка длинных строк в md * Ref(01_Adder_board_md):Доб-ие номеров в кругах * Style(01_Adder_board_md):Доб-ие диапазонов в блок кода * Ref(01_Adder_board):Переименование файлов рисунков * Ref(01_Adder_board_md):Замена html color на latex Тк mardown не поддерживает html цвета * Revert "Ref(01_Adder_board_md):Замена html color на latex" This reverts commit90762590f7
. * Fix(01_Adder):Применение правок из ревью к md board files Co-authored-by: Andrei Solodovnikov <VoultBoy@yandex.ru> * Ref(01_Adder):Уд-ие лишней ссылки на инструкцию прошивки * Ref(01_Adder):Изм-ие номера рисунка * Ref(01_Adder):Переделка рисунка с 48 + 18 * Ref(01_Adder):Улучшение читаемости структурной схемы * Repo((.pic/labs/board files):Уд-ие неиспользуемых пикч * Repo(board_files):Возврат program_device * Repo:Перемещение пикчи how_to_program в соотв папку --------- Co-authored-by: Andrei Solodovnikov <VoultBoy@yandex.ru>
3.0 KiB
Проверка работы полного 32-битного сумматора в ПЛИС
После того, как вы создали проверили на моделировании 32-разрядный сумматор, вам необходимо проверить его работу на прототипе в ПЛИС.
Инструкция по реализации прототипа описана здесь.
На рис. 1 представлена схема прототипа в ПЛИС.
Рисунок 1. Структурная схема модуля nexys_adder
.
Модуль nexys_adder
позволяет подавать данные с переключателей ❶ на входы a_i
, b_i
,
а так же передавать входной бит переноса с помощью кнопки ❷ BTND
на вход carry_i
.
Переключатели делятся пополам между операндами a_i
, b_i
(переключатели sw[7:0]
относятся к
операнду b_i
, переключатели sw[15:8]
относятся к операнду a_i
). Так как переключателей
всего 16, каждому операнду достается только по 8. Таким образом, с переключателей можно ввести
8 младших бит каждого из операнда.
Старшие биты дополняются нулями, это значит что на нашем прототипе можно складывать числа в
диапазоне [0:255]
(плюс можно прибавлять входной бит переноса),
а значит диапазон результатов будет [0:511]
.
Семисегментные индикаторы ❸ отображают на левом блоке значение операндов a_i
и b_i
в шестнадцатеричном формате, а на правом — результат сложения. Светодиоды ❹,
расположенные над переключателями, дублируют сумму, представляя ее в двоичном формате.
На рис. 2 показан пример сложения 0x48 + 0x18 = 0x60
при нулевом входном переносе.
(нулевом, т.к. не нажата кнопка BTND
)
Рисунок 2. Использование сумматора для вычисления выражения 0x48 + 0x18
в ПЛИС.