vhdl
TRANSCRIPT
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 predefinido
Valor Exemplos
BIT Um, zero 1, 0
BOOLEANVerdadeiro, falso
TRUE, FALSE
CHARACTERCaracteres ASCII
a, b, c, A, B, C, ?
INTEGER-231-1 até 231-1
123, 8#173#, 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
Menor Lógicosand or nand nor xor 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