Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> VHDL

Master VHDL:introdução abrangente para design FPGA e ASIC

Tutorial – Introdução ao VHDL


VHDL é uma sigla horrível. Significa V HSIC H hardware D descrição L linguagem. Uma sigla dentro de uma sigla, incrível! VHSIC significa V ery H ah S fiz xixi eu C integrado ircuito. Portanto, VHDL expandido é V Circuito Integrado de Alta Velocidade H hardware D descrição L linguagem. UFA, isso é demais. VHDL é uma das duas linguagens usadas pela educação e pelas empresas para projetar FPGAs e ASICs. Você pode se beneficiar primeiro com uma introdução aos FPGAs e ASICs se não estiver familiarizado com essas peças fascinantes de circuitos. VHDL e Verilog são as duas linguagens que os designers digitais usam para descrever seus circuitos e são diferentes por design das linguagens de software tradicionais, como C e Java.

Para o exemplo abaixo, criaremos um arquivo VHDL que descreve um portão E. Para relembrar, um And Gate simples tem duas entradas e uma saída. A saída é igual a 1 somente quando ambas as entradas são iguais a 1. Abaixo está uma imagem do And Gate que iremos descrever com VHDL.



Um E Portão

Vamos lá! A unidade fundamental do VHDL é chamada de sinal . Por enquanto, vamos supor que um sinal pode ser 0 ou 1 (na verdade, existem outras possibilidades, mas chegaremos a isso). Aqui está alguma lógica VHDL básica:
05 
A primeira linha do código define um sinal do tipo std_logic e é denominado and_gate. Std_logic é o tipo mais comumente usado para definir sinais, mas há outros que você aprenderá. Este código irá gerar uma porta AND com uma única saída (and_gate) e 2 entradas (input_1 e input_2). A palavra-chave “e” é reservada em VHDL. O operador <=é conhecido como operador de atribuição. Ao analisar verbalmente o código acima, você pode dizer em voz alta:“O sinal and_gate GET input_1 e-ed com input_2.”

Agora você deve estar se perguntando de onde vêm input_1 e input_2. Bem, como o nome indica, eles são entradas para este arquivo, então você precisa informar as ferramentas sobre eles. As entradas e saídas de um arquivo são definidas em uma entidade . Uma entidade contém uma porta que define todas as entradas e saídas de um arquivo. Vamos criar uma entidade simples:
15 
Esta é a sua entidade básica. Ele define uma entidade chamada example_and e 3 sinais, 2 entradas e 1 saída, todos do tipo std_logic. Uma outra palavra-chave VHDL é necessária para completar isso:arquitetura . Uma arquitetura é usada para descrever a funcionalidade de uma entidade específica. Pense nisso como um trabalho de tese:a entidade é o índice e a arquitetura é o conteúdo. Vamos criar uma arquitetura para esta entidade:
22 
O código acima define uma arquitetura chamada rtl da entidade example_and. Todos os sinais utilizados pela arquitetura devem ser definidos entre as palavras-chave “is” e “begin”. A lógica da arquitetura real está entre as palavras-chave “início” e “fim”. Você está quase terminando este arquivo. Uma última coisa que você precisa informar às ferramentas é qual biblioteca usar. Uma biblioteca define como certas palavras-chave se comportam em seu arquivo. Por enquanto, basta ter como certo que você precisa ter estas 2 linhas no topo do seu arquivo:
36 
Parabéns! Você criou seu primeiro arquivo VHDL. Você pode ver o arquivo completo aqui:
44 
Parece que você teve que escrever muito código apenas para criar um portão estúpido? Em primeiro lugar, e os portões não são estúpidos. Em segundo lugar, você está correto; VHDL é uma linguagem muito detalhada. Acostume-se com o fato de que fazer algo que era muito fácil em software levará muito mais tempo em um HDL como Verilog ou VHDL. Mas basta pedir a algum software para tentar gerar uma imagem em um monitor VGA que exiba o Jogo da Vida de Conway e ver sua cabeça girar de espanto! A propósito, esse vídeo é criado com VHDL e FPGA. Você será capaz de fazer isso em breve!

A seguir discutiremos outra palavra-chave fundamental do VHDL:processo.

VHDL

  1. Como criar seu primeiro programa VHDL:Hello World!
  2. Como um sinal é diferente de uma variável em VHDL
  3. Como usar um procedimento em um processo em VHDL
  4. Master VHDL:introdução abrangente para design FPGA e ASIC
  5. Como criar um processo cronometrado em VHDL
  6. Como usar um procedimento em VHDL
  7. Declaração de Procedimento - Exemplo de VHDL
  8. Questionário básico de VHDL – parte 2
  9. Verificação aleatória restrita
  10. Introdução ao VUnit