Desenvolvimento com A placa DE2 Desenvolvimento com a

Transcrição

Desenvolvimento com A placa DE2 Desenvolvimento com a
UNIFEI – Universidade Federal de Itajubá
IESTI - Instituto de Engenharia de Sistemas e Tecnologia da Informação
ELT029/ELT041 – Laboratório de Eletrônica Digital I / Digital II
Desenvolvimento com a placa Altera DE2
DE
Prof. Rodrigo de Paula Rodrigues
10 de Abril de 2012
A placa DE2
A placa DE2 da Altera é um kit de desenvolvimento para apreciação da família de arranjos de portas
programáveis em campo (FPGA) Cyclone II. Essa placa emprega um dispositivo de lógica programável da
série EP2C35F672C6N que, agregado ao
a conjunto de periféricos do kit, permitem com que sejam
desenvolvidas aplicações simples de lógica combinacional até complexas aplicações de lógica sequencial
envolvendo processamento de sinais de áudio, vídeo e afins.
A figura seguinte apresenta a placa DE2 e evidencia seus periféricos.
periféricos
DE2 - Tutorial de gravação
1/11
Periféricos na placa DE2:
A – Conector de alimentação da placa;
B – Conector USB para o gravador USB-Blaster;
C – Conector USB para atuar como cliente USB;
D – Conector USB para atuar como hospedeiro USB;
E – Conectores de entrada e saída de áudio;
F – Conectores de entrada e saída de vídeo;
G – Conector Ethernet RJ45;
H – Conector RS232;
I – Conector de entrada OS2 para mouse e teclado;
J – Conectores de expansão;
K – Conector para cartão de dados SD;
L – Porta de comunicação infra-vermelho;
M – Chaves de apertar;
N – Chaves de seleção liga/desliga;
O – Conjunto de diodos emissores de luz (LED);
P – Display LCD de 16x2 linhas;
Q – Chave de escolha entre os modos de gravação e programação;
R – Botão liga/desliga da placa DE2;
S – Memória SDRAM de 8 MB;
T – Memória SRAM de 512 kB;
U – Memória Flash de 4 MB;
V – FPGA Cyclone II EP2C35F672C6N;
X – Memória de configuração para o FPGA;
W – Displays de 7 segmentos.
DE2 - Tutorial de gravação
2/11
Periféricos da placa DE2
Alguns dos periféricos presentes no kit DE2 são citados na sequência.
1 - Chaves de seleção de estado
As chaves de seleção de estados são os periféricos de SW[0] a SW[17]. Seu estado lógico alto ocorre
quando a chave estiver em sua posição para cima.
Chave de seleção
Chave de seleção
Periférico
SW[0]
FPGA
PIN_N25
Periférico
SW[9]
FPGA
PIN_A13
SW[1]
PIN_N26
SW[10]
PIN_N1
SW[2]
PIN_P25
SW[11]
PIN_P1
SW[3]
PIN_AE14
SW[12]
PIN_P2
SW[4]
PIN_AF14
SW[13]
PIN_T7
SW[5]
PIN_AD13
SW[14]
PIN_U3
SW[6]
PIN_AC13
SW[15]
PIN_U4
SW[7]
PIN_C13
SW[16]
PIN_V1
SW[8]
PIN_B13
SW[17]
PIN_V2
2 - Botões de pressionamento
Os botões de pressionamento presentes no kit são os periféricos de nome KEY[0] a KEY[3]. Estas
chaves são do tipo normalmente fechadas e, desta forma, geram um pulos negativo ao serem pressionadas.
Sem pressionamento, essas chaves geram nível lógico alto.
Botões
Periférico
KEY[0]
FPGA
PIN_G26
KEY[1]
PIN_N23
KEY[2]
PIN_P23
KEY[3]
PIN_W26
3 - LEDs de sinalização
O kit DE2 possui 2 grupos de LEDs associados a pinos de seu dispositivo de lógica programável. Os
periféricos de nome LEDR[0] a LEDR[17] emitem luz na cor vermelha, periféricos de nome LEDG[0] a
LEDG[8] emitem luz na cor verde.
DE2 - Tutorial de gravação
3/11
LEDs de cor vermelha
LEDs de cor vermelha
LEDs de cor verde
Periférico
LEDR[0]
FPGA
PIN_AE23
Periférico
LEDR[9]
FPGA
PIN_Y13
Periférico
LEDG[0]
FPGA
PIN_AE22
LEDR[1]
PIN_AF23
LEDR[10]
PIN_AA13
LEDG[1]
PIN_AF22
LEDR[2]
PIN_AB21
LEDR[11]
PIN_AC14
LEDG[2]
PIN_W19
LEDR[3]
PIN_AC22
LEDR[12]
PIN_AD15
LEDG[3]
PIN_V18
LEDR[4]
PIN_AD22
LEDR[13]
PIN_AE15
LEDG[4]
PIN_U18
LEDR[5]
PIN_AD23
LEDR[14]
PIN_AF13
LEDG[5]
PIN_U17
LEDR[6]
PIN_AD21
LEDR[15]
PIN_AE13
LEDG[6]
PIN_AA20
LEDR[7]
PIN_AC21
LEDR[16]
PIN_AE12
LEDG[7]
PIN_Y18
LEDR[8]
PIN_AA14
LEDR[17]
PIN_AD12
LEDG[8]
PIN_Y12
4 – Displays de 7 segmentos
Estão presentes oito displays de 7 segmentos na placa. Esses periféricos recebem a designação de
HEX[0] a HEX[7] e são do tipo anodo comum, ou seja, cada um de seus segmentos é ativo com nível lógico
baixo. O pino de acionamento do segmento de ponto decimal de cada um desses periféricos não foi
conectado a um pino do FPGA e, desta forma, não pode ser manipulado.
330 Ω
a
330 Ω
b
330 Ω
3.3V
c
330 Ω
d
330 Ω
e
330 Ω
f
330 Ω
g
Para se trabalhar com esse tipo de display, se deve especificar o sinal de estado de acionamento para
cada um dos 7 segmentos que compõem um dígito. A forma mais comum de aplicar este tipo de periférico é
utilizá-lo como display numérico de 0 a 9, muito embora seja possível também se trabalhar com os dígitos
hexadecimais de a a f. As duas próximas tabelas possuem a relação entre os dígitos hexadecimais e os
respectivos estados lógicos necessários para reproduzi-los por meio dos displays de 7 segmentos presentes
na placa DE2.
Dígito
0
a
b
c
d
e
f
g
Dígito
8
a
b
c
d
e
f
g
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
1
1
1
1
9
0
0
0
0
1
0
0
2
0
0
1
0
0
1
0
A
0
0
0
1
0
0
0
3
0
0
0
0
1
1
0
b
1
1
0
0
0
0
0
4
1
0
0
1
1
0
0
c
1
1
1
0
0
1
0
5
0
1
0
0
1
0
0
d
1
0
0
0
0
1
0
6
0
1
0
0
0
0
0
E
0
1
1
0
0
0
0
1
F
0
1
1
1
0
0
0
7
0
0
DE2 - Tutorial de gravação
0
1
1
1
4/11
As 8 tabelas seguintes possuem o mapa de associação dos segmentos dos oito displays presentes no kit
de ensino.
HEX0
Periférico
a
b
HEX1
FPGA
PIN_AF10
Periférico
a
HEX2
FPGA
PIN_V20
Periférico
a
HEX3
FPGA
PIN_AB23
Periférico
a
FPGA
PIN_Y23
PIN_AA25
PIN_AB12
b
PIN_V21
b
PIN_V22
b
c
PIN_AC12
c
PIN_W21
c
PIN_AC25
c
PIN_AA26
d
PIN_AD11
d
PIN_Y22
d
PIN_AC26
d
PIN_Y26
e
PIN_AE11
e
PIN_AA24
e
PIN_AB26
e
PIN_Y25
f
PIN_V14
f
PIN_AA23
f
PIN_AB25
f
PIN_U22
g
PIN_V13
g
PIN_AB24
g
PIN_Y24
g
PIN_W24
HEX4
Periférico
a
b
HEX5
FPGA
PIN_U9
Periférico
a
HEX6
FPGA
PIN_T2
Periférico
a
HEX7
FPGA
PIN_R2
Periférico
a
FPGA
PIN_L3
PIN_U1
b
PIN_P6
b
PIN_P4
b
PIN_L2
c
PIN_U2
c
PIN_P7
c
PIN_P3
c
PIN_L9
d
PIN_T4
d
PIN_T9
d
PIN_M2
d
PIN_L6
e
PIN_R7
e
PIN_R5
e
PIN_M3
e
PIN_L7
f
PIN_R6
f
PIN_R4
f
PIN_M5
f
PIN_P9
g
PIN_T3
g
PIN_R3
g
PIN_M4
g
PIN_N9
DE2 - Tutorial de gravação
5/11
Gravação do dispositivo FPGA
Os passos para se gravar uma descrição em HDL ou um circuito esquemático no dispositivo de
lógica programável presente na placa DE2 são os seguintes:
1.
2.
3.
4.
5.
Especificar, junto ao projeto, o FPGA com o qual trabalhar;
Associar as portas de entrada e de saída do circuito a pinos do FPGA;
Especificar o tratamento aos pinos não utilizados;
Configurar o processo de gravação;
Efetuar a gravação.
1 - Especificação do FPGA com o qual trabalhar
Para que o projeto em desenvolvimento por meio do Quartus II possa ser programado no FPGA do
kit DE2, o dispositivo EP2C35F672C6 deve ser especificado como o dispositivo de destino para o projeto.
Para criar tal relacionamento, se deve executar os seguintes passos:
1 – Na interface do assistente de criação de novo projeto ou na interface acessível por meio da opção
de menu “Associações | Dispositivo” e, então, opção “Dispositivo”, escolher a família Cyclone II;
2 – Escolher o modelo EP2C35F672C6 na lista de dispositivos disponíveis.
Interface acessada durante o assistente de criação de
novo projeto
DE2 - Tutorial de gravação
Interface acessada através do item de menu
“Associações|Dispositivo”
6/11
2 - Associação das portas do circuito aos pinos do FPGA
Para que os periféricos presentes na placa DE2 possam ser acessados por um circuito esquemático ou
uma descrição em HDL, os pinos relacionados aos periféricos da placa com os quais o projeto interagirá
devem ser associados com as portas de entrada e saída do projeto em desenvolvimento.
Para se realizar o mapeamento em questão, deve-se abrir a interface de planejamento de pinos por
meio do botão de planejamento de pinos presente na interface principal do Quartus II.
Uma vez na interface de planejamento de pinos, basta associar cada uma das portas de entrada/saída
do projeto com um respectivo pino do FPGA. Este relacionamento pode ser feito ou se escolhendo cada um
dos pinos presentes na representação gráfica do FPGA ou se utilizando a tabela de relacionamento presente
na divisão inferior da interface.
Para realizar tal associação por meio da tabela, basta prosseguir à linha relacionada à porta a ser
associada e, na respectiva coluna localização, fornecer o nome do pino ao qual a porta será associada. Este
processo deve ser repetido para cada uma das portas do circuito em desenvolvimento.
DE2 - Tutorial de gravação
7/11
Uma segunda forma de realizar a associação de pinos é importar uma associação já existente. Neste
caso, as portas presentes no circuito em desenvolvimento devem coincidir com as portas de entrada e de
saída presentes na associação a ser importada. O modelo do dispositivo lógico programável em uso pelo
circuito e o presente no arquivo de importação também devem coincidir.
Para efetuar a importação de uma associação já existente, entre na interface de planejamento de
pinos, acessível via botão de planejamento de pinos presente na interface principal do Quartus II ou por
meio da opção de menu “Associações | Pinos”. Com tal interface aberta, seleciona a opção de menu
“Associações | Importar associações”. Na interface que se abrirá, selecione o arquivo com as informações
de associação de pinos e então confirme a importação.
3 - Tratamento aos pinos não utilizados
Uma vez que a placa DE2 contém um conjunto de periféricos fisicamente conectados aos pinos de
seu FPGA, projetos que não se utilizem de todos os pinos do dispositivo devem colocar em estado de
inatividade (alta impedância) todos os pinos que não tenham aplicação no projeto.
Cada um dos pinos de entrada/saída de um FPGA da família Cyclone II possui um estado de altaimpedância que pode ser ativado por meio de configuração no Quartus II. Esta configuração pode ser
acessada por meio do botão “Opções do Dispositivo e de Pinos”, o qual é acessível por meio do item de
menu “Associações | Dispositivo” e então a opção “Dispositivo”.
DE2 - Tutorial de gravação
8/11
Já na interface que se abre ao se pressionar o botão citado, deve-se acessar a aba “Pinos não
utilizados” e, então, escolher a opção “Como entradas em estado de alta-impedância” (As input tri-stated) na
caixa de seleção “Reserve pinos não utilizados como:”.
Importante: Uma vez efetuada a associação de pinos e a especificação do tratamento de pinos não
utilizados, deve-se recompilar o projeto.
4 – Configuração do processo de gravação
Para que ocorra com êxito, o processo de gravação deve ser corretamente configurado.
Com a placa DE2 corretamente conectada ao circuito de alimentação, ligada e então conectada ao
computador por meio de seu cabo de conexão USB, acesse o botão programador presente na interface
principal do aplicativo.
Uma vez na interface de programação do dispositivo, acesse o botão “Configuração de Hardware”.
DE2 - Tutorial de gravação
9/11
Na interface que se abre, escolha o equipamento USB-Blaster na caixa de seleção do equipamento
correntemente selecionado e então feche a interface por meio do botão fechar.
Ainda na interface de gravação, garanta que o equipamento selecionado é o USB-Blaster e que o
modo, JTAG.
Na chave de seleção presente na placa (periférico Q), selecione a posição “RUN”.
5 – Efetuando a gravação
Uma vez configurado o processo de gravação, a efetiva programação do FPGA é requisitada por
meio do botão de Início presente na interface de gravação.
DE2 - Tutorial de gravação
10/11
Se a gravação for efetuada com sucesso, a barra lateral de progresso sinalizará 100% e o projeto
poderá, então, ser testado por meio da placa DE2 e seus periféricos.
DE2 - Tutorial de gravação
11/11

Documentos relacionados