"Jokainen, joka harkitsee aritmeettisia menetelmiä satunnaislukujen tuottamiseksi, on tietysti synnitilassa" \ $ - \ $ John Von Neumann
Hyvä melulähde on zener-diodin hajoamismelu. Alla oleva yksinkertainen kaavio osoittaa, kuinka saada valkoista kohinaa zeneristä kaskadoimalla kaksi LNA: ta (matala melutaso) vahvistamaan melutasoa.
Jos et välitä siitä, että kohina on valkoista, voit käyttää vain suurta vahvistusta sisältävää opamp-vahvistinta , jonka vertailija sen jälkeen. Opampin vahvistus asettaa rajan kaistanleveydelle ja siten digitaalisen signaalin muutosnopeudelle. Tarvittaessa kaskadi kaksi opampia, kuten LNA: t annetussa kaaviossa, saadakseen nopeamman satunnaisen bittivirran.
Voit käyttää SPI-moduulia kellon satunnaisbittien tavuina tältä piiriltä.
(SPI on vain yksinkertainen tapa kerätä automaattisesti 8 satunnaista bittiä, se ei lisää mikä tahansa determinismin taso: tulo muuttuu jatkuvasti ja satunnaisesti, etkä koskaan tiedä, mikä se on seuraavalla kellon reunalla. Voit myös lukea I / O-nastan ja siirtää kyseisen bitin tason tulostavuksi.)
Tämä piiri on mahdollinen vaihtoehtoinen ratkaisu, joka luottaa myös zener-diodiin melulähteenä:
kaavamaisesti mainitaan vahvistimen OPA2340, mutta se ei ole selvä vertailussa. Vaikka OPA2340 on kohtuullisen nopea, suosittelen tässä käyttämään todellista vertailulaitetta , koska nämä ovat yleensä paljon nopeampia kuin opamps. Esimerkiksi TL3016: n etenemisviive on alle 10ns ja nousuaika tyypillisesti 0,5ns. Tämä tarkoittaa, että voit ottaa satunnaisarvot nopeammin ilman riskiä, että peräkkäiset näytteet ovat johdonmukaisia.
Satunnaislukugeneraattorin testaamiseksi voit testata normaalisuuden. Tämä tarkoittaa pitkän satunnaislukujonon luomista, mitä pidempi, sitä parempi. Parasta on kuljettaa se tietokoneelle analyysiä varten. Laske yhden bittiset sekvenssit, eli 0
s ja 1
s. Niitä tulisi olla suunnilleen sama määrä. Seuraava toisto kaksibittisille jaksoille. 00
s -määriä tulisi olla yhtä monta kuin 01
s, 10
s ja 11
s. Toista kolmibittisille jaksoille jne.
En ole tilastotieteilijä, joten testejä voi olla parempia / helpompia. Lisää ne vapaasti.