Introdução a Sistemas Digitais - Instituto de Informática - UFRGS - Instituto de...

23
Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 Introdução a Sistemas Digitais Introdução a Sistemas Digitais Uso das placas de prototipação

Transcript of Introdução a Sistemas Digitais - Instituto de Informática - UFRGS - Instituto de...

  • Aula

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

    Introdução a Sistemas DigitaisIntrodução a Sistemas Digitais

    Uso das placas de prototipação

  • Aula

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

    Placa de PrototipaçãoPlaca de Prototipação

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

  • Aula

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

    ComponenteComponente FPGAFPGA

    • 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)• Twelve 18x18 hardware multipliers• Four Digital Clock Managers (DCMs)• Up to 173 user-defined I/O signals

    Usar no projeto ISE

  • Aula

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

    Placa de PrototipaçãoPlaca 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 fromlighting one of the 7-segment LEDs.

  • Aula

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

    Placa de PrototipaçãoPlaca 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 designprogrammed on the board.

  • Aula

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

    Debouncing Circuitry

    IN

    = ‘1’

    IN = ‘1’ (OK)

    Registrador deslocamento (buffer) com comparador paralelo

    Filtrar o ruído mecânico

    IN

  • Aula

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

    Placa de PrototipaçãoPlaca 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!

  • Aula

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

    Placa de PrototipaçãoPlaca 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.

  • Aula

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

    Placa de PrototipaçãoPlaca de Prototipação

  • Aula

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

    Placa de PrototipaçãoPlaca de Prototipação

    • Programação

    DoneLED

    Jumpers

    JTAG

    Paralel JTAG

    Cabo da alimentação

  • Aula

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

    Placa de PrototipaçãoPlaca de Prototipação

    • Oscilador presente na placa (CLK)

  • Aula

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

    EscolhendoEscolhendo osos pinospinos no ISEno ISE

    UCF file será criado

  • Aula

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

    XilinxXilinx PACE (PACE (pinospinos))

    Colocar os pinos correspondentes

    UCF file será criado

  • Aula

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

    ISE ISE –– programaçãoprogramação do FPGA do FPGA

    Escolher o .bit file correto!!!

  • Aula

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

    Projeto: Jogo da LotoProjeto: Jogo da Loto

    Sistema digital

    Jogador1 Jogador

    2

    Jogador3

    Jogador4

    Sorteio

    FPGA

    clk

    reset

    Pino T9

  • Aula

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

    Projeto: Jogo da LotoProjeto: Jogo da Loto

  • Aula

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

    Projeto: Jogo da LotoProjeto: 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ãocorrespondente, 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 porrodada, não será sorteado outro número.

    • Cada vez que o botão é apertado, no display de 7 segmentosaparece o número sorteado.

    • No final, o display mostra o vencedor

  • Aula

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

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

    Uso de LFSR: Linear Feedback Shift Register (LFSR)

  • Aula

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

    LFSRLFSR

    semente (seed)

    polinômio

  • Aula

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

    Desafio 2Desafio 2

    • 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”

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

    26 bits

  • Aula

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

    O refresh do display é dado…O refresh do display é dado…

    pelo bit 6 do cont

  • Aula

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

    UsoUso de flagde flag

    • O uso do flag impossibilitaque um novo número sejasorteado pelo mesmojogador em uma mesmarodada.

    • Para iniciar uma nova jogada é preciso RESET.

  • Aula

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

    ExercícioExercício

    1. Tente modificar o VHDL para que o jogador 2 possa sempre jogarduas vezes por rodada, tal que aumente suas chances de tirar um maior numero.

    2. Tente modificar o VHDL para que os numeros sorteados sejamapenas de 0 a 15.