FAQ | Points | Add... | Recent posts | Search | Register | Log in


Sprzętowy generator liczb losowych


Post new topic  Reply to topic      Main Page -> Forum Index -> Electronic Circuits DIY ideas, problems -> Sprzętowy generator liczb losowych
Author
Message
chyras
Poziom 10
Poziom 10


Joined: 29 Nov 2002
Posts: 47
Location: Opole

Post#1 Post from the author of the topic 25 Mar 2004 13:02   

Sprzętowy generator liczb losowych


Zrobiłem sobie taki prosty generatorek, wykorzystujący zjawisko przebicia złącza BE tranzystora:

http://www.cryogenius.com/hardware/rng/

Jako tranzystory wstawiłem BC847 (SMD) - i nic... Nie działa. Napięcie przebicia w specyfikacji jest podane: 6V, u mnie występuje 7.5V. Nie mam na razie dostępu do oscyloskopu, więc poszukiwania prowadzę teoretyczno-multimetrycznie (:

Czy ktoś ma jakieś doświadczenia w tym temacie?

Pozdrawiam,
Chyras
Back to top
   
rybol
Poziom 18
Poziom 18


Joined: 06 Jul 2003
Posts: 529

Post#2 03 Jun 2006 14:33   

Re: Sprzętowy generator liczb losowych


czy udalo ci sie zrobic dzialajacy uklad?
Back to top
   
Google

Google Adsense


Post# 03 Jun 2006 14:33   





Back to top
   
_jta_
Poziom 26
Poziom 26


Joined: 02 Mar 2004
Posts: 18072
Location: Warszawa

Post#3 03 Jun 2006 17:38   

Sprzętowy generator liczb losowych


Jakoś mi się nie chce wierzyć, żeby przebicie złącza dawało biały szum. Ktoś mi opowiadał, że stosował szumiący tranzystor
(chyba właśnie na zasadzie przebicia złącza) w kluczu sprzętowym do swojego programu komputerowego - program mierzył
charakterystyki tego szumu, i na tej podstawie rozpoznawał, czy to właściwy klucz, czy jakaś podróbka.

Co do napięcia przebicia emiter-baza: w katalogu podaje się tylko minimalne napięcie przebicia (właśnie 6V),
czyli zawsze może być większe, i na ogół jest większe - trudno, żeby starali się tarfić w to minimalne.
Back to top
   
Google

Google Adsense


Post# 03 Jun 2006 17:38   





Back to top
   
Bonkot
Poziom 23
Poziom 23


Joined: 21 Sep 2004
Posts: 3188
Location: Lublin

Post#4 03 Jun 2006 22:39   

Sprzętowy generator liczb losowych


Witam
Na stronie „edw” znajduje się artykuł do układu prostego generatora szumu na tranzystorach. Kiedyś złożyłem ten układ (na pająka) i działał. Sprawdzałem podłączając go do wejścia karty dźwiękowej i obserwowałem wynik w programie „oscyloscope”, czy coś takiego, dokładnie nie pamiętam. W każdym razie wart poeksperymentowania.
http://elportal.pl/index.php?module=ContentExpress&file=index&func=display&ceid=63&meid=17
Pozdrawiam.
Back to top
   
Google

Google Adsense


Post# 03 Jun 2006 22:39   





Back to top
   
_jta_
Poziom 26
Poziom 26


Joined: 02 Mar 2004
Posts: 18072
Location: Warszawa

Post#5 03 Jun 2006 22:49   

Sprzętowy generator liczb losowych


Można jeszcze użyć układu radioodbiornika FM, tylko bez anteny, i zaekranowanego,
żeby nic nie złapał - detektor FM przy braku sygnału daje na wyjściu biały szum. :)
Back to top
   
Jacor
Poziom 13
Poziom 13


Joined: 27 Dec 2002
Posts: 126

Post#6 06 Jun 2006 00:27   

Re: Sprzętowy generator liczb losowych


Proponuję dwie metody:
1) Generator liczb pseudo-losowych z wykorzystaniem rejestru przesuwnego z liniowym sprzężeniem zwrotnym - LFSR. Robiłem taki 16-bitowy podłączony do przetwornika C/A, na wyjściu mamy biały szum o rozkładzie równomiernym (nie Gaussa).
2) Zastosować np. diodę (najlepsze są stare rosyjskie) lub rezystor i wykorzystać zjawisko szumu termicznego (ruchy Browna), wzmacniacz operacyjny i mamy szum biały gaussowski, lub dokładając przetwornik A/C - mamy generator liczb losowych o rozkładzie gaussowskim.
Obie metody są sprawdzone, wykorzystywałem je w projektach do testowania transmisji danych.
Pozdrawiam
Back to top
   
_jta_
Poziom 26
Poziom 26


Joined: 02 Mar 2004
Posts: 18072
Location: Warszawa

Post#7 06 Jun 2006 11:50   

Sprzętowy generator liczb losowych


Generator pseudolosowy (jak możemy się zadowolić pseudolosowością) - trzeba odpowiednio dobrać
długość rejestru przesuwnego i sprzężenie, na przykład 31-bitowy i XOR na 13-tym bicie da dobre rezultaty.
Z tym, że daje to jeden bit - żeby na przetwornik C/A dać więcej, trzeba robić po kilka przesunięć w rejestrze.

Lista "dobrych" kombinacji długości rejestru i umieszczenia bramek XOR jest podana w:
M. Zivkovic, Mathematics of Computation 62,385 (1994).

Szum termiczny ze względu na zjawisko samoorganizującej się krytyczności zawiera sporo szumu czerwonego.
Jeśli piszesz, że "metody są sprawdzone", to niedokładnie sprawdziłeś.
Back to top
   
Google

Google Adsense


Post# 06 Jun 2006 11:50   





Back to top
   
Jacor
Poziom 13
Poziom 13


Joined: 27 Dec 2002
Posts: 126

Post#8 06 Jun 2006 12:53   

Re: Sprzętowy generator liczb losowych


Panie _ita_ : nie neguję Pańskiej wiedzy, ale wszystko zależy od wymagań (losowy, pseudolosowy),jakie pasmo ma być zaszumione i czemu to wszystko ma służyć.

1) Generator pseudolosowy, liczby z przedziału (-1,1) -15 bitowy rejestr, bramki ExOR na 1, 5, 11, 16 przerzutniku, wyjście z 8 przerzutnika określa bit znaku (15-bitowy moduł liczby). Generator ma okres równy 32767, przedział (-1,1) wypełniony równomiernie, spełnione wymagania statystyczne tj.: średnia generowanych liczb =0,5, wariancja 0,083, na wyjściu szum biały. Ten układ był analizowany w programie LabView i implementowany w FPGA.

2) Szum termiczny - spowodowany przypadkowymi i statystycznie niezależnymi ruchami elektronów, jeśli do tego zjawiska zastosujesz centralne twierdzenie graniczne, to uzyskasz odpowiedź, że szum termiczny jest procesem gaussowskim o zerowej wartości średniej, więc może być traktowany jako biały szum gaussowski.
Przykładowo dla idealnego rezystora o rezystancji 1MΩ, w temperaturze wynoszącej 20 stopni Celcjusza i paśmie 20MHz, wartość skuteczna napięcia szumu będzie równa 568µV.

3) Można też stosować rejestry LFSR z wykorzystaniem transformacji Box'a-Muller'a, algorytm Tezuki i wiele innych.
Proszę poczytać: S. Haykin"Systemy telekomunkacyjne" , R. Zieliński "Generatory liczb losowych" , P. Leszczyński, B. Wasielak "Przegląd generatorów liczb pseudolosowych".
Pozdrawiam
Back to top
   
_jta_
Poziom 26
Poziom 26


Joined: 02 Mar 2004
Posts: 18072
Location: Warszawa

Post#9 06 Jun 2006 15:54   

Sprzętowy generator liczb losowych


1) coś tu jest niejasne: 15-bitowy rejestr, a bramka na 16-tym przerzutniku? jaką to fukncję realizuje?
generator, o którym ja pisałem, działa z wielomianem x^31+x^13+1 w arytmetyce modulo 2;
średnia i wariancja to trochę mało na określenie, czy szum jest naprawdę biały, trzeba sprawdzić
korelacje dla różnych przesunięć czasowych... szum biały wymaga zera korelacji; sprawdzenie
generatora o okresie 32767 to godzina obliczeń w assemblerze na szybkim komputerze PC.

2) zauważ, że to wymaga niezależnych ruchów elektronów, a tego nie da się uzyskać - dlatego
nie ma idealnych oporników, wszystkie rzeczywiste oporniki dają szum czerwony oprócz białego.

3) nie bardzo mam czas na czytanie takiej ilości książek - masz jakiś konkretny algorytm, który daje
dobre rezultaty? widziałem już bardzo dużo złych algorytmów i książek w których je opisano...
niewiele widziałem dowodów na poprawne działanie jakiegoś algorytmu, chętnie bym jakiś poznał;
spędziłem wiele miesięcy nad generatorami liczb losowych, coś dobrego podpowiedział mi
Jouke R. Heringa (International Journal of Modern Physics C3,561 (1992)) - dzięki temu
zrobiłem generator na dwóch wielomianach, tak by skasowały się ich korelacje.

Rozumiem, że sporo się tą dziedziną zajmowałeś, i sporo się nauczyłeś. Jeśli jednak szum ma być
dobry, to trzeba nie tylko powtarzać to, co zrobili inni, ale i badać, czy to jest dobrze zrobione, i poprawiać.

Na przykład warunkiem, żeby generator na bramkach XOR działał prawidłowo, jest skonstruowanie go
na podstawie wielomianu w arytmetyce modulo 2, który nie rozkłada się na iloczyn dwóch wielomianów.

Mój generator jest opisany tu: http://www.elektroda.pl/rtvforum/viewtopic.php?p=1653724#1653724
natomiast na generatorze z 15-bitowym rejestrem nie polegałbym, bo 2^15-1 nie jest liczbą pierwszą.
Back to top
   
Jacor
Poziom 13
Poziom 13


Joined: 27 Dec 2002
Posts: 126

Post#10 06 Jun 2006 21:45   

Re: Sprzętowy generator liczb losowych


Zgadzam się z twoimi uwagami, jednak jak napisałem wcześniej wszystko zależy od wymagań jakie stawiamy przed danym generatorem. Do moich celów wspomniane generatory i uzyskane na ich podstawie wyniki były wystarczające.
Generatory liczb losowych i pseudolosowych to tzw. temat "rzeka" i napisano na ich temat wiele książek. Generatory, które ja stosowałem (ze wskazaniem na implementację w układzie FPGA) spełniły moje oczekiwania, jednak dla uzyskania dobrych parametrów polecałbym to: http://www.ee.ucla.edu/~ipl/a_hardware_gaussian_noise_generator_for_channel_code_evaluation.pdf
http://www.cse.cuhk.edu.hk/~phwl/mt/public/archives/papers/bm_tc06.pdf
W mojej poprzedniej wypowiedzi (poście) był błąd (jak słusznie zauważyłeś): bramka ExOR jest na 15 przerzutniku.Tego generatora nie można zaliczyc do idealnych, ale był wystarczający dla moich potrzeb i bardzo prosty w budowie.
Dziękuje za słuszne uwagi i pozdrawiam.²²
Back to top
   
Post new topic  Reply to topic      Main Page -> Forum Index -> Electronic Circuits DIY ideas, problems -> Sprzętowy generator liczb losowych
Page 1 of 1
Similar topics
[ATmega32][C/AVRStudio] generator liczb losowych (4)
Generator liczb losowych z programowalnym zakresem. (8)
Generator Prawdziwych Liczb Losowych (4)
[C]Generator liczb losowych + wykres (1)
Generator liczb losowych Visual C++ (14)
Sprzętowy generator liczb losowych (5)
generator liczb losowych na atmega48 <basic> (2)
generator liczb losowych oparty na ciągu fibonacciego (1)
MATLAB - generator liczb losowych metodą inv cdf (1)
[C++] Generowanie liczb losowych. (2)

Page generation time: 0.096 seconds


FAQ || Administrator || Moderators || Widgets and banners || Contact
elektroda.pl topic RSS feed