Orodha ya maudhui:

CPE 133 Mwisho wa Mradi kwa Binary: Hatua 5
CPE 133 Mwisho wa Mradi kwa Binary: Hatua 5

Video: CPE 133 Mwisho wa Mradi kwa Binary: Hatua 5

Video: CPE 133 Mwisho wa Mradi kwa Binary: Hatua 5
Video: How to Do SDXL Training For FREE with Kohya LoRA - Kaggle - NO GPU Required - Pwns Google Colab 2024, Novemba
Anonim
CPE 133 Mwisho wa Mradi kwa Binary
CPE 133 Mwisho wa Mradi kwa Binary

Nambari za Kibinadamu ni moja ya mambo ya kwanza ambayo huja akilini wakati wa kufikiria mantiki ya dijiti. Walakini, Nambari za Kibinadamu zinaweza kuwa dhana ngumu kwa wale wapya.

Mradi huu utasaidia wale ambao ni wapya na wenye uzoefu na nambari za kibinadamu bwana kubadilisha nambari za desimali. Kupitia uundaji wa mchezo tutajaribu watumiaji kwenye ustadi wao wa uongofu. Mchezo huu utafanywa kwenye Bodi ya Basys3 na kusanidiwa katika Verilog.

Hatua ya 1: Vifaa vinahitajika

Vifaa vinahitajika
Vifaa vinahitajika

Vifaa vifuatavyo vinahitajika ili kufanya Mchezo huu wa Ubadilishaji wa Kibinadamu kuwa Daraja moja:

  • Programu ya Xilinx Vivado Design Suite
  • Bodi ya FPGA ya Digilent3
  • USB kwa kebo ndogo ya USB

Hatua ya 2: Kuanzisha LFSR (Sajili ya Maoni ya Sauti ya Maoni)

Kuanzisha LFSR (Sajili ya Maoni ya Sauti ya Maoni)
Kuanzisha LFSR (Sajili ya Maoni ya Sauti ya Maoni)
Kuanzisha LFSR (Sajili ya Maoni ya Sauti ya Maoni)
Kuanzisha LFSR (Sajili ya Maoni ya Sauti ya Maoni)

LFSR (Linear Feedback Shift Daftari) ni moduli inayotumiwa kutoa nambari "za nasibu".

LFSR sio ya kubahatisha kabisa kwani inazalisha nambari za uwongo ambazo ni mchakato wa kutengeneza nambari ambazo zinaonekana bila mpangilio lakini sio.

LFSR ni rejista ya kuhama ambayo pembejeo yake ni kazi laini ya hali yake ya zamani, ambayo inamaanisha LFSR itazunguka kupitia nambari zilizowekwa. Hasa kwa mchezo huu, LFSR itatumia tu bits 8 kupunguza idadi ya desimali ambayo inaweza kutoa hadi 255.

Kitufe L (btnL) hutumiwa kuweka upya nambari kwenye LFSR.

Moduli hii ya LFSR haikuundwa na watunga mchezo huu. Moduli ya LFSR iliundwa na Profesa wa Chuo Kikuu cha Carleton, John Knight. Kiunga cha moduli yake kimejumuishwa hapo chini.

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

Hatua ya 3: Kuweka Uonyesho wa Sehemu Saba

Kuanzisha Uonyesho wa Sehemu Saba
Kuanzisha Uonyesho wa Sehemu Saba

Onyesho la Sehemu Saba hutumiwa kwenye Bodi ya Basys3 na kwenye vipande vingine vingi vya vifaa kuonyesha herufi za alphanumeric.

Moduli ya Uonyeshaji wa Sehemu Saba ambayo hutumiwa katika mchezo huu hubadilisha nambari ya binary kuwa nambari ya decimal na kuionyesha kama nambari ya desimali.

Kwa kutumia moduli ya LFSR iliyojadiliwa hapo awali, nambari inayotengenezwa bila mpangilio itatolewa kwenye Onyesho la Sehemu Saba.

Moduli ya Uonyeshaji wa Sehemu Saba haikuundwa na watunga mchezo huu. Moduli ya Maonyesho ya Sehemu Saba ilitolewa na Profesa wa Chuo Kikuu cha Jimbo la California Polytechnic, Joseph Callenes-Sloan. Pdf ya moduli imeambatanishwa hapa chini.

Hatua ya 4: Kuunda Moduli ya Mchezo

Kuunda Moduli ya Mchezo
Kuunda Moduli ya Mchezo
Kuunda Moduli ya Mchezo
Kuunda Moduli ya Mchezo
Kuunda Moduli ya Mchezo
Kuunda Moduli ya Mchezo
Kuunda Moduli ya Mchezo
Kuunda Moduli ya Mchezo

Unda Mchezo (kuu) Moduli.

Moduli hii itatumia moduli ya LFSR kutoa nambari isiyo ya kawaida na kisha kuipeleka kwenye Uonyesho wa Sehemu Saba.

Moduli hiyo hutumia kizuizi cha kila wakati ambacho kinabadilisha nambari ya nasibu. Hii inafanya kazi kwa ukingo mzuri wa Button R (btnR), ambayo inamaanisha kuwa itafanya kazi tu wakati Button R imeshinikizwa.

Kizuizi cha pili daima hufanya kazi kwenye ukingo mzuri wa saa (clk). Ikiwa Kitufe C (btnC) kimeshinikizwa hii itaangalia ikiwa nambari kwenye Uonyesho wa Sehemu Saba ni sawa na nambari ya kuingiza kutoka kwa swichi (sw). Kizuizi hiki kitainua bendera (weka sajili ya bendera (bendera) kuwa 1) na ubadilishe waya wa ujumbe kulingana na ikiwa mtumiaji ameshinda au amepoteza.

Tatu ya kuzuia kila wakati pia inafanya kazi kwenye ukingo mzuri wa saa. Ikiwa bendera imeinuliwa itaweka ssegInputVal kwenye waya wa ujumbeVal kwenye Uonyesho wa Sehemu Saba. Ikiwa bendera haikuinuliwa itaendelea kutoa nambari ya nasibu (randomVal).

Hatua ya 5: Kucheza Mchezo

Kucheza mchezo!
Kucheza mchezo!
Kucheza mchezo!
Kucheza mchezo!
Kucheza mchezo!
Kucheza mchezo!

Maagizo:

  • Mtumiaji atabonyeza Kitufe R kutengeneza mchezo mpya, au kubadilisha nambari kwenye Uonyesho wa Sehemu Saba.
  • Mtumiaji atabadilisha swichi 8 za kwanza juu (1) au chini (0) kuingiza uwakilishi wa nambari ya binary.
  • Kitufe C kitatumika kuangalia ikiwa mtumiaji alishinda au amepoteza.
  • Ikiwa Mtumiaji alishinda '111' ataonyeshwa kwenye Onyesho la Sehemu Saba.
  • Ikiwa Mtumiaji amepoteza '0' ataonyeshwa kwenye Onyesho la Sehemu Saba.
  • Kuanza mchezo mpya Button R inaweza kushinikizwa wakati wowote.

Ilipendekeza: