Taula de continguts:

CPE 133 Projecte Final Decimal a Binari: 5 passos
CPE 133 Projecte Final Decimal a Binari: 5 passos

Vídeo: CPE 133 Projecte Final Decimal a Binari: 5 passos

Vídeo: CPE 133 Projecte Final Decimal a Binari: 5 passos
Vídeo: Lec1A DECBIN 2024, Desembre
Anonim
CPE 133 Projecte Final Decimal a Binari
CPE 133 Projecte Final Decimal a Binari

Els números binaris són una de les primeres coses que se m’acudeixen quan es pensa en lògica digital. Tanmateix, els números binaris poden ser un concepte difícil per a aquells que hi són nous.

Aquest projecte ajudarà a aquells que són nous i experimentats amb números binaris a convertir mestre en nombres decimals. Mitjançant la creació d’un joc, provarem els usuaris sobre la seva capacitat de conversió. Aquest joc s’executarà en un tauler Basys3 i es programarà a Verilog.

Pas 1: materials necessaris

Materials necessaris
Materials necessaris

Els següents materials són necessaris per fer aquest joc de conversió decimal a binari:

  • Programari Xilinx Vivado Design Suite
  • Tauler FPGA Digilent Basys3
  • Cable USB a Micro USB

Pas 2: Configuració del LFSR (registre de canvis de comentaris lineals)

Configuració del LFSR (registre de canvis de comentaris lineals)
Configuració del LFSR (registre de canvis de comentaris lineals)
Configuració del LFSR (registre de canvis de comentaris lineals)
Configuració del LFSR (registre de canvis de comentaris lineals)

Un LFSR (Linear Feedback Shift Register) és un mòdul que s’utilitza per generar números “aleatoris”.

Un LFSR no és completament aleatori, ja que genera nombres pseudo-aleatoris, que és un procés de generació de nombres que apareixen aleatoris però que no ho són.

Un LFSR és un registre de desplaçament el bit d'entrada del qual és una funció lineal del seu estat anterior, el que significa que el LFSR passarà per un nombre finit. Específicament per a aquest joc, el LFSR només utilitzarà 8 bits per limitar el nombre decimal que pot generar a 255.

El botó L (btnL) s’utilitza per restablir el número a l’LFSR.

Aquest mòdul LFSR no ha estat creat pels creadors d'aquest joc. El mòdul LFSR va ser creat pel professor de la Universitat de Carleton, John Knight. A continuació s’inclou l’enllaç del seu mòdul.

www.doe.carleton.ca/~jknight/97.478/97.478_…

Pas 3: configuració de la pantalla de set segments

Configuració de la pantalla de set segments
Configuració de la pantalla de set segments

S'utilitza una pantalla de set segments a la placa Basys3 i en moltes altres peces de maquinari per mostrar caràcters alfanumèrics.

El mòdul de visualització de set segments que s’utilitza en aquest joc converteix un número binari en un número decimal i el mostra com un número decimal.

En utilitzar el mòdul LFSR anteriorment comentat, es generarà un número generat aleatòriament a la pantalla de set segments.

Els fabricants d'aquest joc no han creat el mòdul de visualització de set segments. El mòdul de visualització de set segments va ser proporcionat pel professor de la Universitat Estatal Politècnica de Califòrnia, Joseph Callenes-Sloan. A continuació s’adjunta el pdf del mòdul.

Pas 4: Creació del mòdul de joc

Creació del mòdul de joc
Creació del mòdul de joc
Creació del mòdul de joc
Creació del mòdul de joc
Creació del mòdul de joc
Creació del mòdul de joc
Creació del mòdul de joc
Creació del mòdul de joc

Crea un mòdul de joc (principal).

Aquest mòdul utilitzarà el mòdul LFSR per generar un número aleatori i, a continuació, el mostrarà a la pantalla de set segments.

El mòdul utilitza un bloc sempre que restableix el número aleatori. Això funciona a la vora positiva del botó R (btnR), el que significa que només funcionarà quan s'hagi premut el botó R.

El segon bloc sempre funciona a la vora positiva del rellotge (clk). Si es prem el botó C (btnC), es comprovarà si el número de la pantalla de set segments és el mateix que el número d'entrada dels commutadors (sw). Aquest bloc aixecarà una bandera (establirà el registre de bandera (bandera) a 1) i canviarà el fil de messageVal segons si l'usuari ha guanyat o perdut.

El tercer bloc sempre també funciona a la vora positiva del rellotge. Si s’alça el senyalador, establirà el ssegInputVal al cable messageVal a la pantalla de set segments. Si la bandera no està alçada, continuarà generant el número aleatori (randomVal).

Pas 5: jugar al joc

Jugant al joc!
Jugant al joc!
Jugant al joc!
Jugant al joc!
Jugant al joc!
Jugant al joc!

Instruccions:

  • L'usuari premrà el botó R per fer un joc nou o canviarà el número a la pantalla de set segments.
  • L'usuari donarà la volta als primers 8 commutadors cap amunt (1) o cap avall (0) per introduir la representació del número binari.
  • El botó C s’utilitzarà per comprovar si l’usuari ha guanyat o perdut.
  • Si l'usuari ha guanyat '111' es mostrarà a la pantalla de set segments.
  • Si l'usuari ha perdut '0' es mostrarà a la pantalla de set segments.
  • Per iniciar un joc nou, es pot prémer el botó R en qualsevol moment.

Recomanat: