Innehållsförteckning:
Video: DIY Digital Dice: 6 steg
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
Denna instruktion beskriver hur man designar Digital Dice, en sann slumptalsgenerator från 1 till 6. Denna enhet kan användas istället för en vanligt förekommande tärning. Den har en 1-siffrig 7-segment LED-display och två knappar: "Run" och "Display Previous". Digital Dice kan drivas från ett enda CR2032 -batteri. Den har ingen strömbrytare på grund av försumbar låg strömförbrukning när den är inaktiv.
Nedan beskrivs stegen som behövs för att förstå hur GreenPAK -chipet har programmerats för att skapa digitala tärningar. Men om du bara vill få resultatet av programmeringen, ladda ner GreenPAK -programvara för att se den redan färdiga GreenPAK -designfilen. Anslut GreenPAK Development Kit till din dator och tryck på programmet för att skapa en anpassad IC för att styra dina digitala tärningar.
Steg 1: Enhetsarkitektur
Designen består av följande block:
- Entropy Generator
- Linjär feedback -skiftregister
- Binärt till 7-segment avkodare
- Styrenhet
- Macrocell -inställningar
Steg 2: Entropy Generator
Entropgeneratorn är byggd av fyra asynkrona oscillatorer. Två av dem är byggda med en inverterad sluten LUT med fördröjning (1 MHz och 6,5 MHz). Två andra är GreenPAKs OSC1 (2,048 MHz tillsammans med en delning med 3) och OSC2 (25 MHz dividerat med 2).
Att mata in några asynkrona klocksignaler till XNOR -gate är tillräckligt för att få en oförutsägbar signal på dess utgång (brus eller entropi). Men makrocellerna inom SLG46826V gör det möjligt att göra ännu mer komplicerade lösningar. Med ytterligare en oscillator och DFF får vi en helt slumpmässig signal.
Steg 3: Linjär feedback -skiftregister
3-bitars LFSR är byggt med tre DFF: er och en XNOR-grind. Detta block med varje ingångsklocka genererar ett 3-bitars pseudoslumpmässigt tal. Här, i stället för en klockpuls, går brussignalen in i LFSR: s ingång och genererar ett sant slumpmässigt 3-bitars tal.
Steg 4: Binär till 7-segment avkodare
För att konvertera det 3-bitars slumptal som genereras av LSFR används den binära till 7-segments avkodaren, se figur 3. Avkodaren är byggd av 3-bitars LUT.
Steg 5: Kontrollenhet
Kontrollenheten är en del av enheten som är utformad för att starta den och stanna efter 3-sekundersperioden. Två stift är konfigurerade som ingångar och två knappar måste anslutas från VDD till dessa stift. Medan knappen "Kör" trycks in, genererar enheten kontinuerligt slumptal. Direkt efter att knappen släppts stannar generationen och LFSR spärrar sina utgångar. Avkodaren driver därefter en 7-segmentskärm. Efter en 3 sekunders period går Digital Dice inaktiv. Enheten är fortfarande påslagen, men eftersom alla svängningar har stängts av är strömförbrukningen extremt låg. Detta gör att enheten kan "komma ihåg" det senast genererade slumpmässiga numret. Om du trycker på knappen "Visa föregående" visas det senast genererade slumpmässiga numret tills knappen släpps. Eftersom Digital Dice är utformad för att ersätta vanliga tärningar, används 3-bitars LUT12 för att starta om den när "0" eller "7" uppstår. Detta säkerställer att enheten genererar ett slumpmässigt tal i intervallet 1 till 6.
Steg 6: Macrocell -inställningar
För varje makrocell, se inställningarna i tabellerna ovan.
Slutsatser
Digitala tärningarna kan användas som ersättning för vanliga tärningar i kasinon eller när du spelar andra spel där tärningar behövs. Den har en entropgenerator som ständigt genererar 3-bitars slumpmässiga nummer medan knappen "Kör" trycks in. Den stannar och visar resultatet först när knappen släpps, så den mänskliga faktorn påverkar också det genererade slumptalet. Fyra asynkrona oscillatorer tillsammans med mänsklig knapptryckningsvariabilitet gör enheten helt och önskvärt oförutsägbar.