A formatar

Disponível somente no TrabalhosFeitos
  • Páginas : 26 (6487 palavras )
  • Download(s) : 0
  • Publicado : 26 de outubro de 2011
Ler documento completo
Amostra do texto
APOSTILA DE

VHDL
Ronaldo Hüsemann
Professor das Disciplinas: Técnicas Digitais (2000) Sistemas Digitais (2001) Microprocessadores II (2002) Departamento de Engenharia Elétrica Universidade Federal do Rio Grande do Sul

Ronaldo Hüsemann

Apostila de VHDL - Página 2

Histórico
No final dos anos 70, o Departamento de Defesa dos Estados Unidos definiu um programa chamado VHSIC (Very HighSpeed Integrated Circuit) que visava a descrição técnica e projeto de uma nova linha de circuitos integrados. Com o avanço acelerado dos dispositivos eletrônicos entretanto este programa apresentou-se ineficiente, principalmente na representação de grandes e complexos projetos. Em 1981, aprimorando-se as idéias do VHSIC, foi proposta uma linguagem de descrição de hardware mais genérica eflexível. Esta linguagem chamada VHDL (VHSIC Hardware Description Language) foi bem aceita pela comunidade de desenvolvedores de hardware e em 1987 se tornou um padrão pela organização internacional IEEE. Em 1992 foram propostas várias alterações para a norma, sendo que 1993 foi lançada a versão revisada, mais flexível e com novos recursos. Esta norma revisada, chamada VHDL-93, é a hoje a mais amplamenteutilizada e por isso a maioria dos exemplos aqui apresentados são baseados na mesma. É objetivo desta apostila auxiliar estudantes e pesquisadores que necessitem aprender os preceitos da linguagem VHDL para desenvolvimento e simulação de projetos afins à área de eletrônica e sistemas digitais, mas acima de tudo procurando-se apresentar uma visão geral da linguagem. Porto Alegre, maio de 2001Ronaldo Hüsemann

Ronaldo Hüsemann

Apostila de VHDL - Página 3

1- Elementos Básicos em VHDL
1.1 - Comentários
Os comentários em VHDL são permitidos após dois traços ‘-’ e são válidos até o final da linha corrente. Por exemplo: bit0 := d0; -- Esta linha atribui o valor de d0 a variável bit0

1.2 - Identificadores
Os identificadores são usados para se atribuir nomes a sinais ou processos.Um identificador básico em VHDL: -pode conter letras do alfabeto (‘A’ a ‘Z’ e ‘a’ a ‘z’), digitos decimais (‘0’ a ‘9’) e o caracter underline (‘_’); -precisa começar com uma letra do alfabeto; -não pode terminar com um caracter underline; -não pode conter dois caracteres underline em sequência. Alguns exemplos de identificadores: contador data0 Novo_valor resultado_final_operacao_FFT Não hádistinção entre letras maiúsculas e minúsculas, logo valor, Valor ou VALOR são interpretados da mesma forma. VHDL permite ainda a definição de identificadores estendidos que devem ser utilizados somente para interfaceamento com outras ferramentas que usam regras diferentes para definir seus identificadores. A definição de identificadores estendidos é feita entre ‘\’. Por exemplo: \9data\ \proximovalor\ \bit#123\

1.3 - Números
VHDL define dois tipos básicos de números: inteiros e reais. Um número inteiro consiste de um número sem ponto decimal. Exemplos de números inteiros: 23 0 146 Os números reais, por sua vez, permitem a representação de números fracionários. Por exemplo: 23.1 0.2 34.118 Pode-se trabalhar com notação exponencial, desde que o número seja seguido pela letra ‘E’ ou ‘e’.Exemplos: 3E2 18E-6 3.229e9

Ronaldo Hüsemann

Apostila de VHDL - Página 4

Além disso pode-se trabalhar em VHDL com bases diferentes da decimal, bastando para isto indicar a base seguido pelo número entre ‘#’. Para bases maiores que 10, deve-se utilizar as letras ‘A’ a ‘F’ (ou ‘a’ a ’f’), indicando as bases 11 a 15. Não são permitidas bases maiores que 16. Como exemplo, tem-se o número 253representado em diversas bases distintas: 2#11111101# 16#FD# 16#0fd# 8#0375# A fim de facilitar a interpretação de números longos é permitido em VHDL utilizar-se o caracter underline (‘_‘) entre dígitos. Isto não altera o valor representado pelo número, apenas facilita a sua identificação visual. Por exemplo: 123_456 3.141_592 2#111_1100_0000_0000#

1.4 - Caracteres
A representação de...
tracking img