DE102006009939B9 - Zufallszahlengenerator und Verfahren zum Erzeugen von Zufallszahlen - Google Patents

Zufallszahlengenerator und Verfahren zum Erzeugen von Zufallszahlen Download PDF

Info

Publication number
DE102006009939B9
DE102006009939B9 DE200610009939 DE102006009939A DE102006009939B9 DE 102006009939 B9 DE102006009939 B9 DE 102006009939B9 DE 200610009939 DE200610009939 DE 200610009939 DE 102006009939 A DE102006009939 A DE 102006009939A DE 102006009939 B9 DE102006009939 B9 DE 102006009939B9
Authority
DE
Germany
Prior art keywords
signal
output
threshold decision
input
coupled
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE200610009939
Other languages
English (en)
Other versions
DE102006009939A1 (de
DE102006009939B4 (de
Inventor
Arne Dr. Heittmann
Ulrich Prof. Dr. Ramacher
Helge Ludwig
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE200610009939 priority Critical patent/DE102006009939B9/de
Publication of DE102006009939A1 publication Critical patent/DE102006009939A1/de
Publication of DE102006009939B4 publication Critical patent/DE102006009939B4/de
Application granted granted Critical
Publication of DE102006009939B9 publication Critical patent/DE102006009939B9/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/84Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators

Abstract

Zufallszahlengenerator,
• mit einer Mehrzahl zumindest teilweise miteinander gekoppelter Schwellwertentscheider-Einrichtungen, wobei
– jede Schwellwertentscheider-Einrichtung mindestens einen Extern-Signaleingang zum Empfangen mindestens eines vorgebbaren externen Eingangssignals, mindestens einen Intern-Signaleingang zum Empfangen mindestens eines internen Eingangssignals, eine Summensignal-Bildungs-Einrichtung zum Bilden eines Summensignals aus den empfangenen Eingangssignalen sowie einen Signalausgang zum Bereitstellen eines Ausgangssignals aufweist;
– jeder Intern-Signaleingang einer Schwellwertentscheider-Einrichtung mit einem Signalausgang einer anderen Schwellwertentscheider-Einrichtung gekoppelt ist, derart, dass an dem Intern-Signaleingang ein an dem Signalausgang der anderen Schwellwertentscheider-Einrichtung bereitgestelltes Ausgangssignal empfangen wird;
– jede Schwellwertentscheider-Einrichtung derart eingerichtet ist, dass das von der Summensignal-Bildungs-Einrichtung gebildete Summensignal zeitlich aufintegriert wird, und dass an dem Signalausgang der Schwellwertentscheider-Einrichtung ein vorgebbares gepulstes Ausgangssignal bereitgestellt wird, sobald das zeitlich aufintegrierte Summensignal eine vorgebbare Schwelle überschreitet;
• mit einer Mehrzahl von Signal-Gewichtungs-Einrichtungen, wobei mit Hilfe einer Signal-Gewichtungs-Einrichtung ein an einem Signalausgang einer Schwellwertentscheider-Einrichtung bereitgestelltes und an einem mit dem Signalausgang gekoppelten Intern-Signaleingang einer...

Description

  • Die Erfindung betrifft einen Zufallszahlengenerator und ein Verfahren zum Erzeugen von Zufallszahlen.
  • Gegenwärtige Anwendungen im Bereich der digitalen Kommunikation (z. B. Internet, Mobile Kommunikation, Chip-Karten) erfordern den Einsatz kryptographischer Methoden zur Sicherung der zu übertragenden Information. In diesem Zusammenhang spielt die Erzeugung und Bereitstellung von Zufallszahlen eine wichtige Rolle. Zufallszahlen können technisch durch so genannte Zufallszahlengeneratoren erzeugt werden, siehe z. B. [1].
  • Anwendungen der Zufallszahlengeneratoren liegen u. a. bei Authentifizierungsverfahren (z. B. Challenge-Response-Protokolle), Schlüsselaustausch-Protokollen (z. B. Diffie-Hellmann-Schlüsselaustausch), der Schlüsselerzeugung (z. B. Sitzungsschlüssel für symmetrische Verschlüsselungsverfahren, Schlüsselerzeugung für asymmetrische Verschlüsselungsverfahren, Parametererzeugung für Public-Key-Verfahren), der Ergänzung von Klartextblöcken (Padding), dem sicheren Löschen von Speichermedien, der Generierung von Initialwerten für Pseudozufallszahlen-Generatoren und der Schlüsselerzeugung für One-Time-Pads.
  • Alle genannten Anwendungen erfordern die technische Generierung so genannter "echter Zufallszahlen".
  • Für die Erzeugung von Zufallszahlen existieren bislang beispielsweise folgende Möglichkeiten.
  • • Noise-Based Random Number Generators (z. B. [2], [3], [4])
  • Bei diesem Verfahren wird das Rauschen einer Rauschquelle (z. B. thermisches Rauschen eines Widerstandes) breitbandig verstärkt. Das verstärkte Signal wird durch einen Schwellwertentscheider bewertet und das Ausgangssignal des Schwellwertentscheiders wird mit einer konstanten Abtastfrequenz durch ein Abtast-Halteglied abgetastet. Die Folge der binären Ausgangssignale des Abtast-Halteglieds ergibt so eine 1-Bit-Zufallsfolge binärer Signale, welche zu m-Bit-Zufallszahlen kombiniert werden können. Ein Problem dieses Verfahrens besteht in der notwendigen Realisierung eines Breitbandverstärkers mit hohem Verstärkungsfaktor, was in integrierten Schaltkreisen zu einem hohen Flächenbedarf und einem hohen Leistungsbedarf führt. Ferner ist die starke Temperaturabhängigkeit des Rauschverhaltens der Rauschquelle problematisch für viele Anwendungen.
  • • Jittered Oscillator Sampling (z. B. [5])
  • Bei dieser Methode wird das Phasenrauschen eines freischwingenden Oszillators als Rauschquelle benutzt. Hier wird der binäre Ausgangszustand eines freischwingenden Oszillators mit einer niedrigen Frequenz abgetastet. Das abgetastete Signal wird als 1-Bit-Zufallsfolge interpretiert. Gegenwärtige Realisierungen zeigen, dass das Phasenrauschen freischwingender Oszillatoren nicht ausreichend ist, um eine hinreichend statistische Zufälligkeit der erzeugten Zufallsfolge zu generieren.
  • • Discrete-Time Chaotic Maps (z. B. [6], [7], [8], [9])
  • Bei diesem Verfahren werden chaotische Systeme (z. B. die Bernoulli Shift Map) mit Hilfe zeitdiskreter analoger Schaltkondensator-Netzwerke realisiert. Bauelementtoleranzen der integrierten analogen Komponenten limitieren hierbei die statistische Zufälligkeit der erzeugten Bitfolge.
  • • Generatoren für Pseudozufallszahlen (z. B. [10], [11], [12])
  • Für die Erzeugung von Pseudozufallszahlen existiert eine Vielzahl von Methoden, die jedoch aufgrund der inhärenten Periodizität und Reproduzierbarkeit der Zufallszahlenfolge ungeeignet sind, echte Zufallszahlen zu erzeugen. Beispiele für Pseudozufallszahlengeneratoren sind die Methode der linearen Kongruenz, Fibonacci- und Shift-Register-Generatoren oder der Marsaglia-Zaman-Generator.
  • In [14] ist eine Vorrichtung zum Erzeugen chaotischer Signale offenbart, welche ein nichtlineares Funktionselement, eine Mehrzahl von Koeffizientenelementen, sowie ein Addierelement, welches mit dem nichtlinearen Funktionselement und den Koeffizientenelementen gekoppelt ist, aufweist, wobei das nichtlineare Funktionselement eine nichtlineare Funktion in Bezug auf ein Eingangssignal erzeugt und als Ausgangssignal bereitstellt, wobei jedes Koeffizientenelement jeweils ein Ausgangssignal bereitstellt, welches durch Multiplizieren eines Eingangssignals mit einem Koeffizienten gebildet wird, wobei das Addierelement das Ausgangssignal des nichtlinearen Funktionselementes und die Ausgangssignale der Koeffizientenelemente summiert und als Ausgangssignal bereitstellt, und wobei das nichtlineare Funktionselement, die Koeffizientenelemente und das Addierelement ein Taktsignal mit einer gegebenen Periode empfangen und synchron mit dem Taktsignal arbeiten.
  • In [15] ist ein Neurocomputer vom Hopfield-Typ offenbart, mit: einem neuronalen Netzwerk, das aus einer Vielzahl von Analogneuroprozessoren besteht, die jeweils Analogsignale von einem Analogbus in einer Zeitteilungsweise empfangen, eine Produkt- und Summenberechnung der eingegebenen Analogsignale durchführen, wodurch ein Summe-der-Produkte-Signal geliefert wird, und ein Analogsignal durch Umwandeln des Summe-der-Produkte-Signals durch eine nichtlineare Funktion ausgeben; und einem asynchronen Steuersystem mit: einem Gewichtspeicher zum Speichern von Digital-Gewichtdaten für die Analogneuroprozessoren; einer Steuereinheit zum Erzeugen von Steuermustern, das die Analogneuroprozessoren des neuronalen Netzwerks veranlasst, die Produkt- und Summenberechnung durchzuführen, und zum Erzeugen eines Adresssignals für den Gewichtspeicher; Auswahlmitteln zum selektiven Verbinden der Steuereinheit mit den jeweiligen Analogneuroprozessoren; und einem Zufallszahlengenerator zum zufälligen Schalten der Auswahlmittel, so dass die Steuermuster durch die Auswahlmittel zufällig geschaltet werden, wodurch die zufällig ausgewählten Analogneuroprozessoren veranlasst werden, die Produkt- und Summenberechnung durchzuführen.
  • Der Erfindung liegt das Problem zu Grunde, eine Einrichtung zur einfachen technischen Realisierung von Zufallszahlen bereitzustellen, bei der die oben genannten Probleme bzw. Nachteile herkömmlicher Zufallszahlengeneratoren zumindest teilweise umgangen oder reduziert werden.
  • Das Problem wird durch einen Zufallszahlengenerator und ein Verfahren zum Erzeugen von Zufallszahlen mit den Merkmalen gemäß den unabhängigen Patentansprüchen gelöst.
  • Beispielhafte Ausgestaltungen der Erfindung ergeben sich aus den abhängigen Patentansprüchen. Die weiteren Ausgestaltungen der Erfindung, die im Zusammenhang mit dem Zufallszahlengenerator beschrieben sind, gelten sinngemäß auch für das Verfahren zum Erzeugen von Zufallszahlen.
  • Es wird ein Zufallszahlengenerator bereitgestellt, mit einer Mehrzahl zumindest teilweise miteinander gekoppelter Schwellwertentscheider-Einrichtungen, wobei jede Schwellwertentscheider-Einrichtung mindestens einen Extern-Signaleingang zum Empfangen mindestens eines vorgebbaren externen Eingangssignals, mindestens einen Intern-Signaleingang zum Empfangen mindestens eines internen Eingangssignals, eine Summensignal-Bildungs-Einrichtung zum Bilden eines Summensignals aus den empfangenen Eingangssignalen sowie einen Signalausgang zum Bereitstellen eines Ausgangssignals aufweist. Jeder Intern-Signaleingang einer Schwellwertentscheider-Einrichtung ist mit einem Signalausgang einer anderen Schwellwertentscheider-Einrichtung gekoppelt, derart, dass an dem Intern-Signaleingang ein an dem Signalausgang der anderen Schwellwertentscheider-Einrichtung bereitgestelltes Ausgangssignal empfangen wird. Ferner ist jede Schwellwertentscheider-Einrichtung derart eingerichtet, dass das von der Summensignal-Bildungs-Einrichtung gebildete Summensignal zeitlich aufintegriert wird, und dass an dem Signalausgang der Schwellwertentscheider-Einrichtung ein vorgebbares gepulstes Ausgangssignal bereitgestellt wird, sobald das zeitlich aufintegrierte Summensignal eine vorgebbare Schwelle überschreitet. Der Zufallszahlengenerator weist weiterhin eine Mehrzahl von Signal-Gewichtungs-Einrichtungen auf, wobei mit Hilfe einer Signal-Gewichtungs-Einrichtung ein an einem Signalausgang einer Schwellwertentscheider-Einrichtung bereitgestelltes und an einem mit dem Signalausgang gekoppelten Intern-Signaleingang einer anderen Schwellwertentscheider-Einrichtung empfangenes Ausgangssignal mit einem Kopplungsgewicht gewichtet wird. Ferner weist der Zufallszahlengenerator eine mit mindestens einem Signalausgang der Mehrzahl von Schwellwertentscheider-Einrichtungen gekoppelte Signal-Erfass-Einrichtung auf zum Erfassen der an dem mindestens einen Signalausgang bereitgestellten gepulsten Ausgangssignale, wobei die von der Signal-Erfass-Einrichtung erfassten gepulsten Ausgangssignale zur Erzeugung von Zufallszahlen verwendet werden.
  • Bei einem Verfahren zum Erzeugen von Zufallszahlen wird eine Mehrzahl zumindest teilweise miteinander gekoppelter Schwellwertentscheider-Einrichtungen bereitgestellt, wobei jede Schwellwertentscheider-Einrichtung mindestens einen Extern-Signaleingang aufweist, an dem mindestens ein vorgebbares externes Eingangssignal empfangen wird, sowie mindestens einen Intern-Signaleingang, an dem mindestens ein internes Eingangssignal empfangen wird, sowie eine Summensignal-Bildungs-Einrichtung, mit deren Hilfe aus den empfangenen Eingangssignalen ein Summensignal gebildet wird, sowie einen Signalausgang, an dem ein Ausgangssignal bereitgestellt wird. Jeder Intern-Signaleingang einer Schwellwertentscheider-Einrichtung wird mit einem Signalausgang einer anderen Schwellwertentscheider-Einrichtung gekoppelt, derart, dass an dem Intern-Signaleingang ein an dem Signalausgang der anderen Schwellwertentscheider-Einrichtung bereitgestelltes Ausgangssignal empfangen wird. Ferner wird bei jeder Schwellwertentscheider-Einrichtung das von der Summensignal-Bildungs-Einrichtung gebildete Summensignal zeitlich aufintegriert, und an dem Signalausgang der Schwellwertentscheider-Einrichtung wird ein gepulstes Ausgangssignal bereitgestellt, sobald das zeitlich aufintegrierte Summensignal eine vorgebbare Schwelle überschreitet. Weiterhin wird eine Mehrzahl von Signal-Gewichtungs-Einrichtungen bereitgestellt, wobei mit Hilfe einer Signal-Gewichtungs-Einrichtung ein an einem Signalausgang einer Schwellwertentscheider-Einrichtung bereitgestelltes Ausgangssignal, welches an einem mit dem Signalausgang gekoppelten Intern-Signaleingang einer anderen Schwellwertentscheider-Einrichtung empfangen wird, mit einem Kopplungsgewicht gewichtet wird. Ferner wird eine Signal-Erfass-Einrichtung bereitgestellt, welche mit mindestens einem Signalausgang der Mehrzahl von Schwellwertentscheider-Einrichtungen gekoppelt wird. Mit Hilfe der Signal-Erfass-Einrichtung werden die an dem mindestens einen Signalausgang bereitgestellten gepulsten Ausgangssignale erfasst. Die von der Signal-Erfass-Einrichtung erfassten gepulsten Ausgangssignale werden zur Erzeugung von Zufallszahlen verwendet.
  • Eine Grundidee der Erfindung kann darin gesehen werden, dass die gepulsten Ausgangssignale bzw. Pulse von zumindest teilweise miteinander gekoppelten Schwellwertentscheider-Einrichtungen zur Erzeugung von Zufallszahlen verwendet werden, wobei eine Schwellwertentscheider-Einrichtung ein gepulstes Ausgangssignal erzeugt, sobald die zeitliche Integration eines Summensignals, welches aus von der Schwellwertentscheider-Einrichtung empfangenen externen (bzw. extern vorgebbaren) Eingangssignalen und empfangenen internen Eingangssignalen (i. e. gewichteten Ausgangssignalen anderer Schwellwertentscheider-Einrichtungen) gebildet wird, eine vorgegebene Schwelle überschreitet.
  • Ein Vorteil der Erfindung kann darin gesehen werden, dass sich auf die oben beschriebene Weise im Vergleich zu herkömmlichen aus dem Stand der Technik bekannten Verfahren auf eine technisch einfach zu implementierende Art und Weise Zufallszahlen bzw. echte Zufallszahlen generieren lassen.
  • Es werden zum Beispiel keine physikalischen Rauschprozesse benötigt. Ferner weist eine Schaltkreisrealisierung des Zufallszahlengenerators einen niedrigen Leistungsbedarf und einen niedrigen Flächenbedarf auf. Außerdem weist der Zufallszahlengenerator eine hohe Toleranz gegenüber eventuellen Parameterschwankungen der Schaltkreisrealisierung auf.
  • Der beschriebene Zufallszahlengenerator lässt sich zum Beispiel in ULSI-Systeme (Ultra Large Scale Integration) mit Hilfe gemischt analog/digitaler Schaltungstechnik integrieren.
  • In einer Ausgestaltung der Erfindung ist es vorgesehen, dass bei mindestens einer Schwellwertentscheider-Einrichtung das zeitliche Aufintegrieren des Summensignals und das Bereitstellen des gepulsten Ausgangssignals mit Hilfe eines Pulsgenerators erfolgt. Mit anderen Worten weist mindestens eine in dem Zufallszahlengenerator ausgebildete Schwellwertentscheider-Einrichtung einen Pulsgenerator auf, welcher Pulsgenerator zum Aufintegrieren des von der Summen-Bildungs-Einrichtung bereitgestellten Summensignals sowie zum Bereitstellen des gepulsten Ausgangssignals an dem Signalausgang der Schwellwertentscheider-Einrichtung dient.
  • Ein in einer Schwellwertentscheider-Einrichtung ausgebildeter Pulsgenerator kann hierbei als Integrate-and-Fire-Neuron ausgebildet sein. Ein Integrate-and-Fire-Neuron kann zum Beispiel wie in [13] beschrieben realisiert sein.
  • In einer anderen Ausgestaltung der Erfindung ist es vorgesehen, dass mindestens eine Signal-Gewichtungs-Einrichtung einen Signaleingang aufweist, welcher mit einem Signalausgang einer Schwellwertentscheider-Einrichtung gekoppelt ist, sowie einen Signalausgang, welcher mit einem Intern-Signaleingang einer anderen Schwellwertentscheider-Einrichtung gekoppelt ist. Mit Hilfe der Signal-Gewichtungs-Einrichtung kann somit ein an dem Signaleingang der Signal-Gewichtungs-Einrichtung empfangenes Signal, i. e. das Ausgangssignal der Schwellwertentscheider-Einrichtung, mit einem Kopplungsgewicht gewichtet werden und als gewichtetes Signal an dem Signalausgang der Signal-Gewichtungs-Einrichtung bereitgestellt werden. Das gewichtete Ausgangssignal wird dann an dem mit dem Signalausgang der Signal-Gewichtungs-Einrichtung gekoppelten Intern-Signaleingang der anderen Schwellwertentscheider-Einrichtung empfangen.
  • Gemäß einer anderen Ausgestaltung der Erfindung ist es vorgesehen, dass mindestens eine Signal-Gewichtungs-Einrichtung derart eingerichtet ist, dass das Kopplungsgewicht als zeitlich konstantes Kopplungsgewicht ausgebildet ist. Mit anderen Worten kann mindestens eines der Kopplungsgewichte fest vorgegeben bzw. zeitlich unveränderlich sein.
  • In einer anderen Ausgestaltung der Erfindung ist es vorgesehen, dass mindestens eines der externen Eingangssignale als zeitlich konstantes Eingangssignal bzw. als kontinuierliches Eingangssignal ausgebildet ist. Zum Beispiel kann jeder Schwellwertentscheider-Einrichtung ein äußeres bzw. externes analoges Eingangssignal zugeordnet sein, welches an einem jeweiligen Extern-Signaleingang empfangen wird. Mit anderen Worten kann eine Schwellwertentscheider-Einrichtung einen Extern-Signaleingang aufweisen, an dem ein externes Eingangssignal empfangen wird, wobei das externe Eingangssignal ein zeitlich konstantes Signal bzw. zeitlich unveränderliches Signal sein kann mit einer vorgebbaren konstanten Amplitude bzw. Signalstärke. Die Bezeichnung "Extern-Signaleingang" dient in diesem Zusammenhang zur Verdeutlichung, dass an diesem Signaleingang ein externes, d. h. ein von außen vorgebbares, Eingangssignal empfangen werden kann.
  • Ein Zufallszahlengenerator mit einer Mehrzahl gekoppelter Schwellwertentscheider-Einrichtungen, welche Schwellwertentscheider-Einrichtungen Pulsgeneratoren aufweisen, kann anschaulich als Netzwerk bzw. Netz gekoppelter Pulsgeneratoren aufgefasst werden. Mit anderen Worten wird anschaulich ein Netz gebildet aus vernetzten bzw. vermaschten Pulsgeneratoren, allgemein Schwellwertentscheider-Einrichtungen.
  • Falls die Pulsgeneratoren als Integrate-and-Fire-Neuronen ausgebildet sind, können die gekoppelten Pulsgeneratoren bzw. Schwellwertentscheider-Einrichtungen auch als Neuronales Netzwerk oder Neuronales Netz bezeichnet werden.
  • Ein Aspekt der Erfindung kann darin gesehen werden, dass zum Erzeugen von echten Zufallszahlen ein Netz gekoppelter Pulsgeneratoren bereitgestellt wird, wobei die Kopplung der Pulsgeneratoren mit zeitlich konstanten Kopplungsgewichten bzw. Kopplungsstärken realisiert werden kann. Dabei kann zunächst jedem Pulsgenerator ein externes analoges Eingangssignal zugeordnet werden, derart, dass der jeweilige Pulsgenerator gepulste Ausgangssignale bzw. Pulse mit konstanter Dauer und einer Pulsfrequenz in Abhängigkeit des externen analogen Eingangssignals, zum Beispiel in Abhängigkeit von der Amplitude bzw. Signalstärke des externen analogen Eingangssignals, abgibt.
  • Bei einem Netzwerk aus beispielsweise n Pulsgeneratoren besteht weiterhin von jedem Pulsgenerator eine zusätzliche Kopplung zu mindestens einem und höchstens n – 1 weiteren Pulsgeneratoren, derart, dass bei Absenden eines Pulses der Pulsabstand zweier aufeinander folgender Pulse der angekoppelten Pulsgeneratoren kurzzeitig in Abhängigkeit von der individuellen Kopplungsstärke (bzw. des individuellen Kopplungsgewichts) erniedrigt wird.
  • Unter einer Kopplung zwischen einem ersten Pulsgenerator (auch Sender-Pulsgenerator genannt) mit einem zweiten Pulsgenerator (auch Empfänger-Pulsgenerator genannt) ist in diesem Zusammenhang beispielsweise zu verstehen, dass der Signalausgang der Schwellwertentscheider-Einrichtung, in welcher der erste Pulsgenerator ausgebildet ist, zumindest mittelbar mit einem Intern-Signaleingang der Schwellwertentscheider-Einrichtung, in welcher der zweite Pulsgenerator ausgebildet ist, gekoppelt ist. Die Bezeichnung "Intern-Signaleingang" dient in diesem Zusammenhang zur Verdeutlichung, dass an diesem Signaleingang ein internes, d. h. ein von dem Zufallszahlengenerator erzeugtes, Eingangssignal (z. B. ein von einer Schwellwertentscheider-Einrichtung bereitgestelltes Ausgangssignal) empfangen wird.
  • Die individuelle Kopplungsstärke zwischen je einem Sender-Pulsgenerator und einem Empfänger-Pulsgenerator kann bei der Konstruktion des Netzes festgelegt werden. Das Festlegen der individuellen Kopplungsstärke/n kann durch entsprechendes Ausbilden der jeweiligen Signal-Gewichtungs-Einrichtung/en erfolgen, d. h. ein gepulstes Signal (Puls) eines Sender-Pulsgenerators, welches an einem Signalausgang der zugehörigen Schwellwertentscheider-Einrichtung als Ausgangssignal bereitgestellt wird, kann mit Hilfe einer Signal-Gewichtungs-Einrichtung, welche mit dem Signalausgang dieser Schwellwertentscheider-Einrichtung gekoppelt ist, mit einem individuellen vorgebbaren Kopplungsgewicht gewichtet werden. Die Signal-Gewichtungs-Einrichtung kann wiederum mit einem Intern-Signaleingang einer anderen Schwellwertentscheider-Einrichtung, i. e. der zu einem Empfänger-Pulsgenerator zugehörigen Schwellwertentscheider-Einrichtung, gekoppelt sein, so dass das mit dem individuellen vorgebbaren Kopplungsgewicht gewichtete gepulste Ausgangssignal des Sender-Pulsgenerators an dem Intern-Signaleingang der zu dem Empfänger-Pulsgenerator zugehörigen Schwellwertentscheider-Einrichtung bereitgestellt wird.
  • Auf die oben beschriebene Weise können die einzelnen Pulsgeneratoren, allgemein Schwellwertentscheider-Einrichtungen, des Zufallszahlengenerators zumindest teilweise gekoppelt bzw. vernetzt sein. Zumindest teilweise vernetzt bzw. zumindest teilweise gekoppelt bedeutet, dass eine Schwellwertentscheider-Einrichtung mit jeder anderen Schwellwertentscheider-Einrichtung gekoppelt sein kann aber nicht muss. Anders ausgedrückt können die Schwellwertentscheider-Einrichtungen vollvernetzt (vollvermascht) oder auch nur teilvernetzt (teilvermascht) sein.
  • Eine Schwellwertentscheider-Einrichtung eines Empfänger-Pulsgenerators kann zum Beispiel eingangsseitig mit k (k ≤ n – 1) anderen Schwellwertentscheider-Einrichtungen gekoppelt sein. Das bedeutet, dass die Schwellwertentscheider-Einrichtung k Intern-Signaleingänge aufweist, wobei jeder der k Intern-Signaleingänge jeweils mit einer von k Signal-Gewichtungs-Einrichtungen gekoppelt sein kann, welche Signal-Gewichtungs-Einrichtungen wiederum jeweils mit einem Signalausgang der k anderen Schwellwertentscheider-Einrichtungen gekoppelt ist. An den k Intern-Signaleingängen der Schwellwertentscheider-Einrichtung werden die individuell gewichteten, gepulsten Ausgangssignale der k anderen Schwellwertentscheider-Einrichtungen (d. h. der k Sender-Pulsgeneratoren) als k interne Eingangssignale empfangen. Weiterhin kann an mindestens einem Extern-Signaleingang der Schwellwertentscheider-Einrichtung mindestens ein konstantes externes Eingangssignal empfangen werden. Mit Hilfe der Summen-Bildungs-Einrichtung der Schwellwertentscheider-Einrichtung wird aus den k internen Eingangssignalen (d. h. den gewichteten Pulsen der k anderen Schwellwertentscheider-Einrichtungen) und dem mindestens einen externen kontinuierlichen Eingangssignal ein Summensignal gebildet. Das Summensignal kann anschaulich als synaptischer Strom angesehen werden, welcher zu dem Empfänger-Pulsgenerator der Schwellwertentscheider-Einrichtung weitergeleitet wird.
  • Bei einer Ausbildung des Empfänger-Pulsgenerators als Integrate-and-Fire-Neuron wird anschaulich während einer Empfangsphase des Integrate-and-Fire-Neurons der synaptische Strom zu einem Membranpotential zeitlich aufintegriert.
  • Bezeichnet man zum Beispiel die zu dem Empfänger-Pulsgenerator (Empfänger-Neuron) zugehörige Schwellwertentscheider-Einrichtung mit K, so gilt für die zeitliche Änderung des Membranpotentials AK an dem Empfänger-Neuron:
    Figure 00130001
  • In Gleichung (1) bezeichnen AK das Membranpotential an dem Empfänger-Neuron der Schwellwertentscheider-Einrichtung K, IK ein an einem Extern-Signaleingang der Schwellwertentscheider-Einrichtung K empfangenes zeitlich konstantes externes Eingangssignal bzw. Eingangsstrom (der Einfachheit halber wird angenommen, dass die Schwellwertentscheider-Einrichtung K nur ein externes Eingangssignal empfängt), XL ein gepulstes Ausgangssignal einer mit einem Intern-Signaleingang der Schwellwertentscheider-Einrichtung K gekoppelten Schwellwertentscheider-Einrichtung L, WKL das Kopplungsgewicht, mit dem das Ausgangssignal XL der Schwellwertentscheider-Einrichtung L gewichtet wird (mit Hilfe einer Signal-Gewichtungs-Einrichtung, welche mit dem Ausgang der Schwellwertentscheider-Einrichtung L gekoppelt ist, an dem das Signal XL bereitgestellt wird) und XKL das mit dem Kopplungsgewicht WKL gewichtete Ausgangssignal XL (d. h. XKL = WKLXL).
  • In Gleichung (1) wird über alle Schwellwertentscheider-Einrichtungen L summiert (d. h. die gewichteten Ausgangssignale XKL = WKLXL werden aufsummiert) und zu der Summe ΣL WKLXL wird das externe Eingangssignal IK hinzuaddiert, wodurch das Summensignal IK + ΣL WKLXL erhalten wird. Das Bilden des Summensignals erfolgt mit Hilfe der Summensignal-Bildungs-Einrichtung.
  • Integriert man Gleichung (1) über die Zeit t, so kann das Membranpotential AK des Empfänger-Pulsgenerators erhalten werden. Überschreitet das Membranpotential AK (z. B. zum Zeitpunkt t') eine vorgegebene konstante Schwelle (bzw. Schwellenwert) Θ, so wird von dem Pulsgenerator für eine vorgegebene Zeitdauer tp ein Puls mit konstantem Signalpegel bzw. konstanter Pulshöhe hp ausgesendet. Mit anderen Worten kann für den Wert des von dem Pulsgenerator gesendeten Ausgangssignals XK gelten:
    Figure 00140001
    wobei Δt1 den zeitlichen Abstand zu einem vorangegangenen Puls des Pulsgenerators bezeichnet und Δt2 den zeitlichen Abstand zu einem nachfolgenden Puls des Pulsgenerators bezeichnet.
  • Anschließend (d. h. nach Senden des Pulses) wird das Membranpotential AK auf einen vorgegebenen Signalpegel zurückgesetzt und die während des Sendens des Pulsgenerators unterbrochene Integration freigegeben.
  • Der Schwellenwert Θ für das Membranpotential kann normiert sein und beispielsweise zwischen 0.97 V und 1.03 V betragen, zum Beispiel 1 V. Die Pulshöhe hp kann ebenfalls normiert sein und beispielsweise zwischen 0.97 V und 1.03 V betragen, zum Beispiel 1 V. Die Pulsdauer tp kann zwischen 0.97 ms und 1.03 ms betragen, zum Beispiel 1 ms. Alternativ können für den Schwellenwert, die Pulshöhe oder die Pulsdauer aber auch andere Werte gewählt werden.
  • Bei gegebener Wahl der zeitlich konstanten externen analogen Eingangssignale und der zeitlich konstanten Kopplungsstärken bzw. Kopplungsgewichte ergibt sich eine statistische Verteilung der Pulsabstände für jeden einzelnen Pulsgenerator bzw. jedes einzelne Neuron. Ebenso ergibt sich bei Betrachtung eines Teilnetzes von m (m ≤ n) beliebig ausgewählten Pulsgeneratoren des Netzes eine statistische Verteilung der entstehenden m-Bit-Pulsmuster. Sowohl die zeitlichen Pulsmuster eines einzelnen Pulsgenerators als auch die zeitlichen Pulsmuster eines Teilnetzes von m beliebig ausgewählten Pulsgeneratoren des Netzes sind nicht-periodisch. Mit anderen Worten weist zum Beispiel die zeitliche Folge der Zeitintervalle zwischen aufeinander folgenden Pulsen bzw. gepulsten Ausgangssignalen eines Pulsgenerators keine Periodizität auf.
  • Ein Aspekt der Erfindung kann darin gesehen werden, dass erkannt wurde, dass sich aufgrund der statistischen Verteilung der Pulsmuster die Pulsmuster eines oder mehrerer Pulsgeneratoren zur Erzeugung von Zufallszahlen eignen.
  • Gemäß einer anderen Ausgestaltung der Erfindung weist die Signal-Erfass-Einrichtung mindestens ein Register auf, welches mindestens eine Register mit mindestens einem Signalausgang der Mehrzahl von Schwellwertentscheider-Einrichtungen gekoppelt ist.
  • Ein in der Signal-Erfass-Einrichtung ausgebildetes Register kann als 1-Bit-Register ausgebildet sein und zum Auskoppeln des Pulssignals einer Schwellwertentscheider-Einrichtung bzw. eines in der Schwellwertentscheider-Einrichtung ausgebildeten Pulsgenerators dienen. Anschaulich kann das 1-Bit-Register in Abhängigkeit von dem Pulssignal zwei Zustände annehmen, und somit eine binäre Informationseinheit, i. e. ein Bit, speichern.
  • Zum Auskoppeln des Pulssignals eines Pulsgenerators kann der Signalausgang der zugehörigen Schwellwertentscheider-Einrichtung mit einem Signaleingang eines 1-Bit-Registers gekoppelt sein. An einem Taktsignal-Eingang des Registers kann ein Taktsignal bereitgestellt werden. Das Taktsignal kann als periodisches Signal mit einer Periode T ausgebildet sein. Zum Beispiel bei jeder positiven Taktflanke des an dem Taktsignal-Eingang des Registers bereitgestellten Taktsignals kann der gegenwärtige Zustand des Pulssignals des Pulsgenerators in das 1-Bit-Register übertragen werden. Der Zustand des 1-Bit-Registers kann als 1-Bit-Zufallszahl interpretiert werden.
  • Zur Erzeugung von k 1-Bit-Zufallszahlen kann der Zustand des Pulssignals im zeitlichen Abstand T fortlaufend abgetastet werden. Wenn beispielsweise das Zeitintervall T, d. h. die Periode des Taktsignals, in Sekunden gemessen wird, kann anschaulich alle T Sekunden der Zustand des Pulssignals in das 1-Bit-Register übertragen werden und aus dem 1-Bit-Register ausgelesen werden. Zur Erzeugung von k 1-Bit-Zufallszahlen kann das 1-Bit-Register insgesamt k-mal ausgelesen werden. Das Erzeugen von k 1-Bit-Zufallszahlen benötigt daher in diesem Fall insgesamt k Takte bzw. k·T Sekunden.
  • In Verallgemeinerung zu den vorangegangenen Ausführungen können zum Auskoppeln der Pulssignale von m Pulsgeneratoren die Signalausgänge der zugehörigen m Schwellwertentscheider-Einrichtungen mit je einem 1-Bit-Register verbunden werden. Die Signal-Erfass-Einrichtung weist also in diesem Fall m 1-Bit-Register, wie oben beschrieben, auf, wobei jeweils der Signaleingang eines 1-Bit-Registers mit einem Signalausgang einer Schwellwertentscheider-Einrichtung gekoppelt ist.
  • Gemäß einer anderen Ausgestaltung der Erfindung kann an den Taktsignal-Eingängen aller 1-Bit-Register ein Taktsignal bereitgestellt werden, wobei an allen Taktsignal-Eingängen ein gemeinsames Taktsignal bereitgestellt werden kann. Anschaulich können somit alle m 1-Bit-Register mit Hilfe desselben Taktsignals getaktet werden.
  • Zum Auskoppeln der m Pulssignale kann zum Beispiel bei jeder positiven Flanke des Taktsignals der gegenwärtige Zustand der Pulssignale in die m 1-Bit-Register übertragen werden. Genauer gesagt wird in jedes der m 1-Bit-Register der gegenwärtige Zustand jeweils eines Pulssignals eines Pulsgenerators bzw. einer Schwellwertentscheider-Einrichtung übertragen. Der Zustand der m 1-Bit-Register kann als m-Bit-Zufallszahl interpretiert werden. Zur Erzeugung von k m-Bit-Zufallszahlen können, wie oben im Zusammenhang mit nur einem 1-Bit-Register beschrieben, die Zustände der m Pulssignale im zeitlichen Abstand T, d. h. mit der Periodendauer des Taktsignals, fortlaufend abgetastet werden, wobei das Erzeugen von k m-Bit-Zufallszahlen insgesamt k Takte benötigt.
  • Das mindestens eine in der Signal-Erfass-Einrichtung ausgebildete Register kann als taktgesteuertes Flip-Flop (z. B. taktflankengesteuertes Flip-Flop) ausgebildet sein, wobei das taktgesteuerte Flip-Flop einen Signaleingang zum Empfangen eines Eingangssignals, einen Taktsignal-Eingang zum Empfangen eines Taktsignals sowie einen Signalausgang zum Bereitstellen eines Ausgangssignals aufweisen kann.
  • Gemäß einer anderen Ausgestaltung der Erfindung weist die Signal-Erfass-Einrichtung mindestens ein Toggle-Flip-Flop auf, welches mindestens eine Toggle-Flip-Flop zwischen mindestens einen Signalausgang der Mehrzahl von Schwellwertentscheider-Einrichtungen und mindestens einen Signaleingang mindestens eines mit dem mindestens einen Signalausgang der Mehrzahl von Schwellwertentscheider-Einrichtungen gekoppelten Registers geschaltet ist.
  • Ein zwischen einen Signalausgang einer Schwellwertentscheider-Einrichtung und einen Signaleingang eines Registers der Signal-Erfass-Einrichtung geschaltetes Toggle-Flip-Flop kann einen Signaleingang aufweisen, welcher Signaleingang mit dem Signalausgang der Schwellwertentscheider-Einrichtung gekoppelt ist, einen Signalausgang, welcher mit dem Signaleingang des Registers gekoppelt ist, sowie einen Reset-Signal-Eingang, an welchem ein Reset-Signal empfangen werden kann.
  • Zur Auskopplung der Pulssignale von m ausgewählten Pulsgeneratoren (bzw. Schwellwertentscheider-Einrichtungen) können m Toggle-Flip-Flops mit den m Pulssignalen der m Schwellwertentscheider-Einrichtungen verbunden werden, d. h. jeweils ein Toggle-Flip-Flop wird zwischen einen Signalausgang einer Schwellwertentscheider-Einrichtung und einen Signaleingang eines Registers geschaltet. Bei einem Puls des über den Signalausgang der Schwellwertentscheider-Einrichtung eingangsseitig mit dem Toggle-Flip-Flop verbundenen Pulsgenerators invertiert das Toggle-Flip-Flop seinen jeweiligen Zustand. Anders ausgedrückt wird ein von dem Pulsgenerator erzeugtes gepulstes Signal an dem Signalausgang der zugehörigen Schwellwertentscheider-Einrichtung bereitgestellt, und an dem mit dem Signalausgang gekoppelten Signaleingang des Toggle-Flip-Flops empfangen. Jedesmal, wenn an dem Signaleingang des Toggle-Flip-Flops ein Pulssignal empfangen wird, invertiert das Toggle-Flip-Flop seinen momentanen Zustand.
  • Die Signalausgänge der m Toggle-Flip-Flops sind mit m 1-Bit-Registern verbunden, genauer gesagt ist jeweils ein Signalausgang eines Toggle-Flip-Flops mit einem Signaleingang eines 1-Bit-Registers gekoppelt. Zum Beispiel bei jeder positiven Taktflanke des Taktsignals können die Zustände der m Toggle-Flip-Flops in die m 1-Bit-Register übernommen werden und stehen dort als m-Bit-Zufallszahl zur Verfügung. Nachdem die Zustände der Toggle-Flip-Flops in die Register übernommen worden sind, können die Zustände der Toggle-Flip-Flops durch ein Reset-Signal, welches zum Beispiel gleichzeitig an den Reset-Signal-Eingängen aller Toggle-Flip-Flops bereitgestellt wird, zurückgesetzt werden.
  • In einer anderen Ausgestaltung der Erfindung ist es vorgesehen, dass die Signal-Erfass-Einrichtung mindestens ein Schieberegister mit mindestens zwei in Serie geschalteten Registern aufweist, welches mindestens eine Schieberegister mit mindestens einem Signalausgang der Mehrzahl von Schwellwertentscheider-Einrichtungen gekoppelt ist. Unter zwei in Serie geschalteten Registern wird in diesem Zusammenhang verstanden, dass ein Signalausgang eines ersten Registers mit einem Signaleingang eines zweiten Registers gekoppelt ist.
  • Anschaulich ist in dieser Ausgestaltung der Signalausgang einer Schwellwertentscheider-Einrichtung bzw. eines mit der Schwellwertentscheider-Einrichtung gekoppelten Toggle-Flip-Flops nicht mit nur einem Register gekoppelt sondern mit einem Schieberegister, welches Schieberegister mindestens zwei in Serie geschaltete Register aufweist. Wenn m Signalausgänge von m Schwellwertentscheider-Einrichtungen jeweils mit einem Schieberegister, welches k in Serie geschaltete 1-Bit-Register aufweist, gekoppelt werden, lassen sich somit k·m-Bit-Zufallszahlen erzeugen, indem anschaulich k Spalten von m 1-Bit-Registern kaskadiert werden.
  • Die insgesamt k·m 1-Bit-Register können alle mit Hilfe desselben Taktsignals getaktet werden. Nach k Takten des Taktsignals steht eine neue k·m-Bit-Zufallszahl an den k·m Registerausgängen, d. h. den Signalausgängen der k·m 1-Bit-Register zur Verfügung, wobei an jedem Registerausgang genau ein Bit bereitgestellt wird.
  • Ein Aspekt der Erfindung kann darin gesehen werden, dass die Eigenschaft von pulskodierten neuronalen Netzen mit konstanten Kopplungsgewichten, statistisch verteilte Pulsmuster zu generieren, ausgenutzt wird. Durch die Ergodizität des Mustergenerierungsprozesses ist sichergestellt, dass im Laufe der Mustergenerierung keine periodischen Muster auftreten. Dadurch sind die entstehenden Pulsmuster für die Erzeugung von Zufallszahlen geeignet.
  • Ausführungsbeispiele der Erfindung sind in den Figuren dargestellt und werden im Folgenden näher erläutert. In den Figuren sind gleiche Elemente mit gleichen Bezugszeichen versehen. Die in den Figuren gezeigten Darstellungen sind schematisch und daher nicht maßstabsgetreu gezeichnet.
  • Es zeigen
  • 1A einen Zufallszahlengenerator gemäß einem ersten Ausführungsbeispiel der Erfindung;
  • 1B einen Zufallszahlengenerator gemäß einem zweiten Ausführungsbeispiel der Erfindung;
  • 2 zwei gekoppelte Schwellwertentscheider-Einrichtungen eines Zufallszahlengenerators gemäß einem Ausführungsbeispiel der Erfindung;
  • 3A einen Zufallszahlengenerator gemäß einem dritten Ausführungsbeispiel der Erfindung;
  • 3B ein erstes Taktschema zur Erzeugung von m-Bit-Zufallszahlen;
  • 4A einen Zufallszahlengenerator gemäß einem vierten Ausführungsbeispiel der Erfindung;
  • 4B ein zweites Taktschema zur Erzeugung von m-Bit-Zufallszahlen;
  • 5 einen Zufallszahlengenerator gemäß einem fünften Ausführungsbeispiel der Erfindung;
  • 6 einen Zufallszahlengenerator gemäß einem sechsten Ausführungsbeispiel der Erfindung;
  • 7 experimentell aufgenommene Verteilungsfunktionen von 5-Bit-Zufallszahlen, welche Zufallszahlen mit Hilfe eines Zufallszahlengenerators gemäß einem siebten Ausführungsbeispiel der Erfindung erzeugt wurden.
  • 1A zeigt einen Zufallszahlengenerator 100 gemäß einem ersten Ausführungsbeispiel der Erfindung. Der Zufallszahlengenerator weist eine erste Schwellwertentscheider-Einrichtung 101, eine zweite Schwellwertentscheider-Einrichtung 102, eine dritte Schwellwertentscheider-Einrichtung 103, eine vierte Schwellwertentscheider-Einrichtung 104 und eine fünfte Schwellwertentscheider-Einrichtung 105 auf. Jede der fünf Schwellwertentscheider-Einrichtungen 101, 102, 103, 104, 105 weist einen Extern-Signaleingang auf (vgl. 2), an dem ein externes Eingangssignal mit jeweils vorgegebener konstanter Signalstärke bzw. Amplitude empfangen wird: an dem Extern-Signaleingang der ersten Schwellwertentscheider-Einrichtung 101 wird ein erstes externes Eingangssignal 111 empfangen (dargestellt durch den Pfeil 111), an dem Extern-Signaleingang der zweiten Schwellwertentscheider-Einrichtung 102 wird ein zweites externes Eingangssignal 112 empfangen (dargestellt durch den Pfeil 112), an dem Extern-Signaleingang der dritten Schwellwertentscheider-Einrichtung 103 wird ein drittes externes Eingangssignal 113 empfangen (dargestellt durch den Pfeil 113), an dem Extern-Signaleingang der vierten Schwellwertentscheider-Einrichtung 104 wird ein viertes externes Eingangssignal 114 empfangen (dargestellt durch den Pfeil 114), und an dem Extern-Signaleingang der fünften Schwellwertentscheider-Einrichtung 105 wird ein erstes externes Eingangssignal 115 empfangen (dargestellt durch den Pfeil 115).
  • Weiterhin weisen die Schwellwertentscheider-Einrichtungen 101, 102, 103, 104, 105 jeweils vier Intern-Signaleingänge (vgl. 2) zum Empfangen von internen Eingangssignalen sowie einen Signalausgang (vgl. 2) zum Bereitstellen eines Ausgangssignals auf.
  • Die fünf Schwellwertentscheider-Einrichtungen 101, 102, 103, 104, 105 sind miteinander gekoppelt, in dem Sinne, dass mindestens ein Signalausgang mindestens einer Schwellwertentscheider-Einrichtung zumindest mittelbar mit mindestens einem Intern-Signaleingang mindestens einer anderen Schwellwertentscheider-Einrichtung gekoppelt ist. Die Kopplung von je zwei Schwellwertentscheider-Einrichtungen wird durch einen Doppelpfeil 110 verdeutlicht. Anschaulich bilden die fünf Schwellwertentscheider-Einrichtungen 101, 102, 103, 104, 105 somit ein Netzwerk. Die Pfeilrichtung der Doppelpfeile 110 gibt die Laufrichtung eines Signals an, i. e. von einem Signalausgang einer Schwellwertentscheider-Einrichtung zu einem Intern-Signaleingang einer anderen Schwellwertentscheider-Einrichtung (vgl. 2).
  • Die fünfte Schwellwertentscheider-Einrichtung 105 ist zusätzlich mit einer Signal-Erfass-Einrichtung 120 gekoppelt, wobei die Kopplung durch den Pfeil 125 verdeutlicht ist. Ein an dem Signalausgang der fünften Schwellwertentscheider-Einrichtung 105 bereitgestelltes Ausgangssignal kann somit von der Signal-Erfass-Einrichtung 120 erfasst werden und zum Erzeugen von Zufallszahlen verwendet werden, was im Zusammenhang mit den nachfolgenden Figuren genauer erläutert wird.
  • Abgesehen von der zusätzlichen Kopplung der fünften Schwellwertentscheider-Einrichtung 105 mit der Signal-Erfass-Einrichtung 120 ist die Topologie des aus den fünf Schwellwertentscheider-Einrichtungen 101, 102, 103, 104, 105 gebildeten Netzwerkes vollkommen symmetrisch, d. h. jede Schwellwertentscheider-Einrichtung weist dieselbe Vernetzung auf. Insbesondere ist jede Schwellwertentscheider-Einrichtung mit allen anderen Schwellwertentscheider-Einrichtungen gekoppelt, wobei die Doppelpfeile 110 symbolisieren, dass alle Kopplungen bi-direktional sind, in dem Sinne, dass z. B. der Signalausgang der ersten Schwellwertentscheider-Einrichtung 101 mit einem Signaleingang der zweiten Schwellwertentscheider-Einrichtung 102 gekoppelt ist und umgekehrt auch der Signalausgang der zweiten Schwellwertentscheider-Einrichtung 102 mit einem Signaleingang der ersten Schwellwertentscheider-Einrichtung 101 gekoppelt ist. Gleiches gilt für alle anderen möglichen Paarungen von Schwellwertentscheider-Einrichtungen des Zufallszahlengenerators 100. Anschaulich sind die gekoppelten Schwellwertentscheider-Einrichtungen 101, 102, 103, 104, 105 des in 1A gezeigten Zufallszahlengenerators 100 daher vollvernetzt bzw. vollvermascht.
  • Für die Funktion eines Zufallszahlengenerators gemäß der Erfindung ist es jedoch nicht notwendig, dass die miteinander gekoppelten Schwellwertentscheider-Einrichtungen vollvernetzt sind. Das folgende Ausführungsbeispiel zeigt einen Zufallszahlengenerator, bei dem die Schwellwertentscheider-Einrichtungen nur teilvernetzt sind.
  • 1B zeigt einen Zufallszahlengenerator 150 gemäß einem zweiten Ausführungsbeispiel der Erfindung, mit einer ersten Schwellwertentscheider-Einrichtung 101, einer zweiten Schwellwertentscheider-Einrichtung 102, einer dritten Schwellwertentscheider-Einrichtung 103, einer vierten Schwellwertentscheider-Einrichtung 104, einer fünften Schwellwertentscheider-Einrichtung 105 und einer sechsten Schwellwertentscheider-Einrichtung 106, wobei die sechs Schwellwertentscheider-Einrichtungen 101, 102, 103, 104, 105, 106 teilweise miteinander gekoppelt bzw. teilvernetzt sind.
  • Jede der sechs Schwellwertentscheider-Einrichtungen 101, 102, 103, 104, 105, 106 weist einen Extern-Signaleingang auf (vgl. 2), an dem ein externes Eingangssignal mit jeweils vorgegebener konstanter Signalstärke bzw. Amplitude empfangen wird. An dem Extern-Signaleingang jeder Schwellwertentscheider-Einrichtung wird entsprechend ein externes Eingangssignal empfangen, was durch die Pfeile 111, 112, 113, 114, 115, 116 in 1B verdeutlicht ist.
  • Weiterhin weisen die erste Schwellwertentscheider-Einrichtung 101, die zweite Schwellwertentscheider-Einrichtung 102, die dritte Schwellwertentscheider-Einrichtung 103 und die fünfte Schwellwertentscheider-Einrichtung 105 jeweils zwei Intern-Signaleingänge (vgl. 2) zum Empfangen von zwei internen Eingangssignalen auf, während die vierte Schwellwertentscheider-Einrichtung 104 und die sechste Schwellwertentscheider-Einrichtung 105 jeweils drei Intern-Signaleingänge aufweisen. Ferner weist jede der sechs Schwellwertentscheider-Einrichtungen 101, 102, 103, 104, 105, 106 einen Signalausgang (vgl. 2) zum Bereitstellen eines Ausgangssignals auf.
  • Die erste Schwellwertentscheider-Einrichtung 101, die vierte Schwellwertentscheider-Einrichtung 104, die fünfte Schwellwertentscheider-Einrichtung 105 sowie die sechste Schwellwertentscheider-Einrichtung 106 sind mit einer Signal-Erfass-Einrichtung 120 gekoppelt, wobei die Kopplung durch die Pfeile 121, 124, 125, 126 verdeutlicht ist. Die an den Signalausgängen der ersten Schwellwertentscheider-Einrichtung 101, der vierten Schwellwertentscheider-Einrichtung 104, der fünften Schwellwertentscheider-Einrichtung 105 und der sechsten Schwellwertentscheider-Einrichtung 106 bereitgestellten Ausgangssignale können somit von der Signal-Erfass-Einrichtung 120 erfasst werden und zum Erzeugen von Zufallszahlen verwendet werden, was im Zusammenhang mit den nachfolgenden Figuren genauer erläutert wird.
  • Zwischen der ersten Schwellwertentscheider-Einrichtung 101 und der zweiten Schwellwertentscheider-Einrichtung 102, zwischen der zweiten Schwellwertentscheider-Einrichtung 102 und der dritten Schwellwertentscheider-Einrichtung 103, zwischen der dritten Schwellwertentscheider-Einrichtung 103 und der vierten Schwellwertentscheider-Einrichtung 104, zwischen der vierten Schwellwertentscheider-Einrichtung 104 und der fünften Schwellwertentscheider-Einrichtung 105, zwischen der fünften Schwellwertentscheider-Einrichtung 105 und der sechsten Schwellwertentscheider-Einrichtung 106, sowie zwischen der sechsten Schwellwertentscheider-Einrichtung 106 und der ersten Schwellwertentscheider-Einrichtung 101 bestehen jeweils bi-direktionale Kopplungen, in dem oben beschriebenen Sinne, was durch die Doppelpfeile 110 in 1B symbolisiert ist.
  • Zwischen der zweiten Schwellwertentscheider-Einrichtung 102 und der vierten Schwellwertentscheider-Einrichtung 104, sowie zwischen der vierten Schwellwertentscheider-Einrichtung 104 und der sechsten Schwellwertentscheider-Einrichtung 106 bestehen jedoch nur uni-direktionale Kopplungen, derart, dass der Signalausgang der zweiten Schwellwertentscheider-Einrichtung 102 mit einem Intern-Signaleingang der vierten Schwellwertentscheider-Einrichtung 104 gekoppelt ist aber nicht umgekehrt, und dass der Signalausgang der vierten Schwellwertentscheider-Einrichtung 104 mit einem Intern-Signaleingang der sechsten Schwellwertentscheider-Einrichtung 106 gekoppelt ist aber nicht umgekehrt, was durch die Einfachpfeile 110' verdeutlicht ist.
  • Ferner weist die erste Schwellwertentscheider-Einrichtung 101 überhaupt keine direkten Kopplungen mit der dritten Schwellwertentscheider-Einrichtung 103, der vierten Schwellwertentscheider-Einrichtung 104 und der fünften Schwellwertentscheider-Einrichtung 105 auf, und sowohl die zweite Schwellwertentscheider-Einrichtung 102 als auch die dritte Schwellwertentscheider-Einrichtung 103 weisen keine direkten Kopplungen mit der fünften Schwellwertentscheider-Einrichtung 105 und der sechsten Schwellwertentscheider-Einrichtung 106 auf.
  • Im Zusammenhang mit den in 1A und 1B gezeigten Ausführungsbeispielen ist anzumerken, dass die Darstellungen der Zufallszahlengeneratoren 100 bzw. 150, insbesondere die gezeigte Anordnung der miteinander gekoppelten Schwellwertentscheider-Einrichtungen 101, 102, 103, 104, 105, 106, als schematisch zu verstehen ist. Die tatsächliche physikalische Anordnung der einzelnen Schwellwertentscheider-Einrichtungen bzw. der Signalerfass-Einrichtung 120 kann daher von den in den 1A und 1B gezeigten Anordnungen abweichen.
  • 2 zeigt beispielhaft die Kopplung einer ersten Schwellwertentscheider-Einrichtung L mit einer zweiten Schwellwertentscheider-Einrichtung K in größerem Detail. Die beiden Schwellwertentscheider-Einrichtungen L, K sind Teil eines Zufallszahlengenerators, welcher Zufallszahlengenerator ähnlich den in 1A und 1B gezeigten Zufallszahlengeneratoren 100 bzw. 150 ausgebildet sein kann.
  • Die erste Schwellwertentscheider-Einrichtung L weist einen Extern-Signaleingang 201a auf, an welchem ein vorgegebenes externes Eingangssignal 202a, z. B. ein analoges Eingangssignal mit vorgegebener zeitlich unveränderlicher Amplitude, empfangen wird. Die erste Schwellwertentscheider-Einrichtung L weist ferner einen ersten Intern-Signaleingang 203a, an welchem ein erstes internes Eingangssignal 204a empfangen wird, sowie einen zweiten Intern-Signaleingang 203a', an welchem ein zweites internes Eingangssignal 204a' empfangen wird. Bei den zwei internen Eingangssignalen 204a und 204a' kann es sich beispielsweise um zwei an den Signalausgängen zweier anderer Schwellwertentscheider-Einrichtungen bereitgestellte Ausgangssignale handeln.
  • Aus dem an dem Extern-Signaleingang 201a empfangenen externen Eingangssignal 202a und den an den Intern-Signaleingängen 203a, 203a' empfangenen internen Eingangssignalen 204a, 204a' wird mit Hilfe einer in der ersten Schwellwertentscheider-Einrichtung L ausgebildeten Summensignal-Bildungs-Einrichtung 205a ein Summensignal 206a gebildet.
  • Die erste Schwellwertentscheider-Einrichtung L weist weiterhin einen als Integrate-and-Fire-Neuron ausgebildeten Pulsgenerator 207a auf, welcher mit der Summensignal-Bildungs-Einrichtung 205a gekoppelt ist. Das von der Summensignal-Bildungs-Einrichtung 205a gebildete Summensignal 206a kann anschaulich als synaptischer Strom interpretiert werden, welcher mit Hilfe des Integrate-and-Fire-Neurons 207a zeitlich aufintegriert wird. Sobald das zeitlich aufintegrierte Summensignal 206a bzw. der zeitlich aufintegrierte synaptische Strom 206a eine vorgebbare Schwelle überschreitet, wird von dem Pulsgenerator 207a bzw. dem Integrate-and-Fire-Neuron 207a ein definiertes, d. h. ein vorgebbares gepulstes Ausgangssignal XL erzeugt und an einem in der ersten Schwellwertentscheider-Einrichtung L ausgebildeten Signalausgang 208a bereitgestellt.
  • Das gepulste Ausgangssignal XL wird mit Hilfe einer mit dem Signalausgang 208a der ersten Schwellwertentscheider-Einrichtung L gekoppelten Signal-Gewichtungs-Einrichtung KL mit einem individuellen, vorgebbaren Kopplungsgewicht WKL gewichtet. Anders ausgedrückt wird mit Hilfe der Signal-Gewichtungs-Einrichtung KL aus dem Ausgangssignal XL ein gewichtetes Ausgangssignal XKL erzeugt, bei welchem gewichteten Ausgangssignal XKL die Signalstärke bzw. Amplitude im Vergleich zu dem Ausgangssignal XL mit einem vorgegebenen Faktor skaliert ist.
  • Das gewichtete Ausgangssignal XKL wird an einem ersten Intern-Signaleingang 203b der zweiten Schwellwertentscheider-Einrichtung K als ein erstes internes Eingangssignal empfangen. Die zweite Schwellwertentscheider-Einrichtung K weist zusätzlich zu dem ersten Intern-Signaleingang 203b einen zweiten Intern-Signaleingang 203b', einen dritten Intern-Signaleingang 203b'' und einen vierten Intern-Signaleingang 203b''' auf, an welchen Intern-Signaleingängen 203b', 203b'', 203b''' entsprechend ein zweites internes Eingangssignal 204b', ein drittes internes Eingangssignal 204b'' und ein viertes internes Eingangssignal 204b''' empfangen werden. Bei den internen Eingangssignalen 204b', 204b'' und 204b''' kann es sich z. B. um gepulste Ausgangssignale von drei anderen Schwellwertentscheider- Einrichtungen handeln, welche Pulssignale jeweils mit Hilfe von Signal-Gewichtungs-Einrichtungen mit individuellen Kopplungsgewichten gewichtet sind.
  • Weiterhin sind in der zweiten Schwellwertentscheider-Einrichtung K ein erster Extern-Signaleingang 201b und ein zweiter Extern-Signaleingang 201b' ausgebildet, an denen ein erstes vorgebbares externes Eingangssignal 202b und ein zweites vorgebbares externes Eingangssignal 202b' empfangen werden. Die externen Eingangssignale 202b und 202b' können als ungepulste bzw. kontinuierliche Signale mit zeitlich konstanter Signalstärke ausgebildet sein.
  • Aus den gepulsten internen Eingangssignalen XKL, 204b', 204b'', 204b''' und den kontinuierlichen externen Eingangssignalen 202b, 202b' wird mit Hilfe einer in der zweiten Schwellwertentscheider-Einrichtung K ausgebildeten Summensignal-Bildungs-Einrichtung 205b ein Summensignal 206b bzw. ein synaptischer Strom 206b gebildet, welches Summensignal 206b bzw. welcher synaptischer Strom 206b mit Hilfe eines mit der Summensignal-Bildungs-Einrichtung 205b gekoppelten Pulsgenerators 207b, welcher als Integrate-and-Fire-Neuron ausgebildet ist, zeitlich aufintegriert wird. Überschreitet das zeitlich aufintegrierte Summensignal 206b eine vorgegebene Schwelle, so wird von dem Pulsgenerator 207b bzw. dem Integrate-and-Fire-Neuron 207b ein Puls XK mit vorgegebener Form, d. h. z. B. vorgegebenem zeitlichem Verlauf der Amplitude, erzeugt und an einem Signalausgang 208b der zweiten Schwellwertentscheider-Einrichtung K als gepulstes Ausgangssignal X bereitgestellt.
  • Das Pulssignal XK kann wiederum an einem oder mehreren mit dem Signalausgang 208b gekoppelten Intern-Signaleingängen anderer (nicht gezeigter) Schwellwertentscheider-Einrichtungen als internes Eingangssignal empfangen werden, wobei das Pulssignal XK jeweils mit Hilfe einer oder mehrerer Signal-Gewichtungs-Einrichtungen mit einem individuellen Kopplungsgewicht gewichtet werden kann. Eine Möglichkeit besteht zum Beispiel auch darin, dass das mit einem Kopplungsgewicht (z. B. WLK) gewichtete Pulssignal XK als gewichtetes Signal (z. B. XLK) an dem ersten Intern-Signaleingang 203a oder dem zweiten Intern-Signaleingang 203a' der ersten Schwellwertentscheider-Einrichtung L als erstes internes Eingangssignal 204a bzw. zweites internes Eingangssignal 204a' empfangen wird. Das heißt, in diesem Fall wäre eine bi-direktionale Kopplung zwischen der ersten Schwellwertentscheider-Einrichtung L und der zweiten Schwellwertentscheider-Einrichtung K ausgebildet, was anschaulich einer Rückkopplung zwischen den beiden Schwellwertentscheider-Einrichtungen L und K entspricht.
  • 3A zeigt einen Zufallszahlengenerator 300 gemäß einem dritten Ausführungsbeispiel der Erfindung, mit m Schwellwertentscheider-Einrichtungen K[0], K[1], ..., K[m – 1], welche Teil eines Netzes zumindest teilweise miteinander gekoppelter Schwellwertentscheider-Einrichtungen sind. Das heißt, zusätzlich zu den in 3A gezeigten m Schwellwertentscheider-Einrichtungen K[0] bis K[m – 1] können noch weitere Schwellwertentscheider-Einrichtungen in dem Zufallszahlengenerator 300 ausgebildet sein. Die gezeigten Schwellwertentscheider-Einrichtungen K[0] bis K[m – 1] können untereinander und/oder mit anderen, nicht gezeigten Schwellwertentscheider-Einrichtungen gekoppelt sein, was durch die Kopplungslinien 310 angedeutet ist. Die Kopplungen 310 können als bi-direktionale und/oder als uni-direktionale Kopplungen ausgebildet sein.
  • Alle gezeigten Schwellwertentscheider-Einrichtungen K[0] bis K[m – 1] weisen jeweils einen Signalausgang 308 auf, wobei an dem Signalausgang 308 einer ersten Schwellwertentscheider-Einrichtung K[0] ein erstes gepulstes Ausgangssignal XK[0] bereitgestellt wird, an dem Signalausgang 308 einer zweiten Schwellwertentscheider-Einrichtung K[1] ein zweites gepulstes Ausgangssignal XK[1] bereitgestellt wird, usw.. An dem Signalausgang 308 einer m-ten Schwellwertentscheider-Einrichtung K[m – 1] schließlich wird ein m-tes gepulstes Ausgangssignal XK[m-1] bereitgestellt.
  • Der Zufallszahlengenerator 300 weist ferner eine Signal-Erfass-Einrichtung 320 auf, welche mit den Signalausgängen 308 der m Schwellwertentscheider-Einrichtungen K[0], K[1], ..., K[m – 1] gekoppelt ist. Die Signal-Erfass-Einrichtung 320 weist m als taktgesteuerte Flip-Flops ausgebildete Register 301 auf, wobei jeweils ein Signaleingang 301a eines Registers 301 bzw. eines taktgesteuerten Flip-Flops 301 mit einem Signalausgang 308 einer der m Schwellwertentscheider-Einrichtungen K[0], K[1], ..., K[m – 1] gekoppelt ist. Die taktgesteuerten Flip-Flops 301 weisen ferner jeweils einen Taktsignal-Eingang 301b auf, an welchem ein Taktsignal C empfangen wird. Die taktgesteuerten Flip-Flops 301 bzw. Register 301 werden dabei alle mit demselben Taktsignal C synchron getaktet. Weiterhin weisen die taktgesteuerten Flip-Flops 301 jeweils einen Signalausgang 301c auf, wobei an dem Signalausgang 301c eines eingangsseitig mit der ersten Schwellwertentscheider-Einrichtung K[0] gekoppelten Flip-Flops 301 ein erstes Ausgangssignal D[0] bereitgestellt wird, an dem Signalausgang 301c eines eingangsseitig mit der zweiten Schwellwertentscheider-Einrichtung K[1] gekoppelten Flip-Flops 301 ein zweites Ausgangssignal D[1] bereitgestellt wird, usw.. An dem Signalausgang 301c eines eingangsseitig mit der m-ten Schwellwertentscheider-Einrichtung K[m – 1] gekoppelten Flip-Flops 301 schließlich wird ein m-tes Ausgangssignal D[m – 1] bereitgestellt.
  • Mit Hilfe der in 3A gezeigten Signal-Erfass-Einrichtung 320, welche Signal-Erfass-Eirichtung 320 mit den Signalausgängen 308 der m Schwellwertentscheider-Einrichtungen K[0], K[1], ..., K[m – 1] gekoppelt ist, werden die an den Signalausgängen 308 bereitgestellten Pulssignale XK[0], XK[1], ..., XK[m-1] erfasst, wobei anschaulich bei jedem Takt (z. B. mit steigender Taktflanke) des Taktsignals C der momentane Zustand des an dem Signaleingang 301a eines mit dem Signalausgang 308 einer Schwellwertentscheider-Einrichtung gekoppelten Registers 301 bzw. taktgesteuerten Flip-Flops 301 anliegenden gepulsten Signals in das Register 301 übertragen wird.
  • Zum Beispiel wird bei jedem Takt des Taktsignals C der gegenwärtige Zustand des an dem Signalausgang 308 der ersten Schwellwertentscheider-Einrichtung K[0] bereitgestellten gepulsten Ausgangssignals XK[0] in das mit der ersten Schwellwertentscheider-Einrichtung 308 gekoppelte Register 301 übertragen und an dem Signalausgang 301c des Registers 301 als Ausgangssignal D[0] bereitgestellt. In Analogie dazu werden bei jedem Takt des Taktsignals C die momentanen Zustände der Pulse XK[1], XK[2], ..., XK[m-1] in die entsprechenden Register 301 übertragen und an den Signalausgängen 301c entsprechend als Ausgangssignale D[1], D[2], ..., D[m – 1] bereitgestellt.
  • 3B zeigt ein Taktschema 350 zur Erzeugung von m-Bit-Zufallszahlen, welches auf der Funktionsweise des in 3A gezeigten Zufallszahlengenerators 300 beruht.
  • Die nach rechts aufgetragene Achse 351 gibt die Zeit t in willkürlichen Einheiten an. In dem Taktschema 350 sind beispielhaft die zeitlichen Verläufe des Ausgangssignals XK[0] der ersten Schwellwertentscheider-Einrichtung K[0] und des Ausgangssignals D[0] des mit der ersten Schwellwertentscheider-Einrichtung K[0] gekoppelten Registers 301 dargestellt, sowie die zeitlichen Verläufe des Ausgangssignals XK[1] der zweiten Schwellwertentscheider-Einrichtung K[1] und des Ausgangssignals D[1] des mit der zweiten Schwellwertentscheider-Einrichtung K[1] gekoppelten Registers 301. 3B zeigt, dass die zeitlichen Verläufe der Ausgangssignale XK[0] und XK[1] der Schwellwertentscheider-Einrichtungen K[0] bzw. K[1] unregelmäßige (insbesondere nicht-periodische) Pulsmuster aufweisen mit statistisch verteilten Zeitintervallen zwischen je zwei aufeinander folgenden Pulsen. In dem zeitlichen Verlauf des Ausgangssignals XK[0] sind beispielhaft die Pulsdauer tp und die Pulshöhe hp veranschaulicht. Die zeitlichen Verläufe der Ausgangssignale XK[2], XK[3], ..., XK[m-1] der Schwellwertentscheider-Einrichtungen K[2], K[3], ..., K[m – 1] ergeben ähnliche Pulsmuster, sind der Übersichtlichkeit halber jedoch nicht in 3B gezeigt.
  • In dem Taktschema 350 ist ferner das Taktsignal C aufgetragen, welches als Rechteck-Signal mit Periodendauer T ausgebildet ist. Zum Zeitpunkt t0 weist das Taktsignal C eine steigende Flanke auf, was zur Folge hat, dass die momentanen Zustände der gepulsten Ausgangssignale XK[0] XK[1], ..., XK[m-1], in die mit der jeweiligen Schwellwertentscheider-Einrichtung K[0], K[1], ..., K[m – 1] gekoppelten Register 301 bzw. taktgesteuerten Flip-Flops 301 übertragen werden. Zum Beispiel weist das von der ersten Schwellwertentscheider-Einrichtung K[0] bereitgestellte gepulste Ausgangssignal XK[0] zum Zeitpunkt t0 einen hohen Wert bzw. Signalpegel auf, welcher hohe Signalpegel entsprechend in das mit der ersten Schwellwertentscheider-Einrichtung K[0] gekoppelte Register 301 übertragen wird und von diesem bis zur nächsten positiven Taktflanke des Taktsignals C als erstes Ausgangssignal D[0] bereitgestellt wird. Anders ausgedrückt übernimmt das mit der ersten Schwellwertentscheider-Einrichtung K[0] gekoppelte Register 301 zum Zeitpunkt t0 den momentanen Zustand des Pulssignals XK[0] und behält diesen Zustand bis zum nächsten Takt, d. h. bis zur nächsten positiven Flanke des Taktsignals C, welche zum Zeitpunkt t1 = t0 + T, d. h. eine Periodendauer des Taktsignals später, auftritt. Zum Zeitpunkt t1 wird der Zustand des gepulsten Signals XK[0] erneut "abgefragt", in das mit der Schwellwertentscheider-Einrichtung K[0] gekoppelte Register 301 übertragen und dort als Ausgangssignal D[0] bereitgestellt. Dieser Vorgang wiederholt sich analog zu den Zeitpunkten tj = t0 + j·T (mit j = 2, 3, 4, ...). Da bei dem in 3B gezeigten Beispiel das Ausgangssignal XK[0] der ersten Schwellwertentscheider-Einrichtung K[0] zum Zeitpunkt t1 einen niedrigen Wert aufweist, nimmt das Ausgangssignal D[0] zum Zeitpunkt t1 ebenfalls einen niedrigen Wert an.
  • Das Ausgangssignal XK[1] der zweiten Schwellwertentscheider-Einrichtung K[1] weist zum Zeitpunkt t0 einen niedrigen Wert auf, welcher entsprechend zu einem niedrigen Ausgangssignal D[1] des mit der zweiten Schwellwertentscheider-Einrichtung K[1] gekoppelten Registers 301 führt. Zum Zeitpunkt t1 weist das Ausgangssignal XK[1] der zweiten Schwellwertentscheider-Einrichtung K[1] erneut einen niedrigen Wert auf, so dass D[1] seinen niedrigen Wert beibehält.
  • In analoger Weise werden zu den Zeitpunkten tj = t0 + j·T (mit j = 0, 1, 2, ...) die momentanen Werte der gepulsten Ausgangssignale XK[2], ..., XK[m-1] abgetastet, in die entsprechenden Register 301 übertragen und dort bis zum jeweils nächsten Takt als Ausgangssignale D[2], D[3], ..., D[m – 1] bereitgestellt. Ein Register 301, bzw. das Ausgangssignal eines Registers, nimmt dabei in Abhängigkeit von dem gepulsten Ausgangssignal einer Schwellwertentscheider-Einrichtung einen von zwei möglichen Zuständen an. Das Register 301 kann daher als 1-Bit-Register interpretiert werden.
  • Eine Grundidee der Erfindung besteht darin, dass die an den Signalausgängen 301c der m Register 301 bereitgestellten Ausgangssignale D[0], D[1], ..., D[m – 1] jeweils als Zufalls- Bitfolge ausgebildet sind. Betrachtet man daher zum Beispiel die Abfolge von Ausgangssignalen eines der m Register 301 (z. B. die Abfolge von D[0]) zu den Zeitpunkten t0 + T/2, t0 + 3·T/2, t0 + 5·T/2, t0 + 7·T/2, ..., (d. h. immer zwischen zwei aufeinanderfolgenden Takten) so erhält man eine Folge von 1-Bit-Zufallszahlen bzw. eine Folge von Zufalls-Bits.
  • Zur Erzeugung einer m-Bit-Zufallszahl können beispielsweise zum Zeitpunkt t0 + T/2 die zufälligen Bits bzw. die momentanen Ausgangssignale D[0], D[1], ..., D[m – 1] aller m Register 301 zu einer m-Bit-Zufallszahl kombiniert werden. Das heißt, jedes der m Ausgangssignale D[0], D[1], ..., D[m – 1] liefert ein Bit der m-Bit-Zufallszahl. Zur Erzeugung von k m-Bit-Zufallszahlen können k Takte des Taktsignals abgewartet werden, wobei zu jedem Taktzeitpunkt eine neue m-Bit-Zufallszahl mit Hilfe der Ausgangssignale D[0], D[1], ..., D[m – 1] erzeugt wird.
  • 4A zeigt einen Zufallszahlengenerator 400 gemäß einem vierten Ausführungsbeispiel der Erfindung. Der Zufallszahlengenerator 400 unterscheidet sich von dem in 3A gezeigten Zufallszahlengenerator 300 im Wesentlichen dadurch, dass eine Signal-Erfass-Einrichtung 420 derart ausgebildet ist, dass zwischen jeweils eine der m Schwellwertentscheider-Einrichtungen K[0], K[1], ..., K[m – 1] und ein mit der jeweiligen Schwellwertentscheider-Einrichtung gekoppeltes Register 301 ein Toggle-Flip-Flop 401 geschaltet ist, derart, dass ein Signaleingang 401a des Toggle-Flip-Flops 401 mit dem Signalausgang 308 der Schwellwertentscheider-Einrichtung gekoppelt ist, und dass ein Signalausgang 401c des Toggle-Flip-Flops 401 mit dem Signaleingang des Registers 301 gekoppelt ist.
  • Die insgesamt m in der Signal-Erfass-Einrichtung 420 ausgebildeten Toggle-Flip-Flops 401 weisen ferner jeweils einen Reset-Signal-Eingang 401b auf, wobei an allen Reset- Signal-Eingängen 401b ein gemeinsames Reset-Signal R empfangen wird. Die Toggle-Flip-Flops 401 sind derart eingerichtet, dass der Zustand eines an dem Signalausgang 401c bereitgestellten Ausgangssignals, welches Ausgangssignal an dem Signaleingang 301a des mit dem Toggle-Flip-Flop 401 gekoppelten Registers 301 empfangen wird, jedesmal invertiert wird, sobald an dem Signaleingang 401a des Toggle-Flip-Flops 401 ein Pulssignal empfangen wird, welches Pulssignal an dem Signalausgang 308 der mit dem Toggle-Flip-Flop 401 gekoppelten Schwellwertentscheider-Einrichtung bereitgestellt wird.
  • Beispielsweise kann zu einem bestimmten Zeitpunkt an dem Signalausgang 401c eines mit der Schwellwertentscheider-Einrichtung K[0] gekoppelten Toggle-Flip-Flops 401 ein Ausgangssignal B[0] mit einem bestimmten Zustand bereitgestellt werden, welches Ausgangssignal B[0] an dem Signaleingang 301a des mit dem Toggle-Flip-Flop 401 gekoppelten Registers 301 empfangen wird. Wird nun an dem Signaleingang 401a des Toggle-Flip-Flops 401 ein Puls XK[0] empfangen, so wird das Ausgangssignal B[0] des Toggle-Flip-Flops 401 invertiert, und entsprechend empfängt der Signaleingang 301a des Registers 301 das invertierte Ausgangssignal B[0]. Die Wirkungsweise der mit den Schwellwertentscheider-Einrichtungen K[1], K[2], ..., K[m – 1] gekoppelten restlichen m – 1 Toggle-Flip-Flops 401 ergibt sich in analoger Weise.
  • Im Folgenden wird die Funktionsweise der Toggle-Flip-Flops 401 näher erläutert.
  • 4B zeigt ein Taktschema 450 zur Erzeugung von m-Bit-Zufallszahlen, welches auf der Funktionsweise des in 4A gezeigten Zufallszahlengenerators 300 beruht. Das Taktschema 450 unterscheidet sich von dem in 3B gezeigten Taktschema 350 dadurch, dass oberhalb der zeitlichen Verläufe der Ausgangssignale XK[0] bzw. XK[1] der ersten Schwellwertentscheider-Einrichtung K[0] bzw. der zweiten Schwellwertentscheider-Einrichtung K[1] jeweils die zeitlichen Verläufe der Ausgangssignale B[0] bzw. B[1] (Kurve 353a) der mit den entsprechenden Schwellwertentscheider-Einrichtungen K[0] bzw. K[1] gekoppelten Toggle-Flip-Flops 401 dargestellt sind, und dass ferner der zeitliche Verlauf des Reset-Signals R dargestellt ist.
  • Aus 4B ist zu erkennen, dass der Zustand des Ausgangssignals B[0] des mit der ersten Schwellwertentscheider-Einrichtung K[0] gekoppelten Toggle-Flip-Flops 401 jedesmal invertiert wird, sobald ein Puls des Ausgangssignals XK[0] an dem Signaleingang 401a des Toggle-Flip-Flops 401 empfangen wird. Ebenso wird der Zustand des Ausgangssignals B[1] des mit der zweiten Schwellwertentscheider-Einrichtung K[1] gekoppelten Toggle-Flip-Flops 401 invertiert, sobald ein Puls des Ausgangssignals XK[1] auftritt. Ähnliches gilt für die Ausgangssignale B[2], B[3], ..., B[m – 1] der restlichen m – 2 Toggle-Flip-Flops 401 (nicht gezeigt).
  • Zu den Zeitpunkten tj = t0 + j·T (mit j = 0, 1, 2, ...) d. h. bei einem Takt des Taktsignals C, werden nun nicht, wie bei dem in 3A gezeigten Zufallszahlengenerator 300, die momentanen Zustände der gepulsten Ausgangssignale XK[0], XK[1], ..., XK[m-1] selbst sondern die momentanen Zustände der Ausgangssignale B[0], B[1], ..., B[m – 1] der Toggle-Flip-Flops 401 in die entsprechenden Register 301 übertragen und an den jeweiligen Signalausgängen 301c der Register 301 bis zum nächsten Takt als entsprechende Ausgangssignale D[0], D[1], ..., D[m – 1] bereitgestellt. Anders ausgedrückt übernehmen die Register 301 zu den Zeitpunkten tj = t0 + j·T (mit j = 0, 1, 2, ...) die momentanen Zustände der jeweiligen Toggle-Flip-Flops. Jedesmal, nachdem die Ausgangssignale B[0], B[1], ..., B[m – 1] der Toggle-Flip-Flops in die entsprechenden Register 301 übertragen worden sind, werden die Toggle-Flip-Flops 401 durch das gemeinsame Reset-Signal R, welches als Rechteck-Signal ausgebildet ist, in ihren jeweiligen ursprünglichen Zustand zurückgesetzt.
  • 5 zeigt einen Zufallszahlengenerator 500 gemäß einem fünften Ausführungsbeispiel der Erfindung. Der Zufallszahlengenerator 500 unterscheidet sich von dem in 3A gezeigten Zufallszahlengenerator 300 im Wesentlichen dadurch, dass eine Signal-Erfass-Einrichtung 520 des Zufallszahlengenerators 500 derart ausgebildet ist, dass jede der m Schwellwertentscheider-Einrichtungen K[0], K[1], ..., K[m – 1] nicht bloß mit einem Register 301 gekoppelt ist sondern mit einem Schieberegister 501 aus k in Serie geschalteten Registern 301, wobei unter zwei in Serie geschalteten Registern 301 zu verstehen ist, dass der Signalausgang 301c eines ersten Registers 301 mit dem Signaleingang 301a eines zu dem ersten Register 301 in Serie geschalteten zweiten Registers 301 gekoppelt ist.
  • Die Signal-Erfass-Einrichtung 520 des Zufallszahlengenerators 500 weist daher insgesamt m Schieberegister 501 und somit k·m Register 301 auf, welche k·m Register 301 die Ausgangssignale D[0], D[2], ..., D[k·m – 1] bereitstellen, und welche Register 301 in 5 in Form einer Matrix mit m Zeilen und k Spalten angeordnet sind. Alle Register 301 werden mit einem gemeinsamen Taktsignal C getaktet, und bei jedem Takt wird anschaulich ein von einem Register 301 gehaltenes Ausgangssignal, i. e. ein Zufalls-Bit, "nach rechts verschoben", d. h. zu dem Register 301, welches in der Spalte rechts daneben angeordnet ist. Innerhalb von k Takten wird somit ein Bit von "links nach rechts" durch das gesamte Schieberegister geschoben.
  • Mit dem gezeigten Zufallszahlengenerator 500 können daher k·m-Bit-Zufallszahlen erzeugt werden, wobei jedes Register 301 ein Bit einer k·m-Bit-Zufallszahl bereitstellt. Nach jeweils k Takten des Taktsignals C steht eine neue k·m-Bit-Zufallszahl an den Registerausgängen zur Verfügung, da dann sämtliche Bits einer alten Zufallszahl anschaulich aus den Schieberegistern 501 hinausgeschoben wurden.
  • 6 zeigt einen Zufallszahlengenerator 600 gemäß einem sechsten Ausführungsbeispiel der Erfindung. Der Zufallszahlengenerator 600 unterscheidet sich von dem in 5 gezeigten Zufallszahlengenerator 500 im Wesentlichen dadurch, dass eine Signal-Erfass-Einrichtung 620 des Zufallszahlengenerators 600 derart ausgebildet ist, dass zwischen jede der m Schwellwertentscheider-Einrichtungen K[0], K[1], ..., K[m – 1] und das mit der entsprechenden Schwellwertentscheider-Einrichtung gekoppelte Register 301 des Schieberegisters 501 ein Toggle-Flip-Flop 401 geschaltet ist. Anschaulich vereint die Signal-Erfass-Einrichtung 620 des Zufallszahlengenerators 600 daher die Merkmale der in 4A gezeigten Signal-Erfass-Einrichtung 420 des Zufallszahlengenerators 400 und die Merkmale der in 5 gezeigten Signal-Erfass-Einrichtung 520 des Zufallszahlengenerators 500. Zur Funktionalität der in 6 gezeigten Signalerfasseinrichtung 620 wird daher auf die jeweiligen Beschreibungen zu den 4A, 4B und 5 verwiesen.
  • Die in 7 gezeigten Diagramme 701, 702, 703 und 704 zeigen vier experimentell aufgenommene Verteilungsfunktionen bzw. Häufigkeitsverteilungen für 5-Bit-Zufallszahlen. Die Häufigkeitsverteilungen wurden gemessen an einem Zufallszahlengenerator gemäß einem siebten Ausführungsbeispiel der Erfindung, welcher ein Netzwerk aus acht vollvernetzten Schwellwertentscheider-Einrichtungen bzw. Neuronen aufweist, d. h. jede der acht Schwellwertentscheider-Einrichtungen weist ähnlich wie bei dem in 1A gezeigten Zufallszahlengenerator 100 bi-direktionale Kopplungen zu den jeweils sieben anderen Schwellwertentscheider-Einrichtungen auf. Die gepulsten Ausgangssignale von vier der acht miteinander gekoppelten Schwellwertentscheider-Einrichtungen wurden jeweils mit einer Signal-Erfass-Einrichtung, welche Signal-Erfass-Einrichtung ein Schieberegister mit fünf in Serie geschalteten Registern aufweist (d. h. m = 1 und k = 5), erfasst und als k·m-Bit = 5·1-Bit-Zufallszahl ausgewertet. Die Diagramme 701, 702, 703, 704 zeigen die relativen Häufigkeiten der in entsprechende Dezimalzahlen (i. e. 0 bis 31) umgewandelten 5-Bit-Zufallszahlen, welche Zufallszahlen aus den Pulssignalen jeweils einer Schwellwertentscheider-Einrichtung ermittelt wurden. Es ist zu erkennen, dass die mit Hilfe des Zufallszahlengenerators erzeugten Zufallszahlen annähernd gleichverteilt sind.
  • Tabelle 1 zeigt beispielhafte Werte für die Kopplungsgewichte WKL des im Zusammenhang mit 7 beschriebenen Netzwerkes aus acht vollvernetzten Schwellwertentscheider-Einrichtungen, in welchem Netzwerk jede der acht Schwellwertentscheider-Einrichtungen bi-direktionale Kopplungen zu den jeweils sieben anderen Schwellwertentscheider-Einrichtungen aufweist. Für die Pulsdauer tp eines gepulsten Ausgangssignals einer Schwellwertentscheider-Einrichtung wird tp = 1 ms angenommen, für die Pulshöhe hp wird hp = 1 V angenommen, und für den Schwellenwert Θ wird Θ = 1 V angenommen.
    K\L 0 1 2 3 4 5 6 7
    0 - 0.1683 0.1400 0.1511 0.1700 0.2045 0.1397 0.1840
    1 0.1442 - 0.1667 0.1357 0.1323 0.1579 0.1485 0.1561
    2 0.2075 0.1700 - 0.1893 0.1793 0.1894 0.1905 0.1941
    3 0.1380 0.1776 0.1516 - 0.1543 0.2020 0.1687 0.1588
    4 0.1760 0.1909 0.2032 0.1980 - 0.1977 0.1817 0.1887
    5 0.1739 0.1578 0.1550 0.1420 0.1944 - 0.1601 0.1640
    6 0.2071 0.1359 0.1431 0.2054 0.1869 0.1595 - 0.1905
    7 0.1886 0.2053 0.1277 0.1519 0.1886 0.1456 0.1746 -
    Tabelle 1: Kopplungsgewichte WKL (in ms–1)
  • In Tabelle 1 bezeichnet die erste Spalte den Index K der (K + 1)-ten Schwellwertentscheider-Einrichtung (K = 0, 1, 2, ..., 7) des Netzwerkes, und die erste Zeile bezeichnet den Index L der (L + 1)-ten Schwellwertentscheider-Einrichtung (L = 0, 1, 2, ..., 7) des Netzwerkes. Ein Tabelleneintrag, welcher in der (K + 2)-ten Zeile und der (L + 2)-ten Spalte der Tabelle steht, bezeichnet das Gewicht WKL (in ms–1 (Millisekunde–1)), mit dem ein von der (L + 1)-ten Schwellwertentscheider-Einrichtung L bereitgestelltes Ausgangssignal XL gewichtet wird (mittels einer Signal-Gewichtungs-Einrichtung) und als gewichtetes Ausgangssignal XKL = WKL XL an einem Intern-Signaleingang der (K + 1)-ten Schwellwertentscheider-Einrichtung empfangen wird.
  • Aus Tabelle 1 ist beispielsweise abzulesen, dass ein Ausgangssignal X5 der sechsten Schwellwertentscheider-Einrichtung (L = 5) an einem Intern-Signaleingang der vierten Schwellwertentscheider-Einrichtung (K = 3) als ein mit dem Kopplungsgewicht W35 = 0.2020 ms–1 gewichtetes Ausgangssignal X35 = W35 X5 = 0.2020 ms–1 X5 empfangen wird. Umgekehrt wird ein Ausgangssignal X3 der vierten Schwellwertentscheider-Einrichtung (L = 3) an einem Intern-Signaleingang der sechsten Schwellwertentscheider-Einrichtung (K = 5) als ein mit dem Kopplungsgewicht W53 = 0.1420 ms–1 gewichtetes Ausgangssignal X53 = W53 X3 = 0.1420 ms–1 X3 empfangen.
  • Die in Tabelle 1 dargestellten Kopplungsgewichte WKL weisen Werte zwischen 0.1277 ms–1 und 0.2075 ms–1 auf. In alternativen Ausgestaltungen der Erfindungen können einer oder mehrere der Werte WKL um bis zu ± 3 Prozent von den dargestellten Werten abweichen. Allgemein kann für die Werte WKL zum Beispiel 0 < WKL < 1 ms–1 gelten.
  • Tabelle 2 zeigt beispielhafte Werte für konstante externe Analog-Eingangssignale (Ströme) IK, welche Eingangssignale IK an Extern-Signaleingängen der acht vollvernetzten Schwellwertentscheider-Einrichtungen empfangen werden. Dabei ist angenommen, dass jede der acht Schwellwertentscheider-Einrichtungen jeweils einen Extern-Signaleingang aufweist.
    K 0 1 2 3 4 5 6 7
    IK 0,0768 0,0905 0,0776 0,0968 0,0807 0,0874 0,0996 0,0866
    Tabelle 2: Externe Eingangssignale IK (in V ms–1)
  • Die erste Zeile der Tabelle bezeichnet den Index K der (K + 1)-ten Schwellwertentscheider-Einrichtung, und die zweite Zeile bezeichnet den Wert IK (in Einheiten von V ms–1 (Volt·Millisekunde–1)) eines analogen, zeitlich konstanten externen Eingangssignals IK, welches an einem Extern-Signaleingang der (K + 1)-ten Schwellwertentscheider-Einrichtung empfangen wird. Zum Beispiel empfängt die dritte Schwellwertentscheider-Einrichtung (K = 2) des Netzwerkes ein konstantes externes Eingangssignal I2 = 0.0776 V ms–1, und die achte Schwellwertentscheider-Einrichtung (K = 7) empfängt ein konstantes externes Eingangssignal I7 = 0.0866 V ms–1.
  • Die in Tabelle 2 dargestellten externen Eingangssignale IK weisen Werte zwischen 0.0768 V ms–1 und 0.0996 V ms–1 auf. In alternativen Ausgestaltungen der Erfindungen können einer oder mehrere der Werte IK um bis zu ± 3 Prozent von den dargestellten Werten abweichen. Allgemein kann für die Werte IK zum Beispiel 0 < IK < 0.1 V ms–1 gelten.
  • In diesem Dokument sind folgende Veröffentlichungen zitiert:
    • [1] B. Schneier, "Applied Cryptography", John Wiley & Sons, Second Edition, 1996, Chapter 16: "Pseudo-Random Generators and Stream-Ciphers".
    • [2] C.S. Petrie, J.A. Connelly, "A Noise-Based IC Random Number Generator for Applications in Cryptography", IEEE Transactions on Circuits and Systems – I: Fundamental Theory and Applications, Vol. 47, No. 5, May 2000, pp. 615–621.
    • [3] G.B. Agnew, "Random Sources for Cryptographic Systems", EUROCRYPT '87, pp. 77–81.
    • [4] Huang Zhun, Chen Hongyi, "A Truly Random Number Generator Based on Thermal Noise", 4th International Conference on ASIC, Proceedings, 23–25 Oct. 2001, pp. 862–864.
    • [5] M. Bucci, L. Germani, R. Luzzi, A. Trafiletti, M. Varanonuovo, "A High-Speed Oscillator-Based Truly Random Number Source for Cryptographic Applications on a Smart Card IC", IEEE Transactions on Computers, Vol. 52, No. 4, April 2003, pp. 403–409.
    • [6] Huang Zhun, Bai Guoqiang, Chen Honyi, "A Chaotic Circuit for Truly Random Number Generation", 5th International Conference on ASIC, Proceedings, Vol. 1, 21–24 Oct. 2003, pp. 548–551.
    • [7] S. Espejo, J.D. Martin, A. Rodriguez-Vasques, J.L. Huertas, "Design of an Analog/Digital Truly Random Number Generator", IEEE International Symposium on Circuits and Systems, 1990, May 1990, pp. 1368–1371.
    • [8] A. Gerosa, R. Bernardini, S. Pietri, "A Fully Integrated Chaotic System for the Generation of Truly Random Numbers", IEEE Transactions on Circuits and Systems – I: Fundamental Theory and Applications, Vol. 49, No. 7, July 2002, pp. 993–1000.
    • [9] Yu Jun, Shen Hai-bin, Yan Xiao-lang, "Implementation of a Chaos-based, High-speed Truly Random Number Generator", 5th International Conference on ASIC, Proceedings, Vol. 1, 21–24 Oct. 2003, pp. 526–529.
    • [10] A.J. Al-Khalili, D.M. Al-Khalili, "A Controlled Probabilità Random Pulse Generator Suitable for VLSI Implementation", IEEE Transaction on Instrumentation and Measurement, Vol. 39, No. 1, Feb. 1990, pp. 168–174.
    • [11] H. Niederreiter, "New Methods for Pseudorandom Number and Pseudorandom Vector Generation", Proc. 1992 Winter Simulation Conference, ed. J.J. Swain, D. Goldsman, R.C. Crain, J.R. Wilson, 1992, pp. 264–269.
    • [12] D.E. Knuth, "The Art of Computer Programming, Vol. 2: Seminumerical Algorithms", 2nd ed., Reading, MA, Addison-Wesley, 1981, [Chapter 3: "Random Numbers", pp. 1–184].
    • [13] M.A. Glover, A. Hamilton, J.E. Louvet, "An Analog VLSI Integrate-and-Fire Neural Network for Sound Segmentation", May 21, 1998, pp. 86–92.
    • [14] DE 693 29 868 T2
    • [15] EP 0 475 732 B1
  • B[0], B[1],
    B[m – 1]
    Ausgangssignale
    C
    Taktsignal
    D[0], D[1],
    D[m – 1], D[m],
    D[m + 1], D[2m – 1],
    D[(k – 1)m],
    D[(k – 1)m + 1],
    D[km – 1]
    Ausgangssignale
    K, L
    Schwellwertentscheider-Einrichtungen
    KL
    Signal-Gewichtungs-Einrichtung
    K[0], K[1],
    K[m – 1]
    Schwellwertentscheider-Einrichtungen
    R
    Reset-Signal
    XK, XL
    Ausgangssignale
    XKL
    gewichtetes Ausgangssignal
    XK[0], XK[1],
    XK[m-1]
    Ausgangssignale
    100
    Zufallszahlengenerator
    101, 102, 103,
    104, 105, 106
    Schwellwertentscheider-Einrichtungen
    110, 110'
    Kopplungen
    111, 112, 113,
    114, 115, 116
    externe Eingangssignale
    120
    Signal-Erfass-Einrichtung
    121, 124,
    125, 126
    Kopplungen
    150
    Zufallszahlengenerator
    201a
    Extern-Signaleingang
    201b, 201b'
    Extern-Signaleingänge
    202a
    externes Eingangssignal
    202b, 202b'
    externe Eingangssignale
    203a, 203a'
    Intern-Signaleingänge
    203b, 203b',
    203b'', 203b'''
    Intern-Signaleingänge
    204a, 204a'
    interne Eingangssignale
    204b', 204b'',
    204b'''
    interne Eingangssignale
    205a, 205b
    Summensignal-Bildungs-Einrichtungen
    206a, 206b
    Summensignale
    207a, 207b
    Pulsgeneratoren
    208a, 208b
    Signalausgänge
    300
    Zufallszahlengenerator
    301
    Register
    301a
    Signaleingang
    301b
    Taktsignal-Eingang
    301c
    Signalausgang
    308
    Signalausgang
    310
    Kopplungen
    320
    Signal-Erfass-Einrichtung
    350
    Taktschema
    351
    Zeitachse
    352
    Ausgangssignal
    352a
    Ausgangssignal Toggle-Flip-Flop
    353
    Ausgangssignal
    353a
    Ausgangssignal Toggle-Flip-Flop
    354
    Taktsignal
    400
    Zufallszahlengenerator
    401
    Toggle-Flip-Flop
    401a
    Signaleingang
    401b
    Reset-Signal-Eingang
    401c
    Signalausgang
    450
    Taktschema
    500
    Zufallszahlengenerator
    520
    Signal-Erfass-Einrichtung
    600
    Zufallszahlengenerator
    620
    Signal-Erfass-Einrichtung
    701, 702,
    703, 704
    Häufigkeitsverteilungen

Claims (13)

  1. Zufallszahlengenerator, • mit einer Mehrzahl zumindest teilweise miteinander gekoppelter Schwellwertentscheider-Einrichtungen, wobei – jede Schwellwertentscheider-Einrichtung mindestens einen Extern-Signaleingang zum Empfangen mindestens eines vorgebbaren externen Eingangssignals, mindestens einen Intern-Signaleingang zum Empfangen mindestens eines internen Eingangssignals, eine Summensignal-Bildungs-Einrichtung zum Bilden eines Summensignals aus den empfangenen Eingangssignalen sowie einen Signalausgang zum Bereitstellen eines Ausgangssignals aufweist; – jeder Intern-Signaleingang einer Schwellwertentscheider-Einrichtung mit einem Signalausgang einer anderen Schwellwertentscheider-Einrichtung gekoppelt ist, derart, dass an dem Intern-Signaleingang ein an dem Signalausgang der anderen Schwellwertentscheider-Einrichtung bereitgestelltes Ausgangssignal empfangen wird; – jede Schwellwertentscheider-Einrichtung derart eingerichtet ist, dass das von der Summensignal-Bildungs-Einrichtung gebildete Summensignal zeitlich aufintegriert wird, und dass an dem Signalausgang der Schwellwertentscheider-Einrichtung ein vorgebbares gepulstes Ausgangssignal bereitgestellt wird, sobald das zeitlich aufintegrierte Summensignal eine vorgebbare Schwelle überschreitet; • mit einer Mehrzahl von Signal-Gewichtungs-Einrichtungen, wobei mit Hilfe einer Signal-Gewichtungs-Einrichtung ein an einem Signalausgang einer Schwellwertentscheider-Einrichtung bereitgestelltes und an einem mit dem Signalausgang gekoppelten Intern-Signaleingang einer anderen Schwellwertentscheider-Einrichtung empfangenes Ausgangssignal mit einem Kopplungsgewicht gewichtet wird; • mit einer mit mindestens einem Signalausgang der Mehrzahl von Schwellwertentscheider-Einrichtungen gekoppelten Signal-Erfass-Einrichtung zum Erfassen der an dem mindestens einen Signalausgang bereitgestellten gepulsten Ausgangssignale, wobei die von der Signal-Erfass-Einrichtung erfassten gepulsten Ausgangssignale zur Erzeugung von Zufallszahlen verwendet werden.
  2. Zufallszahlengenerator gemäß Anspruch 1, wobei bei mindestens einer Schwellwertentscheider-Einrichtung das zeitliche Aufintegrieren des Summensignals und das Bereitstellen des gepulsten Ausgangssignals mit Hilfe eines Pulsgenerators erfolgt.
  3. Zufallszahlengenerator gemäß Anspruch 2, wobei der Pulsgenerator als Integrate-and-Fire-Neuron ausgebildet ist.
  4. Zufallszahlengenerator gemäß einem der Ansprüche 1 bis 3, wobei mindestens eine Signal-Gewichtungs-Einrichtung einen Signaleingang aufweist, welcher mit einem Signalausgang einer Schwellwertentscheider-Einrichtung gekoppelt ist, sowie einen Signalausgang, welcher mit einem Intern-Signaleingang einer anderen Schwellwertentscheider-Einrichtung gekoppelt ist.
  5. Zufallszahlengenerator gemäß einem der Ansprüche 1 bis 4, wobei mindestens eine Signal-Gewichtungs-Einrichtung derart eingerichtet ist, dass das Kopplungsgewicht als zeitlich konstantes Kopplungsgewicht ausgebildet ist.
  6. Zufallszahlengenerator gemäß einem der Ansprüche 1 bis 5, wobei mindestens eines der externen Eingangssignale als zeitlich konstantes Eingangssignal ausgebildet ist.
  7. Zufallszahlengenerator gemäß einem der Ansprüche 3 bis 6, wobei die Mehrzahl gekoppelter Schwellwertentscheider-Einrichtungen als neuronales Netzwerk ausgebildet ist.
  8. Zufallszahlengenerator gemäß einem der Ansprüche 1 bis 7, wobei die Signal-Erfass-Einrichtung mindestens ein Register aufweist, welches mindestens eine Register mit mindestens einem Signalausgang der Mehrzahl von Schwellwertentscheider-Einrichtungen gekoppelt ist.
  9. Zufallszahlengenerator gemäß einem der Ansprüche 1 bis 8, wobei die Signal-Erfass-Einrichtung mindestens ein Schieberegister mit mindestens zwei in Serie geschalteten Registern aufweist, welches mindestens eine Schieberegister mit mindestens einem Signalausgang der Mehrzahl von Schwellwertentscheider-Einrichtungen gekoppelt ist.
  10. Zufallszahlengenerator gemäß einem der Ansprüche 8 oder 9, wobei mindestens eines der in der Signal-Erfass-Einrichtung ausgebildeten Register als taktgesteuertes Flip-Flop ausgebildet ist, welches taktgesteuerte Flip-Flop einen Taktsignal-Eingang zum Empfangen eines Taktsignals aufweist.
  11. Zufallszahlengenerator gemäß Anspruch 10, wobei die Signal-Erfass-Einrichtung derart eingerichtet ist, dass an den Taktsignal-Eingängen aller als taktgesteuertes Flip-Flop ausgebildeten Register ein gemeinsames Taktsignal bereitgestellt wird.
  12. Zufallszahlengenerator gemäß einem der Ansprüche 8 bis 11, wobei die Signal-Erfass-Einrichtung mindestens ein Toggle-Flip-Flop aufweist, welches mindestens eine Toggle-Flip-Flop zwischen mindestens einen Signalausgang und ein mit dem mindestens einen Signalausgang gekoppeltes Register oder Schieberegister geschaltet ist.
  13. Verfahren zum Erzeugen von Zufallszahlen, • bei dem eine Mehrzahl zumindest teilweise miteinander gekoppelter Schwellwertentscheider-Einrichtungen bereitgestellt wird, wobei – jede Schwellwertentscheider-Einrichtung mindestens einen Extern-Signaleingang aufweist, an dem mindestens ein vorgebbares externes Eingangssignal, empfangen wird, sowie mindestens einen Intern-Signaleingang, an dem mindestens ein internes Eingangssignal empfangen wird, sowie eine Summensignal-Bildungs-Einrichtung, mit deren Hilfe aus den empfangenen Eingangssignalen ein Summensignal gebildet wird, sowie einen Signalausgang, an dem ein Ausgangssignal bereitgestellt wird; – jeder Intern-Signaleingang einer Schwellwertentscheider-Einrichtung mit einem Signalausgang einer anderen Schwellwertentscheider-Einrichtung gekoppelt wird, derart, dass an dem Intern-Signaleingang ein an dem Signalausgang der anderen Schwellwertentscheider-Einrichtung bereitgestelltes Ausgangssignal empfangen wird; – bei jeder Schwellwertentscheider-Einrichtung das von der Summensignal-Bildungs-Einrichtung gebildete Summensignal zeitlich aufintegriert wird, und dass an dem Signalausgang der Schwellwertentscheider-Einrichtung ein gepulstes Ausgangssignal bereitgestellt wird, sobald das zeitlich aufintegrierte Summensignal eine vorgebbare Schwelle überschreitet; • bei dem eine Mehrzahl von Signal-Gewichtungs-Einrichtungen bereitgestellt wird, wobei mit Hilfe einer Signal-Gewichtungs-Einrichtung ein an einem Signalausgang einer Schwellwertentscheider-Einrichtung bereitgestelltes Ausgangssignal, welches an einem mit dem Signalausgang gekoppelten Intern-Signaleingang einer anderen Schwellwertentscheider-Einrichtung empfangen wird, mit einem Kopplungsgewicht gewichtet wird; • bei dem eine Signal-Erfass-Einrichtung bereitgestellt und mit mindestens einem Signalausgang der Mehrzahl von Schwellwertentscheider-Einrichtungen gekoppelt wird; • bei dem mit Hilfe der Signal-Erfass-Einrichtung die an dem mindestens einen Signalausgang bereitgestellten gepulsten Ausgangssignale erfasst werden; • bei dem die von der Signal-Erfass-Einrichtung erfassten gepulsten Ausgangssignale zur Erzeugung von Zufallszahlen verwendet werden.
DE200610009939 2006-03-03 2006-03-03 Zufallszahlengenerator und Verfahren zum Erzeugen von Zufallszahlen Expired - Fee Related DE102006009939B9 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE200610009939 DE102006009939B9 (de) 2006-03-03 2006-03-03 Zufallszahlengenerator und Verfahren zum Erzeugen von Zufallszahlen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE200610009939 DE102006009939B9 (de) 2006-03-03 2006-03-03 Zufallszahlengenerator und Verfahren zum Erzeugen von Zufallszahlen

Publications (3)

Publication Number Publication Date
DE102006009939A1 DE102006009939A1 (de) 2007-09-06
DE102006009939B4 DE102006009939B4 (de) 2008-05-15
DE102006009939B9 true DE102006009939B9 (de) 2008-09-11

Family

ID=38329258

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200610009939 Expired - Fee Related DE102006009939B9 (de) 2006-03-03 2006-03-03 Zufallszahlengenerator und Verfahren zum Erzeugen von Zufallszahlen

Country Status (1)

Country Link
DE (1) DE102006009939B9 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012149944A1 (de) 2011-05-03 2012-11-08 Novomatic Ag Zufallszahlengenerator

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0475732B1 (de) * 1990-09-10 1998-12-16 Fujitsu Limited Asynchrones Steuerungssystem für einen Neurorechner
DE69329868T2 (de) * 1992-02-21 2001-06-07 Takeshi Yamakawa Vorrichtung und Verfahren zur Erzeugung chaotischer Signale

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0475732B1 (de) * 1990-09-10 1998-12-16 Fujitsu Limited Asynchrones Steuerungssystem für einen Neurorechner
DE69329868T2 (de) * 1992-02-21 2001-06-07 Takeshi Yamakawa Vorrichtung und Verfahren zur Erzeugung chaotischer Signale

Non-Patent Citations (11)

* Cited by examiner, † Cited by third party
Title
AGNEW G.B.: "Random Sources for Cryptographic Systems", EUROCRYPT '87, pp. 77-81 *
BUCCI M., GERMANI L., LUZZI R., TRAFILETTI A., VARANONUOVO M.: "A High-Speed Oscillator-Based Truly Random Number Source for Cryptographic Applications on a Smart Card IC", IEEE Transactions on Computers, Vol. 52,No. 4,April 2003,pp.403-409 *
ESPEJO S., MARTIN, J.D., RODRIGUEZ-VASQUES A., HUERTAS J.L.: "Design of an Analog/Digital Truly Random Number Generator", IEEE International Symposium on Circuits and Systems, 1990, May 1990, pp. 1368-1371
GEROSA A., BERNARDINI R., PIETRI S.: "A Fully Integrated Chaotic System for the Generation of Truly Random Numbers", IEEE Transactions on Circuits and Systems - I: Fundamental Theory and Applications, Vol. 49, No. 7, July 2002, pp. 993-1000
PETRIE C.S., CONNELLY J.A.: "A Noise-Based IC Random Number Generator for Applications in Cryptography", IEEE Transactions on Circuits and Systems - I: Fundamental Theory and Applications, Vol. 47, No. 5, May 2000, pp. 615-621 *
SCHNEIER B.: "Applied Cryptography", John Wiley & Sons, Second Edition, 1996, Chapter 16: "Pseudo-Random Generators and Stream-Ciphers"
SCHNEIER B.: "Applied Cryptography", John Wiley &amp *
Sons, Second Edition, 1996, Chapter 16: "Pseudo-Random Generators and Stream-Ciphers" *
Yu Jun, Shen Hai-bin, Yan Xiao-lang: "Implementation of a Chaos-based, High-speed Truly Random Number Generator", 5th International Conference on ASIC, Proceedings, Vol. 1, 21-24 Oct. 2003, pp. 526-529
ZHUN Huang, GUOQIANG Bai, HONYI Chen: "A Chaotic Circuit for Truly Random Number Generation", 5th International Conference on ASIC, Proceedings, Vol. 1, 21-24, Oct. 2003, pp. 548-551
ZHUN Huang, HONGYI Chen: "A Truly Random Number Generator Based on Thermal Noise", 4th International Conference on ASIC, Proceedings, 23-25 Oct. 2001, pp. 862-864 *

Also Published As

Publication number Publication date
DE102006009939A1 (de) 2007-09-06
DE102006009939B4 (de) 2008-05-15

Similar Documents

Publication Publication Date Title
DE102004047425B4 (de) Zufallszahlengenerator sowie Verfahren zur Erzeugung von Zufallszahlen
EP2976707B1 (de) Vorrichtung und verfahren zum erzeugen von zufallsbits
DE102014102501A1 (de) Zufallszahlgenerator
DE4239308A1 (en) Formation of neural network - has matrix of synapses units with weighting information stored and used in learning cycle
DE102018212833A1 (de) Vorrichtung und verfahren zur erzeugung physikalisch unklonbarer funktionen
DE19503147C2 (de) Chaos-Neuronen-Schaltung und diese verwendendes Neuronales Chaos-Netzwerk
DE102013204274A1 (de) Verfahren zum Erkennen einer Korrelation
DE102006009939B9 (de) Zufallszahlengenerator und Verfahren zum Erzeugen von Zufallszahlen
DE102014200163A1 (de) Verfahren zum Erzeugen einer Ausgabe einer Zufallsquelle eines Zufallsgenerators
DE102008015578A1 (de) Zufallssignalgenerator und Zufallszahlengenerator
EP0681760B1 (de) Rückgekoppeltes schieberegister zum erzeugen von pseudozufallszahlenfolgen darstellenden digitalen signalen
DE19910729C1 (de) Zufallszahlengenerator sowie Verfahren zur Erzeugung von Zufallszahlen
Balasubramaniam et al. Passivity analysis for uncertain stochastic neural networks with discrete interval and distributed time-varying delays
DE19618098C1 (de) Schaltungsanordnung zum Erzeugen zufälliger Bitfolgen
DE102014219651A1 (de) Verfahren und Vorrichtung zum Erzeugen von Zufallsbits
WO2015128015A1 (de) Vorrichtung und verfahren zum erzeugen von zufallsbits
Ge et al. A modified pulse-coupled spiking neuron circuit with memory threshold and its application
DE102013213095A1 (de) Erzeugen von einer Anzahl von Zufallsbits
WO2015043855A2 (de) Erzeugen von zufallsbits
DE102013213385A1 (de) Verfahren zur Beurteilung einer Ausgabe eines Zufallsgenerators
WO2021239564A1 (de) Zufallszahlengenerator
DE102014215467A1 (de) Erzeugen eines Identifizierers für eine Schaltung
DE102017215622A1 (de) Vorrichtungen und verfahren zum erhalten von bitsequenzen
EP2799980A2 (de) Vorrichtung und Verfahren zum Erzeugen von Zufallsbits
JP3483154B2 (ja) パルス発生装置及びこれを用いた信号処理装置

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8397 Reprint of erroneous patent document
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee