como criar seu primeiro programa VHDL: Olá, Mundo!

ao aprender uma nova linguagem de programação, sempre gosto de começar aprendendo a imprimir. Quando você domina a saída “Olá Mundo!”você sabe que tem o ambiente funcionando. Ele também mostra o esqueleto básico do idioma, o código mínimo necessário para produzir qualquer saída.

você pode estar pensando: mas VHDL é uma linguagem de descrição de hardware, como ele pode produzir qualquer texto? Você precisaria de uma tela conectada a um FPGA ou algo assim e todos os tipos de lógica no meio, e isso não seria nada simples. Embora tudo isso seja verdade, vamos esquecer os FPGA’s e ASIC’s apenas por um momento e concentrar nossa atenção na linguagem VHDL.

esta postagem do blog faz parte da série básica de tutoriais VHDL.

VHDL pode ser pensado como uma linguagem de programação paralela e, portanto, podemos usar a abordagem deste programador para aprendê-lo. Como usamos a linguagem para descrever circuitos digitais, a única maneira de executá-lo em nosso computador através de um simulador, e o simulador é definitivamente capaz de produzir “Olá, Mundo!”para a tela.

Como instalar um simulador de VHDL e editor grátis

Exercício

Este vídeo tutorial irá mostrar-lhe como criar seu primeiro programa VHDL:

O código final que criamos:

entity T01_HelloWorldTb isend entity;architecture sim of T01_HelloWorldTb isbegin process is begin report "Hello World!"; wait; end process;end architecture;

A saída para o simulador console quando pressionamos o botão executar no ModelSim:

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

análise

nas duas primeiras linhas, declaramos a entidade. A entidade de um módulo declara suas entradas e Saídas. Para que seja possível executar um módulo em um simulador, ele não pode ter entradas ou saídas. Portanto, nosso módulo não tem nada além de uma declaração de entidade vazia.

em seguida, declaramos a arquitetura do módulo. Embora a entidade seja a interface de um módulo para o mundo exterior, a arquitetura é sua implementação interna. Um módulo pode ter várias arquiteturas que podem ser usadas com a mesma entidade. Eu não me preocuparia muito com essas coisas neste momento, pois são recursos avançados do VHDL.

dentro da arquitetura, declaramos um processo. Por enquanto, podemos pensar em um processo como um fio condutor em nosso programa, onde as coisas acontecem sequencialmente.

dentro do processo, imprimimos ” Olá, Mundo!”usando a palavra-chave report. Na próxima linha, há um único wait;. Quando o simulador atinge essa linha, nada mais vai acontecer. O processo vai esperar aqui para sempre.

quando simulamos este design no ModelSim, pudemos ver que ” Olá Mundo!”foi impresso na saída do console. Depois disso, nada mais aconteceu.

tenha acesso exclusivo a exercícios e Respostas!

Takeaway

  • Você pode pensar em um processo como um programa de thread
  • O report instrução imprime o texto para o simulador console
  • Execução de um processo, vai esperar para sempre em um wait; declaração

Ir para o próximo tutorial “

Leave a Reply

O seu endereço de email não será publicado.