Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> VHDL

Как создать свою первую программу VHDL:Hello World!

Изучая новый язык программирования, я всегда предпочитаю начинать с изучения печати. Когда вы освоите вывод «Hello World!», вы поймете, что среда работает. Он также показывает вам базовый скелет языка, минимальный код, необходимый для создания любого вывода.

Вы можете подумать:но VHDL — это язык описания оборудования, как он вообще может выводить какой-либо текст? Вам понадобится экран, подключенный к FPGA или чему-то еще, и всевозможная логика между ними, и это будет совсем не просто. Хотя все это правда, давайте на мгновение забудем о FPGA и ASIC и сосредоточим наше внимание на языке VHDL.

Эта запись в блоге является частью серии учебных пособий по основам VHDL.

VHDL можно рассматривать как язык параллельного программирования, и поэтому мы можем использовать этот подход программиста для его изучения. Поскольку мы используем этот язык для описания цифровых схем, единственный способ запустить его на нашем компьютере — это использовать симулятор. , и симулятор определенно способен выводить «Hello World!» на экран.

Как бесплатно установить симулятор и редактор VHDL

Упражнение

Этот видеоурок покажет вам, как создать свою самую первую программу VHDL:

Окончательный код, который мы создали:

entity T01_HelloWorldTb is
end entity;

architecture sim of T01_HelloWorldTb is
begin

    process is
    begin

        report "Hello World!";
        wait;

    end process;

end architecture;

Вывод в консоль симулятора, когда мы нажали кнопку запуска в ModelSim:

VSIM 2> run
# ** Note: Hello World!
#    Time: 0 ns  Iteration: 0  Instance: /t01_helloworld

Анализ

В первых двух строках мы объявили сущность . Сущность модуля объявляет свои входы и выходы. Чтобы можно было запустить модуль в симуляторе, он не может иметь никаких входов или выходов. Поэтому в нашем модуле нет ничего, кроме пустого объявления сущности.

Затем мы объявили архитектуру модуля. В то время как сущность — это интерфейс модуля с внешним миром, архитектура — это его внутренняя реализация. Модуль может иметь несколько архитектур, которые могут использоваться с одним и тем же объектом. На данный момент я бы не стал слишком беспокоиться об этих вещах, поскольку они являются расширенными функциями VHDL.

Внутри архитектуры мы объявили процесс . Сейчас мы можем думать о процессе как о потоке в нашей программе, в котором все происходит последовательно.

Внутри процесса мы печатаем «Hello World!» используя report ключевое слово. На следующей строке есть единственный wait; . Когда симулятор достигает этой линии, больше ничего не происходит. Процесс будет ждать здесь вечно.

Когда мы моделировали этот дизайн в ModelSim, мы могли видеть, что «Hello World!» был напечатан на консольный вывод. После этого больше ничего не происходило.

Вывод

Перейти к следующему руководству »


VHDL

  1. Учебное пособие:Ваша первая программа для ПЛИС:мигалка для светодиодов
  2. C# Hello World — ваша первая программа на C#
  3. Java-программа Hello World
  4. Как создать список строк в VHDL
  5. Как создать управляемый Tcl тестовый стенд для модуля кодовой блокировки VHDL
  6. Как создать ШИМ-контроллер на VHDL
  7. Как создать кольцевой буфер FIFO в VHDL
  8. Как создать связанный список в VHDL
  9. Как использовать процедуру в процессе в VHDL
  10. Как прототипы улучшают ваш производственный процесс