Guia do Laboratório 3

Transcrição

Guia do Laboratório 3
Circuitos Lógicos – Prof. José Maurício Neto
Guia de Laboratório 03 – MUX no Quartus II
Aluno: _________________________________________ Matrícula:_________________
REQUISITOS
 Compreensão de multiplexadores e demultiplexadores.
 Conhecimento da ferramenta Altera Quartus II.
OBJETIVO
Este experimento tem por objetivo familiarizar o aluno com a técnica HDL de
projeto de sistemas digitais e com suas ferramentas de projeto: a linguagem de descrição de
hardware Verilog, a placa DE2 e o software de síntese Quartus II.
INTRODUÇÃO
A complexidade crescente dos sistemas digitais levou os projetistas a buscar
alternativas para o processo de desenvolvimento destes sistemas uma vez que projetos no
nível de portas lógicas tornaram-se inviáveis. Dentre as causas para a inviabilidade
encontram-se: o atraso global introduzido pelas portas, o tamanho do layout físico, o
elevado consumo do sistema e a necessidade de construir protótipos para testes. A solução
encontrada foi a utilização da lógica programável. Esta é uma técnica que consiste em
programar um dispositivo de caráter geral, que contém internamente milhares de portas
lógicas, de modo a implementar uma funcionalidade. Existem vários tipos de dispositivos
lógicos programáveis (PLD): PLA, PAL, CPLD e FPGA.
Placa de desenvolvimento DE2:
Para a realização dos experimentos utilizaremos a placa de desenvolvimento Altera
DE2 – Development and Education Board – fabricada pela Altera® (www.altera.com).
Esta placa foi desenvolvida pelo fabricante Altera com o propósito de apoiar a
capacitação de estudantes universitários e/ou de cursos técnicos no desenvolvimento de
circuitos digitais.
A placa DE2 é utilizada em diversos países, em cursos de Arquitetura de
Computadores e Projeto de Circuitos Lógicos Digitais. A Figura 1 ilustra uma foto da placa
de desenvolvimento.
A placa DE2 é equipada com os seguintes dispositivos:






















FPGA Altera Cyclone® II 2C35;
Dispositivo de configuração serial Altera – EPCS16;
USB Blaster (on board) – usada para a programação da placa;
Memórias: SRAM 512-Kbyte, SDRAM 8-Mbyte, Flash 4-Mbyte;
Interface para SD Card;
8 displays de 7 segmentos;
Display LCD 16x2;
4 botões seletores;
18 chaves bipolares;
18 leds vermelhos;
9 leds verdes;
Osciladores de 50 e 27-MHz, que podem ser usados como clock;
CODEC de áudio de 24-bits, com qualidade de CD;
Entrada e saída de som e microfone;
Interface VGA – conversor digital-analógico (10-bit high-speed);
TV Decoder (NTSC/PAL) e entrada para TV;
Barramento 10/100 Ethernet;
Interfaces USB Host/Slave, tipo A e B;
Interface serial RS-232 (DB-9);
Interface PS/2 para mouse/teclado;
Interface infravermelho IrDA;
Dois barramentos de expansão com 40 pinos.
Figura 1 – Placa de Desenvolvimento Altera DE2.
Software de síntese lógica Quartus II:
Para utilizar a placa DE2, é necessário programá-la utilizando a ferramenta de
síntese lógica fornecida pelo fabricante do dispositivo escolhido para o projeto. Neste
experimento a ferramenta é o Quartus II da Altera. Essa ferramenta além de programar a
placa, permite a depuração de erros na descrição Verilog, a simulação do projeto, entre
outras funcionalidades.
PROCEDIMENTO EXPERIMENTAL
Experimento 01 – Implementação do módulo Mod_Teste
Objetivo: Ilustrar o uso do software Quartus II e da placa DE2, familiarizando o aluno com
o uso dos recursos de chaves, botões, leds e Display de 7 segmentos disponíveis na placa.
Procedimento para edição, compilação e reconfiguração de FPGA usando o Quartus II:
1. Inicie o aplicativo Quartus II que aparece no Desktop do seu PC. Ao ser executado, a
tela mostrada na Figura 2 é apresentada. Feche a janela “Getting Started”, clicando no
“X” no canto superior direito da mesma;
Figura 2 – Tela de inicialização do Quartus II.
2. Na tela inicial do Quartus II (Figura 3) clique na opção File > New Project Wizard;
3. Uma nova janela surgirá (Figura 04), clique no botão “NEXT”.
Figura 3 – Tela inicial do Quartus II.
Figura 4 – Tela inicial do Wizard de criação de novo projeto.
4. Na janela apresentada na Figura 5, deve ser selecionado o diretório onde o projeto será
gravado, o nome do mesmo, bem como o nome do módulo que será criado no arquivo.
Observe que o nome indicado no terceiro campo da janela (campo inferior) deverá
coincidir com o nome do módulo mais externo criado no arquivo esquemático. Por
exemplo, no experimento estaremos criando o módulo lab_mux, então observe que
tanto o nome do projeto (segundo campo) quanto o nome do módulo “top-level”
(terceiro campo) foram assim denominados;
5. Para seguir, clique no botão “NEXT”;
Figura 5 – Seleção de diretório, nome do novo projeto e nome do módulo verilog.
6. Na tela seguinte, Figura 6, não é necessário nenhum preenchimento, apenas prossiga
clicando no botão “NEXT”;
Figura 6 – Janela para adição de arquivos ao projeto.
7. Na janela seguinte, selecione a família de dispositivos “Cyclone II”, Em Pin Count
selecionar 672, em Speed Grade selecionar 6, e o dispositivo “EP2C35F672C6”, como
indicado na Figura 7. Para finalizar clique no botão “NEXT”;
Figura 7 – Seleção de família de dispositivo e dispositivo.
8. Na janela seguinte, apenas clique no botão NEXT para seguir para a janela de
finalização. Na janela de finalização clique no botão “FINISH”;
9. Na janela aberta após a conclusão do Wizard de criação do projeto, mostrada na Figura
8, percebe-se o sucesso na criação, como observado na indicação pelo círculo vermelho
na figura. O nome deverá corresponder àquele indicado no passo 4, que em nosso caso
corresponde a “lab_mux”;
Figura 8 – Tela do projeto Mod_Teste.
10. Selecione no menu a opção “File > New”. Será apresentada a janela mostrada na
Figura 9;
11. Selecione a opção “Design Files > Block Diagram/Schematic File”. Ao selecionar esta
opção você estará adicionando ao projeto um arquivo de descrição, no qual você
editará, usando as portas lógicas, a descrição do hardware que será implementada pelo
FPGA. Após selecionar a opção, clique no botão “OK”;
12. Na tela do Quartus II será aberta uma janela de edição, conforme indicado na Figura 10.
a.
Colocar componentes clicando em Symbol Tool (porta and) na barra de
ferramentas.

Os símbolos mais simples podem ser localizados sob primitives.

Muitos circuitos da família 7400 podem ser encontrados sob
max2plus.
b.
90°).
Colocar fios clicando em Orthogonal Node Tool (linha fina em ângulo de
c.
Marcar entradas e saídas do circuito com Pin Tool (caixas in ao lado do
botão Symbol Tool). Definir nomes para cada pino, sempre sem espaços nem acentos.
d.
Construa um circuito multiplexador 8:1 a partir de multiplexadores 4:1.

Use o bloco MUX41 do quartus, conectando o sinal INH ao terra.

Utilize S2-S0 como seletores, X7-X0 como entradas, e Y como
saída.
Figura 9 – Janela para seleção do tipo de arquivo que será acrescentado ao projeto.
Figura 10 – Janela de edição do circuito lógico.
13. Salvar como lab_mux.bdf (igual ao Top-Level Design Entity), compilar o esquemático e
corrigir quaisquer erros existentes. Para compilar o projeto use a opção Processing>
Start compilation.
14. Após a verificação do projeto, é necessário criar um arquivo de estímulos para o
circuito projetado. Este arquivo simula possíveis entradas para o circuito e gera uma
saída mediante os estímulos aplicados. A observação destes sinais é realizada por meio
de um diagrama de tempo.
15. Criar um novo arquivo de estímulos de simulação (Figura 11):
a) Selecionar File → New → Verification/Debugging Files → University Program
VWF.
b) Definir o tempo final em 40us (Edit → End Time).
c) Definir a grade em 5us (Edit → Grid Size).
Figura 11 – Janela para geração dos sinais de entrada/saída.
16. Após a criação do arquivo de estímulos é necessário importar do esquemático as
estruturas de entrada e saída:
a) Selecionar Edit → Insert → Insert Node or Bus.
b) Na janela Insert Node or Bus clicar em Node Finder.
c) Na janela Node Finder, em Filter selecionar Pins: all, e clicar em List.
d) Selecionar todos os sinais clicando em >>.
e) Clicar em OK para fechar Node Finder.
f) Clicar em OK para fechar Insert Node or Bus.
17. Para criar os sinais de excitação é necessário selecionar a estrutura a qual o sinal deve
ser associado. Esta seleção é feita clicando no nome atribuído a cada estrutura. Após
selecionar a estrutura deve-se definir o sinal: Edit → Value → Overwrite Clock.
preenchendo com os parâmetros da Tabela I. Note que Y é um sinal de saída, portanto
não necessita configuração. Salvar o arquivo como lab_mux.vwf.
Tabela I - Estímulos a serem aplicados.
18. Ainda no editor de estímulos, selecionar e executar o simulador simplificado.
a) Selecionar Simulation → Options → Quartus II Simulator.
b) Selecionar Simulation → Run Functional Simulation.
19. O procedimento anterior é responsável por realizar uma simulação do funcionamento
do circuito utilizando como entradas os estímulos definidos. Para verificar se o circuito
projetado funciona no "mundo real" deve-se exporta-lo para a placa Altera DE2. Para
isso, é necessário associar as entradas e saídas do circuito com pinos do FPGA. Este
procedimento é realizado da seguinte forma:
a) Inicialmente, localizar na internet o manual da placa de desenvolvimento ALTERA
DE2.
(http://www.cear.ufpb.br/~mauricio/wp-content/uploads/2015/04/DE2_UserManual.pdf)
b) Localize no manual da placa qual o nome do pino associado a cada componente da
Tabela I, completando-a. Dica: No manual a chave SW17 é referenciada por
SW[17], e o quinto led vermelho é referenciado por LEDR[4].
c) Selecionar Assignments → Pin Planner para abrir a janela de associação.
d) Associar cada sinal do esquemático ao pino correspondente na placa, conforme
levantado anteriormente dando um duplo clique sobre a posição Location de cada
linha.
20. Para realizar a gravação, ligar a placa e clicar no botão
ou selecionar a opção
“Tools > Programmer”. Será apresentada a tela mostrada na Figura 12, onde pode-se
observar a indicação do arquivo a ser gravado “lab_mux.sof” e a interface de gravação
“USB-Blaster (USB-0)”, no Modo JTAG. Note que a interface só será indicada na tela
de gravação se a placa DE2 estiver conectada à porta USB e ligada. Clique no botão
Start.
Figura 12 – Janela de gravação de descrição no dispositivo FPGA.
REFERÊNCIAS BIBLIOGRAFICAS
 Tutorial: Quartus II Introduction Using Verilog Design – Altera ®;
 Elementos de Eletrônica Digital – I.V. Idoeta, F.C. Capuano – Editora Érica, 2003;
 Verilog HDL Synthesis – J. Bhasker – Star Galaxy Publishing, 1998;
 Altera Website – http://www.altera.com, acessado em 18/07/2008;
 Apostila: Projeto de Sistemas Digitais na Atualidade – UFPB/CCT/DEE - A.
Scaico, 2000.