Проектирование 8-битного АЛУ с использованием Modelsim | Доступна программа Verilog
Проектирование 8-битного АЛУ с использованием Modelsim | Доступна программа Verilog
В этом проекте описывается проектирование 8-битного АЛУ с использованием языка программирования Verilog. Он включает в себя написание, компиляцию и моделирование кода Verilog в ModelSim на платформе Windows.
В цифровой электронике арифметико-логическое устройство (АЛУ) — это цифровая схема, выполняющая арифметические и побитовые логические операции над целыми двоичными числами. Это фундаментальный строительный блок центрального процессора (CPU), который имеется во многих компьютерах и микроконтроллерах.
Рис. 1: Схема контактов АЛУ
Входные данные для АЛУ — это данные, над которыми нужно работать (называемые операндами), и код, указывающий операцию, которую необходимо выполнить. while Выходные данные АЛУ — это результат выполненной операции. Во многих конструкциях АЛУ также обменивается дополнительной информацией с регистром состояния, которая относится к результату текущих или предыдущих операций. Схема контактов АЛУ показана на рис. 1, а ее описание – в таблице I. Архитектура АЛУ показана на рис. 2, а таблицы его функций приведены в таблице II.
Проектирование 8-битного АЛУ
ModelSim — это простой в использовании и универсальный симулятор VHDL/SystemVerilog/Verilog/SystemC от Mentor Graphics. Он поддерживает поведенческое моделирование, моделирование на уровне передачи регистров и на уровне шлюзов.
Рис. 2. Архитектура ALU для разработки 8-битного ALUРис. 3. Окно «Создать проект»Рис. 4. Добавьте элементы в окно проекта
Сначала установите ModelSim на ПК с Windows.
1. Запустите ModelSim с рабочего стола; вы увидите диалоговое окно ModelSim 10.4.
2. Создайте проект, нажав Jumpstart на экране приветствия.
3. Появится окно «Создать проект» (рис. 3). Выберите подходящее имя для вашего проекта.
Рис. 5. Окно «Создать файл проекта»
Задайте для местоположения проекта значение C:/Documents and Settings/Nidhi/Desktop/Final_ALU_Testing (в нашем case), а остальное оставьте как default, а затем нажмите «ОК».
3. Откроется окно «Добавить элементы в проект» (рис. 4).
4. В этом окне выберите опцию «Создать новый файл».
5. Появится окно «Создать файл проекта». Выберите подходящее имя файла (скажем, Top_ALU) для файла, который вы хотите добавить; выберите Verilog в качестве типа «Добавить файл» и «Верхний уровень» в качестве папки (рис. 5).
6. В рабочей области главного окна (рис. 6) дважды щелкните только что созданный файл (Top_ALU.v в нашем case).
7. Введите код Verilog (Top_ALU.v) для 8-битного ALU в новом окне.
8. Сохраните свой код из меню «Файл».
9. Теперь добавьте соответствующие файлы в соответствии с архитектурой, которая включает в себя арифметические, логические блоки, блоки сдвига и мультиплексора. Добавьте новые файлы в проект Top_ALU, щелкнув правой кнопкой мыши файл Top_ALU.v. Выберите Добавить в проект ->. Параметры «Новый файл…», как показано на рис. 7.
Рис. 6: Окно рабочей области
Укажите имя файла Top_Arithmetic и выполните шаги с пятого по девятый, как указано выше.
Аналогично добавьте в проект файлы Top_Logic, Top_Shift и Top_Mux и введите в эти файлы соответствующие коды Verilog.
Окончательное окно рабочей области показано на рис. 8.
Рис. 7. Добавление новых файловРис. 8. Раздел «Рабочая область»Рис. 9: Окно компиляцииРис. 10: Вкладка «Библиотека»Рис. 11. Добавьте волну в проект
Компиляция/отладка файлов проекта
1. Выберите «Компилировать» -> «Компилировать все».
2. Результат компиляции отображается в главном окне. Напротив каждого имени файла отображается зеленая галочка, что означает отсутствие ошибок в проекте (рис. 9).
Имитация конструкции ALU
1. Нажмите меню «Библиотека» в главном окне, а затем нажмите знак плюса (+) рядом с рабочей библиотекой. Вы должны увидеть имя кода Top_ALU, который мы только что скомпилировали (рис. 10).
2. Дважды щелкните ALU, чтобы загрузить файл. В главном окне должна открыться третья вкладка.
3. Перейдите в раздел «Добавить» -> «В волну» -> «Добавить». Все элементы в настройках региона (рис. 11).
4. Выберите сигналы, которые вы хотите отслеживать в целях моделирования. Выберите их, как показано на рис. 12.
5. Введите значения вручную, чтобы отслеживать симуляцию конструкции восьмибитного АЛУ.
Рис. 12: Выбор сигналовРис. 13: Сигналы мониторингаРис. 14: Окно моделированияРис. 15: Окно волны
Нажмите правой кнопкой мыши на выбранных сигналах и нажмите «Принудительно» (рис. 13).
После предоставления значений выбранным сигналам мы готовы смоделировать нашу конструкцию, нажав «Выполнить» в окне моделирования, как показано на рис. 14.
Теперь нажмите «Полное масштабирование» в окне волны. Форма выходного сигнала вашего моделирования будет такой, как показано на рис. 15.
Таким образом, результат проектирования АЛУ подтверждается этой формой выходного сигнала.
Описанное здесь ALU может быть дополнительно усовершенствовано для создания проектов более продвинутого уровня с более сложной логикой для выполнения сложных вычислений в процессорах.
Увлекаетесь разработкой 8-битного ALU? Ознакомьтесь с другими проектами Verilog.
Все ссылки на книги и журналы, представлены на этом сайте, исключительно для ознакомления, авторские права на эти публикации принадлежат авторам книг и издательствам журналов!
Подробно тут! Жалоба