Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit...
-
Upload
anasofia-verissimo -
Category
Documents
-
view
239 -
download
4
Transcript of Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit...
![Page 1: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/1.jpg)
Introdução a VHDL
Monitoria de Digitais
![Page 2: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/2.jpg)
VHDL:
• VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição de hardware muito importante, pois é amplamente utilizada no desenvolvimento de sistemas atuais.
![Page 3: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/3.jpg)
VHDL:
VHDL foi desenvolvido para facilitar a descrição de circuitos complexos, sem precisar da utilização de vários manuais específicos para cada parte de um projeto. Ou seja, é possível descrever um circuito digital de forma estrutural ou comportamental.
![Page 4: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/4.jpg)
Termos:
![Page 5: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/5.jpg)
Entity: Responsável
pela descrição das portas de entrada e saída dos circuitos, que servem para formalizar uma comunicação com outros circuitos. Cada entidade deve possuir uma ou mais arquiteturas.
![Page 6: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/6.jpg)
Architecture:
Responsável por descrever o comportamento do circuito, ou seja, o algoritmo utilizado para desempenhar sua funcionalidade.
Em VHDL, existem três tipos de arquiteturas:
• Estrutural
• Comportamental DataFlow
• Comportamental processo
![Page 7: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/7.jpg)
sinais: Interconexões entre
componentes
Componentes:Devem ter sido especificado
anteriormente (Hierarquia)
Uso dos componentes:Podem ser usados mais de
uma vez (Reusabilidade)
Architecture - Estrutural:
![Page 8: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/8.jpg)
Architecture - Dataflow:
Data Flow (eq. booleanas): Concorrência
![Page 9: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/9.jpg)
Architecture - Dataflow:
O que é melhor utilizar expressões concorrentes ou sequências?Depende do que você quer implementar...
a <= b;b <= a;
a := b;b := a;
O primeiro faz com que os valores de a e b sejam permutados e o segundo faz com que a e b assumam o valor anterior de b.
![Page 10: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/10.jpg)
Architecture - Processo:
Algoritmo(Processo): Seqüencial
Lista de Sensibilidade:Sinais de entrada
Região declarativa:Região entre o fim da
lista de sensibilidade e a palavra chave begin.
Usada para declarar variáveis ou constantes dentro do processo.
Campo de atribuições:Campo entre a chave
begin e end ALG;
![Page 11: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/11.jpg)
Configuration:
Uma configuração é usada para ligar a arquitetura de um componente a sua entidade. Uma configuração permite a seleção de diversas arquiteturas em diferentes níveis de hierarquia.
![Page 12: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/12.jpg)
Package: As bibliotecas são coleções de tipos de
dados e subprogramas comumente utilizados nos projetos, como uma caixa de ferramentas.
![Page 13: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/13.jpg)
Package: Biblioteca a ser utilizada em Digitais:
LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_arith.all;
![Page 14: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/14.jpg)
Tipos:
VHDL possui um conjunto de tipos definidos que se caracterizam pelo conjunto de valores que podem assumir e o conjunto de operações que sobre eles podem ser executadas.
Objetos “CONSTANT”, “VARIABLE” e “SINAL” devem ser declarados como de um tipo definido para que possam ser identificados seus possíveis valores e quais operações podem ser executadas.
![Page 15: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/15.jpg)
Tipos:
BIT: assume valores de 0 ou 1SIGNAL valor: bit;
BOOLEAN: usado em teste de decisão, assume os valores true ou false.SIGNAL teste: boolean;
INTEGER: assume um valor inteiro entre -2.147.483.647 e +2.147.483.67.SINGNAL valor: integer range 0 to 10;• REAL:representa um número de ponto flutuante.
![Page 16: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/16.jpg)
Tipos:
• STD_LOGIC: podem assumir dentre outros valores os seguintes: não inicializado(U), alta impedância(Z), nível lógico alto(1) e nível lógico baixo(0).
SIGNAL valor: std_logic;• Vetores: são conjuntos de sinais perviamente
definidos, exemplos:SIGNAL vetor: std_logic_vector(10 DOWNTO 0);SIGNAL vetor: std_logic_vector(0 TO 10);
SIGNAL vetor: bit_vector(10 DOWNTO 0);SIGNAL vetor: bit_vector(0 TO 10);
![Page 17: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/17.jpg)
Operadores:
Lógicos: and, or, xor, not, nandvalor := a xor b;
Relacionais: =, /=,<,>,<=,>=IF (a /= b) THEN;A <= B;obs.:cuidado com o operador <=, pois ele
também é um operador de atribuição. Deslocamento: sll, srl, sla, rol, ror
sinal_a <= x ror 3;z <= x sll 1;
![Page 18: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/18.jpg)
Operadores: Adição: +, -, &
valor := a + b;Valor := “00” & “11”; (concatenação: “0011”)
Sinal: +, -A <= -B;
Multiplicação e divisão: *, /, mod, rema_div_b := a / b;
Diversos: **, abs, notsinal_abs <= abs( -3);valor := b**2;
![Page 19: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/19.jpg)
Decisões: If then else:
IF (condição) THEN código;Else codigo;END IF;
Case When:Case estados is
when estado1 => código; when estado2 => código; when others => código;
END CASE;
![Page 20: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/20.jpg)
Decisões:SIGNAL sinalA: STD_LOGIC_VECTOR(1 DOWNTO 0);
CASE sinalA ISWHEN “00” => código;WHEN “01” => código;
WHEN OTHERS => pode ter ou não operações;END CASE;
With select:WITH expressao_escolha SELECT
sinal <= expressao_a WHEN condicao1, expressao_b WHEN condicao2,
expressao_c WHEN condicao3 | condicao4, expressao_d WHEN OTHERS;
![Page 21: Introdução a VHDL Monitoria de Digitais. VHDL: VHDL (VHSIC – Very High Speed Integrated Circuit Hardware Description Language) é uma linguagem de descrição.](https://reader035.fdocuments.net/reader035/viewer/2022070507/570638481a28abb8238f3fcb/html5/thumbnails/21.jpg)
Referências:• VHDL Programming by Example, Douglas L.
Perry, 4ª edition.
• Aula de VHDL auxiliar da cadeira de Infra de Hardware.
• Aula 1 de VHDL antiga
• Aula 2 de VHDL antiga