Innholdsfortegnelse:
Video: DIY digitale terninger: 6 trinn
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
Denne instruksjonsboken beskriver hvordan du designer Digital Dice, en ekte tilfeldig tallgenerator fra 1 til 6. Denne enheten kan brukes i stedet for en vanlig terning. Den har et 1-sifret 7-segment LED-display og to knapper: "Run" og "Display Previous". Digital Dice kan drives fra et enkelt CR2032 -batteri. Den har ingen strømbryter på grunn av ubetydelig lavt strømforbruk når den er inaktiv.
Nedenfor har vi beskrevet trinnene som trengs for å forstå hvordan GreenPAK -brikken er programmert til å lage den digitale terningen. Men hvis du bare vil få resultatet av programmeringen, kan du laste ned GreenPAK -programvare for å se den allerede fullførte GreenPAK -designfilen. Koble GreenPAK Development Kit til datamaskinen din og trykk på programmet for å lage den egendefinerte ICen for å kontrollere dine digitale terninger.
Trinn 1: Enhetsarkitektur
Designet består av følgende blokker:
- Entropy Generator
- Lineært tilbakemeldingsskiftregister
- Binær til 7-segmenters dekoder
- Kontrollenhet
- Macrocell -innstillinger
Trinn 2: Entropy Generator
Entropi -generatoren er bygget av fire asynkrone oscillatorer. To av disse er bygget med en invertert lukket sløyfe LUT med forsinkelse (1 MHz og 6,5 MHz). To andre er GreenPAKs OSC1 (2.048 MHz sammen med et divide med 3) og OSC2 (25 MHz delt på 2).
Det er nok å legge inn noen få asynkrone klokkesignaler til XNOR -porten for å få et uforutsigbart signal på utgangen (støy eller entropi). Men makrocellene i SLG46826V gjør det mulig å lage enda mer kompliserte løsninger. Ved å bruke en mer oscillator og DFF får vi et helt tilfeldig signal.
Trinn 3: Lineært tilbakemeldingsskiftregister
3-biters LFSR er bygget med tre DFF-er og en XNOR-gate. Denne blokken med hver inngangsklokke genererer et 3-biters pseudo-tilfeldig tall. Her, i stedet for en klokkepuls, går støysignalet inn i LFSR-inngangen, og genererer et sant tilfeldig 3-bits tall.
Trinn 4: Binær til 7-segmenters dekoder
For å konvertere 3-biters tilfeldig tall generert av LSFR, brukes binær til 7-segment dekoder, se figur 3. Dekoderen er bygget av 3-biters LUT.
Trinn 5: Kontrollenhet
Kontrollenheten er en del av enheten som er designet for å starte den og stoppe etter 3-sekundersperioden. To pinner er konfigurert som innganger, og to knapper må kobles fra VDD til disse pinnene. Mens du trykker på knappen "Run", genererer enheten kontinuerlig tilfeldige tall. Rett etter at knappen slippes, stopper generasjonen og LFSR låser utgangene. Dekoderen driver deretter en 7-segment skjerm. Etter en periode på 3 sekunder går den digitale terningen inaktiv. Enheten er fortsatt slått på, men fordi alle svingninger er slått av, er strømforbruket ekstremt lavt. Dette gjør at enheten kan "huske" det sist genererte tilfeldige tallet. Hvis du trykker på knappen "Vis forrige", vises det siste genererte tilfeldige tallet til knappen slippes. Fordi Digital Dice er designet for å erstatte vanlige terninger, brukes 3-biters LUT12 til å starte den på nytt når "0" eller "7" oppstår. Dette sikrer at enheten vil generere et tilfeldig tall i området 1 til 6.
Trinn 6: Macrocell -innstillinger
For hver makrocelle, se innstillingene i tabellene ovenfor.
Konklusjoner
Den digitale terningen kan brukes som erstatning for vanlige terninger i kasinoer eller når du spiller andre spill der terninger er nødvendig. Den har en entropi-generator som stadig genererer 3-biters tilfeldige tall mens knappen "Kjør" trykkes. Den stopper og viser resultatet bare når knappen slippes, så den menneskelige faktoren påvirker også det genererte tilfeldige tallet. Fire asynkrone oscillatorer sammen med variasjon i knappetrykk gjør enheten helt og ønskelig uforutsigbar.