Forum: Digitale Signalverarbeitung / DSP / Machine Learning Welches LFSR für Weisses Rauschen?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Michael W. (Gast)


Lesenswert?

Ich möchte mit einem solchen Register ein möglichst gutes weisses 
Rauschen erzeugen. Bei der Durchsicht der einschlägigen Dokumente (WP, 
XI, ED) sowie etlicher universitärer Schriften findet sich immer das 
Postulat, dass mit eben jenen LFSR ein weisses Rauschen zu erzeugen sei, 
allerdings fehlt überall der Beleg oder formelle Beweis. Ich hätte mir 
einen Screenshot eines Spektrum Analyzers gewünscht, denn es kann kaum 
sein, dass alle Registerformen und Rückkoppelungen genau Dasselbe 
liefern. Leider ist auch bei offiziellen Publikationen von Instituten 
kaum etwas Genaues zu finden. Die Bandbreite der vorgestellten 
Schaltungsvarianten reicht vom 5BIT- über ein 32er mit gold code für AES 
bis hin zu einem 168er für Sateliten-Rauschsignal-Codierung.

Ich nehme an, dass längere Shift-Register mit mehr Rückkopplungen ein 
besseres Resultat liefern, kann das aber auch nicht mathematisch 
belegen, daher habe ich begonnen, mit einigen zu experimentieren, finde 
aber alles andere, als ein glattes weisses Rauschen. Es gibt fast immer 
starke einzelne peeks im Spektrum, je nachdem, wie man das Bit 
auswertet. Da scheint es auch unterschiedliche Ansätze zu geben: Ich 
habe es bisher einfach selbst als Ausgang genommen, benutze also das 
digitale Signal in Vollaussteuerung und bekomme von einem SR ein Signal 
mit der maximalen Bandbreite i.A. der eingespeisten HF-Taktfrequenz. Nun 
gibt es aber auch Implementierungen, welche mehrere solcher LFSR 
parallel benutzen, um gleich mehrere Bits in time zu erzeugen, welche 
dann zusammengefügt, ein z.B. 8 Bit Rauschen ergeben.

Welches wäre der ideale Weg, um ein möglichst breitbandiges Rauschen zu 
erzeugen, welches ich dann anschließend filtern kann?

Die Bandbreite sollte mindestens 10MHz haben und optimalerweise bis nach 
0 herunterreichen. Als Taktgenerator steht ein 10MHz-Frequenznormal zur 
Verfügung. Da ein FPGA eingesetzt werden darf, wäre auch eine PLL 
machbar, mit der ein 300MHz-System laufen könnte. Mehrere LFSR sind 
ebenfalls kein Problem. Wir haben Platz ohne Ende, brauchen nur eine 
brauchbare Lösung. Als Filter wären sowohl digitale Filter, als auch 
Quarzfilter in Analogtechnik oder eben beides zulässig.

Beitrag #6677551 wurde von einem Moderator gelöscht.
von ... (Gast)


Lesenswert?

Vergiss LFSR.

Nimm ein Verfahren, dass die Maechtigkeit* des reellen Zahlenraums 
nutzt.
Das Suchwort zum Testen: "diehard".



*) das ist eine zahlentheoritische Definition

von Ingo W. (uebrig) Benutzerseite


Lesenswert?

Markus W. schrieb:
> Ich nehme an, dass längere Shift-Register mit mehr Rückkopplungen ein
> besseres Resultat liefern, kann das aber auch nicht mathematisch
> belegen, daher habe ich begonnen, mit einigen zu experimentieren, finde
> aber alles andere, als ein glattes weisses Rauschen. Es gibt fast immer
> starke einzelne peeks im Spektrum, je nachdem, wie man das Bit
> auswertet. Da scheint es auch unterschiedliche Ansätze zu geben: Ich
> habe es bisher einfach selbst als Ausgang genommen,

Dafür sollte die Wiederholrate (1/Zykluszeit) weit unter der von dir 
gewünschten, unteren Grenzfrequenz liegen, bedingt also ein langes LFSR.
Was die Lage der Abgriffe angeht, gibt es tatsächlich "schlechte" 
Kombinationen, die nicht den gesamten Wertebereich ausschöpfen. 
Ausgewählte "gute", auch bei sehr langen Registern, findet man in dieser 
AN:
http://www.xilinx.com/support/documentation/application_notes/xapp052.pdf
Wenn du das dann mit 300MHz laufen lassen kannst, dann reicht es 
tatsächlich, ein beliebiges Bit abzugreifen und durch einen 10MHz 
Tiefpass zu schicken.

von Sebastian B. (Gast)


Angehängte Dateien:

Lesenswert?

Moin,

ein LFSR liefert ein Kammspektrum, Abstand der Spektrallinien ist 
1/Periodendauer. Mit einer sehr langen Sequenz bekommt man die 
Spektrallinien nah zusammen.

Außerdem fällt das Spektrum zur Abtastrate hin ab. Wenn man die 
Abtastrate deutlich höher wählt, als für die gewünscht Bandbreite 
erforderlich, bekommt man ein recht flaches Spektrum - aber das wurde 
weiter oben schon angesprochen.

Sebastian

von Frequenztheoretiker (Gast)


Lesenswert?

Den Kammfilter habe ich auch noch in Erinnerung und soweit mein 
Verständnis dafür reicht, würde ich annehmen, dass man mehrere solcher 
Generatoren analog mischen (addieren!) können sollte. Sofern abweichende 
Generatorfrequenzen benutzt werden (300, 290, ...) , müssten sich die 
resultierenden Frequenzen in den Bändern verdichten.

von IQ130+ (Gast)


Lesenswert?

Markus W. schrieb:
> Ich möchte mit einem solchen Register ein möglichst gutes weisses
> Rauschen erzeugen. Bei der Durchsicht der einschlägigen Dokumente (WP,
> XI, ED) sowie etlicher universitärer Schriften findet sich immer das
> Postulat, dass mit eben jenen LFSR ein weisses Rauschen zu erzeugen sei,
> allerdings fehlt überall der Beleg oder formelle Beweis.

Dan haste weder im Studium aufgepasst (oder eh das Falsche an der 
falschen Hochschule studiert) oder in die falschen Bücher geschaut.
Meine Empfehlung:
ISBN 978-3-322-99220-8

Beitrag #6678114 wurde von einem Moderator gelöscht.
von Michael W. (Gast)


Lesenswert?

... schrieb:
> Nimm ein Verfahren, dass die Maechtigkeit* des reellen Zahlenraums
> nutzt.

Die Frage wäre, welches. (?

Die DIEHARD Test-Batterie hatte ich auch gefunden. Die wurde sogar hier 
im Forum schon behandelt, nur seltsamerweise ins OT verschoben.
Beitrag "Feststellen wie zufällig Zufallszahlen sind"

Ingo W. schrieb:
> Wenn du das dann mit 300MHz laufen lassen kannst, dann reicht es
> tatsächlich, ein beliebiges Bit abzugreifen und durch einen 10MHz
> Tiefpass zu schicken.
Kann ich. Die Lösung klingt ja schon einmal nicht schlecht.

Sebastian B. schrieb:
> ein LFSR liefert ein Kammspektrum,
Ich nehme an, die Abtastrate in der Grafik liegt bei 3G?

IQ130+ schrieb:
> Dan haste weder im Studium aufgepasst (oder eh das Falsche an der
> falschen Hochschule studiert)
Man kann nicht alles studieren, was einem später als Anforderung über 
den Weg läuft. Aber du kannst wahrscheinlich alles perfekt.

Dieter H. schrieb im Beitrag #6678114:
> weißes Rauschen ist über eine konstante spektrale Leistungsdichte
> definiert. Nach einem wichtigen Theorem
Das ist jetzt wieder sehr theoretisch. Habe es trotzdem nachgelesen und 
denke ich auch, verstanden. Nur: Das Wissen um die Verteilung des 
weissen Rauschens (die Definition war mir durchaus geläufig) führt mich 
noch nicht zum idealen LFSR.

von Michael W. (Gast)


Lesenswert?

Ich bin aber nun immerhin so weit gediehen, dass ich eine Publikation 
gefunden habe, die aussagt, dass LFSR durchaus den DIEHARD Test von 
Marsaglia überstehen können, wobei es auf die Rückführungen ankommt. 
(wer hätte das gedacht). Einfache LFSR erfüllen die Kriterien nicht.

Leider schweigt sich auch dieses Dokument über ein geeignetes Beispiel 
aus.

Das von oben gelinkte Dokument der Firma Xilinx, welche eine 
Zusammenstellung von Codes bis 168 aufführt (und sich dabei auf Arbeiten 
einer Person aus den 1970er Jahren bezieht) hatte ich bereis eingangs 
mit erwähnt. Die meisten Anordnungen dort arbeiten mit 2-4, maximal 6 
Rückführungen. Über die Qualität wird aber keine Aussage getroffen und 
vom Autor ist auch nichts zu finden.

Ist das ein weißer Fleck?

Ist es das eventuell deshalb, weil es damals noch keine Hardware gab, 
mit der man so rasch und billig Schieben konnte? Die meisten 
PRG-Verfahren, die genannt werden, sind vergleichsweise aufwändige 
Software-Operationen und damit sehr langsam, so intelligent sie auch 
sein mögen.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Markus W. schrieb:
> Ist es das eventuell deshalb, weil es damals noch keine Hardware gab,
> mit der man so rasch und billig Schieben konnte?

Sicher nicht. Da wurde wahrscheinlich deutlich mehr berechnet und 
weniger ausprobiert (Der LDPC Code, der z.b. in DVB-S2 statt Viterbi 
verwendet wird, ist auch iirc irgendwann in den 1960er Jahren entwickelt 
worden. Gab aber lange keine DSPs, die das mit dem noetigen Speed bei 
wenig Leistung/Kosten rechnen konnten, daher wurde der erst bei DVB-S2 
eingesetzt und nicht bei DVB-S).
Grad' zu den klassischen LFSR muesst's schon ordentlich viel Literatur 
geben. Kann mich noch dran erinnern, dass da mal was dazu in einer 
Regelungstechnikvorlesung an mir vorbeigezogen ist. iirc gab' da auch 
irgendeine Transformation dazu...
Und soo zufaellig sind diese Folgen eben nicht, da kann man (also ich 
grad' natuerlich nicht) ziemlich genau ausrechnen, wie die 
zusammengesetzt sind - also wieviel gleiche bits hintereinander kommen, 
etc. bla.
Was aber nicht bedeuten muss, dass da das Rauschen "schlecht" waere.

Gruss
WK

von Michael W. (Gast)


Lesenswert?

Dergute W. schrieb:
> Gab aber lange keine DSPs, die das mit dem noetigen Speed bei
> wenig Leistung/Kosten rechnen konnten,
Exakt das meinte ich.

Dergute W. schrieb:
> Grad' zu den klassischen LFSR muesst's schon ordentlich viel Literatur
> geben.
Dachte ich auch, aber auch da scheitert es an der Rechenleistung, denke 
ich. Das rein mathematisch zu untersuchen, mit z.B. MATLAB, ist sicher 
schwierig, wegen der Datenmengen. Die langen LFSR laufen ja selbst in 
Echtzeit ewig.

Wenn ich mehr Zeit hätte, würde ich mich mal dran machen. Eigentlich 
braucht er nur eine Schleife, die die Länge und Struktur der LFSRs 
umkonfiguriert, eine FFT laufen lässt und die Ergebnisse raustut, bzw 
bewertet.

Ich orientiere mich fürs erste mal an der Xilinx-Tabelle. Wegen der 
Bandbreite wäre die Idee, einfach unterschiedlich lange Ketten parallel 
laufen zu lassen und so gleich mehrere Bits in einem Takt zu bekommen.

Wäre noch die Frage offen, womit man am Besten filtert?

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Markus W. schrieb:
> Dachte ich auch, aber auch da scheitert es an der Rechenleistung, denke
> ich. Das rein mathematisch zu untersuchen, mit z.B. MATLAB, ist sicher
> schwierig, wegen der Datenmengen.

Aeh - das waere nicht rein mathematisch. Rein mathematisch geht z.B. mit 
Karoblock und Bleistift oder Tafel und Kreide. Aber jeweils nur als 
Auslagerungsdatei fuer den menschlichen Hauptprozessor :-)

Hab' grad mal geguckt: Ich hab' da ein Vorlesungsscript Regelungstechnik 
und Systemtheorie II, 4. Auflage 1994 (n. Chr. ;-) ) , Kapitel 4: 
Operatorenrechnung  fuer zeitdiskrete Systeme. Da gehts um Galoiskoerper 
und V-Transformation.
Und da wird als "anschauliche Anwendung" der Operatorenrechnung auf 
Schieberegister und "davon als wichtigster Spezialfall die 
maximalperiodischen Schieberegister" eingegangen.
Das hatte ich im Hinterkopf.
Da wird die Autokorrelation aber nur mal kurz gestreift; auf 
irgendwelche weiteren Rauscheigenschaften wird nicht eingegangen.

Sowas von dem Kaliber, nur vielleicht didaktisch besser aufbereitet, 
meinte ich.

Gruss
WK

von Jürgen S. (engineer) Benutzerseite


Lesenswert?

Markus W. schrieb:
> Wäre noch die Frage offen, womit man am Besten filtert?
üblicherweise wird es mit einem CIC dezimiert. Dessen unvollständige 
Oberwellendämpfung wäre zu beachten. Man kann das Signal auch 
runtersampeln /runtergesampelt addieren und so die Spiegelfrequenzen 
nutzen: Dann wird das nach oben abflachende Spektrum um Nyquist herum 
nach unten geklappt und der Gesamtverlauf noch etwas flacher. Des 
weiteren gibt es die Option, sich das Spektum zurechtzubiegen, also mit 
blauem Rauschen (anderer NG + HP) aufzufüttern.

von Tobias P. (hubertus)


Lesenswert?

Markus W. schrieb:
> Das von oben gelinkte Dokument der Firma Xilinx, welche eine
> Zusammenstellung von Codes bis 168 aufführt (und sich dabei auf Arbeiten
> einer Person aus den 1970er Jahren bezieht) hatte ich bereis eingangs
> mit erwähnt. Die meisten Anordnungen dort arbeiten mit 2-4, maximal 6
> Rückführungen. Über die Qualität wird aber keine Aussage getroffen und
> vom Autor ist auch nichts zu finden.

die Xilinx-Tabelle gibt an, welche Rückführungen gebraucht werden, um 
eine MLS=Maximum Length Sequence zu erhalten.
Wenn man beispielsweise ein 10 Bit Schieberegister sich anschaut, dann 
ist die maximale Anzahl möglicher Zustände 2^10. Die MLS ist genau 1023 
Bits lang. Entsprechend lang wäre die MLS bei 168 Bits.
Die Stellen, wo Anzapfungen sein müssen, damit man eine MLS erhält, 
lassen sich berechnen bzw. man kann prüfen, ob ein bestimmtes Set an 
Anzapfungen eine MLS erzeugt oder nicht. Und zwar lassen sich die 
Anzapfungen als Polynom beschreiben, beispielsweise entspricht eine 
Anzapfung bei den Bits 0, 4 und 5 dem Polynom x^5 + x^4 + 1. Dieses 
Polynom erzeugt genau dann eine MLS, wenn es primitiv ist. Das bedeutet 
nach meiner Erinnerung, dass es sich nicht als Produkt zweier Polynome 
geringeren Grads schreiben lässt. Zum Beispiel

(x+1)*(x^2+x+1)=x^3+2x^2+2x+1

da wir im binären System arbeiten, müssen die Koeffizienten noch mod 2 
gerechnet werden, also bekommt man x^3+1. Und offenbar ist dieses 
Polynom nicht primitiv, da man es als Produkt zweier Polynome mit Grad 1 
bzw. 2 schreiben kann. Wenn man also ein LFSR bauen würde mit Anzapfung 
bei Bit 0 und Bit 3, dann ergäbe sich irgend eine Sequenz, aber sicher 
keine MLS.

Soweit ich mich noch erinnere, gab es auch irgend ein Verfahren, aus dem 
Polynom die Sequenz zu berechnen. Da war irgend eine "d-Transformation" 
die das ermöglicht. Bei Interesse kann ich versuchen, meine 
diesbezüglichen Notizen wiederzufinden. War in einem Kurs über 
Kryptographie.

von Michael W. (Gast)


Lesenswert?

Danke für die Ausführungen. Bitte keine Umstände. Ich kann mir das auch 
selber anlesen. Gfs gibt es dazu ja online Literatur einer Hochschule.

von Michel M. (elec-deniel)


Lesenswert?

vielleicht hilft dieses Beispiel
von Helmut für das allgemeine Verständnis weiter ?!
Rückkopplungen und Taktfrequenzen können einfach graphisch erzeugt 
werden ....
Beitrag "Schieberegister für LTSpice"

von Michael W. (Gast)


Angehängte Dateien:

Lesenswert?

Michel M. schrieb:
> vielleicht hilft dieses Beispiel
Bedingt. Es enthält zumindest einen interessanten link:
https://www.digikey.at/en/articles/use-readily-available-components-generate-binary-sequences-white-noise

Dort wird u.a. erwähnt, wie man das entstehende Spektrum begradigt und 
in ein echtes (flaches) weißes Rausches überführt, indem die "digitale 
Abstastfrequenz herausgefiltert" wird. So ganz verstanden habe ich die 
Schaltung aber nicht. Die Ankopplung der Signalausgänge ist mir nicht 
plausibel.

von Gerhard H. (ghf)


Lesenswert?

Das sieht so aus, als würden viele Bits aus einem
LFSR zusammenkombiniert um weißes Rauschen zu erzeugen.
Das funktioniert nicht wirklich, weil die Bits in einem
LFSR untereinander stark korreliert sind.

Das Bit n+1 ist meist das Bit n vom Takt davor, wenn
man nicht gerade an einer feedback-Stelle ist.

"Möglichst zufällige" Bits aus mehreren verschiedenen
LFSRs auf einen DAC zu geben hat hier übrigens schon
mal ganz gut funktioniert um ein moduliertes Signal
im Rauschen ersaufen zu lassen. Der Spektrumanalyzer
hatte nix dran auszusetzen.

Aufwärtszahler als LFSR sind einfach und wegen der
simplen Rückkopplung auch schnell.

Gibt es eigentlich einen Algorithmus, wie man von
einem Vorwärtszähler zu den richtigen Taps für
rückwärts kommt, für vorwärts/rückwärts?

Gruß, Gerhard

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Gerhard H. schrieb:
> Das sieht so aus, als würden viele Bits aus einem
> LFSR zusammenkombiniert um weißes Rauschen zu erzeugen.
> Das funktioniert nicht wirklich, weil die Bits in einem
> LFSR untereinander stark korreliert sind.

Hier wurde das Ding und was das Filter macht, schonmal durchgekaut:

Beitrag ""analoge" FIR Filterung"

Gerhard H. schrieb:
> Gibt es eigentlich einen Algorithmus, wie man von
> einem Vorwärtszähler zu den richtigen Taps für
> rückwärts kommt, für vorwärts/rückwärts?

Ich kenne keinen, halte es aber schon fuer moeglich, dass es sowas gibt.

Gruss
WK

von Michael W. (Gast)


Lesenswert?

Dergute W. schrieb:
> Hier wurde das Ding und was das Filter macht, schonmal durchgekaut:
Interessant! Die Frage ist jetzt: geht es oder geht es nicht? Laut des 
anderen threads ist die Filterung unzureichend gelöst. Im o.g. Artikel 
(und auch im gelinkten Thema) wird erwähnt, dass dies auch mit einem 
digitalen FIR zu machen wäre. Macht das Sinn? Der Aufwnad sollte sich in 
Grenzen halten, wenn möglich.

Gerhard H. schrieb:
> "Möglichst zufällige" Bits aus mehreren verschiedenen
> LFSRs
Das war auch mein Ansatz. Ich möchte mehrere Schieberegister benutzen, 
um unkorrellierte Bits zu bekommen, die ich zeitgleich nutzen kann. So 
soll vor allem die Bandbreite erhöht werden: Angenommen ich filtere 
einen LFSR-Ausgang (wie auch immer) und erhalte eine erhöhte Auflösung 
von sagen wir 10 Bits, dann sollte man das 
niederwertigeste/höchstwertigste(?) davon nehmen können, um einen 
Ausgang zu treiben. Mal angenommen, die Taktfrequenz beträgt 250MHz, 
dann braucht es 4 Einheiten, um 1Gs zu erzeugen und auszugeben (SERDES).

Gerhard H. schrieb:
> Aufwärtszahler als LFSR sind einfach und wegen der
> simplen Rückkopplung auch schnell.
Wie sieht das konkret aus?

von Asic-Bauer (Gast)


Lesenswert?

Markus W. schrieb:
> und erhalte eine erhöhte Auflösung
> von sagen wir 10 Bits, dann sollte man das
> niederwertigeste/höchstwertigste(?) davon nehmen können,
Nach meinem Gefühl müsste es das niederwertigste sein, weil dies die 
höchste Frequenz hat.

> angenommen, die Taktfrequenz beträgt 250MHz,
> dann braucht es 4 Einheiten, um 1Gs zu erzeugen
Die 4 resultierenden Bits sollen dann interlaced werden, oder was?
Des wäre ein Art runtermischung um Faktor 16 und Addition 4er solcher 
Ströme.

von Michael W. (Gast)


Lesenswert?

Asic-Bauer schrieb:
> Die 4 resultierenden Bits sollen dann interlaced werden, oder was?
So ist es. Ich brauche 1 GS. Eventuell nehme ich auch 5 mit 200 MHz.

> Das wäre eine Art Runtermischung um Faktor 16 und Addition 4er solcher
> Ströme.
Warum wäre es das?
Und wäre das ein Problem?

von Asic-Bauer (Gast)


Lesenswert?

ich denke schon, weil das Rauschen mit einem Viertel der Geschwindigkeit 
"abgespielt" wird. Das ergibt keine 1 GHz sondern 4x 250 MHz addierend 
gemischt.
Das ist nicht das gleiche wie ein vollständiger Generator auf 1Ghz
(und auch der hat kein glattes Spektrum bis 1Ghz).

von jo (Gast)


Lesenswert?

Der HP 3582A FFT-Analyzer hatte sowas drin:

PN-Generator (rückgekoppeltes Schieberegister), an den 
Register-Ausgängen hing das "sin(x)/x"-Filter in Form von bewerteten 
Widerständen.

Ich fand die Lösung damals einfach genial.

von Jürgen S. (engineer) Benutzerseite


Lesenswert?

Markus W. schrieb:
>> Die 4 resultierenden Bits sollen dann interlaced werden, oder was?
> So ist es. Ich brauche 1 GS. Eventuell nehme ich auch 5 mit 200 MHz.
>
>> Das wäre eine Art Runtermischung um Faktor 16 und Addition 4er solcher
>> Ströme.
> Warum wäre es das?
> Und wäre das ein Problem?
Durch das wechselnde Verwenden der Bits wird aber mit der 
Wechselfrequenz multipliziert und das führt zu einer multiplikativen 
Mischung der Frequenzen und damit zur Faltung des Oberwellenspektrums. 
Da das Wechseln effektiv Rechtecke sind und die Daten ebenso, kann man 
das Spektrum nach Maßgabe der Fourierfrequenzen sogar direkt berechnen 
und hinschreiben. Die Grundwelle dieses Spektrums hat meiner Meinung 
durchaus 1 GHz. Aaaaber:

Damit werden die Rauschsignale "gemultiplexed" und diese Frequenz hat 
man dominant im Signal drin - es sei denn, sie würde durch die 
entstehende Mischung gut genug maskiert oder ist so hochfrequent, dass 
sie irrelevant ist. Das wäre sie wenn man das Spektrum nur bis deutlich 
unterhalb der 1GHz nutzt, was man ohnehin tun muss, weil das 
LFSR-Rauschen nicht einmal bis 200MHz nutzbar ist. Ich benutze solche 
Schieberegisterdinger bis ans Ende das analogen Audiospektrums.

von Jürgen S. (engineer) Benutzerseite


Lesenswert?

Um mehre Bits -> derselben Funktion <- parallel zu bekommen, muss man 2 
oder mehr Funktionen parallel arbeiten lassen und mathematisch einmal 
einen- und einmal 2 Schritte ausformulieren. Bei den Schieberegistern 
geht das sehr einfach, wenn man das nächste- und das übernächste 
Ergebnis, also das 2-fache Weitertakten inklusive XORs berechnet. Dann 
hätte man zwei Bits je Takt, einmal die geraden und einmal die 
ungeraden. So eine Technik des parallelen Rechnens wenden wir beim 
Parallelprozessieren öfters an. Im FPGA ist der Trick allerdings dadurch 
begrenzt, dass die Rechnung schnell so kompliziert wird, dass sie nicht 
mehr in einem Takt zu machen ist. Die Lösung hier wäre somit eher, alles 
voraus zu rechnen und in einem RAM hinterlegen, was wiederum beim 
Rauschen nicht mehr so super schlau ist, weil man dann gleich alles 
hinterlegen könnte :-)

Ich würde deshalb eher raten, gleich genug Generatoren parallel zu 
nehmen und die Bits direkt zu füttern. Das kommt einer bewerteten 
Addition gleich.  Wenn man das niedrigst frequenteste Rausch-bit auf das 
LSB legt, bekommt man so eine Art blue noise. Das integriert, gibt 
ungefähr weißes Rauschen bis zur Taktfrequenz.

Für die Erhöhung der Bandbreite und das Umschalten müsste das Rauschen 
untersucht werden, inwieweit die unkorrellierten Bits aus mehreren 
Linien solcher Generatoren wirklich noch unkorrelliert sind.

von Michel M. (elec-deniel)


Lesenswert?

jo schrieb:
> Der HP 3582A FFT-Analyzer hatte sowas drin:
>
> PN-Generator (rückgekoppeltes Schieberegister), an den
> Register-Ausgängen hing das "sin(x)/x"-Filter in Form von bewerteten
> Widerständen.
>
> Ich fand die Lösung damals einfach genial.

Super Tip :-)
https://www.hpl.hp.com/hpjournal/pdfs/IssuePDFs/1978-09.pdf

Das Museum ist immer ein Besuch Wert :-)

: Bearbeitet durch User
von Wolfgang (Gast)


Lesenswert?

Markus W. schrieb:
> Ich nehme an, dass längere Shift-Register mit mehr Rückkopplungen ein
> besseres Resultat liefern, kann das aber auch nicht mathematisch
> belegen

Die Anzahl der Rückkopplungen sagt überhaupt nichts. Entscheidend ist, 
dass sie an den richtigen Stellen abgreifen. Du brauchst ein Polynom, 
das dein Schieberegister alle 2^n - 1 Zustände annehmen lässt.
Polynome, die dass mit wenig Rückkopplungen erreichen, laufen unter 
"dünn besetzte Generatorpolynome".
https://de.wikipedia.org/wiki/Linear_r%C3%BCckgekoppeltes_Schieberegister#Polynomauswahl

von Michel M. (elec-deniel)


Lesenswert?


von Michael W. (Gast)


Lesenswert?

"Cellular Automata (CA) Registers" aha!
Danke!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.