Sei sulla pagina 1di 9

Universidade Federal do Tocantins

Circuitos Digitais: Linguagem VHDL Naima Said Darwich Circuitos Digitais Universidade Federal do Tocantins - UFT Avenida NS 15, ALC NO 14, 109 NORTE, CEP: 77001-090, Palmas TO, Brasil
naimadarwich@gmail.com

Resumo: Este artigo aborda-se um conhecimento prvio e faz-se meno sobre a linguagem VHDL que uma forma de se descrever, atravs de um programa, o comportamento de um circuito ou componente digital, com tambm falar sobre o seu surgimento, suas funes, aplicaes, vantagens e ferramentas.

Introduo
O desenvolvimento da linguagem VHDL foi motivado pela necessidade de um padro para o intercmbio de informaes entre fornecedores de equipamentos para o Departamento de Defesa dos Estados Unidos. importante lembrar que esta linguagem concorrente, ou seja, os comandos envolvidos em um mesmo evento acontecem simultaneamente, diferentemente de linguagens de programao de software. A criao de uma linguagem de descrio de hardware patrocinada pelo programa e, em paralelo algumas outras linguagens criadas pela indstria, foi ento uma decorrncia natural. Em 1987, o VHDL foi normalizado pelo IEEE, tornando-se um padro mundial, uma alternativa tambm expressiva no mercado de projetos de hardware. Hoje, praticamente todas as ferramentas de desenvolvimento de hardware computadorizadas aceitam essas linguagens como entrada, de forma que um projeto baseado em VHDL pode ser implementado com qualquer tecnologia.

Em 1992 foram propostas vrias alteraes para a norma, sendo que 1993 foi lanada a verso revisada, mais flexvel e com novos recursos. Esta norma revisada, chamada VHDL-93, a hoje a mais amplamente utilizada e por isso a maioria dos exemplos aqui apresentados so baseados na mesma.

1. Vantagens
A alternativa para uso de uma linguagem formal de descrio de hardware como o VHDL a descrio por diagramas esquemticos. O VHDL apresenta as seguintes vantagens: a) Em sistemas sequenciais, o detalhamento da lgica de controle realizado pelas ferramentas de automao do projeto, o que evita a trabalhosa e limitada aplicao das tcnicas manuais tradicionais; b) O objetivo do projeto fica mais claro que na representao por esquemticos, nos quais a implementao se sobrepe inteno do projeto; c) O volume de documentao diminui, j que um cdigo bem comentado em VHDL substitui com vantagens o esquemtico e a descrio funcional do sistema; d) O projeto ganha portabilidade, j que pode ser compilado em qualquer ferramenta e para qualquer tecnologia. comum, na indstria, o uso de FPGAs e CPLDs para produes iniciais ou de menores escalas em projetos que posteriormente possam ser implementados em ASICs. Todas as

implementaes podem usar o mesmo cdigo VHDL.

2. Desvantagens
- Dificuldade para otimizao no hardware gerado - Necessidade de treinamento para lidar com a linguagem

3. Ciclo de Projeto em VHDL (Etapas)


Para a utilizao do VHDL dentro de um ciclo de projeto auxiliado por ferramentas computadorizadas normalmente seguem etapas para a facilitao do desempenho do produto e assim pode-se dividir em 6 (seis etapas).

Figura 1

3.1 Especificaes
Onde determina-se os requisitos e funcionalidades de projeto, incluindo os sinais e definido completamente as interfaces. uma etapa comum e necessria a qualquer projeto, independentemente do uso do VHDL.

3.2 Codificao
Nesta etapa, o objetivo descrever, de forma estruturada e bem documentada, em VHDL, todo o projeto, segundo seus padres de sintaxe. Assim, formaliza-se a especificao da etapa anterior, numa implementao de alto nvel, em que so descritos apenas os aspectos relevantes soluo do problema.

3.3 Simulao de Cdigo Fonte


Nesta etapa, procura-se simular o cdigo em uma ferramenta confivel, a fim de verificar, preliminarmente, o cumprimento da especificao. Esta simulao no considera ainda detalhes tecnolgicos de implementao.

4. Sntese e Otimizao
Sntese - o processo de traduo ou compilao de um cdigo VHDL para uma descrio abstrata, em linguagem mais prxima da implementao. Naturalmente, a sntese ainda um processo independente da tecnologia. Basicamente, o resultado obtido o que se chama de RTL (register- transfer level), em que se definem registros, suas entradas e sadas e a lgica combinacional entre elas. Otimizao - o processo de seleo da melhor soluo de implementao para uma dada tecnologia. Logicamente, as ferramentas EDA (Engineering Design Automation) so preparadas para aceitar diretivas de otimizao, dependendo do resultado que se quer (minimizao de rea, consumo, tempo de resposta, etc).

5. Simulao do modelo ps-layout


A simulao realizada com o resultado do fitting permite resultados mais apurados de comportamento e timing, porque considera as caractersticas da implementao definitiva na tecnologia, como, por exemplo, os tempos de propagao dos sinais.

6. Gerao
a fase de configurao das lgicas programveis ou de fabricao de ASICs.

7. Estrutura em um Programa VHDL


Entity Uma entity define um bloco suas entradas e suas sadas. Declarao: entity <nome_da_entidade> is generic(

<nome1>: <tipo>:= <valor>; nomen>: <tipo>:= <valor> ); port ( signal signal <nome_do_sinal_n>: <sentido_do_sinal> <tipo_do_sinal> := <nome_do_sinal_1>: <sentido_do_sinal> <tipo_do_sinal> :=

<valor_inicial>;

<valor_inicial> ) end entity <nome_da_entidade>;

A declarao das entradas/sadas da entidade feita atravs da declarao port (opcional). Para especificao de tipo do sinal vide Seo Tipos. Sentido do sinal: in (entrada), out (sada), inout / buffer (porta bidirecional) Architecture Uma architecture define o comportamento de uma entidade, ou ainda as conexes entre a entidade e seus componentes.

Declarao:

architecture <nome_da_architecture> of <nome_da_entidade> is <declarao dos sinais> <declarao dos generics> <declarao dos componentes> begin <processos> end architecture <nome_da_architecture>;

Processos

Processos so blocos de cdigo concorrentes presentes em um architecture que podem ser sensveis a sinais pr-especificados.

Declarao: <nome_do_processo>: process is

begin <laos/operaes> end process <nome_do_processo>;

Tipos de dados

O Diagrama a seguir exibe a rvore de tipos de dados utilizada na linguagem VHDL

Figura 2.

tipos_vhdl constants constant <nome_da_constante>: <tipo_da_constante> := <valor>; variables variable <nome_da_varivel>: <tipo_da_varivel> := <valor_inicial>;

Atribuio

<nome_da_varivel> := <valor>;

Para declarar como uma varivel global, utiliza-se a palavra reservada shared Exemplo: shared variable S : integer; signals signal <nome_do_sinal>: <sentido_do_sinal> <tipo_do_sinal> := <valor_inicial>

Atribuio: <nome_do_sinal> <= <valor>;

Caso o sinal seja interno, isto , se definido dentro de uma architecture, o sentido do sinal desnecessrio (ele no faz parte do corpo da identity e, portanto, no se conecta externamente a nenhum sinal).

Atributos de sinais <Nome_do_Sinal>delayed(<Tempo>) Valor do sinal atrasado em <Tempo> unidades de tempo <Nome_do_Sinal>stable(<Tempo>) True se nenhum evento ocorrer sobre o sinal <Nome_do_Sinal> nos ltimos <Tempo> unidades de tempo <Nome_do_Sinal>quiet(<Tempo>) True se o sinal <Nome_do_Sinal> se mantiver constante por <Tempo> unidades de tempo <Nome_do_Sinal>last_value Valor do sinal <Nome_do_Sinal> antes da ltima variao/mudana <Nome_do_Sinal>last_event Instante no qual o sinal <Nome_do_Sinal> sofreu alterao pela ltima vez <Nome_do_Sinal>last_active <Nome_do_Sinal>event Instante no qual o sinal

<Nome_do_Sinal>esteve ativo na ltima vez True se um evento ocorreu no sinal

<Nome_do_Sinal> no ciclo corrente

<Nome_do_Sinal>active True se o sinal <Nome_do_Sinal> est ativo no ciclo corrente <Nome_do_Sinal>transaction Valor de bit alterado a cada vez que o sinal <Nome_do_Sinal> sofre alteraes

7. Ferramentas Relao ghdl (Linux) Front-end do gcc para VHDL Altera Quartus II (Windows/Linux?) Sntese para FPGA da Altera Xilinx ISE (Windows/Linux?) Sntese para FPGA da Xilinx Modelsim (Windows/Linux?) Simulador Mentor Leonardo ou Precision (Windows/Linux) Sntese para diversos fabricante de ferramentas e plataforma utilizada para

desenvolvimento de sistemas digitais.

8. Concluso
Diante do exposto conclui-se, que a Linguagem VHDL um linguagem que permite particionar o sistema em diferentes nveis de abstrao, sejam eles: nvel de sistema, Nvel de transferncia entre registradores (RT level), nvel lgico e nvel de circuito. Alm de proporcionar domnios de descrio diferentes como: Comportamental, e estrutura e fsico. Com isso, nota-se a grande importncia de desenvolver utilizando VHDL.

REFERNCIAS
http://www.ic.unicamp.br/~rodolfo/Cursos/mo801/1s2006/Material/VHDL.pdf, acessado em 18 de abril de 2013. http://www.cin.ufpe.br/~ammlf/vhdl_ronhuse.pdf, acessado em 18 de abril de 2013. http://gse.ufsc.br/~bezerra/disciplinas/Extensao/Curso_ARM7_Benfica_ago_20 11/PaginaWebBenfica/vhdl/Apostila_VHDL_Juliano_Benfica.pdf, acessado em 18 de abril de 2013. http://rosseto.wordpress.com/2009/11/12/linguagem-vhdl-guia-de-referencia/ http://vhdl.com.br/site/aprenda-vhdl, acessado em 18 de abril de 2013.

Potrebbero piacerti anche