Pinagem dos dispositivos de entrada e saída do kit MERCURIO IV

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar

Para encontrar as informações completas sobre o kit Mercurio IV consulte diretamente o Manual do Usuário, [1] e o Diagrama Esquemático, [2] do fabricante. Para facilitar o acesso as informações mais utilizadas nos projetos didáticos, são listadas a seguir alguns dos pinos e sua ligação externa no kit.

KitMERCURIO.png

O FPGA que equipa a placa Mercurio IV é uma Cyclone IV EP4CE30F23, a qual possui 30 mil elementos lógicos.

Clock

O clock de entrada do FPGA é de 50 MHz. O sinal de CLOCK_50MHZ está disponível nos pinos T1, T2, T21 e T22 do FPGA. Um clock externo diferente pode ser conectado ao FPGA através do conector SMA (SMA_CLKIN), e da mesma forma um clock internamente gerado por ser conectado o conector SMA (SMA_CLKOUT).

MercurioIV Clock50MHz.png
Signal Name FPGA Pin No. Description I/O Standard
CLOCK_50MHz PIN_T1 50 MHz clock input 3.3V
CLOCK1_50MHz PIN_T2 50 MHz clock input 3.3V
CLOCK2_50MHz PIN_T21 50 MHz clock input 3.3V
CLOCK3_50MHz PIN_T22 50 MHz clock input 3.3V
SMA_CLKIN PIN_A12 SMA clock input 3.3V
SMA_CLKIN1 PIN_B12 SMA clock input 3.3V
SMA_CLKOUT PIN_E6 SMA clock outpur 3.3V

Chaves

A placa Mercurio® IV possui quatro chaves do tipo Slide Switch que são conectadas diretamente ao FPGA. Se a chave estiver posicionada na parte de baixo, o nível lógico na porta do FPGA será ‘0’, se a chave estiver posicionada para cima o nível lógico produzido será ‘1’. Elas estão ligadas a filtros RC, porém, mesmo assim, pode ser interessante implementar um processo de debounce do sinal, a fim de evitar glitches na troca de posição das chaves.

SwitchesMercurioIV.jpg
Signal Name FPGA Pin No. Description I/O Standard
SW[0] PIN_V21 Chave tipo Slide Switch 0 3.3V
SW[1] PIN_W22 Chave tipo Slide Switch 1 3.3V
SW[2] PIN_W21 Chave tipo Slide Switch 2 3.3V
SW[3] PIN_Y22 Chave tipo Slide Switch 3 3.3V









Teclado numérico

Na placa Mercurio IV existe uma organização de 12 botões do tipo push button que estão arranjados de forma a simular um teclado telefônico. Os botões não pressionados geram sinal de nível Lógico baixo na entrada do FPGA, e quando apertados geram um pulso de nível lógico alto.

KeysMercurioIV.jpg
Signal Name FPGA Pin No. Description I/O Standard
KEY[0] PIN_V22 Botão tipo Push Button 0 3.3V
KEY[1] PIN_U20 Botão tipo Push Button 1 3.3V
KEY[2] PIN_U22 Botão tipo Push Button 2 3.3V
KEY[3] PIN_U16 Botão tipo Push Button 3 3.3V
KEY[4] PIN_W20 Botão tipo Push Button 4 3.3V
KEY[5] PIN_U21 Botão tipo Push Button 5 3.3V
KEY[6] PIN_V15 Botão tipo Push Button 6 3.3V
KEY[7] PIN_W17 Botão tipo Push Button 7 3.3V
KEY[8] PIN_W19 Botão tipo Push Button 8 3.3V
KEY[9] PIN_W15 Botão tipo Push Button 9 3.3V
KEY[10] PIN_U17 Botão tipo Push Button 10 3.3V
KEY[11] PIN_Y17 Botão tipo Push Button 11 3.3V





Placa de Expansão com 16 chaves

A Mercurio IV é acompanhada de uma placa de expansão com 16 chaves, dispostas em dois grupos de 8. O grupo da esquerda posicionado sobre o conector de GPIO compreede as chaves do grupo A (SA[0..7]), e as da direita as chaves do grupo B (SB[0..7]). Estas chaves estão ligadas a um filtro RC, porém ainda é indicado utilizar processos de eliminação de repique para evitar a introdução de glitches na FPGA. A placa pode ser conectada em uma das interfaces GPIO, porém é recomendado utilizar a interface GPIO0 (o conector "DE DENTRO") para evitar a inversão da placa, o que pode levar a problemas de sobretensão por haver um sinal de 5V no GPIO0.

Signal Name FPGA Pin No. Description I/O Standard
SA[0] PIN_E16 Chave tipo Slide Switch 0 3.3V
SA[1] PIN_H22 Chave tipo Slide Switch 1 3.3V
SA[2] PIN_F16 Chave tipo Slide Switch 2 3.3V
SA[3] PIN_F19 Chave tipo Slide Switch 3 3.3V
SA[4] PIN_H21 Chave tipo Slide Switch 4 3.3V
SA[5] PIN_J22 Chave tipo Slide Switch 5 3.3V
SA[6] PIN_F20 Chave tipo Slide Switch 6 3.3V
SA[7] PIN_H19 Chave tipo Slide Switch 7 3.3V
SB[0] PIN_J21 Chave tipo Slide Switch 0 3.3V
SB[1] PIN_K21 Chave tipo Slide Switch 1 3.3V
SB[2] PIN_H20 Chave tipo Slide Switch 2 3.3V
SB[3] PIN_H18 Chave tipo Slide Switch 3 3.3V
SB[4] PIN_L22 Chave tipo Slide Switch 4 3.3V
SB[5] PIN_L21 Chave tipo Slide Switch 5 3.3V
SB[6] PIN_J18 Chave tipo Slide Switch 6 3.3V
SB[7] PIN_M21 Chave tipo Slide Switch 7 3.3V





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, é necessário colocar a linha superior e a coluna esquerda em nível baixo, os demais sinais devem permanecer em nível alto (lógica invertida). Ou seja, o acesso à matriz deve ser multiplexado, ou por linhas ou por colunas.

LedMatrixMercurioIV.png
Signal Name FPGA Pin No. Description I/O Standard
LEDM_C[0] PIN_J7 Coluna 0 da matriz de LEDs 3.3V
LEDM_C[1] PIN_J6 Coluna 1 da matriz de LEDs 3.3V
LEDM_C[2] PIN_K8 Coluna 2 da matriz de LEDs 3.3V
LEDM_C[3] PIN_J8 Coluna 3 da matriz de LEDs 3.3V
LEDM_C[4] PIN_L8 Coluna 4 da matriz de LEDs 3.3V
LEDM_R[0] PIN_F10 Linha 0 da matriz de LEDs 3.3V
LEDM_R[1] PIN_C8 Linha 1 da matriz de LEDs 3.3V
LEDM_R[2] PIN_E9 Linha 2 da matriz de LEDs 3.3V
LEDM_R[3] PIN_G9 Linha 3 da matriz de LEDs 3.3V
LEDM_R[4] PIN_F9 Linha 4 da matriz de LEDs 3.3V
LEDM_R[5] PIN_F8 Linha 5 da matriz de LEDs 3.3V
LEDM_R[6] PIN_G8 Linha 6 da matriz de LEDs 3.3V
LEDM_R[7] PIN_H11 Linha 7 da matriz de LEDs 3.3V



Datasheet

Led RGB

O LED RGB de alto brilho possui três elementos internos, o vermelho, o verde e o azul. Esses três elementos são utilizados para que o LED possa emitir sete cores diferentes:

LedRGBMercurioIV.png
  • Vermelho – elemento R;
  • Verde – elemento G;
  • Azul – elemento B;
  • Amarelo – elementos R e G;
  • Ciano – elementos G e B;
  • Magenta – elementos R e B;
  • Branco – elementos R, G e B.

Cada elemento possui um pino associado, sendo os três elementos 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 possível gerar as sete cores do LED.

Signal Name FPGA Pin No. Description I/O Standard
LED_R PIN_D6 Elemento vermelho do LED RGB 3.3V
LED_G PIN_D7 Elemento verde do LED RGB 3.3V
LED_B PIN_E7 Elemento azul do LED RGB 3.3V



Datasheets

Display de 7 segmentos

Na placa Mercurio IV existem dois displays de 7 segmentos arranjados um ao lado do outro, para ser possível exibir um número 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 são do tipo Catodo Comum, portanto, nível ‘1’ no pino de entrada acende o segmento do display e nível ‘0’ apaga o segmento.

SSD0MercurioIV.png
Signal Name FPGA Pin No. Description I/O Standard
DISP0_D[0] PIN_V2 Segmento A - Display 0 3.3V
DISP0_D[1] PIN_V1 Segmento B - Display 0 3.3V
DISP0_D[2] PIN_U2 Segmento C - Display 0 3.3V
DISP0_D[3] PIN_U1 Segmento D - Display 0 3.3V
DISP0_D[4] PIN_Y2 Segmento E - Display 0 3.3V
DISP0_D[5] PIN_Y1 Segmento F - Display 0 3.3V
DISP0_D[6] PIN_W2 Segmento G - Display 0 3.3V
DISP0_D[7] PIN_W1 Ponto decimal - Display 0 3.3V
DISP1_D[0] PIN_R5 Segmento A - Display 1 3.3V
DISP1_D[1] PIN_T5 Segmento B - Display 1 3.3V
DISP1_D[2] PIN_T3 Segmento C - Display 1 3.3V
DISP1_D[3] PIN_T4 Segmento D - Display 1 3.3V
DISP1_D[4] PIN_M6 Segmento E - Display 1 3.3V
DISP1_D[5] PIN_N7 Segmento F - Display 1 3.3V
DISP1_D[6] PIN_N6 Segmento G - Display 1 3.3V
DISP1_D[7] PIN_P6 Ponto decimal - Display 1 3.3V



Datasheet

SDRAM

A placa Mercurio IV possui um chip de SDRAM de 512Mbits (64 MBytes). As tabelas abaixo apresentam as o timming para configuração do controlador de memória e o roteamento dos pinos para a FPGA da placa. Para integração com o NIOS2, é necessário utilizar um PLL para dar um atraso de 3ns na fase do clock encaminhado ao chip de memória.

SignalName FPGAPin No. DescriptionI/O Standard
SDRAM_A[0]PIN_P2SDRAM Address Bit 03v3
SDRAM_A[1]PIN_R1SDRAM Address Bit 13v3
SDRAM_A[2]PIN_P3SDRAM Address Bit 23v3
SDRAM_A[3]PIN_R2SDRAM Address Bit 33v3
SDRAM_A[4]PIN_P4SDRAM Address Bit 43v3
SDRAM_A[5]PIN_P5SDRAM Address Bit 53v3
SDRAM_A[6]PIN_N5SDRAM Address Bit 63v3
SDRAM_A[7]PIN_M4SDRAM Address Bit 73v3
SDRAM_A[8]PIN_N1SDRAM Address Bit 83v3
SDRAM_A[9]PIN_M2SDRAM Address Bit 93v3
SDRAM_A[10]PIN_P1SDRAM Address Bit 103v3
SDRAM_A[11]PIN_M3SDRAM Address Bit 113v3
SDRAM_A[12]PIN_L6SDRAM Address Bit 123v3
SDRAM_BA[0]PIN_J4SDRAM Bank Select Bit 03v3
SDRAM_BA[1]PIN_H2SDRAM Bank Select Bit 13v3
SDRAM_D[0]PIN_B2SDRAM Data Bit 03v3
SDRAM_D[1]PIN_B1SDRAM Data Bit 13v3
SDRAM_D[2]PIN_C2SDRAM Data Bit 23v3
SDRAM_D[3]PIN_C1SDRAM Data Bit 33v3
SDRAM_D[4]PIN_D2SDRAM Data Bit 43v3
SDRAM_D[5]PIN_E3SDRAM Data Bit 53v3
SDRAM_D[6]PIN_F2SDRAM Data Bit 63v3
SDRAM_D[7]PIN_F1SDRAM Data Bit 73v3
SDRAM_D[8]PIN_J2SDRAM Data Bit 83v3
SDRAM_D[9]PIN_H6SDRAM Data Bit 93v3
SDRAM_D[10]PIN_H5SDRAM Data Bit 103v3
SDRAM_D[11]PIN_J3SDRAM Data Bit 113v3
SDRAM_D[12]PIN_G3SDRAM Data Bit 123v3
SDRAM_D[13]PIN_G4SDRAM Data Bit 133v3
SDRAM_D[14]PIN_G5SDRAM Data Bit 143v3
SDRAM_D[15]PIN_E4SDRAM Data Bit 153v3
SDRAM_DQM[0]PIN_E1SDRAM Byte Enable 03v3
SDRAM_DQM[1]PIN_J5SDRAM Byte Enable 13v3
SDRAM_CLKPIN_E5SDRAM Clock In3v3
SDRAM_CKEPIN_M5SDRAM Clock Enable3v3
SDRAM_CAS_NPIN_M1SDRAM Column Address Strobe (N)3v3
SDRAM_CS_NPIN_H1SDRAM Chip Select (N)3v3
SDRAM_RAS_NPIN_N2SDRAM Row Address Strobe (N)3v3
SDRAM_WE_NPIN_J1SDRAM Write Enable (N)3v3


Datasheet

ADC

DAC

Display de 7 segmentos

Na placa Mercurio IV existe um chip SDRAM de 512Mbits conectado à FPGA. O modelo do chip SDRAM é IS42S16320B (ISSI). Ele possui quatro bancos de memória, sendo que cada um possui 8 M x 16 bits. Cada banco é estruturado em 8192 linhas (13 bits para enumerar) e 1024 colunas (10 bits para enumerar).