| Author |
Message
|
chyras Poziom 10

Joined: 29 Nov 2002 Posts: 47 Location: Opole
|
#1
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

Joined: 06 Jul 2003 Posts: 529
|
#2
03 Jun 2006 14:33 Re: Sprzętowy generator liczb losowych |
|
|
|
czy udalo ci sie zrobic dzialajacy uklad?
|
|
| Back to top |
|
 |
Google

|
#
03 Jun 2006 14:33 |
|
|
|
|
|
| Back to top |
|
 |
_jta_ Poziom 26

Joined: 02 Mar 2004 Posts: 18072 Location: Warszawa
|
#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

|
#
03 Jun 2006 17:38 |
|
|
|
|
|
| Back to top |
|
 |
Bonkot Poziom 23

Joined: 21 Sep 2004 Posts: 3188 Location: Lublin
|
#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

|
#
03 Jun 2006 22:39 |
|
|
|
|
|
| Back to top |
|
 |
_jta_ Poziom 26

Joined: 02 Mar 2004 Posts: 18072 Location: Warszawa
|
#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

Joined: 27 Dec 2002 Posts: 126
|
#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

Joined: 02 Mar 2004 Posts: 18072 Location: Warszawa
|
#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

|
#
06 Jun 2006 11:50 |
|
|
|
|
|
| Back to top |
|
 |
Jacor Poziom 13

Joined: 27 Dec 2002 Posts: 126
|
#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

Joined: 02 Mar 2004 Posts: 18072 Location: Warszawa
|
#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

Joined: 27 Dec 2002 Posts: 126
|
#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 |
|
 |