ЛР№2. Описание сумматора на рис. 3

This commit is contained in:
Andrei Solodovnikov
2025-02-21 10:58:15 +03:00
committed by GitHub
parent f5811ea5df
commit 6eb5f84bfa

View File

@@ -276,6 +276,10 @@ assign Result = $signed(A) / 10;
_Рисунок 3. Пример схемы, реализующей АЛУ._
Обратите внимание на то, что сумматор на _рис. 3_ отличается от всех остальных блоков. Для того, чтобы спроектированный в ЛР1 32-разрядный сумматор был создан не зазря, а также для закрепления навыков по созданию экземпляров модулей внутри других модулей, вам предлагается использовать его при реализации АЛУ.
Другие блоки распознаны Vivado на основе представленных в описании АЛУ арифметических или логических выражений и в процессе синтеза будут реализованы через те компоненты ПЛИС, которые позволят лучше всего удовлетворить временным и физическим ограничениям проекта (см. главу "Этапы реализации проекта в ПЛИС"). Сумматор же будет реализован так, как это описали мы, поскольку вместо использования абстрактной операции "+" в описании АЛУ было сказано разместить конкретный модуль, реализующий конкретную схему. Такая реализация сумматора не является эффективной ни в плане временных характеристик, ни в плане количества затраченных на реализацию ресурсов ПЛИС. Но как уже упоминалось в ЛР1, цель этой реализации воспроизвести простоту логики рассуждений о том, как спроектировать сумматор.
### Порядок выполнения задания
1. Добавьте в `Design Sources` проекта файл [`alu_opcodes_pkg.sv`](alu_opcodes_pkg.sv). Этот файл содержит объявление пакета `alu_opcodes_pkg`, в котором прописаны все опкоды АЛУ.