Вопрос или проблема
Мне нужно смоделировать Verilog на моем MacBook Pro для школы. Я пытался скачать, настроить и установить Icarus и Veriwell.
Команда make test
работает для Icarus, но не работает для Veriwell, ни одна из них не распознается терминалом.
Команда, которую я использую, это:
iverilog hello.vl
и
veriwell hello.vl
Терминал утверждает, что ни одной из этих команд не существует.
Я очень новичок в настройке инструментов с помощью терминала, но думаю, что проблема заключается именно в использовании программы после этого. Есть идеи?
Вы делали make install
? Если да, убедитесь, что каталог, в который она установилась, находится в вашем $PATH
. Если вы используете csh/tcsh, вам может понадобиться выполнить команду rehash
, чтобы оболочка нашла новые программы в пути.
Вот два похожих вопроса:
Я не пробовал Veriwell, но я использую Icarus и GTKWave для симуляционной среды Verilog.
Я использую режим Verilog в Aquamacs в качестве редактора с подсветкой синтаксиса.
Возьмите ваш hello.vl
(обычно используется просто .v) и скомпилируйте его с помощью
iverilog -o hello hello.vl
Это создаст объектный файл с именем hello. Чтобы его выполнить, введите
vpp hello
Как только вы начнете писать тестовые стенды, вам захочется создать файл волны. Вы делаете это, добавив это к вашему тестовому стенду.
initial
begin
$dumpfile("wave.lxt");
$dumpvars(0, <модуль тестового стенда>);
end
Затем вы можете загрузить wave.lxt в GTKWave (обратите внимание, что вам нужно X11 для использования GTKWave).
Чуть более продвинуто, вы можете настроить Aquamacs для использования Icarus для компиляции вашего кода, чтобы узнать, есть ли у вас ошибка компиляции, прежде чем покинуть редактор.
Ответ или решение
Как запустить Verilog на macOS: Пошаговое руководство
Симуляция Verilog на macOS — это задача, с которой часто сталкиваются студенты и разработчики, изучающие аппаратное обеспечение. В данном гайде я постараюсь максимально подробно объяснить, как установить и использовать инструменты Icarus Verilog и GTKWave для симуляции Verilog на вашем MacBook Pro.
Шаг 1: Установка Icarus Verilog
-
Установите Homebrew (если он еще не установлен). Homebrew — это популярный пакетный менеджер для macOS, который упрощает установку программного обеспечения. В терминале введите следующую команду для установки:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
-
Установите Icarus Verilog. Выполните следующую команду в терминале:
brew install icarus-verilog
-
Проверьте установку. Убедитесь, что Icarus установлен правильно, введя:
iverilog -v
Если всё настроено корректно, вы увидите информацию о версии Icarus Verilog.
Шаг 2: Установка GTKWave
GTKWave — это инструмент для просмотра волн, который отлично сочетается с Icarus Verilog.
-
Установите GTKWave с помощью Homebrew:
brew install gtkwave
-
Проверьте установку. Введите в терминале:
gtkwave --version
Это покажет версию установленного GTKWave, если всё прошло успешно.
Шаг 3: Компиляция и симуляция вашего кода Verilog
-
Создайте файл Verilog. Например, давайте создадим простой файл с именем
hello.v
.module hello; initial begin $display("Hello, Verilog!"); $finish; end endmodule
-
Компиляция файла. Используйте следующую команду для компиляции вашего Verilog-кода:
iverilog -o hello hello.v
Здесь
-o hello
указывает выходной файл, который будет создан. -
Запуск симуляции. Для запуска симуляции используйте команду:
vvp hello
Вы должны увидеть сообщение "Hello, Verilog!" в терминале.
Шаг 4: Вывод волн
Чтобы просмотреть волновые данные в GTKWave, вам нужно немного изменить ваш код Verilog.
-
Добавьте код для вывода в формате WAV. Измените ваш код следующим образом:
module hello; initial begin $dumpfile("wave.vcd"); $dumpvars(0, hello); $display("Hello, Verilog!"); #5 $finish; end endmodule
Это создаст файл
wave.vcd
, который можно открыть в GTKWave. -
Скомпилируйте и запустите ваш код снова:
iverilog -o hello hello.v vvp hello
-
Откройте GTKWave. Для этого выполните команду:
gtkwave wave.vcd
Теперь вы сможете просматривать сигнал на своем графическом интерфейсе GTKWave.
Заключение
В этом руководстве мы рассмотрели процесс установки и настройки Icarus Verilog и GTKWave на macOS. Теперь вы можете компилировать и симулировать свои Verilog модули с помощью этих мощных инструментов. Помните, что успех заключается в внимательном следовании инструкциям и, если возникнут проблемы, вы всегда можете обратиться к документации или сообществу для получения помощи.