Sisällysluettelo:

DIY Digital Dice: 6 vaihetta
DIY Digital Dice: 6 vaihetta

Video: DIY Digital Dice: 6 vaihetta

Video: DIY Digital Dice: 6 vaihetta
Video: DIE ANTWOORD - BABY'S ON FIRE (OFFICIAL) 2024, Heinäkuu
Anonim
DIY Digital Dice
DIY Digital Dice

Tässä ohjeessa kuvataan, miten suunnitellaan Digital Dice, todellinen satunnaislukugeneraattori 1 - 6. Tätä laitetta voidaan käyttää yleisesti käytettyjen noppien sijasta. Siinä on 1-numeroinen 7-segmenttinen LED-näyttö ja kaksi painiketta: "Run" ja "Display Previous". Digital Dice saa virtansa yhdestä CR2032 -paristosta. Siinä ei ole virtakytkintä, koska joutokäynnillä on merkityksetön pieni virrankulutus.

Seuraavassa kuvataan vaiheet, jotka tarvitaan ymmärtämään, miten GreenPAK -siru on ohjelmoitu luomaan digitaalinen noppa. Jos haluat vain saada ohjelmoinnin tuloksen, lataa GreenPAK -ohjelmisto nähdäksesi jo valmistuneen GreenPAK -suunnittelutiedoston. Liitä GreenPAK -kehityssarja tietokoneeseesi ja napsauta ohjelmaa luodaksesi mukautetun IC: n digitaalisen nopan hallitsemiseksi.

Vaihe 1: Laitearkkitehtuuri

Laitearkkitehtuuri
Laitearkkitehtuuri

Suunnittelu koostuu seuraavista lohkoista:

  • Entropian generaattori
  • Lineaarisen palautteen siirtorekisteri
  • Binaarinen 7-segmenttinen dekooderi
  • Ohjausyksikkö
  • Macrocell -asetukset

Vaihe 2: Entropiageneraattori

Entropian generaattori
Entropian generaattori

Entropiageneraattori on rakennettu neljästä asynkronisesta oskillaattorista. Kaksi niistä on rakennettu käyttämällä käänteistä suljetun silmukan LUT: tä viiveellä (1 MHz ja 6,5 MHz). Kaksi muuta ovat GreenPAKin OSC1 (2,048 MHz ja jakamalla 3) ja OSC2 (25 MHz jaettuna 2).

Muutaman asynkronisen kellosignaalin syöttäminen XNOR -porttiin riittää, jotta sen ulostuloon saadaan arvaamaton signaali (kohina tai entropia). Mutta SLG46826V: n makrosolut mahdollistavat entistä monimutkaisempien ratkaisujen tekemisen. Käyttämällä vielä yhtä oskillaattoria ja DFF: ää saamme täysin satunnaisen signaalin.

Vaihe 3: Lineaarisen palautteen siirtorekisteri

Lineaarisen palautteen siirtorekisteri
Lineaarisen palautteen siirtorekisteri

3-bittinen LFSR on rakennettu käyttämällä kolmea DFF: ää ja yhtä XNOR-porttia. Tämä lohko jokaisen tulokellon kanssa muodostaa 3-bittisen pseudo-satunnaisluvun. Tässä kellosyklin sijasta kohinasignaali menee LFSR: n tuloon ja muodostaa todellisen satunnaisen 3-bittisen luvun.

Vaihe 4: binäärinen 7-segmenttiseen dekooderiin

Binaarinen 7-segmenttinen dekooderi
Binaarinen 7-segmenttinen dekooderi

LSFR: n tuottaman 3-bittisen satunnaisluvun muuntamiseen käytetään binääristä 7-segmenttiseen dekooderiin, katso kuva 3. Dekooderi on rakennettu 3-bittisistä LUT: ista.

Vaihe 5: Ohjausyksikkö

Ohjausyksikkö
Ohjausyksikkö

Ohjausyksikkö on osa laitetta, joka on suunniteltu käynnistymään ja pysähtymään kolmen sekunnin jälkeen. Kaksi nastaa on määritetty tuloiksi ja kaksi painiketta on liitettävä VDD: stä näihin nastoihin. Kun painiketta "Run" painetaan, laite luo jatkuvasti satunnaislukuja. Heti painikkeen vapauttamisen jälkeen sukupolvi pysähtyy ja LFSR lukitsee lähdön. Dekooderi käyttää myöhemmin 7-segmenttistä näyttöä. Kolmen sekunnin jälkeen digitaalinen noppa ei toimi. Laite on edelleen päällä, mutta koska kaikki värähtelyt on kytketty pois päältä, virrankulutus on erittäin alhainen. Näin laite voi "muistaa" viimeksi muodostetun satunnaisluvun. Jos painiketta "Näytä edellinen" painetaan, viimeksi luotu satunnaisluku näytetään, kunnes painike vapautetaan. Koska Digital Dice on suunniteltu korvaamaan tavalliset nopat, 3-bittistä LUT12: ta käytetään käynnistämään se uudelleen, kun "0" tai "7" tapahtuu. Tämä varmistaa, että laite luo satunnaisluvun välillä 1-6.

Vaihe 6: Makrosolun asetukset

Macrocell -asetukset
Macrocell -asetukset
Macrocell -asetukset
Macrocell -asetukset
Macrocell -asetukset
Macrocell -asetukset
Macrocell -asetukset
Macrocell -asetukset

Kunkin makrosolun asetukset viittaavat yllä oleviin taulukoihin.

Päätelmät

Digitaalista noppaa voidaan käyttää tavallisten noppien korvikkeena kasinoissa tai kun pelataan muita pelejä, joissa noppaa tarvitaan. Siinä on entropiageneraattori, joka tuottaa jatkuvasti 3-bittisiä satunnaislukuja, kun painiketta "Run" painetaan. Se pysähtyy ja näyttää tuloksen vain, kun painike vapautetaan, joten inhimillinen tekijä vaikuttaa myös luotuun satunnaislukuun. Neljä asynkronista oskillaattoria yhdessä ihmisen painikkeiden vaihtelun kanssa tekevät laitteesta täysin ja toivottavasti arvaamattoman.

Suositeltava: