← Neueste Arbeiten
💻 Informatik

A High-Throughput DSP-Free PRNG for FPGA based on Xoshiro128** and Integer Chaotic Mixing

Dieses Paper präsentiert einen ressourceneffizienten, DSP-freien und vollständig pipelinierten hybriden PRNG für die Xilinx Zynq-7000 Plattform, der Xoshiro128**, Weyl-Sequenzen und eine ganzzahlige Tent-Abbildung kombiniert, um einen hohen Durchsatz (5,82 Gbps) zu erreichen und strenge statistische Tests zu bestehen, während gleichzeitig ein geringer Footprint beibehalten wird, der für eingebettete Anwendungen geeignet ist.

Ursprüngliche Autoren: Milad Mohammadian, Bahadin Azizinasab, Abobakr Mohammadian, Mahrokh G. Shayesteh, Mohammad Saeed khayati, Sheida Mohammadpour, Mosleh yousefi

Veröffentlicht 2026-11-09
📖 5 Min. Lesezeit🧠 Tiefgang

Ursprüngliche Autoren: Milad Mohammadian, Bahadin Azizinasab, Abobakr Mohammadian, Mahrokh G. Shayesteh, Mohammad Saeed khayati, Sheida Mohammadpour, Mosleh yousefi

Originalarbeit lizenziert unter CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). ✨ Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen

In der digitalen Welt verlassen sich viele Systeme auf Sequenzen von Zahlen, die völlig zufällig aussehen müssen, um korrekt zu funktionieren. Diese Sequenzen sind essenziell für die Sicherung der Kommunikation, die Simulation komplexer physikalischer Systeme und das Ausführen kryptografischer Protokolle. Da echte Zufälligkeit mit einer Maschine nur schwer zu erzeugen ist, nutzen Ingenieure Algorithmen, um „pseudozufällige“ Zahlen zu erstellen. Dies sind deterministische Sequenzen, die für einen Beobachter zufällig erscheinen, aber tatsächlich durch eine spezifische Menge von Regeln ausgehend von einem initialen Seed (Startwert) erzeugt werden. Die Herausforderung für Hardware-Designer besteht darin, diese Sequenzen schnell und effizient zu erstellen, ohne zu viel Energie zu verbrauchen oder zu viel Platz auf einem Computerchip einzunehmen. Wenn diese Generatoren in spezialisierte Chips namens FPGAs eingebaut werden – rekonfigurierbare Hardware, die häufig in eingebetteten Systemen verwendet wird –, ist das Ziel, eine hohe Geschwindigkeit bei gleichzeitiger Beibachtung eines kleinen Designs und hoher Energieeffizienz zu erreichen, wobei teure, stromhungrige Komponenten vermieden werden sollen, die normalerweise für schwere mathematische Berechnungen reserviert sind.

Ein Forschungsteam von Universitäten aus dem Iran hat einen neuen Weg entwickelt, einen solchen Generator zu bauen, der auf einem FPGA läuft. Ihre Arbeit konzentriert sich auf die Erstellung eines Geräts, das einen massiven Strom von zufällig aussehenden Zahlen produziert, ohne die standardmäßigen Hochleistungs-Matheteile zu verwenden, die auf den meisten Chips zu finden sind. Anstatt sich auf diese spezialisierten Komponenten zu verlassen, die oft begrenzt vorhanden sind und viel Leistung verbrauchen, entwarf das Team ein System, das nur einfache Logikgatter und Standard-Speicherregister verwendet. Das Ergebnis ist ein Generator, der Daten mit einer Rate von 5,82 Gigabit pro Sekunde produzieren kann, eine Geschwindigkeit, die viel komplexeren Designs ebenbürtig ist, während er gleichzeitig sehr wenig Ressourcen des Chips nutzt und minimal viel Energie verbraucht.

Der Kern dieses neuen Designs ist ein hybrider Ansatz, der drei verschiedene Methoden der Zahlenmischung kombiniert. Die primäre Engine ist ein bekannter Algorithmus namens Xoshiro128**, der als Hauptquelle der Sequenz dient. Diese Engine ist effizient und hat einen sehr langen Zyklus, bevor sie sich wiederholt, aber sie besitzt eine vorhersehbare mathematische Struktur, die von einem geschickten Angreifer ausgenutzt werden könnte. Um dies zu beheben, fügten die Forscher zwei zusätzliche Schichten der Mischung hinzu. Die erste Schicht nutzt einen einfachen additiven Prozess, der Werte in einer Weise verschiebt, die ein anderes Muster erzeugt. Die zweite Schicht verwendet eine „Tent Map“ (Zeltabbildung), eine Methode, die die Zahlen dehnt und faltet, ähnlich wie ein Bäcker Teig faltet, obwohl diese Faltung in diesem Fall durch einfache Ganzzahl-Mathematik statt durch physische Manipulation geschieht. Diese Schichten sind darauf ausgelegt, zusammenzuarbeiten, um die vorhersehbaren Muster der Hauptengine aufzubrechen, was die endgültige Ausgabe viel schwerer rückentwickelbar macht.

Die Forscher bauten dieses System unter Verwendung eines High-Level-Synthese-Tools auf, welches eine Softwarebeschreibung der Logik automatisch in das physische Layout des Chips übersetzt. Sie testeten das Design auf einem speziellen Chip namens Xilinx Zynq-7000. Die Implementierung war in jeder für eingebettete Anwendungen relevanten Metrik erfolgreich. Das fertige Design belegte nur 934 kleine Logikblöcke auf dem Chip und nutzte 1.071 Register, was einen sehr kompakten Fußabdruck darstellt. Entscheidend ist, dass es null spezialisierte Digital Signal Processing (DSP) Slices und null dedizierte Speicherblöcke verwendete, was beweist, dass hochgeschwindigkeitsfähige Zufallszahlengenerierung ohne diese schweren Ressourcen möglich ist. Das System lief mit einer Frequenz von 181,82 Megahertz und lieferte den zuvor genannten hohen Durchsatz. In Bezug auf die Leistung verbrauchte der Chip während des Betriebs lediglich 29 Milliwatt an dynamischer Leistung, ein Wert, der eine Unterschätzung der tatsächlichen Werte darstellt und darauf hindeutet, dass das Design extrem energieeffizient ist.

Um sicherzustellen, dass die produzierten Zahlen für den ernsthaften Einsatz wirklich zufällig genug sind, unterzog das Team die Ausgabe einer Reihe strenger statistischer Tests. Diese Tests, zu denen Standard-Suites gehören, die von Regierungsbehörden und unabhängigen Forschern verwendet werden, prüfen auf Muster, Verzerrungen und Korrelationen, die auf einen Mangel an Zufälligkeit hindeuten könnten. Der Generator bestand jeden einzelnen Test, einschließlich der anspruchsvollsten Tests, die nach subtilen Fehlern in der Sequenz suchen. Die Forscher analysierten auch, wie empfindlich das System auf Änderungen seiner Ausgangsbedingungen reagierte. Sie fanden heraus, dass die Änderung selbst eines einzigen Bits in der initialen Konfiguration dazu führte, dass die Ausgabe vollständig divergierte – eine Eigenschaft, die als Sensitivität gegenüber den Anfangsbedingungen bekannt ist. Dies stellt sicher, dass zwei Geräte, die mit leicht unterschiedlichen Seeds starten, völlig unterschiedliche Sequenzen erzeugen, was für die Sicherheit entscheidend ist.

Die Studie enthielt auch eine detaillierte Aufschlüsselung dessen, was welcher Teil des Systems beitrug. Die Forscher fanden heraus, dass die primäre Xoshiro128**-Engine bereits statistisch stark genug war, um die Tests allein zu bestehen. Die hinzugefügten Schichten verbesserten die statistische Qualität der Zahlen nicht, aber sie taten etwas anderes Wichtiges: Sie entfernten die lineare mathematische Struktur, die die Hauptengine vorhersehbar machte. Durch das Hinzufügen dieser Schichten machten die Forscher es signifikant schwieriger, die interne Struktur des Generators allein durch das Betrachten der Ausgabe zu rekonstruieren. Während die Hauptengine allein relativ schnell rückentwickelt werden konnte, erfordert das vollständige hybride System eine viel komplexere und zeitaufwendigere Anstrengung, um es zu brechen, was den Generator effektiv gegen bestimmte Arten von Angriffen absichert, ohne Geschwindigkeit oder Effizienz zu opfern.

Diese Arbeit legt nahe, dass es möglich ist, leistungsstarke Zufallszahlengeneratoren für ressourcenbeschränkte Umgebungen zu bauen, ohne auf schwere Hardwarekomponenten zurückzugreifen. Das Design bietet einen praktischen Kompromiss, der Geschwindigkeit, Ressourcennutzung und Sicherheit ausbalanciert. Obwohl die Forscher anmerken, dass die mathematischen Schritte, die in der Faltungsschicht verwendet werden, algebraisch nicht komplex sind, schafft ihre Kombination mit den anderen Schichten ein robustes System. Die Ergebnisse deuten darauf hin, dass dieser Ansatz sehr gut für eingebettete Systeme geeignet ist, bei denen Platz und Leistung kostbar sind, und eine zuverlässige Quelle für Zufälligkeit bietet, die in eine breite Palette von Geräten integriert werden kann. Die Forscher haben ihren Code und ihre Daten zur Verfügung gestellt, damit andere die Ergebnisse verifizieren und darauf aufbauen können, wodurch sichergestellt wird, dass die Ergebnisse reproduzierbar sind und das Design für zukünftige Bedürfnisse angepasst werden kann.

Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?

Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.

Digest testen →