Universidade do Contestado

Curso de Sistemas de informação

Daiana Paula de Ávila

2ª fase                                      Concórdia, 13 de outubro de 2011



VHDL

       A letra V da palavra VHDL significa Very High Speed Integrated Circuit
(Circuito Integrado de Alta Velocidade) e as demais letras, HDL significam Hardware
Description Language. Esse nome complicado foi criado pelo departamento de
defesa dos Estados Unidos, que foi a primeira instituição a reconhecer as suas
vantagens. O VHDL foi criado visando simulação, modelagem e documentação,
mas acabou recebendo mais tarde a possibilidade de síntese, com o objetivo de se
automatizar o projeto de circuitos.

        O VHDL ganhou popularidade fora do ambiente militar, graças ao IEEE
(Institute of Electrical and Electronics Engineering) que estabeleceu padrões para
tornar a linguagem universal. Com as ferramentas atuais, pode-se especificar um
circuito a partir de seu comportamento ou de sua estrutura, em vários níveis.

       MODELAGEM DE INTERFACES

       Declaração Entity

       – Descreve as portas entradas/saídas de um módulo:
Etapas de projeto usando VHDL:




Comentários:

       Apesar de o compilador ignorar todo o texto que está escrito como
comentário, os comentários tem uma grande importância durante o projeto. Com
comentários e um pouco de bom senso é possível criar um código limpo e legível.
Diferentemente de outras linguagens de programação, na VHDL os comentários são
escritos depois de dois traços como mostra a Figura 1.




Figura 1. Exemplo de comentário.




Entidade:

       Uma entidade de projeto pode representar uma simples porta lógica como um
sistema completo e é composta de duas partes: declaração da entidade e
arquitetura. A declaração da entidade define a interface com o ambiente exterior,
como, por exemplo, as entradas e saídas. A Figura 2 mostra a declaração dos 4
modos de porta, e eles são:

        1. IN – apenas entrada

        2. OUT – apenas saída

        3. BUFFER – saída que controla sinal interno

        4. INOUT – porta bidirecional




Figura 2. Declaração de portas.




Arquitetura:

      A arquitetura contém a parte lógica da entidade utilizando suas entradas e
saídas. Ainda é possível declarar sinais internos dentro da arquitetura, estes sinais
são chamados classes. São elas:

        1. CONSTANT - define um objeto com valor estático.

      2. VARIABLE – são objetos que podem ter o seu valor alterado, e são usadas
em regiões de código seqüencial.

     3. SIGNAL - são objetos que podem ter o seu valor alterado, e são usadas
em regiões de código concorrente ou seqüencial. É bom lembrar que a porta de
uma entidade realiza a declaração de um sinal.

      Existe uma diferença na atribuição de sinais entre VARIABLE e SIGNAL. A
Figura 3 simboliza essa diferença.




Figura 3. Atribuição de valores.
Tipos de Objeto:

                         Tipo
                                          Valor              Exemplos
                         predefinido

                         BIT              Um, zero           1, 0

                                          Verdadeiro,
                         BOOLEAN                             TRUE, FALSE
                                          falso

                                          Caracteres
                         CHARACTER                           a, b, c, A, B, C, ?
                                          ASCII

                                          -231-1 até 231- 123,           8#173#,
                         INTEGER
                                          1               16#7B#

                         BIT_VECTOR 1,0                      "1001", B"10_10"

                         STRING           Tipo character “texto”

Tabela 1. Tipo de Objetos.




Operadores:

Uma boa dica para se usar os operadores é empregá-los entre parêntesis para
definir a ordem as operações. E devido à rigidez da linguagem VHDL com relação
aos tipos, os operandos de uma operação geralmente são do mesmo tipo. A Tabela
2 mostra os operandos em ordem crescente de precedência.

                         Precedência Classe             Operadores

                                                        and or nand nor xor
                         Menor         Lógicos
                                                        xnor

                                       Relacionais      = /= < <= > >=

                                       Deslocamento sll srl sla sra rol ror

                                       Adição           +-&

                                       Sinal            +-

                                       Multiplicação * / mod rem

                         Maior         diversos         ** abs not

Tabela 2. Tipo de Operadores.

Referências:

http://www.vhdl.com.br/
www.dimap.ufrn.br

www.microeletronica.unifei.edu.br

http://im.ufba.br/pub/MATA48/WebHome/Introdu%E7%E3o_ao_VHDL_(Alirio).pdf

VHDL

  • 1.
    Universidade do Contestado Cursode Sistemas de informação Daiana Paula de Ávila 2ª fase Concórdia, 13 de outubro de 2011 VHDL A letra V da palavra VHDL significa Very High Speed Integrated Circuit (Circuito Integrado de Alta Velocidade) e as demais letras, HDL significam Hardware Description Language. Esse nome complicado foi criado pelo departamento de defesa dos Estados Unidos, que foi a primeira instituição a reconhecer as suas vantagens. O VHDL foi criado visando simulação, modelagem e documentação, mas acabou recebendo mais tarde a possibilidade de síntese, com o objetivo de se automatizar o projeto de circuitos. O VHDL ganhou popularidade fora do ambiente militar, graças ao IEEE (Institute of Electrical and Electronics Engineering) que estabeleceu padrões para tornar a linguagem universal. Com as ferramentas atuais, pode-se especificar um circuito a partir de seu comportamento ou de sua estrutura, em vários níveis. MODELAGEM DE INTERFACES Declaração Entity – Descreve as portas entradas/saídas de um módulo:
  • 2.
    Etapas de projetousando VHDL: Comentários: Apesar de o compilador ignorar todo o texto que está escrito como comentário, os comentários tem uma grande importância durante o projeto. Com comentários e um pouco de bom senso é possível criar um código limpo e legível. Diferentemente de outras linguagens de programação, na VHDL os comentários são escritos depois de dois traços como mostra a Figura 1. Figura 1. Exemplo de comentário. Entidade: Uma entidade de projeto pode representar uma simples porta lógica como um sistema completo e é composta de duas partes: declaração da entidade e arquitetura. A declaração da entidade define a interface com o ambiente exterior,
  • 3.
    como, por exemplo,as entradas e saídas. A Figura 2 mostra a declaração dos 4 modos de porta, e eles são: 1. IN – apenas entrada 2. OUT – apenas saída 3. BUFFER – saída que controla sinal interno 4. INOUT – porta bidirecional Figura 2. Declaração de portas. Arquitetura: A arquitetura contém a parte lógica da entidade utilizando suas entradas e saídas. Ainda é possível declarar sinais internos dentro da arquitetura, estes sinais são chamados classes. São elas: 1. CONSTANT - define um objeto com valor estático. 2. VARIABLE – são objetos que podem ter o seu valor alterado, e são usadas em regiões de código seqüencial. 3. SIGNAL - são objetos que podem ter o seu valor alterado, e são usadas em regiões de código concorrente ou seqüencial. É bom lembrar que a porta de uma entidade realiza a declaração de um sinal. Existe uma diferença na atribuição de sinais entre VARIABLE e SIGNAL. A Figura 3 simboliza essa diferença. Figura 3. Atribuição de valores.
  • 4.
    Tipos de Objeto: Tipo Valor Exemplos predefinido BIT Um, zero 1, 0 Verdadeiro, BOOLEAN TRUE, FALSE falso Caracteres CHARACTER a, b, c, A, B, C, ? ASCII -231-1 até 231- 123, 8#173#, INTEGER 1 16#7B# BIT_VECTOR 1,0 "1001", B"10_10" STRING Tipo character “texto” Tabela 1. Tipo de Objetos. Operadores: Uma boa dica para se usar os operadores é empregá-los entre parêntesis para definir a ordem as operações. E devido à rigidez da linguagem VHDL com relação aos tipos, os operandos de uma operação geralmente são do mesmo tipo. A Tabela 2 mostra os operandos em ordem crescente de precedência. Precedência Classe Operadores and or nand nor xor Menor Lógicos xnor Relacionais = /= < <= > >= Deslocamento sll srl sla sra rol ror Adição +-& Sinal +- Multiplicação * / mod rem Maior diversos ** abs not Tabela 2. Tipo de Operadores. Referências: http://www.vhdl.com.br/
  • 5.