Baixe o app para aproveitar ainda mais
Prévia do material em texto
P R O F . S Í L V I O F E R N A N D E S PRÁTICAS PARA DESENVOLVIMENTO DE PROTÓTIPOS DE CIRCUITOS DIGITAIS COM O KIT EDUCACIONAL DE2 UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CRONOGRAMA DO CURSO ATIVIDADE DATA DURAÇÃO Inscrições 10/12/2012 a 14/12/2012 4 dias Nivelamento em VHDL 19/12/2012 3 horas Switches, luzes e multiplexadores 16/01/2013 3 horas Números e displays 30/01/2013 3 horas Latches, flip-flops e registradores 20/02/2013 3 horas Contadores 06/03/2013 3 horas Clocks e timers 20/03/2013 3 horas Somadores, subtratores e multiplicadores 03/04/2013 3 horas Máquinas de estado finitos 10/04/2013 3 horas Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 2 Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 3 INTRODUÇÃO INTRODUÇÃO O que significa VHDL? Very High Speed Integrated Circuit Hardware Description Language Linguagem de Descrição de Hardware com ênfase em Circuitos Integrados de altíssima velocidade. Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 4 INTRODUÇÃO • Considerações Importantes 1. VHDL NÃO É uma linguagem de programação 2. O VHDL deve ser descrito após a arquitetura, e não a arquitetura após o VHDL. Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 5 INTRODUÇÃO • Etapas de Projeto Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 6 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais INTRODUÇÃO • Etapas de Projeto Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 7 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 8 COMPONENTES DE UM PROJETO VHDL COMPONENTES DE UM PROJETO VHDL Package (Pacote): constantes, bibliotecas; Entity (Entidade): pinos de entrada e saída; Architecture (Arquitetura): implementações do projeto; Configuration (Configuração): define as arquiteturas que serão utilizadas. Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 9 PACKAGE ENTITY ARCHITECTURE CONFIGURATION COMPONENTES DE UM PROJETO VHDL Declaração da entidade define portas de entrada e saída da descrição equivalente ao símbolo de um bloco em captura esquemática Arquitetura descreve as relações entre as portas equivalente ao esquema contido no bloco em cap. esquemática Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 10 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMPONENTES DE UM PROJETO VHDL Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 11 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.all; USE IEEE.STD_LOGIC_UNSIGNED.all; PACKAGE (BIBLIOTECAS) ENTITY exemplo IS PORT ( <descrição dos pinos de I/O> ); END exemplo; ENTITY (PINOS DE I/O) ARCHITECTURE teste OF exemplo IS BEGIN ... END teste; ARCHITECTURE (ARQUITETURA) COMPONENTES DE UM PROJETO VHDL Declaração da entidade OBS: o arquivo deve ser salvo com mesmo nome da entidade e extensão .vhd Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 12 COMPONENTES DE UM PROJETO VHDL Declaração da entidade Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 13 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMPONENTES DE UM PROJETO VHDL Declaração da arquitetura Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 14 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMPONENTES DE UM PROJETO VHDL Declaração da arquitetura Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 15 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMPONENTES DE UM PROJETO VHDL Exemplo de uma descrição completa Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 16 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMPONENTES DE UM PROJETO VHDL Exemplo de uma descrição completa Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 17 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMPONENTES DE UM PROJETO VHDL Tipos de dados Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 18 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMPONENTES DE UM PROJETO VHDL Tipos de dados Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 19 bit Assume valores ‘0’ ou ‘1’. x: in bit; bit_vector Vetor de bits. x: in bit_vector(7 downto 0); x: in bit_vector(0 to 7); std_logic* x: in std_logic; std_logic_vector x: in std_logic_vector(7 downto 0); x: in std_logic_vector(0 to 7); boolean Assume valores TRUE ou FALSE COMPONENTES DE UM PROJETO VHDL Tipos de dados STD_LOGIC: Definida pela biblioteca IEEE: use ieee.std_logic_1164.all; Pode assumir nove valores: Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 20 ‘U’: não inicializada ‘Z’: alta impedância ‘X’: desconhecida ‘W’: desconhecida fraca ‘0’: valor ‘0’ ‘L’: ‘0’ fraca (Low) ‘1’: valor ‘1’ ‘H”: ‘1’ fraca (High) ‘-’: Don’t care. COMPONENTES DE UM PROJETO VHDL Tipos compostos Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 21 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMPONENTES DE UM PROJETO VHDL Agregados Uma expressão indicando o valor de um tipo composto Cada elemento do tipo composto tem o seu valor definido OTHERS identifica todos elementos não especificados deve ser a última associação na lista de associações Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 22 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMPONENTES DE UM PROJETO VHDL Definição de Novos Tipos Palavra reservada TYPE Exemplo: Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 23 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMPONENTES DE UM PROJETO VHDL Objetos de dados Usados pararepresentar e armazenar dados; Três tipos básicos: constantes, sinais e variáveis; Cada objeto possui um tipo de dados específico e um conjunto de possíveis valores; Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 24 COMPONENTES DE UM PROJETO VHDL Objetos de dados Constantes Assumem apenas um valor em todo o código. Declaração: constant <identificador>: <tipo> := <valor> Ex: constant errado : boolean := False; constant parte_ram : bit_vector(3 downto 0) := 1110; Podem ser declaradas em qualquer parte do código Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 25 COMPONENTES DE UM PROJETO VHDL Objetos de dados Sinais Representam ligações entre elementos; Comunicação de módulos em uma estrutura Temporizados. Declaração: signal <identificador>: <tipo> [:= valor]; Ex: signal fio1: std_logic; sgnal fio2: std_logic := „1‟; Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 26 COMPONENTES DE UM PROJETO VHDL Objetos de dados Variáveis Utilizados para armazenar valores intermediários entre expressões; Atribuição imediata; Declaração: variable <identificador>: <tipo> [:= valor]; Ex: variable var1: integer; variable var2: std_logic := „0‟; Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 27 COMPONENTES DE UM PROJETO VHDL Objetos de dados Atribuições a sinais ou variáveis <= (atribuição de sinal) := (atribuição de variável) Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 28 Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 29 FERRAMENTA QUARTUS II FERRAMENTA QUARTUS II www.altera.com Usaremos a versão 9.2 Ambiente integrado com Editor Compilador Simulador Ferramenta de síntese Licença gratuita para estudantes Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 30 FERRAMENTA QUARTUS II Criar um projeto 1. File-> New ; escolher “VHDL File”; OK 2. Editar o arquivo VHDL (copiar o exemplo1) 3. File -> Save As; completar o nome com “exemplo1.vhd”; OK 4. File ->“New Project Wizard” 5. Next 6. Escolher o diretório de trabalho e o nome do projeto 7. Adicione o(s) arquivos(s) vhd para o projeto 8. Escolher um dispositivo (Ex: Cyclone II) 9. “Specify the other EDA Tools” NÃO clicar em nada; 10. Finish Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 31 FERRAMENTA QUARTUS II Compilar o projeto 1. Processing -> Start Compilation ou 2. Aguardar mensagem “Full Compilation was succesfull” (ou mensagem de erro) 3. Anotar Nome (código) do dispositivo escolhido automaticamente Caminho crítico (pino de entrada/pino de saída) e seu atraso (“Longest tpd from souce pin …”) Número de ALUTs utilizadas Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 32 FERRAMENTA QUARTUS II Preparar Arquivo para Simulação Funcional 1. Criar o arquivo de simulação: File-> New-> Verification/Debugging Files -> Vector Waveform File 2. Clicar com botão direito do mouse na coluna chamada “Name” 3. Escolher Insert -> Insert Node or Bus -> Node Finder 4. No Node Finder, selecionar os nomes dos sinais a serem observados (entradas e saídas): no Filter, selecionar “Pins: all”; clicar no botão “List” 5. Selecionar a, b, sel, out, clicar em “>” e em “OK” 6. “multiple items”; OK 7. Especificar as formas de onda para os sinais de entrada (a, b, sel), usando o “Waveform Editing Tool” (usar a lupa para aumentar/reduzir o zoom 8. Salvar o arquivo de forma de ondas com o mesmo nome do projeto: File-> Save As Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 33 FERRAMENTA QUARTUS II Executar a Simulação Funcional e Analisar os Resultados 1. Processing -> Start Simulation ou 2. Para medir tempos de atraso específicos: clicar com o botão da direita e selecionar “Time Bar -> Insert Time Bar” Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 34 Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 35 COMANDOS CONCORRENTES COMANDOS CONCORRENTES O atraso delta Atribuição de valor para um sinal Construção WHEN ELSE Construção WITH SELECT Comando BLOCK Comando PROCESS Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 36 COMANDOS CONCORRENTES O atraso delta Região de código concorrente: ordem dos comandos não influencia no resultado final da simulação Como é feito: avaliação dos eventos simultâneos ordenada por um atraso interno D O atraso Δ é nulo: Δ = 0 Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 37 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMANDOS CONCORRENTES O atraso delta Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 38 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMANDOS CONCORRENTES Construção WHEN ELSE Transferência condicional de um sinal Contém: uma lista de condições e expressões Primeira condição verdadeira: define expressão transferida Formato: Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 39 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMANDOS CONCORRENTES Construção WHEN ELSE Circuito Equivalente Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 40 COMANDOS CONCORRENTES Construção WHEN ELSE Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 41 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMANDOS CONCORRENTES Construção WITH SELECT Transferência condicional de um sinal Contém: uma lista de opções Todas as condições da expressão de escolha devem ser consideradas Não existe prioridade como acontece com WHEN ELSE Opções pode ser agrupadas: caracter |equivale a “ou” TO e DOWNTO delimitam faixas de opções Opções restantes: palavra reservada OTHERS Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 42 COMANDOS CONCORRENTES Construção WITH SELECT Formato: Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 43 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMANDOS CONCORRENTES ConstruçãoWITH SELECT Exemplo: Circuito Equivalente Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 44 COMANDOS CONCORRENTES Construção WITH SELECT Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 45 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMANDOS CONCORRENTES Construção PROCESS Objetivo: delimitar regiões de código sequencial Início: palavra reservada PROCESS Lista de sensibilidade: identifica que sinais ativam a execução do processo Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 46 Comandos Sequenciais COMANDOS CONCORRENTES Construção PROCESS Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 47 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 48 COMANDOS SEQUENCIAIS COMANDOS SEQUENCIAIS Construção IF ELSE Construção CASE WHEN Comando NULL Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 49 COMANDOS SEQUENCIAIS Construção IF ELSE Similar a construção WHEN ELSE Execução condicional de um ou mais comandos sequenciais Teste: definido por uma lista de condições Condição de teste: qualquer expressão que retorno BOOLEAN Formato: Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 50 COMANDOS SEQUENCIAIS Construção IF ELSE Também é possível aninhar vários IF ELSE Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 51 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMANDOS SEQUENCIAIS Construção IF ELSE Exemplo: Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 52 COMANDOS SEQUENCIAIS Construção CASE Similar a construção WITH SELECT Execução condicional de um ou mais comandos sequenciais A execução dos comandos: controlada pelo valor de uma expressão Todas condições da expressão de escolha devem ser consideradas Não existe uma prioridade como na construção IF ELSE Opções podem ser agrupadas: caracter |equivale a “ou” TO e DOWNTO delimitam faixas de opções Opções restantes: palavra reservada OTHERS Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 53 COMANDOS SEQUENCIAIS Construção CASE Exemplo Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 54 COMANDOS SEQUENCIAIS Construção CASE Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 55 COMANDOS SEQUENCIAIS Comando NULL Não realiza nenhuma operação A execução é passada para o próximo comando Especialmente útil na construção CASE WHEN que precisa cobrir todos os valores da expressão de escolha mas para alguns valores não deve ser feito nada em um dado projeto Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 56 Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 57 CIRCUITOS SÍNCRONOS CIRCUITOS SÍNCRONOS Dependem de um sinal de sincronismo Clock: sinal digital que alterna entre 0 e 1 em um frequência constante Exemplo: latch Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 58 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais CIRCUITOS SÍNCRONOS Latch síncrono: Registrador Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 59 CIRCUITOS SÍNCRONOS Em STD_LOGIC, usa-se rising_edge para transição de subida de clock e falling_edge para transição de descida. Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 60 ARCHITECTURE behavior OF dff_logic IS BEGIN PROCESS(clk, reset) BEGIN IF reset = ‘1’ THEN q <= (others => ‘0’); ELSIF RISING_EDGE(clk) THEN q <= d; END IF; END PROCESS; END behavior; Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 61 COMPONENTES COMPONENTES Uma descrição (entidade + arquitetura) empregada por uma outra entidade Emprego Interligação de múltiplas entidades de projeto Projeto hierárquico Declaração de um componente Similar a declaração de entidade Solicitação de um componente Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 62 COMPONENTES Declaração Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 63 COMPONENTES Solicitação do componente Mapa de ligações Pode seguir mesma ordem estabelecida na declaração: Pode seguir uma nova sequência definida no mapa: Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 64 COMPONENTES Exemplo: Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 65 COMPONENTES Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 66 Componente 1 Componente 2 --------------------------------------------------------- -- Arquivo componente_inv.vhd -- Modelo do inversor --------------------------------------------------------- library IEEE; use IEEE.std_logic_1164.all; entity componente_inv is port( x : in std_logic; y : out std_logic ); end componente_inv; architecture arquitetura_inv of componen- te_inv is begin y <= not x; end arquitetura_inv; --------------------------------------------------------- -- Arquivo componente_and.vhd -- Modelo da porta AND --------------------------------------------------------- library IEEE; use IEEE.std_logic_1164.all; entity componente_and is port( a : in std_logic; b : in std_logic; c : out std_logic ); end componente_and; architecture arquitetura_and of com- ponente_and is begin c <= a and b; end arquitetura_and; COMPONENTES Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 67 Componente 3 ------------------------------------------------------ -- Arquivo componente_sistema.vhd ------------------------------------------------------ library IEEE; use IEEE.std_logic_1164.all; entity componente_sistema is port( in1 : in std_logic; in2 : in std_logic;in3 : in std_logic; in4 : in std_logic; out1 : out std_logic ); end componente_sistema; architecture arquitetura_sistema of componente_sistema is component componente_and port( a: in std_logic; b : in std_logic; c : out std_logic); end component; component componente_inv port( x: in std_logic; y : out std_logic); end component; signal s1, s2, s3, s4 : std_logic; begin and1 : componente_and port map (a => in1, b => in2, c => s1); and2 : componente_and port map (a => in3, b => in4, c => s2); and3 : componente_and port map (a => s3, b => s4, c => out1); inv1 : componente_inv port map (x => s1, y => s3); inv2 : componente_inv port map (x => s2, y => s4); end arquitetura_sistema; COMPONENTES Genéricos Fornecem um meio de levar informações externas estáticas para entidades de projeto e blocos Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 68 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMPONENTES Comandos GENERATE Cópia de comandos concorrentes: esquema de geração FOR esquema de geração IF Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 69 COMPONENTES Comandos GENERATE Esquema de geração FOR Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 70 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais COMPONENTES Comandos GENERATE Esquema de geração IF Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 71 Fonte: Roberto d‟Amore -VHDL: Descrição e Síntese de Circuitos Digitais Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 72 KIT ALTERA DE2 KIT ALTERA DE2 Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 73 KIT ALTERA DE2 Instalando o driver USB Blaster Quando o cabo USB da placa é colocado na porta USB do PC é pedido para instalar o driver Procure o diretório “altera” onde o Quartus foi instalado Localize o subdiretório altera\ 91sp2\quartus\drivers\usb−blaster Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 74 KIT ALTERA DE2 Setando o dispositivo no Quartus II No menu Assignments -> Device... Escolha a família Cyclone II Em seguida, o dispositivo EP2C35F672C6 Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 75 KIT ALTERA DE2 Ligando os pinos da placa DE2 Para fazer uso dos pinos da placa com assistência do arquivo de ligação automática é necessário que a entidade do seu projeto tenha os nomes padrões dos pinos da placa Os nome e código dos pinos podem ser encontrados na tabela do arquivo “DE2_Pin_Table.pdf” Os principais são: Chaves: SW(17 downto 0) LEDs vermelhos: LEDR(17 downto 0) LEDs verdes: LEDG(9 downto 0) Botões de pressão: KEY(3 downto 0) Display 7-segmentos: HEX0, HEX1, HEX2, HEX3, HEX4, HEX5, HEX6, HEX7 todos do tamanho (6 downto 0) Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 76 KIT ALTERA DE2 Ligando os pinos da placa DE2 Em seguida deve ser feita a ligação automática dos pinos através da importação do arquivo “DE2_pin_assignments.csv” Para isso vá ao menu Assignments -> Import Assignments.. Procure o arquivo acima citado e clique em ok Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 77 KIT ALTERA DE2 Fazendo dowload para a placa Primeiro seu projeto deve ser compilado Ligue o cabo USB na placa e no PC Em seguida vá ao menu Tools -> Programmer Se o driver USB Blaster não tiver sido detectado clique no botão “Hardware Setup” Adicione o USB Blaster Selecione seu projeto com a extensão “.sof” Clique em “start” para fazer o download para a placa Agora pode usá-la com o comportamento do seu projeto Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 78 KIT ALTERA DE2 Exemplo: “Hello Word” Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 79 KIT ALTERA DE2 Exemplo: “Hello Word” Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 80 REFERÊNCIAS • AMORE, Roberto d‟. VHDL: descrição e síntese de circuitos digitais. Rio de Janeiro: LTC, 2005. • ALTERA. DE2 Development and Education Board User Manual. Version 1.0, 2005 • ALTERA. Getting Started with Altera‟s DE2 Board. • ALTERA. Altera DE2 Board Pin Table. Práticas para desenvolvimento de protótipos de circuitos digitais com o Kit Educacional DE2 Prof. Sílvio Fernandes 81
Compartilhar