Построение блока выполнения операции
Создадим сумматоры для формирования сумм частичных произведений и для формирования характеристики результата. Нажмите MegaWizard Plug-In Manager>Next. Слева раскройте раздел Arithmetic и выберите LPM_ADD_SUB. Задайте имя в поле What name do you want for the output file? (пусть это будет sm1 в блоке обработки мантисс и sm2 в блоке обработки характеристик). Разрядность сумматора в блоке обработки мантисс совпадает с разрядностью регистра хранения мантиссы множимого. Укажите параметры как на рисунке 34.
Рис. 34. Сумматор
Схема проверки операндов на равенство нулю. MegaWizard Plug-In Manager>Next. Раскройте слева раздел Gates. Выберите LPM_OR. Задайте имя (ili10). Укажите параметры как на рисунке 35.
Рис. 35. Создание схемы проверки на ноль
Два раза нажмите Next, затем Finish. Добавьте к схеме элемент not из библиотеки символов, чтобы схема срабатывала по сигналу “1” (рисунок 36а). Для сохранения значения выхода сумматора CR формирования сумм частичных произведений необходим D – триггер (рисунок 36б).
а) б)
Рис. 36. Схема проверки на ноль (а) и D-триггер (б)
Сформируем счетчик циклов. MegaWizard Plug-In Manager>Next. Раскройте слева раздел Arithmetic. Выберите элемент LPM_COUNTER. Задайте имя. Нажмите Next. Укажите параметры как на рисунке 37. Нажмите Next>Next>Finish.
Для подачи на некоторые входы счётчика “1”, а на другие “0” необходимо ввести схемы, выдающие данные сигналы. Создайте элементы VCC (логическая 1) и GND (логический 0) из библиотеки символов и соедините их выходы с шинами. Задайте им имена (рисунок 38).
На информационные входы (data[4..0]) счетчика (рисунок 39) необходимо подать комбинацию «00110» (gr[9..8],v[1..0],gr[7]).
Рис. 37. Параметры счетчика циклов
Рис. 38. Логический ноль и логическая единица
Рис. 39. Схема модели счетчика в Quartus
Еще один вариант реализации счетчика циклов. Можно воспользоваться четырехразрядным счетчиком, и начинать считать не с нуля, а с 14 (1110) и далее до восьми (1000). Таким образом нет необходимости в наращивании разрядности счетчика. Но данный метод требует доработку схемы, что позволило бы после первой итерации цикла умножения игнорировать значение старшего разряда счетчика, чтобы это не повлияло на ранний выход из цикла реализации процедуры умножения.
Построим комбинационную схему для определения ПРС и ПМР (рисунок 40).
Рис. 40. Схема определения признаков ПРС и ПМР
Ct1[5..0] – информационный выход счетчика для формирования характеристик. Подаются на вход схемы ili5 (без инверсии выхода, строится аналогично схеме проверке на ноль в блоке входных данных). And3, srff (RS – триггер для формирования признака ПРС), nor2 (двухвходовое ИЛИ-НЕ) берутся из библиотеки символов. P[2], р[5] – осведомительные сигналы возникновения ситуации ПРС и ПМР соответственно.
Дата добавления: 2022-02-05; просмотров: 277;