Vous êtes sur la page 1sur 51

MANUAL DE USURIO

MANUAL DE USURIO MERCURIO IV

Verso 2

Neste manual, podem ser usados nomes de


marcas registradas. Caso alguma marca no
receba o smbolo de marca registrada, o que se
dar somente por enganos, e mesmo em relao
s marcas mencionadas seguidas dos smbolos
de marca registrada, declaramos que estamos
usando os nomes somente de forma editorial e
sem nenhuma inteno de violao.

| www.macnicadhw.com.br

MANUAL DE USURIO MERCURIO IV

Verso 2

Sumario
Captulo 1 Contedo
1.1 Contedo do kit.......................................................................................................................... 7
1.2 Instalando o kit........................................................................................................................... 7
1.3 Suporte.......................................................................................................................................... 7

Captulo 2 Placa Mercurio IV


2.1 Descrio geral dAS PLACAS DO KIT.............................................................................. 8
2.2 Sistemas da placa Mercurio IV.......................................................................................... 9
2.3 Utilizando o kit Mercurio IV................................................................................................11
2.3.1 Configurando o FPGA.......................................................................................................11
2.3.2 Utilizando as chaves e os botes...............................................................................15
2.3.3 Utilizando o display de 7 segmentos........................................................................17
2.3.4 Utilizando a matriz de LEDs.........................................................................................19
2.3.5 Utilizando o LED RGB de alto brilho.........................................................................21
2.3.6 Utilizando o sensor de temperatura.........................................................................22
2.3.7 Utilizando o display LCD...............................................................................................23
2.3.8 Utilizando a porta VGA.................................................................................................25
2.3.9 Utilizando a porta RS-232............................................................................................27
2.3.10 Utilizando a porta USB................................................................................................28
2.3.11 Utilizando o conversor AD.......................................................................................... 30
2.3.12 Utilizando o conversor DA..........................................................................................32
2.3.13 Utilizando o carto MicroSD..................................................................................... 34
2.3.14 Utilizando a memria Flash....................................................................................... 36
2.3.15 Utilizando a memria SDRAM...................................................................................37
2.3.16 Utilizando a interface Ethernet................................................................................ 40
2.3.17 Utilizando as interfaces PMOD .............................................................................. 42
2.3.18 Utilizando as interfaces GPIO................................................................................... 44
2.3.19 Utilizando a placa expansora com 16 chaves .................................................... 48

| www.macnicadhw.com.br

MANUAL DE USURIO MERCURIO IV

Verso 2

Captulo 3
3.1 - Histrico de revises.......................................................................................................... 50
3.2 - Copyright............................................................................................................................... 50

| www.macnicadhw.com.br

MANUAL DE USURIO MERCURIO IV

Verso 2

ndice de Figuras
Figura 1 - Componentes da placa Mercurio IV........................................................................ 8
Figura 2 - Diagrama de blocos da placa Mercurio IV........................................................... 9
Figura 3 - Chave Liga/Desliga na Posio OFF.......................................................................12
Figura 4 - Chave Prog na Posio FPGA....................................................................................12
Figura 5 - Chave Prog na Posio Flash.....................................................................................13
Figura 6 - Iniciando o conversor de arquivos do Quartus II.............................................13
Figura 7 - Tela de converso de arquivos................................................................................. 14
Figura 8 - Tela de converso de arquivos................................................................................. 14
Figura 9 - Ativando a gerao automtica do arquivo .pof...............................................15
Figura 10 - Chaves do tipo Slide Switch e relao entre posio e nvel lgico.........15
Figura 11 - Conexo entre os Push Buttons e o FPGA...........................................................16
Figura 12 - Conexo entre os displays e o FPGA....................................................................18
Figura 13 - Disposio das linhas e colunas da matriz de LEDs...................................... 20
Figura 14 - Conexo entre o LED RGB e o FPGA...................................................................22
Figura 15 - Converso DA para a sada VGA............................................................................25
Figura 16 - Componente de converso para RS-232............................................................27
Figura 17 - Formato comumente utilizado em transmisses seriais assncronas......27
Figura 18 - FTDI entre o conector USB e o barramento de entrada do FPGA
na placa Mercurio IV........................................................................................................................28
Figura 19 - Sinais para leitura de dado da FIFO do FTDI FT245RQ...............................29
Figura 20 - Sinais para escrita de dado na FIFO do FTDI FT245RQ..............................29
Figura 21 - Forma de onda do conversor AD no modo dual............................................ 30
Figura 22 - Forma de onda do conversor DA......................................................................... 34
Figura 23 - Forma de onda da leitura do registrador de status da flash......................37
Figura 24 - Forma de onda do comando Ativar.................................................................... 39
Figura 25 - Jumpers de seleo de tenso.............................................................................. 42
Figura 26 - Interfaces PMOD e funes dos pino............................................................... 43
Figura 27 - Conectores GPIO 0 e GPIO 1 e a descrio de seus pinos......................... 45

| www.macnicadhw.com.br

MANUAL DE USURIO MERCURIO IV

Verso 2

ndice de Tabelas
Tabela 1 - Pinagem do FPGA relacionada a chaves e botes............................................17
Tabela 2 - Pinagem do FPGA relacionada aos displays.......................................................18
Tabela 3 - Pinagem do FPGA relacionada matriz de LEDs.............................................21
Tabela 4 - Pinagem do FPGA relacionada ao LED RGB......................................................22
Tabela 5 - Pinagem do FPGA relacionada ao sensor de temperatura..........................23
Tabela 6 - Mapeamento do display na memria DDRAM.................................................. 24
Tabela 7 - Pinagem do FPGA relacionada ao display LCD 16x2..................................... 24
Tabela 8 - Temporizao horizontal (linha).............................................................................26
Tabela 9 - Temporizao vertical (frame)................................................................................26
Tabela 10 - Pinagem do FPGA relacionada porta VGA....................................................26
Tabela 11 - Pinagem do FPGA relacionada porta serial....................................................28
Tabela 12 - Pinagem do FPGA relacionada porta USB.................................................... 30
Tabela 13 - Pinagem do FPGA relacionada ao conversor DA............................................31
Tabela 14 - Comandos de escrita do DAC................................................................................33
Tabela 15 - Configurao do DAC................................................................................................33
Tabela 16 - Pinagem do FPGA relacionada ao conversor DA.......................................... 34
Tabela 17 - Pinagem do FPGA relacionada ao carto MicroSD........................................35
Tabela 18 - Comandos SPI da memria Flash......................................................................... 36
Tabela 19 - Pinagem do FPGA relacionada memria Flash............................................37
Tabela 20 - Algumas operaes sobre a memria SDRAM...............................................38
Tabela 21 - Pinagem do FPGA relacionada memria SDRAM...................................... 39
Tabela 22 - Pinagem do FPGA relacionada interface Ethernet.................................... 41
Tabela 23 - Pinagem do FPGA relacionada s interfaces PMOD.................................. 43
Tabela 24 - Pinagem do FPGA relacionada s interfaces GPIO...................................... 45
Tabela 25 - Pinagem da placa expansora................................................................................ 49

| www.macnicadhw.com.br

MANUAL DE USURIO MERCURIO IV

Verso 2

Captulo 1 Contedo
O kit Mercurio IV possui todo o necessrio para a utilizao do mesmo. O usurio
deve apenas fornecer alguma fonte de alimentao de energia, atravs de uma porta
USB ou de uma fonte de alimentao (no inclusa no kit). O usurio pode ainda
utilizar um computador (no incluso no kit) para alimentar a placa atravs da porta
USB e para configurar o FPGA da placa atravs da USB-Blaster. A alimentao via
USB e a configurao, via USB-Blaster, so feitas pelo mesmo conector, de forma
transparente ao usurio.

1.1 Contedo do kit


O kit de desenvolvimento Mercurio IV consiste dos seguintes itens:
Placa Mercurio IV;
Placa Expansora com 16 chaves;
Cabo USB de programao e alimentao;
Exemplos e referncias;
Protetor de acrlico para a placa.

1.2 Instalando o kit


Conectar uma fonte de alimentao placa Mercurio IV. A placa pode ser
alimentada de duas formas diferentes:
Conectar um cabo USB no conector USB-Blaster (a esquerda da placa, do
lado do display LCD) a um computador ou tomada USB;
Conectar uma fonte de 5V no conector de alimentao externa (extremidade
superior esquerda da placa, acima da matriz de LEDs).
Ao ligar a placa Mercurio IV pela primeira vez, ela iniciar em modo de
demonstrao, no qual algumas interfaces existentes na placa sero ligadas. O
arquivo de demonstrao est disponvel para download no site da Macnica DHW
ou pode ser solicitado por e-mail.
A configurao do FPGA pode ser feita somente atravs do conector USBBlaster, quando este estiver conectado um computador com o software Altera
Quartus.

1.3 Suporte
Qualquer problema durante a utilizao do kit de desenvolvimento Mercurio IV,
entrar em contato com: Macnica DHW Ltda.

Rua Patrcio Farias, 131, Ed. Multicenter, Loja 01, CEP: 88034-132
Itacorubi, Florianpolis, SC, Brasil
Telefone: +55 (48) 3225.5052
Email: suporte@macnicadhw.com.br

| www.macnicadhw.com.br

MANUAL DE USURIO MERCURIO IV

Verso 2

Captulo 2 Placa Mercurio IV


2.1 Descrio geral dAS PLACAS DO KIT
A placa Mercurio IV mostrada na Figura 1, nessa figura esto indicados os
diversos perifricos que podero ser utilizados.
15

13

16

12

14

22
1
11
20

17
18

21

19
3
10

22

Figura 1 - Componentes da placa Mercurio IV

A seguir esto listados os itens que compem a placa Mercurio IV:


1 - Liga / Desliga;
12 - Ethernet;
2 - Modo de configurao;
13 - VGA;
3 - Display LCD;
14 - USB;
4 - USB-Blaster;
15 - Serial;
5 e 7 - Interfaces PMOD ;
16 - LED RGB de alto brilho;
6 - Carto micro SD;
17 - Matriz de LEDs;
8 - ADs e DAs;
18 - Displays de 7 segmentos;
9 - Switches;
19 e 20 - Memrias Flash e RAM;
10- Teclado numrico;
21 - FPGA Cyclone IV;
11 - GPIO;
22 - Sensor de temperatura
A placa expansora contida no kit possui 16 chaves e compatvel com as
interfaces GPIO da placa Mercurio IV.

| www.macnicadhw.com.br

MANUAL DE USURIO MERCURIO IV

Verso 2

2.2 Sistemas da placa Mercurio IV


Para facilitar no desenvolvimento de diferentes sistemas, todos os subsistemas
so interligados pelo FPGA Cyclone IV, assim, o desenvolvedor pode configurar
o FPGA para apenas controlar os perifricos necessrios, sem se preocupar com
os demais itens.
ALIMENTAO
EXTERNA OU VIA USB

CARTO MICROSD

4 CHAVES TIPO SWITCH

SDRAM 512 MBITS

SENSOR TEMPERATURA

FLASH DE 64 MBITS
CONFIGURAO + USURIO

PORTA VGA

CLOCK 50MHZ

ENTRADA E SADA
DE CLOCK SMA

CYCLONE IV - 30K
EP4CE30F23

USB BLASTER

LED RGB ALTO BRILHO

CONVERSOR AD
COM 4 ENTRADAS

PORTA RS-232

PORTA ETHERNET

CONEXO USB NO MODO


DEVICE

DISPLAY LED 7 SEGMENTOS


CONVERSOR DA
COM 2 SADAS

LCD ALFANUMRICO 2 X 16
COM BACKLIGHT

TECLADO 12 BOTES

MATRIZ LED
8 LINHAS X 5 COLUNAS

DUAS INTERFACES GPIO


DE 32 PINOS IO
E 4 PINOS DE CLOCK

DUAS INTERFACES PMOD


DE 8 PINOS IO

Figura 2 - Diagrama de blocos da placa Mercurio IV

FPGA Cyclone IV
O FPGA que equipa a placa Mercurio IV uma Cyclone IV EP4CE30F23, a qual
possui 30 mil elementos lgicos.
O clock de entrada do FPGA de 50MHz.
Switches
O kit dispe de 4 chaves do tipo slide switch, que quando esto na posio para
baixo, geram sinal de nvel lgico baixo nas entradas do FPGA.
Teclado numrico
Na placa Mercurio IV existe uma organizao de 12 botes do tipo push button a
fim de simular um teclado telefnico. Os botes no pressionados geram sinal de nvel
lgico baixo na entrada do FPGA, e quando apertados geram um pulso de nvel lgico
alto.
Displays de 7 segmentos
A placa Mercurio IV possui dois displays de sete segmentos. Cada display
controlado por um barramento prprio de dados, sendo assim, displays
| www.macnicadhw.com.br

MANUAL DE USURIO MERCURIO IV

Verso 2

independentes entre si.


Matriz de LEDs
O kit de desenvolvimento Mercurio IV conta com uma matriz de LEDs disposta
em 8 linhas e 5 colunas. Devido a essa disposio dos LEDs, o acesso a eles deve ser
multiplexado, com cada coluna (ou linha) sendo acessada por vez.
LED RGB de alto brilho
O LED RGB de alto brilho presente na placa Mercurio IV capaz de emitir as trs
freqncias bsicas (RGB) e a combinao entre elas.
Display LCD
Neste kit tambm existe um display LCD 16 x 2 caracteres, e com possibilidade
de ligar iluminao de fundo.
Sensor de temperatura
Foi instalado um sensor de temperatura na placa Mercurio IV. O FPGA pode se
comunicar com o sensor atravs de dois pinos, pelo protocolo I2C.
VGA
Com a sada VGA possvel conectar a placa Mercurio IV em um monitor de
vdeo e exibir imagens, que podem ser processadas pelo FPGA.
Cada componente, de 4 bits, convertida em sinal analgico atrves de uma
rede de resistores e o conector utilizado o padro D-SUB.
Carto micro SD
A placa Mercurio IV capaz de ler e escrever cartes de memria do formato
micro SD. O acesso ao carto pode ser SPI ou no modo Carto SD de at 4-Bits.
Conversor AD (analgico-digital)
Uma das caractersticas que mais destaca o kit Mercurio IV em relao ao seus
similares a presena dos conversores de sinal. O conversor analgico-digital
disponvel neste kit possui 2 entradas diferenciais, ou 4 entradas single ended, 2
canais de converso paralelos de 12 bits de resoluo, que operam em at 1,25 Msps.
Os resultados das converses so apresentados pelo barramento serial SPI.
Conversor DA (digital-analgico)
Para gerar sinais analgicos, como por exemplo um sinal de udio, o kit Mercurio
IV vem equipado com dois canais de converso digital-analgico. Assim como os
conversores AD, esses conversores DA tem resoluo de 12 bits e se comunicam
pelo barramento SPI, serialmente.
Memria SDRAM
A memria SDRAM instalada na placa Mercurio IV possui 512 Mbits. Essa a
memria de acesso rpido da placa Mercurio IV.

| www.macnicadhw.com.br

10

MANUAL DE USURIO MERCURIO IV

Verso 2

Memria Flash
A memria Flash utilizada para EPCS e para armazenamento de dados, tem
tamanho de 64 Mbits e possui acesso serial.
Ethernet
A porta Ethernet pode ser utilizada em conjunto com o softcore NIOS para se
construir um servidor web, por exemplo.
RS-232
A porta serial fornecida com o kit Mercurio IV usada para realizar comunicaes
com outros dispositivos serial, como a porta serial de um PC.
USB-Blaster
A porta USB-Blaster pode ser utilizada para alimentar a placa Mercurio IV e, alm
disso, por ela que feita a programao e comunicao com o FPGA da placa.
importante ressaltar que a nica forma de configurar o FPGA pela porta USB-Blaster.
USB
Outro conector USB existe na placa Mercurio IV. Chamado de USB Device, ele
pode ser utilizado para estabelecer uma conexo USB entre o FPGA da placa com
perifricos hosts USB externos.
Interfaces PMOD
So fornecidas duas interfaces para perifricos compatveis com interface
PMOD . A comunicao entre a placa Mercurio IV e esses perifricos pode ser de
diferentes maneiras, por exemplo, o sensor de proximidade tem comunicao I2C,
j o thermocouple para digital se comunica por SPI. As placas PMOD devem ser
adquiridas separadamente.
INTERFACES GPIOs
Alm das interfaces para perifricos PMOD , existem dois barramentos de pinos
de propsito geral, cada um com 32 pinos de I/O.

2.3 Utilizando o kit Mercurio IV


Nesta sesso ser mostrado como o usurio poder utilizar o kit Mercurio IV,
desde a configurao do FPGA at detalhamentos do funcionamento de cada
perifrico disponvel na placa.

2.3.1 Configurando o FPGA


A configurao do FPGA Cyclone IV do kit Mercurio IV pode ser feita por dois
modos, o modo JTAG e o modo AS (no suportado o modo Active Serial x4).
O modo JTAG faz a configurao diretamente no FPGA, que ir manter essa
configurao enquanto a placa estiver sendo alimentada. Quando a placa for
desligada, essa configurao ser perdida.
Pelo modo AS, a configurao do FPGA enviada para a memria EPCS64,

| www.macnicadhw.com.br

11

MANUAL DE USURIO MERCURIO IV

Verso 2

assim, essa configurao ser mantida numa memria no voltil e no ser perdida
quando a placa for desligada. Quando a placa ligada, a configurao do FPGA
situada na memria EPCS imediatamente transferida para o FPGA, que inicia sua
operao ao terminar a tranferncia.
Na placa Mercurio IV a memria EPCS64 uma memria Flash, que tambm
pode ser utilizada para armazenamento de dados do usurio.
Para iniciar a configurao da placa Mercurio IV, conecte uma extremidade do
cabo USB no conector USB-Blaster da placa, e a outra extremidade num computador
equipado com o software Altera Quartus II. Com o cabo conectado, e o computador
ligado, a placa automaticamente ser alimentada, ento basta acionar a chave Liga/
Desliga, na posio ON, para ligar a placa. Quando a placa for ligada, o FPGA ser
configurado de acordo com os dados da memria EPCS64, que por padro um
projeto que ativa diversos sistemas da placa (LEDs, displays, botes, etc.).

Figura 3 - Chave Liga/Desliga na Posio OFF

Configurando pelo modo JTAG


Com a placa ligada e conectada ao computador, se o usurio deseja realizar
a configurao pelo JTAG, a chave Prog deve ser colocada na posio FPGA
(esse tambm o modo de execuo do FPGA). Ento basta utilizar o mdulo de
programao do Quartus II (Quartus II Programmer) para transferir a configurao
do projeto, armazenada no arquivo de extenso .sof, para o FPGA.
O arquivo .sof gerado automaticamente, pelo Quartus II.

Figura 4 - Chave Prog na Posio FPGA

Configurando pelo modo AS


J para o modo Active Serial de programao, a chave Prog deve ser colocada
na posio FLASH, o que significa que o arquivo de configurao ser transferido
para a memria EPCS64.

| www.macnicadhw.com.br

12

MANUAL DE USURIO MERCURIO IV

Verso 2

Com a placa no modo FLASH, o usurio deve utilizar o mdulo de programao


do Quartus II para transferir o arquivo de configurao, dessa vez um arquivo com
extenso .pof.

Figura 5 - Chave Prog na Posio Flash

O arquivo .pof no gerado por padro no Quartus II. Existem duas possibilidades
para se gerar esse arquivo, a primeira o modo manual, na qual o usurio converte
o arquivo .sof para um arquivo .pof que ele escolher, a segunda possibilidade
configurar o Quartus II para automaticamente gerar o arquivo .pof durante a
compilao do projeto, assim, aps a compilao, ambos os arquivos .sof e .pof
estaro disponveis para a configurao do FPGA.
O modo manual feito atravs de um aplicativo do Quartus II de converso
de arquivos. Para inici-lo, entre no menu File e selecione a entrada Convert
Programming Files....

Figura 6 - Iniciando o conversor de arquivos do Quartus II

A seguir, na janela do conversor de arquivos, o usurio deve definir o dispositivo


de configurao para EPCS64 no modo Active Serial. Ento define o nome do
arquivo .pof de sada e adiciona o arquivo .sof que deve ser convertido atravs do

| www.macnicadhw.com.br

13

MANUAL DE USURIO MERCURIO IV

Verso 2

boto Add File, que fica ativo quando uma entrada da lista Input files to convert
est selecionada.

Figura 7 - Tela de converso de arquivos

Aps selecionar um arquivo .sof, esse arquivo ser listado abaixo da linha
SOF Data selecionada na lista de entrada.

Figura 8 - Tela de converso de arquivos

Com o arquivo .sof selecionado, basta clicar no boto Generate e o arquivo .pof
ser gerado.
Para o Quartus criar o arquivo .pof automaticamente, entre no menu
Assignments e selecione a entrada Device.... Na janela que se abriu clique no
boto Device and Pin Options..., o que abrir uma nova janela. Ento, entre na
categoria Configuration, marque a opo Use configuration device: e selecione o
| www.macnicadhw.com.br

14

MANUAL DE USURIO MERCURIO IV

Verso 2

dispositivo EPCS64.

Figura 9 - Ativando a gerao automtica do arquivo .pof

Agora, durante a compilao, o Quartus II gerar tanto o arquivo .sof quanto o


arquivo .pof.

2.3.2 Utilizando as chaves e os botes


A placa Mercurio IV possui quatro chaves do tipo Slide Switch que so
conectadas diretamente ao FPGA. Se a chave estiver posicionada na parte de baixo,
o nvel lgico na porta do FPGA ser 0, se a chave estiver posicionada para cima o
nvel lgico produzido ser 1. Elas esto ligadas a filtros RC, porm, mesmo assim,
pode ser interessante implementar um processo de debounce do sinal, a fim de
evitar glitches na troca de posio das chaves.

1
0

Figura 10 - Chaves do tipo Slide Switch e relao entre posio e nvel lgico

Alm das chaves, a placa Mercurio IV possui doze botes do tipo Push button,
que esto arranjados de forma a simular um teclado telefnico. Esses botes,
quando no pressionados, mantm na entrada do FPGA sinal 0, portanto, quando
algum boto for pressionado, ser gerado um pulso em alto, 1, na respectiva

| www.macnicadhw.com.br

15

MANUAL DE USURIO MERCURIO IV

Verso 2

entrada do FPGA.
Existe um filtro RC acoplado esses botes para diminuir o rudo nas linhas,
porm seu efeito muito pequeno considerando a transio de estados,
portanto altamente recomendado que seja implementado no FPGA rotinas
de debounce para esses botes.

Figura 11 - Conexo entre os Push Buttons e o FPGA

Como indicado nas figuras, as chaves sero chamadas de SW[3..0] e os botes


de KEY[11..0]. Dito isto, o mapeamento dos pinos do FPGA com relao s chaves e
aos botes dado pela Tabela 1.

| www.macnicadhw.com.br

16

MANUAL DE USURIO MERCURIO IV

Verso 2

Tabela 1 - Pinagem do FPGA relacionada a chaves e botes


Nome do sinal

Pino do FPGA

Descrio

Chaves tipo Slide Switch


V21
Chave tipo Slide Switch 0
W22
Chave tipo Slide Switch 1
W21
Chave tipo Slide Switch 2
Y22
Chave tipo Slide Switch 3

SW[0]
SW[1]
SW[2]
SW[3]

Botes tipo Push Button


KEY[0]
KEY[1]
KEY[2]
KEY[3]
KEY[4]
KEY[5]
KEY[6]
KEY[7]
KEY[8]
KEY[9]
KEY[10]
KEY[11]

V22
U20
U22
U16
W20
U21
V15
W17
W19
W15
U17
Y17

Boto tipo Push Button 0


Boto tipo Push Button 1
Boto tipo Push Button 2
Boto tipo Push Button 3
Boto tipo Push Button 4
Boto tipo Push Button 5
Boto tipo Push Button 6
Boto tipo Push Button 7
Boto tipo Push Button 8
Boto tipo Push Button 9
Boto tipo Push Button 10
Boto tipo Push Button 11

Referncia 1 - Chaves e botes


Referncia
na Placa
SW0 - SW3
KEY0 - KEY11

Descrio
SPDT Subminiature
Toggle Switch, Right
Angle Mounting,
Vertical Actuation
SPST Tactil Switch

Fabricante

Part number

A06-5.0

OS102011MS2QN1

2.3.3 Utilizando o display de 7 segmentos


Na placa Mercurio IV existem dois displays de 7 segmentos arranjados um ao
lado do outro, para ser possvel exibir um nmero com dois algarismos. O display
DISP0 fica a direita e o DISP1 a esquerda. Cada display possui um barramento de
oito sinais ligado no FPGA, sete sinais para os segmentos e um sinal para o ponto
decimal. Os displays so do tipo Anodo Comum, portanto, nvel 1 no pino de entrada
acende o segmento do display e nvel 0 apaga o segmento.
A relao entre segmentos e sinais do FPGA ilustrada pela Figura 12.

| www.macnicadhw.com.br

17

MANUAL DE USURIO MERCURIO IV

Verso 2

Figura 12 - Conexo entre os displays e o FPGA

Tabela 2 - Pinagem do FPGA relacionada aos displays


nome do sinal

Pino do FPGA

Descrio

Display 0
DISP0_D[0]

V2

DISP0_D[1]

V1

DISP0_D[2]

U2

DISP0_D[3]

U1

DISP0_D[4]

Y2

DISP0_D[5]

Y1

DISP0_D[6]

W2

DISP0_D[7]

W1

| www.macnicadhw.com.br

Segmento horizontal superior do


display 0
Segmento vertical superior direito
do display 0
Segmento vertical inferior direito
do display 0
Segmento horizontal inferior do
display 0
Segmento vertical inferior
esquerdo do display 0
Segmento vertical superior
esquerdo do display 0
Segmento horizontal do meio do
display 0
Ponto decimal do display 0
18

MANUAL DE USURIO MERCURIO IV

Nome do sinal

Verso 2

Pino do FPGA

Descrio

Display 1
DISP1_D[0]

R5

DISP1_D[1]

T5

DISP1_D[2]

T3

DISP1_D[3]

T4

DISP1_D[4]

M6

DISP1_D[5]

N7

DISP1_D[6]

N6

DISP1_D[7]

P6

Segmento horizontal superior do


display 1
Segmento vertical superior direito
do display 1
Segmento vertical inferior direito
do display 1
Segmento horizontal inferior do
display 1
Segmento vertical inferior
esquerdo do display 1
Segmento vertical superior
esquerdo do display 1
Segmento horizontal do meio do
display 1
Ponto decimal do display 1

Referncia 2 - Display de 7 segmentos


Referncia
na Placa
DISP0 e DISP1

Descrio
10.16 mm Black Surface
HER 7- Segment Display:
CA, RH DP

Fabricante

Part
Number

LTS-4301JR

2.3.4 Utilizando a matriz de LEDs


A matriz de LEDs da placa Mercurio IV composta por oito linhas e cinco colunas
de LEDs, conforme a Figura 13. Cada linha e cada coluna est conectada a um pino
do FPGA, portanto, para acender apenas o LED superior esquerdo, por exemplo,
necessrio colocar a linha superior e a coluna esquerda em nvel baixo, os demais
sinais devem permanecer em nvel alto (lgica invertida). Ou seja, o acesso matriz
deve ser multiplexado, ou por linhas ou por colunas.

| www.macnicadhw.com.br

19

LEDM_C(4)

LEDM_C(3)

Verso 2

LEDM_C(2)

LEDM_C(1)

LEDM_C(0)

MANUAL DE USURIO MERCURIO IV

LEDM_R(0)

LEDM_R(1)

LEDM_R(2)

LEDM_R(3)

LEDM_R(4)

LEDM_R(5)

LEDM_R(6)

LEDM_R(7)

Figura 13 - Disposio das linhas e colunas da matriz de LEDs

Adotando a multiplexao por colunas como exemplo (so menos colunas que
linhas, portanto recomendada a multiplexao por colunas nesse caso), num
primeiro instante coloca-se a primeira coluna em nvel baixo e as demais em nvel
alto, assim somente os LEDs da primeira coluna podem ser acesos. Ento coloca-se
as linhas desejadas em nvel baixo, para acender apenas os LEDs da primeira coluna
e das linhas desejadas.
Num segundo instante, a primeira coluna colocada em nvel alto (apagando
momentaneamente os LEDs), e a segunda coluna colocada em nvel baixo. Assim,
ativando as linhas desejadas possvel acender os LEDs da segunda coluna.
Repete-se o processo at a ltima coluna, e ento reinicia-o pela primeira coluna,
enquanto a matriz de LEDs estiver sendo utilizada. importante que o tempo de
acendimento de cada coluna seja suficiente para que os LEDs sejam visivelmente
acesos, porm esse tempo no deve ser muito longo, para que o observador no
consiga perceber que a coluna foi apagada (at ser acesa novamente).

| www.macnicadhw.com.br

20

MANUAL DE USURIO MERCURIO IV

Verso 2

Tabela 3 - Pinagem do FPGA relacionada matriz de LEDs


Nome do sinal

Pino do FPGA

Descrio

LEDM_C[0]
LEDM_C[1]
LEDM_C[2]
LEDM_C[3]
LEDM_C[4]
LEDM_R[0]
LEDM_R[1]
LEDM_R[2]
LEDM_R[3]
LEDM_R[4]
LEDM_R[5]
LEDM_R[6]
LEDM_R[7]

J7
J6
K8
J8
L8
F10
C8
E9
G9
F9
F8
G8
H11

Coluna 0 da matriz de LEDs


Coluna 1 da matriz de LEDs
Coluna 2 da matriz de LEDs
Coluna 3 da matriz de LEDs
Coluna 4 da matriz de LEDs
Linha 0 da matriz de LEDs
Linha 1 da matriz de LEDs
Linha 2 da matriz de LEDs
Linha 3 da matriz de LEDs
Linha 4 da matriz de LEDs
Linha 5 da matriz de LEDs
Linha 6 da matriz de LEDs
Linha 7 da matriz de LEDs

Referncia 3 - LEDs da matriz de LEDs


Referncia
na Placa

Descrio

Fabricante

Part Number

LD1 - LD40

High Performance
Chip LED

LS M67K-H2L1-1-Z

2.3.5 Utilizando o LED RGB de alto brilho


O LED RGB de alto brilho possui trs elementos internos, o vermelho, o verde e
o azul. Esses trs elementos so utilizados para que o LED possa emitir sete cores
diferentes:
Vermelho elemento R;
Verde elemento G;
Azul elemento B;
Amarelo elementos R e G;
Ciano elementos G e B;
Magenta elementos R e B;
e Branco elementos R, G e B.
Cada elemento possui um pino associado e existe tambm um pino comum
aos trs elementos, portanto. Os trs elementos so conectados ao FPGA e o
pino comum conectado ao VCC. Assim o FPGA pode ativar ou desativar cada
elemento do LED RGB colocando 0 no pino associado, sendo possvel gerar as
sete cores do LED.

| www.macnicadhw.com.br

21

MANUAL DE USURIO MERCURIO IV

Verso 2

Figura 14 - Conexo entre o LED RGB e o FPGA

Tabela 4 - Pinagem do FPGA relacionada ao LED RGB


Nome do sinal

Pino do FPGA

Descrio

LED_R
LED_G
LED_B

D6
D7
E7

Elemento vermelho do LED RGB


Elemento verde do LED RGB
Elemento azul do LED RGB

Referncia 4 - LED RGB


Referncia
na Placa
LD44

Descrio

Fabricante

PartNumber

ET-5050RTB-313

High Luminous Intensity True


Red- Green-Blue LED

2.3.6 Utilizando o sensor de temperatura


Est presente na placa Mercurio IV um sensor de temperatura, que pode ser
utilizado para determinar se o equipamento excedeu determinada temperatura.
Essa funo utilizada em equipamentos eletrnicos para evitar que qualquer dano
ocorra devido ao excesso de temperatura do equipamento.
A comunicao com o sensor feita por I2C, ou seja, dois pinos do FPGA so
utilizados para realizar leituras e configuraes do sensor. Alm disso existe mais
um pino, que pode ser utilizado como termostato, que indica quando a temperatura
excedeu um limite superior, a sada OS vai para 1, ou quando excedeu um limite
inferior (para menos que o limite), a sada OS vai para 0. A sada OS tambm pode
ser utilizada como interrupo, para indicar que a temperatura excedeu um

| www.macnicadhw.com.br

22

MANUAL DE USURIO MERCURIO IV

Verso 2

limite superior, nesse modo, a sada OS vai para 0 quando for feita uma leitura, de
qualquer registrador, do sensor.
Para fazer a leitura do valor da temperatura, basta que o FPGA faa uma operao
de leitura no I2C, informando o endereo do registrador de temperatura (registrador
somente leitura). Alm do registrador de temperatura existem mais o registrador
de configurao e dois registradores que armazenam os valores de temperatura
limites superior e inferior.
O acesso esses registradores no trivial, por isso recomenda-se a leitura
do datasheet do componente antes de utiliz-lo.
Tabela 5 - Pinagem do FPGA relacionada ao sensor de temperatura
Nome do sinal

Pino do FPGA

I2C_SDA

Y21

I2C_SCL

AA21

I2C_OVERTEMP_N

AA20

Descrio
Sinal de dados da rede I2C com o
sensor de temperatura
Sinal de clock da rede I2C com o
sensor de temperatura
Sada termostato/interrupo do
sensor de temperatura

Referncia 5 - Sensor de temperatura


Referncia
na Placa

Descrio

U30

256Kbit, 400kHz, 2.5V,


I2C Serial EEPROM, 8-Pin
SOIC 208mil, Extended
Temperature

Fabricante
Maxim
Integrated

Part Number

MAX7500MSA+

2.3.7 Utilizando o display LCD


Na placa Mercurio IV est instalado um display LCD 16x2 caracteres. Esse display
possui um mapa de caracteres, que pode ser utilizado para escrever no display. Alm
do mapa de caracteres, existe uma memria DDRAM utilizada para o mapeamento
do display diretamente, ou seja, existem 32 endereos da DDRAM que seus valores
so exibidos no display, segundo o mapa de caracteres.

| www.macnicadhw.com.br

23

MANUAL DE USURIO MERCURIO IV

Verso 2

Tabela 6 - Mapeamento do display na memria DDRAM


Posio
no
display
Endereo
da
DDRAM

9 10

11

12

13 14

15 16

Linha 1 00 01

02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

Linha 2 40 41

42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F

Por exemplo, no mapa de caracteres o valor, em binrio, 00110000 corresponde


ao caractere 0, ento, se o dado 00110000 for escrito no endereo 0 da memria
DDRAM, o caractere 0 ser desenhado na primeira posio, superior esquerda,
do display.
A configurao do display e a escrita dos caracteres feita pelo barramento
LCD_DATA[7..0] e pelos sinais LCD_EN, LCD_RS e LCD_RW. LCD_RW em nvel
alto indica que ser feita uma leitura e em nvel baixo uma escrita, LCD_RS em nvel
alto indica que o acesso ser feito na memria do display e em nvel baixo indica
que o acesso ser feito num registrador de configurao do display. O sinal LCD_EN
colocado em nvel alto quando se deseja realizar uma operao.
Resta ento o sinal LCD_BACKLIGHT, que utilizado para ligar ou desligar o
backlight do display.
Tabela 7 - Pinagem do FPGA relacionada ao display LCD 16x2
Nome do sinal

Pino do
FPGA

LCD_BACKLIGHT

V10

LCD_EN

V9

LCD_RS

U9

LCD_RW

U8

LCD_D[0]

V8

LCD_D[1]

V7

LCD_D[2]

V6

LCD_D[3]

V5

LCD_D[4]

V4

LCD_D[5]

Y4

LCD_D[6]

V3

LCD_D[7]

Y3

| www.macnicadhw.com.br

Descrio
Controlador do backlight
Operation Enable, inicia uma operao
com o LCD
Register Select, seleciona se o acesso
em registrador ('0') ou em memria
('1')
Read Write, indica se uma leitura ('1')
ou escrita ('0')
Bit 0 do barramento de comando/
dado - LSB
Bit 1 do barramento de comando/dado
Bit 2 do barramento de comando/
dado
Bit 3 do barramento de comando/
dado
Bit 4 do barramento de comando/
dado
Bit 5 do barramento de comando/
dado
Bit 6 do barramento de comando/
dado
Bit 7 do barramento de comando/
dado - MSB

24

MANUAL DE USURIO MERCURIO IV

Verso 2

Referncia 6 - Display LCD


Referncia
na Placa

Descrio

Fabricante

Part Number

J18

2x16 characters,
3Vdd, white LED
backlight 3V

NewHaven

NHD-C0216CU-FSWGBW-3V3

2.3.8 Utilizando a porta VGA


A porta VGA utilizada para enviar sinal de vdeo para um monitor compatvel.
O sinal enviado para o monitor possui uma parte analgica, as componentes de cor,
e uma parte digital, os sinais de sincronizao.
Os sinais digitais de sincronizao so o sincronismo horizontal e o sincronismo
vertical. Nvel baixo no sincronismo horizontal indica que uma nova linha ser iniciada,
e nvel baixo no sincronismo vertical indica que um novo frame ser iniciado. Alm
desses dois sinais existem trs componentes de cor, o vermelho, o verde e o azul,
que so sinais analgicos.
Como o FPGA puramente digital, as cores devem ser convertidas de digital
para analgico, e isso feito na placa Mercurio IV com um conversor DA resistivo.
O FPGA gera um sinal digital de 4 bits para cada componente de cor, e atravs de
uma associao resistiva, esse valor de 4 bits convertido em um sinal analgico.

Figura 15 - Converso DA para a sada VGA

Todos os sinais devem ser sincronizados por um clock de pixel, que, para vdeo

| www.macnicadhw.com.br

25

MANUAL DE USURIO MERCURIO IV

Verso 2

640x480 a 60 Hz, deve ser 25,175 MHz. Nessa configurao, segundo os padres da
indstria, as especificaes de tempo da linha e do frame so dadas pelas tabelas:
Tabela 8 - Temporizao horizontal (linha)
Parte da linha
Visible area
Front porch
Sync pulse
Back porch
Whole line

Pixels
640
16
96
48
800

Tempo [Qs]
25.422045680238
0.63555114200596
3.8133068520357
1.9066534260179
31.777557100298

Tabela 9 - Temporizao vertical (frame)


Parte do frame
Visible area
Front porch
Sync pulse
Back porch
Whole frame

Linhas
480
10
2
33
525

Tempo [ms]
15.253227408143
0.31777557100298
0.063555114200596
1.0486593843098
16.683217477656

importante salientar que esses valores so os utilizados para vdeo de


resoluo VGA, ou 640x480, com taxa de frame de 30 Hz. Portanto, para vdeo
com caractersticas diferentes necessrio utilizar as especificaes adequadas.
Tabela 10 - Pinagem do FPGA relacionada porta VGA
Nome do sinal

Pino do
FPGA

Descrio

VGA_R[0]
VGA_R[1]
VGA_R[2]
VGA_R[3]
VGA_G[0]
VGA_G[1]
VGA_G[2]
VGA_G[3]
VGA_B[0]
VGA_B[1]
VGA_B[2]
VGA_B[3]
VGA_HS
VGA_VS

A9
C10
A10
B10
C13
A13
B13
A14
B14
A15
B15
A16
B16
A17

Bit 0 da componente vermelha - LSB


Bit 1 da componente vermelha
Bit 2 da componente vermelha
Bit 3 da componente vermelha - MSB
Bit 0 da componente verde - LSB
Bit 1 da componente verde
Bit 2 da componente verde
Bit 3 da componente verde - MSB
Bit 0 da componente azul - LSB
Bit 1 da componente azul
Bit 2 da componente azul
Bit 3 da componente zul - MSB
Sinal de sincronismo horizontal
Sinal de sincronismo vertical

Referncia 7 - Conector VGA


Referncia
na Placa

Descrio

Fabricante

Part
Number

J3

Connector DB15HD Right


Angle

A35116-ND

| www.macnicadhw.com.br

26

MANUAL DE USURIO MERCURIO IV

Verso 2

2.3.9 Utilizando a porta RS-232


A interface serial RS-232 disponvel na placa Mercurio IV interessante para
estabelecer comunicao serial assncrona entre a placa e outro dispositivo, que
tambm possua uma porta serial RS-232.
Essa interface possui um componente na sada para que seja feita a converso
dos sinais digitais do FPGA para os sinais estabelecidos pelo padro RS-232.

Figura 16 - Componente de converso para RS-232

Na Mercurio IV possvel utilizar handshake ou no, pois esto presentes os


sinais Request to Send, pelo qual a porta de envio sinaliza para a de recepo que
deseja enviar uma mensagem pela porta serial, e Clear to Send, pelo qual a porta
de recepo sinaliza para a porta de envio que a linha est livre para o envio de
dados. Porm tambm possvel no utilizar esses sinais e realizar a comunicao
sem handshake, que mais simples de ser implementada, porm menos confivel.
Portanto, a porta serial da Mercurio IV pode operar nos modos 3-wire e 5-wire, sem
handshake e com handshake, respectivamente.
A transmisso de dados deve obedecer o padro, sendo necessrios os start e
stop bits. Ambos dispositivos devem ser configurados para o mesmo baud rate, ou
taxa de transmisso de dados, nmero de bits da palavra, nmero de start e stop
bits, utilizao de bit de paridade e outros detalhes da comunicao.

Figura 17 - Formato comumente utilizado em transmisses seriais assncronas

Para motivos de testes apenas, pode ser interessante colocar a porta serial da

| www.macnicadhw.com.br

27

MANUAL DE USURIO MERCURIO IV

Verso 2

Mercurio IV em modo loopback, que consiste simplesmente em conectar os


pinos, da prpria porta serial da placa, UART_RTS com UART_CTS e UART_TXD
com UART_RXD, assim, a placa ir se comunicar com ela mesma, sendo possvel
avaliar se o protocolo de comunicao est funcional.
Tabela 11 - Pinagem do FPGA relacionada porta serial
Nome do sinal

Pino do
FPGA

UART_CTS

C7

UART_RTS

C6

UART_RXD
UART_TXD

C3
C4

Descrio
Clear to send, indica que o dado
pode ser enviado
Request to send, indica que
quer enviar um dado
Pino de recepo de dados da UART
Pino de transmisso de dados da UART

Referncia 8 - Porta RS-232


Referncia
na Placa
J2
U2

Descrio

Fabricante

Part
Number

Connector DB9 Right Angle


DBPN1F-09
3.0V TO 5.5V, Low-Power,
up to 1Mbps, True RS-232
Maxim Integrated MAX3232CUE
Transceiver Using Four 0.1F
External Capacitor

2.3.10 Utilizando a porta USB


Alm do conector para o USB-Blaster, que utilizado apenas para configurao
e/ou alimentao da placa, a placa Mercurio IV possui outra conexo USB, localizada
na parte superior da placa, entre os conectores RS-232 e VGA. Essa conexo USB
est configurada no modo Device, e portanto destinada comunicao entre
o FPGA e perifricos externos com USB no modo Host, como um computador.
A porta USB ligada ao FPGA atravs de um componente que gerencia toda
a parte da comunicao USB, o FTDI FT245RQ, disponibilizando para o FPGA os
dados na forma de uma FIFO.

FTDI

YYXX-A
XXXXXXXXXXXXX

FT245RL

USB

FIFO

MERCURIO IV

Figura 18 - FTDI entre o conector USB e o barramento de entrada do FPGA


na placa Mercurio IV

| www.macnicadhw.com.br

28

MANUAL DE USURIO MERCURIO IV

Verso 2

Com a ajuda do componente FTDI FT245RQ, a utilizao da USB muito facilitada,


pois no necessrio se preocupar com o protocolo da comunicao USB, e sim
com o fluxo de dados da comunicao.
Para a comunicao entre um computador e a placa Mercurio IV, a fabricante
FTDI fornece um driver chamado Virtual Com Port, (VCP), que apresenta ao usurio
a USB como um terminal serial. A FTDI tambm fornece drivers mais genricos,
facilitando no desenvolvimento de softwares de computador mais elaborados
para realizar a comunicao com o FT245RQ. A partir de um computador, basta
utilizar algum desses drivers disponveis para enviar ou receber dados pela USB. As
funes disponveis e suas caractersticas so detalhadas pela fabricante FTDI, nos
documentos relacionados aos seus drivers.
J na comunicao entre FT245RQ e FPGA, no sentido FT245RQ FPGA,
recepo de dados, o sinal RXF sinaliza para o FPGA que existe um dado para ser
lido da FIFO, e ento o FPGA pode acionar o sinal RD para fazer a leitura do byte.

Figura 19 - Sinais para leitura de dado da FIFO do FTDI FT245RQ

E no sentido FPGA FT245RQ, transmisso de dados, o sinal TXE sinaliza para


o FPGA quando possvel escrever um dado na FIFO, ento o FPGA coloca o
byte no barramento de dados e aciona o sinal WR, escrevendo o dado na FIFO do
componente FT245RQ, que ir enviar o dado pela USB.

Figura 20 - Sinais para escrita de dado na FIFO do FTDI FT245RQ

As Figuras 19 e 20 foram baseadas no datasheet do componente FTDI FT245RQ.

| www.macnicadhw.com.br

29

MANUAL DE USURIO MERCURIO IV

Verso 2

Tabela 12 - Pinagem do FPGA relacionada porta USB


Nome do
sinal

Pino do
FPGA

USB_PWREN_N

B8

USB_RD_N
USB_RXF_N
USB_TXE_N
USB_WR
USB_DATA[0]
USB_DATA[1]
USB_DATA[2]
USB_DATA[3]
USB_DATA[4]
USB_DATA[5]
USB_DATA[6]
USB_DATA[7]

A8
A3
B3
B9
B4
A5
B5
A7
A4
A6
B7
B6

Descrio
Indica quando o componente est configurado e a
interface USB pode ser utilizada
Inicia uma leitura da FIFO
Indica que existe dado na FIFO
Indica que a FIFO tem espao para um novo dado
Inicia uma escrita na FIFO
Bit 0 do barramento de dado - LSB
Bit 1 do barramento de dado
Bit 2 do barramento de dado
Bit 3 do barramento de dado
Bit 4 do barramento de dado
Bit 5 do barramento de dado
Bit 6 do barramento de dado
Bit 7 do barramento de dado - MSB

Referncia 9 - Porta USB


Referncia
na Placa
J1
U4

Descrio
USB 2.0, Right Angle, SMT, A
Type, Receptacle, 5 Position,
Black
USB/Parallel FIFO BiDirectional Data Transfer Chip,
QFN32, Pb-Free

Fabricante

Part
Number

MSB5BSWX-H- CN

FTDI Chip

FT245RQREEL

2.3.11 Utilizando o conversor AD


O conversor analgico-digital do kit Mercurio IV possui duas entradas analgicas
diferenciais, ou 4 entradas single ended, dois canais de converso paralelos e duas
sadas digitais seriais. O conversor AD possui resoluo de 12 bits e se comunica
com o FPGA Cyclone IV atravs de um barramento serial SPI, que opera nos modos
0 ou 3. O conversor no possui nenhuma entrada no barramento SPI, apenas as
sadas relativas a cada canal de converso, ento, o controle do conversor feito
atravs de alguns sinais digitais de entrada, como ADC_CNVST e ADC_SD.

Figura 21 - Forma de onda do conversor AD no modo dual

| www.macnicadhw.com.br

30

MANUAL DE USURIO MERCURIO IV

Verso 2

Para uma converso ser iniciada, o sinal ADC_CNVST deve ser colocado em nvel
lgico baixo (sensvel a borda de descida), enquanto o ADC_SCL est em idle. Feito
isso, o estgio de entrada do conversor segura o valor analgico atual e comea a
converso. A converso feita com base no clock ADC_SCL.
Aps o incio da converso, existe uma latncia de 3 pulsos do sinal ADC_SCL para
as sadas comearem a ser atualizadas, assim, o resultado da converso somente
comea a ser enviado na sada do conversor aps a quarta borda de subida do sinal
ADC_SCL, o que significa que a leitura do primeiro bit do resultado da converso
feita apenas na quinta borda de subida do sinal ADC_SCL, aps a borda de descida
de ADC_CNVST.
O conversor AD, por possuir dois canais, pode trabalhar no modo dual, ADC_
SD em nvel lgico baixo, ou ento no modo single, ADC_SD em nvel lgico alto.
No modo dual, os resultados das converses dos dois canais so enviados para as
sadas ADC_DOUT[1] e ADC_DOUT[2] paralelamente. J no modo single, somente
uma sada utilizada, a ADC_DOUT[1], ento, o resultado da converso do canal 2
enviado para a sada somente aps todo o canal 1 ter sido enviado.
Assim, o desempenho do conversor depende do modo utilizado. No modo
dual so necessrios 16 pulsos de ADC_SCL (4 de latncia inicial mais 12 para os
resultados das converses serem enviados), j no modo single so necessrios 28
pulsos de ADC_SCL (4 de latncia inicial mais 24 de dado). Isso significa que no
modo dual, a capacidade do ADC de 1,25 Msps, j no modo single de 0,625
Msps (considerando a mxima frequncia de ADC_SCL). Portanto, recomendada
a operao do conversor AD em modo dual, quando necessrio o uso de 2 canais.
possvel aproveitar as 4 entradas analgicas do conversor. Para isso,
inicialmente duas entradas so convertidas (modo dual), em seguida a seleo do
MUX, ADC_SEL, deve ser mudada para as outras duas entradas, para ento essas
serem convertidas. Assim, ao trmino dessas duas etapas, as 4 entradas analgicas
tero sido convertidas.
Tabela 13 - Pinagem do FPGA relacionada ao conversor DA
Nome do sinal

Pino do FPGA

ADC_CNVST

AB18

ADC_CS_N

AA17

ADC_DOUT[0]

AB19

ADC_DOUT[1]

AA19

ADC_REFSEL

AB17

ADC_SCLK

AA18

ADC_SD

AA16

ADC_UB

AB20

ADC_SEL

AB16

| www.macnicadhw.com.br

Descrio
Sinaliza que uma nova
converso deve ser iniciada
Chip Select
Sada para converso no
modo single ou para o canal
1 em modo dual
Sada para o canal 2 em
modo dual
Define qual ser a tenso de
referncia para ADC
Clock da comunicao serial
Seleo entre os modos
single ou dual
Seleo entre modo unipolar
ou modo bipolar (entradas
diferenciais)
Seleciona se sero utilizadas
as entradas analgicas
primrias ou secundrias
(modo unipolar apenas)
31

MANUAL DE USURIO MERCURIO IV

Verso 2

Referncia 10 - Conversor DA
Referncia
na Placa
J8

U16

Descrio
3-Conductor Jack with 2
break contacts (normals)
and 2 auxiliary make
contacts
Dual, 12-Bit, 1.25Msps,
Simultaneous-Sampling
ADCs with Serial
Interface

Fabricante

Part Number

SJ1-3535NG-BE

Maxim
Integrated

MAX1379

2.3.12 Utilizando o conversor DA


O conversor digital-analgico possui dois canais de converso e duas sadas
analgicas, porm possui apenas uma entrada serial, pela qual os dois buffers de
converso so alimentados e todas as configuraes do converso so realizadas.
A nica entrada digital que no faz parte do barramento SPI um sinal de clear
assncrono, DAC_CLR_N, que limpa os buffers de converso, fazendo as duas sadas
irem para zero (nvel mnimo de tenso).
A comunicao SPI do conversor DA pode ser nos modos 1 ou 2, como
possvel ver na Figura 22. Todo comando enviado para o conversor tem 24 bits de
comprimento, portanto, aps o sinal DAC_CS_N ir para nvel lgico baixo, os 24 bits
devem ser enviados pelo pino DAC_DIN que ser registrado nas bordas de descida
de DAC_SCLK.
A sada analgica resultado da converso do valor armazenado no registrador
CODE. O valor digital armazenado no registrador utilizando o comando CODEn.
O comando CODEn armazena o valor digital no registrador CODE, e ento o
comando LOADn transfere o valor do registrador CODE para o registrador DAC,
iniciando a converso DA. possvel utilizar o comando CODEn_LOADn, que
automaticamente escreve o valor digital no registrador CODE e o transfere para
o registrador DAC para iniciar a converso. possvel configurar o conversor
para que a transferncia do dado no registrador CODE para o registrador DAC
seja transparente, ou seja, basta realizar o comando CODEn que a converso ser
iniciada.

| www.macnicadhw.com.br

32

| www.macnicadhw.com.br

CODEn

LOADn

CODEn_
LOADn

B22

B21

B20

B19

B17

Seleo do DAC

Seleo do DAC

Seleo do DAC

B18

B23

Comando

CONFIG

B22

B21

B20

B19

B18

B17

Tabela 15 - Configurao do DAC

B23

Comando

LD_EN

B16

B16

B15

B15

Tabela 14 - Comandos de escrita do DAC

B14

B14

B13

B13

B11

B12

B11

B10

Registrador CODE[11..4]

B09

B08

B08

DAC B

B09

DAC A

B10

Registrador CODE[11..4]

B12

B07

B05

B06

B05

B04

B04

Registrador CODE[3..0]

B06

Registrador CODE[3..0]

B07

B03

B03

B02

B02

B01

B00

B01

B00

Configura
transparncia

Descrio

Escreve no
registrador
CODE e
transfere
para o
registrador
DAC

Transfere
do
registrador
CODE
para o
registrador
DAC

Escreve no
registrador
CODE

Descrio

MANUAL DE USURIO MERCURIO IV


Verso 2

33

MANUAL DE USURIO MERCURIO IV

Verso 2

As configuraes de funcionamento do conversor so feitas de forma similar


escrita do registrador CODE, mudando-se o cdigo do comando. A Tabela 15
mostra o formato do comando a ser enviado via SPI para configurar a transparncia
citada anteriormente. Nessa configurao, se LD_EN 1, a escrita do registrador
CODE com o comando CODEn automaticamente alimenta o registrador DAC e
inicia a converso.
Dessa forma, tambm possvel selecionar a referncia de tenso para o DAC,
desligar o conversor (as sadas vo para zero), limpar os registradores de converso
(clear por software) e resetar todas as configuraes e registradores do conversor
(reset por software). Ao todo so 12 comandos possveis, todos descritos no
datasheet do conversor.

Figura 22 - Forma de onda do conversor DA

Tabela 16 - Pinagem do FPGA relacionada ao conversor DA


Nome do sinal

Pino do FPGA

DAC_CLR_N

AA15

DAC_CS_N

AB15

DAC_DIN

AB14

DAC_SCLK

AA14

Descrio
Limpa os buffers do
conversor, colocando as
sadas em zero
Chip Select
Entrada de dado da
comunicao serial
Clock da comunicao serial

Referncia 11 - Conversor DA
Referncia
na Placa
J7

U13

Descrio
3-Conductor Jack with 2
break contacts (normals)
and 2 auxiliary make
contacts
Ultra-Small, DualChannel, 12-Bit Buffered
Output DACs with
Internal Reference and
SPI Interface

Fabricante

Part Number

SJ1-3535NG-GR

Maxim
Integrated

MAX5702AAUB+

2.3.13 Utilizando o carto MicroSD


O carto MicroSD pode ser utilizado como uma expanso de memria da placa
Mercurio IV. O MicroSD foi adotado pela sua popularidade e robustez, sendo assim
uma memria de fcil acesso, com garantias de funcionamento.

| www.macnicadhw.com.br

34

MANUAL DE USURIO MERCURIO IV

Verso 2

O FPGA est ligado ao carto MicroSD por sete sinais, quatro sinais de dado,
dois sinais de controle e um sinal de clock. Como o FPGA tem acesso aos quatro
sinais de dado do MicroSD, a interface entre o FPGA e o carto pode ser feita nos
seguintes modos:
SPI comunicao mais simples e genrica, porm velocidade de transmisso
baixa. Para essa configurao, os pinos do FPGA devem obedecer a seguinte relao:
SD_DATA(3) SPI_CS;
SD_DATA(0) SPI_MISO;
SD_CMD SPI_MOSI;
SD_CLK SPI_SCK
SD mode, de 1 at 4 bits protocolo um pouco mais complexo, porm alcanando
velocidades maiores que no modo SPI, principalmente na comunicao com 4 bits.
importante lembrar que, caso seja necessrio que o carto MicroSD tambm
possa ser acessado por um computador, deve ser utilizado um sistema de arquivos
compatvel com o sistema operacional do computador, e que por isso, recomendado
utilizar um microprocessador, como o NIOS, para fazer o gerenciamento do sistema
de arquivos e acessar corretamente o carto MicroSD. Existe uma biblioteca,
compatvel com ANSI C, que implementa funes relacionadas ao sistema de
arquivos FAT, ela pode ser utilizada em sistemas embarcados para o acesso
cartes SD. O nome dessa biblioteca FatFS Generic FAT File System Module.
Caso o carto de memria seja apenas utilizado na placa Mercurio IV, o sistema
de arquivos no necessrio, pois o usurio pode desejar apenas escrever bytes
sequencialmente na memria, para uso apenas na placa Mercurio IV.
Tabela 17 - Pinagem do FPGA relacionada ao carto MicroSD
Nome do sinal

Pino do FPGA

SD_CLK

Y7

SD_CD_N

U7

SC_CMD

W7

SD_D[0]

W6

SD_D[1]

Y6

SD_D[2]

W8

SD_D[3]

Y8

| www.macnicadhw.com.br

Descrio modo
SD
Clock da interface com
o carto MicroSD
Pino de identificao
se o carto est
inserido
Sinal de comando,
indica que uma
operao ser iniciada
Bit 0 do barramento
de operao/dado LSB
Bit 1 do barramento de
operao/dado
Bit 2 do barramento
de operao/dado
Bit 3 do barramento
de operao/dado MSB

Descrio
SPI
Clock serial
NC

MOSI

MISO
NC
NC
CS

35

MANUAL DE USURIO MERCURIO IV

Verso 2

Referncia 12- Conector microSD


Referncia
na Placa

Descrio

Fabricante

Part
Number

J5

Micro-SDcard
PushPull connector

DM3D-SF

2.3.14 Utilizando a memria Flash


A memria Flash EPCS do kit tem 64 Mbit (8M x 8) de capacidade, e possui
interface de comunicao SPI, suportando at 25 MHz para escrita e 40 MHz para
leitura. Essa memria tem capacidade para escritas e leituras sequenciais, possvel
apagar a memria toda ou apenas blocos da memria (o bit, quando apagado, fica
com valor 1) e existem mecanismos de proteo de setores da memria. O Byte de
status guarda as informaes sobre a proteo dos setores da memria, alm de
possuir um bit que indica quando a memria est sendo escrita, ou apagada.
Essa memria organizada em:
8388608 bytes, 8 bits cada;
128 setores, 65536 Bytes cada;
32768 pginas, 256 Bytes cada.
Cada pgina pode ser escrita de uma vez, utilizando-se a escrita sequencial,
porm para escrever mais de uma pgina necessrio realizar uma nova escrita,
indicando o endereo da nova pgina. A proteo da memria feita por grupos
de setores, definidos no registrador de status. Por fim, cada setor pode ser apagado
de cada vez, independentemente, mas tambm possvel apagar a memria toda
de uma s vez.
A comunicao com a memria serial SPI, modos 0 ou 3, e os comandos
possveis so listados na Tabela 18. O datashet da memria detalha o funcionamento
e a utilizao de cada um desses comandos.
Tabela 18 - Comandos SPI da memria Flash

0000 0110

Bytes de
endereo
0

Bytes
dummy
0

Bytes de
dado
0

DAC_SLCK
fmax
25

Write disable

0000 0100

25

Read status

0000 0101

1 - infinito

25

Read Bytes

0000 0011

1 - infinito

20

Read ID

1010 1011

1 - infinito

25

Fast read

0000 1011

1 - infinito

40

Write status

0000 0001

25

Write Bytes

0000 0010

1 - 256

25

Erase bulk

1100 0111

25

Erase sector

1101 1000

25

Comando

Cdigo

Write enable

| www.macnicadhw.com.br

36

MANUAL DE USURIO MERCURIO IV

Verso 2

Figura 23 - Forma de onda da leitura do registrador de status da flash

Alm de ser utilizada como memria de armazenamento da configurao do


FPGA, essa memria Flash tambm pode ser utilizada como memria no voltil de
usurio. Dessa forma, dados relevantes para a aplicao podem ser armazenados na
Flash para no serem perdidos quando a placa for desligada.
importante ressaltar que essa memria tambm utilizada como memria EPCS
(memria de configurao do FPGA) do kit Mercurio IV, portanto, os primeiros
endereos da memria sempre sero utilizados para dados de configurao do FPGA.
Assim, muito importante que esses dados no sejam sobrescritos ou apagados
da memria, para garantir o bom funcionamento do FPGA. Para evitar qualquer
problema, pode-se proteger a rea da memria com dados de configurao do
FPGA contra escritas indesejadas.
Cabe ao usurio realizar o gerenciamento dessa memria, a fim de no
comprometer os dados de configurao.
Tabela 19 - Pinagem do FPGA relacionada memria Flash
Nome do sinal

Pino do FPGA

FLASH_DCLK

K2

FLASH_DATA0

K1

FLASH_ASDO

D1

FLASH_CS0_N

E2

Descrio
Clock da interface SPI com
a memria Flash
Sinal de dados de sada da
Flash (entrada do FPGA)
Sinal de dados de entrada
da Flash (sada do FPGA)
Chip Select da memria
Flash

Referncia 13 - Memria Flash


Referncia
na Placa

Descrio

Fabricante

Part Number

U6

64 Mbit, low voltage,


Serial Flash memory

Altera

EPCS64SI16N

2.3.15 Utilizando a memria SDRAM


A memria SDRAM a memria de alta velocidade do kit Mercurio IV. Ela pode
ser utlizada para o processamento de dados, quando existe um stream de dados,
como, por exemplo, um vdeo. Alm dessa caracterstica, ela uma memria de
alta capacidade, podendo armazenar muitos Bytes de dados. importante salientar
que a SDRAM uma memria voltil, ento, diferente da memria Flash, ela perde
os dados quando a alimentao de energia desligada, e alm disso, durante a

| www.macnicadhw.com.br

37

MANUAL DE USURIO MERCURIO IV

Verso 2

utilizao, necessrio fazer o refresh da memria num perodo de tempo.


A memria SDRAM disponvel na placa Mercurio IV possui 512 Mbits. So quatro
bancos de memria, cada um possui 8 M x 16 bits. Cada banco estruturado em
8192 linhas e 1024 colunas de 16 bits.
O acesso aos bancos de memria feito atravs dos seletores de banco de
memria, SDRAM_BA[0] e SDRAM_BA[1], o endereo de memria (linha ou coluna
dentro do banco selecionado) colocado nos pinos SDRAM_A[12..0] e o dado de
16 bits inserido nos pinos SDRAM_D[15..0].
Ainda existem os sinais de controle SDRAM_CKE que habilita ou desabilita o
clock na memria, SDRAM_CS_N que habilita ou desabilita o funcionamento de
todas as entradas da memria, exceto SDRAM_CKE, e os bits SDRAM_DQMH e
SDRAM_DQML habilitam ou desabilitam cada um dos bytes de dado, ou seja, se o
MSB desativado numa escrita, somente o LSB escrito, e vice versa.
Enfim, para realizar operaes na memria so utilizados os bits de comando
SDRAM_RAS_N (operao em uma linha), SDRAM_CAS_N (operao em uma
coluna) e SDRAM_WE_N (operao de escrita ou leitura). A combinao deles gera
diferentes comandos, os quais devem ser utilizados em determinada ordem para
realizar a operao desejada. Algumas operaes que podem ser feitas sobre a
memria SDRAM so listadas na Tabela 20.
Para iniciar uma operao a funo Ativar deve ser executada, essa funo abre a
linha escolhida do banco escolhido. Uma linha aberta est disponvel para leitura ou
escrita. Aps o comando Ativar, podem ser enviados os comandos Ler ou Escrever,
nos quais a coluna inicial deve ser informada, assim, iniciado um burst de leitura ou
escrita na memria. Quando for desejado interromper um burst de leitura ou escrita,
basta enviar o comando Terminar Burst, que ir terminar a operao de leitura ou
escrita e ir fechar a linha. O tamanho do burst definido nos registradores de
configurao da memria, com o comando Configurar Memria
Tabela 20 - Algumas operaes sobre a memria SDRAM
Nome
(Funo)
Entradas
desativadas
Sem
operao

nCS

nRAS

nCAS

nWE

DQM

ADDR

DQ

Ativar

Ler

L/H

Escrever

L/H

Ativo

Opcode

Terminar
Burst
Configurar
Memria

Banco/
linha
Banco/
coluna
Banco/
coluna

X
X
Dado

A Figura 24 mostra a forma de onda do comando Ativar. As demais funes


so detalhadas no datasheet da memria, portanto altamente recomendada a
leitura desse datasheet quando necessrio trabalhar com a memria. Alm disso,
importante atentar para os requisitos de temporizao da memria, por exemplo, a
latncia na leitura de dados.

| www.macnicadhw.com.br

38

MANUAL DE USURIO MERCURIO IV

Verso 2

Figura 24 - Forma de onda do comando Ativar

Como so 8192 linhas em cada banco, quando for feito um comando Ativar (que
ativa uma linha), os 13 bits de endereamento devem ser escritos, j quando for
um comando Ler (ou Escrever, comandos que atuam sobre uma parte da linha
ativa, a partir de determinada coluna), apenas 10 bits de endereamento precisam
ser utilizados. No caso de se realizar um comando sobre uma coluna, o bit 10 do
endereo, SDRAM_A[10], indica se o fechamento da linha ativa deve ser feito aps
a operao ou no.
Tabela 21 - Pinagem do FPGA relacionada memria SDRAM
Nome do sinal

Pino do
FPGA

SDRAM_A[0]
SDRAM_A[1]
SDRAM_A[2]
SDRAM_A[3]
SDRAM_A[4]
SDRAM_A[5]
SDRAM_A[6]
SDRAM_A[7]
SDRAM_A[8]
SDRAM_A[9]
SDRAM_A[10]
SDRAM_A[11]
SDRAM_A[12]

P2
R1
P3
R2
P4
P5
N5
M4
N1
M2
P1
M3
L6

SDRAM_BA[0]

J4

SDRAM_BA[1]

H2

| www.macnicadhw.com.br

Descrio
Bit 0 de endereo - LSB
Bit 1 de endereo
Bit 2 de endereo
Bit 3 de endereo
Bit 4 de endereo
Bit 5 de endereo
Bit 6 de endereo
Bit 7 de endereo
Bit 8 de endereo
Bit 9 de endereo
Bit 10 de endereo
Bit 11 de endereo
Bit 12 de endereo - MSB
Bit 0 do endereo de seleo de
Banco - LSB
Bit 1 do endereo de seleo de
Banco - MSB

39

MANUAL DE USURIO MERCURIO IV

Verso 2

Nome do sinal

Pino do
FPGA

Descrio

SDRAM_D[0]
SDRAM_D[1]
SDRAM_D[2]
SDRAM_D[3]

B2
B1
C2
C1

Bit 0 de dado - LSB


Bit 1 de dado
Bit 2 de dado
Bit 3 de dado

SDRAM_D[4]

D2

Bit 4 de dado

SDRAM_D[5]
SDRAM_D[6]
SDRAM_D[7]
SDRAM_D[8]
SDRAM_D[9]
SDRAM_D[10]
SDRAM_D[11]
SDRAM_D[12]
SDRAM_D[13]
SDRAM_D[14]
SDRAM_D[15]

E3
F2
F1
J2
H6
H5
J3
G3
G4
G5
E4

SDRAM_DQM[0]

E1

SDRAM_DQM[1]

J5

SDRAM_CLK
SDRAM_CKE

E5
M5

SDRAM_CAS_N

M1

SDRAM_CS_N

H1

SDRAM_RAS_N

N2

SDRAM_WE_N

J1

Bit 5 de dado
Bit 6 de dado
Bit 7 de dado
Bit 8 de dado
Bit 9 de dado
Bit 10 de dado
Bit 11 de dado
Bit 12 de dado
Bit 13 de dado
Bit 14 de dado
Bit 15 de dado - MSB
Byte Enable do dado (habilita/
desabilita os bits 0 at 7)
Byte Enable do dado (habilita/
desabilita os bits 8 at 15)
Entrada de clock da memria
Sinal de Clock Enable da memria
Column Addr Strobe (utilizado para
formar um comando)
Sinal de Chip Select da memria
Row Addr Strobe(utilizado para
formar um comando)
Write Enable (utilizado para formar
um comando)

Referncia 14 - Memria SDRAM


Referncia
na Placa

Descrio

Fabricante

Part Number

U9

IC SDRAM 512MBIT
143MHz, 54TSOP

ISSI

IS42S16320B

2.3.16 Utilizando a interface Ethernet


A placa Mercurio IV tambm suporta comunicao via Ethernet. Na placa foi
instalado um componente PHY Ethernet, que realiza as funes necessrias camada
fsica da comunicao Ethernet. esse componente que recebe a informao do
MAC contido no FPGA e envia pela rede e, tambm, recebe informao da rede
e disponibiliza para o MAC do FPGA. O PHY da placa Mercurio IV funciona nos
formatos Ethernet 10BASE-T e 100BASE-TX, podendo trabalhar com transmisses
de at 100 Mbit/s.
O MAC o responsvel por interpretar as mensagens recebidas e montar as
mensagens para envio pela Ethernet, assim, as camadas superiores ao MAC precisam

| www.macnicadhw.com.br

40

MANUAL DE USURIO MERCURIO IV

Verso 2

apenas se preocupar com o fluxo de dados, transmitidos e recebidos. Recomendase a utilizao do IP da Altera chamado Triple-Speed Ethernet para realizar essa
funo, assim o desenvolvedor apenas se preocupa com as camadas superiores.
Caso a comunicao seja baseada no protocolo TCP/IP, o FPGA deve suportar
tambm esse protocolo. Para isso recomenda-se a utilizao do microprocessador
softcore NIOS II, em conjunto com as funes que implementam a pilha TCP. Com
uma implementao assim, possvel fazer a placa Mercurio IV funcionar como um
servidor web, por exemplo, exibindo uma pgina em HTML para o usurio.
J caso a comunicao seja baseada num protocolo customizado (entre dois
kits Mercurio IV, por exemplo), a interface Ethernet tambm pode ser utilizada de
forma mais simples que a feita com o protocolo TCP/IP, mas o MAC ainda dever
ser utilizado.
Tabela 22 - Pinagem do FPGA relacionada interface Ethernet
Nome do sinal

Pino do
FPGA

ETH_RXD[0]
ETH_RXD[1]
ETH_RXD[2]
ETH_RXD[3]
ETH_TXD[0]
ETH_TXD[1]
ETH_TXD[2]
ETH_TXD[3]
ETH_RXDV
ETH_RXER
ETH_TXCLK
ETH_RXCLK
ETH_RST_N

A20
B19
A19
B18
D21
D22
E21
E22
B20
B21
C21
C20
G11

ETH_MDIO

B17

ETH_MDC

A18

ETH_CRS

F21

ETH_COL

F22

ETH_TXEN

C22

ETH_TXER

B22

Descrio
Bit 0 do dado de recepo - LSB
Bit 1 do dado de recepo
Bit 2 do dado de recepo
Bit 3 do dado de recepo - MSB
Bit 0 do dado de transmisso - LSB
Bit 1 do dado de transmisso
Bit 2 do dado de transmisso
Bit 3 do dado de transmisso - MSB
Dado vlido de recepo
Erro de recepo
Clock de transmisso
Clock de recepo
Reset
Sinal bidirecional de dados de
gerenciamento serial do PHY
Sinal de clock de gerenciamento
serial do PHY
Deteco de portadora (se o meio
est sendo utilizado)
Deteco de coliso
Habilita a transmisso do dado em
ETH_TX
Erro de transmisso

Referncia 15 - PHY Ethernet


Referncia
na Placa
U3
U7

Descrio
Connector RJ45 with
internal magnetics
MicroPHYTM
10/100BASE-TX
Transeiver

| www.macnicadhw.com.br

Fabricante

Part Number

SI-60062-F

Teridian

78Q2123

41

MANUAL DE USURIO MERCURIO IV

Verso 2

2.3.17 Utilizando as interfaces PMOD


As interfaces PMOD so utilizadas para conectar Peripheral Modules a uma
placa host, nesse caso, a Mercurio IV. Peripheral Modules so sistemas externos,
com diferentes objetivos, e fabricados por diversos fabricantes, por exemplo,
a Maxim possui uma linha desses dispositivos, que pode ser vista no site http://
www.maximintegrated.com/products/evkits/fpga-modules/. Existem sensores de
temperatura, proximidade, conversores DAC e ADC, entre outros, e atravs da
interface PMOD que esses sistemas se comunicam com o FPGA da placa Mercurio
IV. Os mdulos PMOD trabalham em baixa frequncia e possuem poucos pinos de
IO. Existem verses dessa interface de 6 e de 12 pinos, sendo que a de 12 pinos est
arranjada de forma a equivaler a duas de 6 pinos juntas. Cada interface de 6 pinos
possui 4 pinos de dados, 1 pino de alimentao e 1 pino de terra (a interface de 12
pinos possui 8 pinos de dados, 2 de alimentao e 2 de terra).
A placa Mercurio IV possui duas interfaces PMOD de 12 pinos, portanto, at
quatro mdulos podem ser conectados placa, contanto que os quatro sejam de 6
pinos cada.
A tenso de operao de barramentos PMOD no expecificada, porm na
placa Mercurio IV possvel trabalhar com 3.3V ou 5V. Para fazer a seleo da
tenso de operao necessrio posicionar os jumpers, situados ao lado de cada
conector, corretamente de acordo com a tenso de operao.

Figura 25 - Jumpers de seleo de tenso

Ateno para no deixar o jumper em 5V e conectar um dispositivo POMOD de


3.3V, pois isso pode danificar o dispositivo. Recomenda-se, sempre que a placa no
for mais utilizada, deixar os jumpers na posio 3V3, evitando danificar componentes
por excesso de tenso.
A Figura 26 mostra o esquema do conector PMOD disponvel na placa Mercurio
IV e a funo de cada pino do conector, lembrando as linhas so iguais. Cada linha
pode ser utilizada para um mdulo de 6 pinos e as duas linhas em conjunto podem
ser utilizadas para um mdulo de 12 pinos.

| www.macnicadhw.com.br

42

MANUAL DE USURIO MERCURIO IV

Verso 2

Figura 26 - Interfaces PMOD e funes dos pino

Tabela 23 - Pinagem do FPGA relacionada s interfaces PMOD


Nome do sinal

Pino do
FPGA

Pino no
PMOD

Descrio

Interface A
PROTO_A[0]

AB5

PROTO_A[1]

AB4

PROTO_A[2]

AB3

PROTO_A[3]

AA1

GND

VCC

PROTO_A[4]

AA7

PROTO_A[5]

AA5

PROTO_A[6]

AA4

PROTO_A[7]

AA3

10

GND

11

VCC

12

| www.macnicadhw.com.br

Pino 0 da interface A
compatvel com PMOD
Pino 1 da interface A compatvel
com PMOD
Pino 2 da interface A
compatvel com PMOD
Pino 3 da interface A
compatvel com PMOD
GND
VCC de 3.3V ou 5V,
dependendo da posio do
jumper
Pino 4 da interface A
compatvel com PMOD
Pino 5 da interface A
compatvel com PMOD
Pino 6 da interface A
compatvel com PMOD
Pino 7 da interface A
compatvel com PMOD
GND
VCC de 3.3V ou 5V,
dependendo da posio do
jumper

43

MANUAL DE USURIO MERCURIO IV

Pino do
FPGA

Nome do sinal

Verso 2

Pino no
PMOD

Descrio

Interface B
PROTO_B[0]

AB10

PROTO_B[1]

AB9

PROTO_B[2]

AB8

PROTO_B[3]

AB7

GND

VCC

PROTO_B[4]

Y10

PROTO_B[5]

AA10

PROTO_B[6]

AA9

PROTO_B[7]

AA8

10

GND

11

VCC

12

Pino 0 da interface B
compatvel com PMOD
Pino 1 da interface B compatvel
com PMOD
Pino 2 da interface B
compatvel com PMOD
Pino 3 da interface B
compatvel com PMOD
GND
VCC de 3.3V ou 5V,
dependendo da posio do
jumper
Pino 4 da interface B
compatvel com PMOD
Pino 5 da interface B
compatvel com PMOD
Pino 6 da interface B
compatvel com PMOD
Pino 7 da interface B
compatvel com PMOD
GND
VCC de 3.3V ou 5V,
dependendo da posio do
jumper

Referncia 16 - Interface PMOD


Referncia
na Placa

Descrio

Fabricante

Part Number

J14 e J15

Header, 6-Pin, Dual row

JMP1 e JMP2

Header, 3-Pin

MND-06
BPSC-MM-3 com
JC-02

2.3.18 Utilizando as interfaces GPIO


Caso seja necessrio conectar uma placa de expanso placa Mercurio IV, foram
disponibilizados dois barramentos de pinos de propsito geral. Cada barramento
possui 32 pinos de IO, 2 pinos de entrada de clock e 2 de sada de clock.
As placas de expanso, assim como os mdulos PMOD , possuem
diferentes objetivos e funcionamentos. Diversos fabricantes tambm fornecem
placas de expanso compatveis com o barramento GPIO disponvel na placa
Mercurio IV.
Os 32 pinos de dado podem ser configurados independentemente como entrada,
sada ou bidirecional.

| www.macnicadhw.com.br

44

MANUAL DE USURIO MERCURIO IV

Verso 2

Figura 27 - Conectores GPIO 0 e GPIO 1 e a descrio de seus pinos

Tabela 24 - Pinagem do FPGA relacionada s interfaces GPIO


Nome do sinal

Pino do
FPGA

Pino no
GPIO

Descrio

Interface 0
GPIO0_CLKIN[0]

G21

GPIO0_D[0]

E16

GPIO0_CLKIN[1]

G22

GPIO0_D[1]

H22

GPIO0_D[2]

F16

| www.macnicadhw.com.br

Entrada de clock 0 do GPIO0


Pino 0 de dado, entrada ou sada,
do GPIO0
Entrada de clock 1 do GPIO0
Pino 1 de dado, entrada ou sada,
do GPIO0
Pino 2 de dado, entrada ou sada,
do GPIO0

45

MANUAL DE USURIO MERCURIO IV

Verso 2

GPIO0_D[3]

F19

GPIO0_D[4]

H21

GPIO0_D[5]

J22

GPIO0_D[6]

F20

GPIO0_D[7]

H19

10

VCC
GND

11
12

GPIO0_D[8]

J21

13

GPIO0_D[9]

K21

14

GPIO0_D[10]

H20

15

GPIO0_D[11]

H18

16

GPIO0_D[12]

L22

17

GPIO0_D[13]

L21

18

GPIO0_CLKOUT[0]

K18

19

GPIO0_D[14]

J18

20

GPIO0_CLKOUT[1]

M22

21

GPIO0_D[15]

M21

22

GPIO0_D[16]

K19

23

GPIO0_D[17]

M19

24

GPIO0_D[18]

N22

25

GPIO0_D[19]

N21

26

GPIO0_D[20]

M20

27

GPIO0_D[21]

K17

28

VCC
GND

29
30

GPIO0_D[22]

N20

31

GPIO0_D[23]

N19

32

GPIO0_D[24]

P22

33

GPIO0_D[25]

P21

34

| www.macnicadhw.com.br

Pino 3 de dado, entrada ou sada,


do GPIO0
Pino 4 de dado, entrada ou sada,
do GPIO0
Pino 5 de dado, entrada ou sada,
do GPIO0
Pino 6 de dado, entrada ou sada,
do GPIO0
Pino 7 de dado, entrada ou sada,
do GPIO0
+5V
GND
Pino 8 de dado, entrada ou sada,
do GPIO0
Pino 9 de dado, entrada ou sada,
do GPIO0
Pino 10 de dado, entrada ou sada,
do GPIO0
Pino 11 de dado, entrada ou sada,
do GPIO0
Pino 12 de dado, entrada ou sada,
do GPIO0
Pino 13 de dado, entrada ou sada,
do GPIO0
Sada de clock 0 do GPIO0
Pino 14 de dado, entrada ou sada,
do GPIO0
Sada de clock 1 do GPIO0
Pino 15 de dado, entrada ou sada,
do GPIO0
Pino 16 de dado, entrada ou sada,
do GPIO0
Pino 17 de dado, entrada ou sada,
do GPIO0
Pino 18 de dado, entrada ou sada,
do GPIO0
Pino 19 de dado, entrada ou sada,
do GPIO0
Pino 20 de dado, entrada ou
sada, do GPIO0
Pino 21 de dado, entrada ou sada,
do GPIO0
+3,3V
GND
Pino 22 de dado, entrada ou
sada, do GPIO0
Pino 23 de dado, entrada ou
sada, do GPIO0
Pino 24 de dado, entrada ou
sada, do GPIO0
Pino 25 de dado, entrada ou
sada, do GPIO0

46

MANUAL DE USURIO MERCURIO IV

Verso 2

GPIO0_D[26]

N18

35

GPIO0_D[27]

R19

36

GPIO0_D[28]

R22

37

GPIO0_D[29]

R21

38

GPIO0_D[30]

R18

39

GPIO0_D[31]

T18

40

Pino 26 de dado, entrada ou


sada, do GPIO0
Pino 27 de dado, entrada ou
sada, do GPIO0
Pino 28 de dado, entrada ou
sada, do GPIO0
Pino 29 de dado, entrada ou
sada, do GPIO0
Pino 30 de dado, entrada ou
sada, do GPIO0
Pino 31 de dado, entrada ou sada,
do GPIO0

Interface 1
GPIO1_CLKIN[0]

A11

GPIO1_D[0]

E11

GPIO1_CLKIN[1]

B11

GPIO1_D[1]

F11

GPIO1_D[2]

E12

GPIO1_D[3]

D13

GPIO1_D[4]

E13

GPIO1_D[5]

F13

GPIO1_D[6]

G13

GPIO1_D[7]

F14

10

VCC
GND

11
12

GPIO1_D[8]

E14

13

GPIO1_D[9]

C15

14

GPIO1_D[10]

D15

15

GPIO1_D[11]

E15

16

GPIO1_D[12]

C17

17

GPIO1_D[13]

D17

18

GPIO1_CLKOUT[0]

F15

19

GPIO1_D[14]

C19

20

GPIO1_CLKOUT[1]

D19

21

GPIO1_D[15]

D20

22

| www.macnicadhw.com.br

Entrada de clock 0 do GPIO1


Pino 0 de dado, entrada ou sada,
do GPIO1
Entrada de clock 1 do GPIO1
Pino 1 de dado, entrada ou sada,
do GPIO1
Pino 2 de dado, entrada ou sada,
do GPIO1
Pino 3 de dado, entrada ou sada,
do GPIO1
Pino 4 de dado, entrada ou sada,
do GPIO1
Pino 5 de dado, entrada ou sada,
do GPIO1
Pino 6 de dado, entrada ou sada,
do GPIO1
Pino 7 de dado, entrada ou sada,
do GPIO1
+5V
GND
Pino 8 de dado, entrada ou sada,
do GPIO1
Pino 9 de dado, entrada ou sada,
do GPIO1
Pino 10 de dado, entrada ou sada,
do GPIO1
Pino 11 de dado, entrada ou sada,
do GPIO1
Pino 12 de dado, entrada ou sada,
do GPIO1
Pino 13 de dado, entrada ou sada,
do GPIO1
Sada de clock 0 do GPIO1
Pino 14 de dado, entrada ou sada,
do GPIO1
Sada de clock 1 do GPIO1
Pino 15 de dado, entrada ou sada,
do GPIO1

47

MANUAL DE USURIO MERCURIO IV

Verso 2

GPIO1_D[16]

G15

23

GPIO1_D[17]

F17

24

GPIO1_D[18]

G18

25

GPIO1_D[19]

G17

26

GPIO1_D[20]

H17

27

GPIO1_D[21]

H16

28

VCC
GND

29
30

GPIO1_D[22]

G16

31

GPIO1_D[23]

J17

32

GPIO1_D[24]

M16

33

GPIO1_D[25]

P17

34

GPIO1_D[26]

P20

35

GPIO1_D[27]

R17

36

GPIO1_D[28]

R20

37

GPIO1_D[29]

R16

38

GPIO1_D[30]

T17

39

GPIO1_D[31]

T16

40

Pino 16 de dado, entrada ou sada,


do GPIO1
Pino 17 de dado, entrada ou sada,
do GPIO1
Pino 18 de dado, entrada ou sada,
do GPIO1
Pino 19 de dado, entrada ou sada,
do GPIO1
Pino 20 de dado, entrada ou
sada, do GPIO1
Pino 21 de dado, entrada ou sada,
do GPIO1
+3,3V
GND
Pino 22 de dado, entrada ou
sada, do GPIO1
Pino 23 de dado, entrada ou
sada, do GPIO1
Pino 24 de dado, entrada ou
sada, do GPIO1
Pino 25 de dado, entrada ou
sada, do GPIO1
Pino 26 de dado, entrada ou
sada, do GPIO1
Pino 27 de dado, entrada ou
sada, do GPIO1
Pino 28 de dado, entrada ou
sada, do GPIO1
Pino 29 de dado, entrada ou
sada, do GPIO1
Pino 30 de dado, entrada ou
sada, do GPIO1
Pino 31 de dado, entrada ou sada,
do GPIO1

Referncia 17 - Interface GPIO


Referncia
na Placa

Descrio

Fabricante

Part
Number

J12 e J13

Header, 20-Pin, Dual row

IDCSC-40

2.3.19 Utilizando a placa expansora com 16 chaves


Alm das 4 chaves do tipo slide-switch presentes na placa Mercurio IV, fornecida
no kit a placa expansora com mais 16 chaves, dispostas em dois grupos de 8. O
grupo da esquerda (posicionado bem em cima do conector GPIO) compreede as
chaves do grupo A (SA[0..7]), e as da direita so as chaves do grupo B (SB[0..7]).
As chaves da placa expansora tambm esto ligadas um filtro RC, porm, assim
como na placa Mercurio IV, pode ser interessante utilizar processos de debounce
para evitar glitches na entrada do FPGA.
A placa expansora pode ser conectada em uma das interfaces GPIO presentes na

| www.macnicadhw.com.br

48

MANUAL DE USURIO MERCURIO IV

Verso 2

placa Mercurio IV, portanto importante observar os pinos utilizados pelas chaves
da placa expansora para configurar a interface GPIO corretamente. recomendado
que a placa expansora seja conectada interface GPIO0, por isso, a tabela de
pinagem est relacionada com essa interface.
Tabela 25 - Pinagem da placa expansora
Nome do sinal

Pino dA GPIO0

Pino do FPGA

Descrio

SA[0]
SA[1]
SA[2]
SA[3]
SA[4]
SA[5]
SA[6]
SA[7]
SB[0]
SB[1]
SB[2]
SB[3]
SB[4]
SB[5]
SB[6]
SB[7]

GPIO0_D[0]
GPIO0_D[1]
GPIO0_D[2]
GPIO0_D[3]
GPIO0_D[4]
GPIO0_D[5]
GPIO0_D[6]
GPIO0_D[7]
GPIO0_D[8]
GPIO0_D[9]
GPIO0_D[10]
GPIO0_D[11]
GPIO0_D[12]
GPIO0_D[13]
GPIO0_D[14]
GPIO0_D[15]

E16
H22
F16
F19
H21
J22
F20
H19
J21
K21
H20
H18
L22
L21
J18
M21

Chave 0 do grupo A
Chave 1 do grupo A
Chave 2 do grupo A
Chave 3 do grupo A
Chave 4 do grupo A
Chave 5 do grupo A
Chave 6 do grupo A
Chave 7 do grupo A
Chave 0 do grupo B
Chave 1 do grupo B
Chave 2 do grupo B
Chave 3 do grupo B
Chave 4 do grupo B
Chave 5 do grupo B
Chave 6 do grupo B
Chave 7 do grupo B

Referncia 18 - chaves
Referncia
na Placa

Descrio

Fabricante

Part
Number

SA0 SA8
SB0 - SB8

Switch Slide SPDT Top Slide 0.3A


30VDC Gull Wing SMD T/R

JS102011SCQN

| www.macnicadhw.com.br

49

MANUAL DE USURIO MERCURIO IV

Verso 2

Captulo 3
3.1 - Histrico de revises
Verso

Descrio

AUTOR

V1

Manual do kit Mercurio IV 1.1b

Lucas Rotava
lucas.rotava@macnicadhw.com.br

V2

Manual do kit Mercurio IV 2.0


(Troca dos componentes:
Lucas Rotava
conversores AD e DA, memria
lucas.rotava@macnicadhw.com.br
Flash, memria SDRAM e PHY
Ethernet)

3.2 - Copyright
Copyright 2013 Macnica DHW Ltda. Todos os direitos reservados.

| www.macnicadhw.com.br

50

Rua Patrcio Farias, 131,


Ed. Multicenter, Loja 01, CEP: 88034-132
Itacorubi, Florianpolis, SC, Brasil
Telefone: +55 (48) 3225.5052
Email: suporte@macnicadhw.com.br

Vous aimerez peut-être aussi