Vous êtes sur la page 1sur 23

Aula

Introdução a Sistemas Digitais

Uso das placas de prototipação

1
Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt
Aula
Placa de Prototipação

Manual no site: http://www.digilentinc.com/Products/Detail.cfm?Prod=S3BOARD&Nav1=Products&Nav2=Programmable

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 2


Aula
Componente FPGA

• 200,000-gate Xilinx Spartan-3 XC3S200 FPGA in a 256-ball thin


Ball Grid Array package (XC3S200FT256)
• 4,320 logic cell equivalents
• Twelve 18K-bit block RAMs (216K bits)
Usar no projeto ISE
• Twelve 18x18 hardware multipliers
• Four Digital Clock Managers (DCMs)
• Up to 173 user-defined I/O signals

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 3


Aula
Placa de Prototipação

Pressing a push button generates a logic


High on the associated FPGA pin.

To light an individual LED, drive the


associated FPGA control signal High,
which is the opposite polarity from
lighting one of the 7-segment LEDs.

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 4


Aula
Placa de Prototipação

When in the UP or ON position, a


switch connects the FPGA pin to
VCCO, a logic High.

When DOWN or in the OFF position,


the switch connects the FPGA pin to
ground, a logic Low.

The switches typically exhibit about 2


ms of mechanical bounce and there is
no active debouncing circuitry,
although such circuitry could easily be
added to the FPGA design
programmed on the board.

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 5


Aula
Debouncing Circuitry

Registrador deslocamento (buffer) com


comparador paralelo

IN

= ‘1’

IN = ‘1’ (OK)
Filtrar o ruído mecânico

IN

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 6


Aula
Placa de Prototipação

•The AN3 anode control signal is Low,


enabling the control inputs for the left-
most character.
•The segment control inputs, A through
G and DP, drive the individual segments
that comprise the character.
• A Low value lights the individual
segment, a High turns off the segment.
• A Low on the A input signal, lights
segment ‘a’ of the display.
• The anode controls for the remaining
characters, AN[2:0] are all High, and
these characters ignore the values
presented on A through G and DP.

Ou seja, um display de 7
segmentos é ligado por vez!

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 7


Aula
Placa de Prototipação

• Mas então, como podemos ver os 4 displays ligados?


• É porque acendemos cada display por vez em uma certa frequencia que
para o nosso olho, parece que todos estão ligados ao mesmo tempo.

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 8


Aula
Placa de Prototipação

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 9


Aula
Placa de Prototipação

• Programação
JTAG

Jumpers
Paralel JTAG

Done
LED

Cabo da alimentação

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 10


Aula
Placa de Prototipação

• Oscilador presente na placa (CLK)

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 11


Aula
Escolhendo os pinos no ISE

UCF file será criado

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 12


Aula
Xilinx PACE (pinos)

Colocar os pinos correspondentes

UCF file será criado

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 13


Aula
ISE – programação do FPGA

Escolher o .bit file correto!!!


Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 14
Aula
Projeto: Jogo da Loto

Pino T9 Sorteio
clk
Sistema digital
reset
FPGA

Jogador Jogador
Jogador
1 Jogador 4
3
2

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 15


Aula
Projeto: Jogo da Loto

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 16


Aula
Projeto: Jogo da Loto

• Cada jogador pressiona o botão correspondente para sortear um


número.

• Após todos os jogadores terem pressionado uma vez o seu botão


correspondente, o jogo indica quem sorteou o maior numero (o
vencedor).

• Cada jogador so pode ter um número sorteado por rodada, ou seja,


mesmo que um dos jogadores aperte o botão mais de uma vez por
rodada, não será sorteado outro número.

• Cada vez que o botão é apertado, no display de 7 segmentos


aparece o número sorteado.

• No final, o display mostra o vencedor

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 17


Aula
Desafio 1
Geração de numeros aleatorios ou pseudo aleatorios

Uso de LFSR: Linear Feedback Shift Register (LFSR)

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 18


Aula
LFSR

semente (seed)

polinômio

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 19


Aula
Desafio 2
Temporização: frequencia de atualização dos displays de 7 segmentos

• Temos um clock de 50 MHz na placa, ou seja, de 20ns logo para termos


valores de:

• 1 s => temos que contar ate 50 milhões!!!! O que representa um contador


de 26 bits.
– Quando contador = “10111110101111000010000000”

26 bits

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 20


Aula
O refresh do display é dado…

pelo bit 6 do cont

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 21


Aula
Uso de flag

• O uso do flag impossibilita


que um novo número seja
sorteado pelo mesmo
jogador em uma mesma
rodada.

• Para iniciar uma nova


jogada é preciso RESET.

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 22


Aula
Exercício

1. Tente modificar o VHDL para que o jogador 2 possa sempre jogar


duas vezes por rodada, tal que aumente suas chances de tirar um
maior numero.

2. Tente modificar o VHDL para que os numeros sorteados sejam


apenas de 0 a 15.

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 23