DE1537496C1 - Circuit arrangement for generating n-digit binary random numbers - Google Patents

Circuit arrangement for generating n-digit binary random numbers

Info

Publication number
DE1537496C1
DE1537496C1 DE1537496A DE1537496A DE1537496C1 DE 1537496 C1 DE1537496 C1 DE 1537496C1 DE 1537496 A DE1537496 A DE 1537496A DE 1537496 A DE1537496 A DE 1537496A DE 1537496 C1 DE1537496 C1 DE 1537496C1
Authority
DE
Germany
Prior art keywords
register
counter
countable
counters
outputs
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 - Lifetime
Application number
DE1537496A
Other languages
German (de)
Inventor
Bernd Dipl-Ing Ostermann
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.)
Telefunken Patentverwertungs GmbH
Original Assignee
Telefunken Patentverwertungs GmbH
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 Telefunken Patentverwertungs GmbH filed Critical Telefunken Patentverwertungs GmbH
Priority to DE1537496A priority Critical patent/DE1537496C1/en
Anticipated expiration legal-status Critical
Application granted granted Critical
Publication of DE1537496C1 publication Critical patent/DE1537496C1/en
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Description

Die Erfindung betrifft eine Schaltungsanordnung zur Erzeugung n-stelliger binärer Zufallszahlen durch Addition von aus m von einem gemeinsamen Taktimpulsgenerator mit Zählimpulsen gesteuerten binären Zählern mit teilerfremden Zählbasen ge­ wonnenen Binärziffern mit einem n-stelligen Register, das je­ weils zur Bildung einer neuen Zufallszahl mit aus den m Zählern abgeleiteten Ausgangsimpulsen über Torschaltungen neu einge­ stellt wird. Eine derartige Schaltungsanordnung ist durch die deutsche Patentschrift 10 54 491 bekanntgeworden. Dort werden die m teilerfremden Zähler nach jedem vom Taktimpuls­ generator gelieferten Fortschalteimpuls der Reihe nach abge­ fragt und die Abfrageergebnisse dem zugleich als Schlüssel­ speicher für Chiffrierzwecke dienenden n-stelligen Register zugeführt, um dort auf den bereits vorhandenen Registerinhalt aufaddiert zu werden. Bei einem solchen Verfahren ergibt sich eine gewisse Abhängigkeit der nacheinander erzeugten Zufalls­ zahlen voneinander, die oft nicht erwünscht ist. The invention relates to a circuit arrangement for generation n-digit binary random numbers by adding from m from a common clock pulse generator with counting pulses controlled binary counters with non-prime meter bases recovered binary digits with an n-digit register, each because to form a new random number from the m counters derived output pulses newly switched on via gate circuits is posed. Such a circuit arrangement is through the German patent 10 54 491 became known. There the m prime meter after each of the clock pulse generator supplied sequential pulse in sequence asks and the query results at the same time as a key memory for n-digit registers used for encryption purposes fed to the existing register content there to be added up. With such a procedure, it follows a certain dependency on the randomly generated numbers from each other, which is often undesirable.  

Diese Nachteile werden bei der Erfindung vermieden, indem jede neue Zufallszahl nur aus Abfrageergebnissen der teilerfremden Zähler ohne Verwendung der vorher gebildeten Zufallszahl er­ zeugt wird. Gemäß der Erfindung geschieht dies dadurch, daß neben dem n-stelligen Register ein weiteres n-stelliges und zählfähiges Register vorgesehen ist, das jeweils gleichzeitig mit dem ersten Register über weitere Torschaltungen mit Aus­ gangsimpulsen der m Zähler voreingestellt wird und dem danach Zählimpulse von dem gemeinsamen Taktimpulsgenerator zugeführt werden; daß eine mit den n Ausgängen des ersten Registers einer­ seits und den n Ausgängen des zählfähigen Registers andererseits verbundene Koinzidenzschaltung vorgesehen ist, die ein Ausgangs­ signal abgibt, wenn die Inhalte der einander zugeordneten Register­ elemente des ersten Registers und des zählfähigen Registers gleich sind; daß durch dieses Ausgangssignal der Takt von dem zählfähigen Register abgeschaltet und die Registerinhalte von dem augenblicklichen Stand der ihnen zugeordneten Binärzähler neu eingestellt werden und daß eine Additionsschaltung zur Bildung der Zufallszahlen durch Addition dieser Inhalte des ersten Registers einerseits und des zählfähigen Registers anderer­ seits vorgesehen ist.These disadvantages are avoided in the invention by each new random number only from query results of non-prime users Counter without using the previously formed random number is fathered. According to the invention, this is done in that in addition to the n-digit register, another n-digit and countable register is provided, each at the same time with the first register for further gate operations with off g pulses the m counter is preset and after that Count pulses supplied by the common clock pulse generator become; that one with the n outputs of the first register one on the one hand and the n outputs of the countable register on the other connected coincidence circuit is provided which is an output signal if the contents of the registers assigned to each other elements of the first register and the countable register are the same; that by this output signal the clock of the countable registers switched off and the register contents of the current status of the binary counters assigned to them be reset and that an addition circuit for Formation of the random numbers by adding these contents of the first register on the one hand and the countable register on the other is provided.

Vorzugsweise ist ein weiterer vom Taktimpulsgenerator gesteuerter Zähler vorgesehen, dessen Zählkapazität gleich oder größer als die Zählbasis des zählfähigen Registers ist und der bei An­ forderung einer neuen Zufallszahl zusammen mit den teiler­ fremden Zählern an den Taktimpulsgenerator angeschaltet wird und bei Erreichen seiner Zählkapazität sich und die teiler­ fremden Zähler von dem Taktimpulsgenerator wieder abschaltet. Another is preferably controlled by the clock pulse generator Counter provided, the counting capacity equal to or greater than is the counting base of the countable register and that at An request a new random number together with the divisor external counters is switched on to the clock pulse generator and when it reaches its counting capacity itself and the dividers turns off foreign counter from the clock pulse generator.  

Zur Variation der erzeugten Folge von Zufallszahlen, die in der Fachsprache auch Zahlenwurm genannt wird, können Umschalt­ mittel vorgesehen sein, die eine Umschaltung der Zuordnung der Ausgänge der Registerelemente des ersten Registers und/oder des zählfähigen Registers zu den Eingangsklemmen der Additions­ schaltung und/oder der Koinzidenzschaltung gestatten. Weiterhin können Umschaltmittel vorgesehen sein, die eine Umschaltung der Eingangstorschaltungen des ersten Registers und/oder des zählfähigen Registers auf verschiedene Binär-Ausgänge des jeweils dem betreffenden Registerelement fest zugeordneten teilerfremden Zählers gestatten. Weitere Mittel zur Variation der Abfolge der erzeugten Zufallszahlen und zur Einstellung des Anfangszustandes, von dem aus die Zufallszahlenfolge durch­ laufen wird, sollen weiter unten unter Bezugnahme auf die Ausführungsbeispiele erläutert werden.To vary the generated sequence of random numbers that are in technical jargon is also called numerical worm, Shift Means can be provided to switch the assignment the outputs of the register elements of the first register and / or of the countable register to the input terminals of the additions circuit and / or allow the coincidence circuit. Farther can be provided switching means that a switch the input gate circuits of the first register and / or of the countable register to different binary outputs of each assigned to the relevant register element allow counter-alien counter. Other means of variation the sequence of the generated random numbers and for setting the initial state from which the sequence of random numbers passes will run below with reference to the Exemplary embodiments are explained.

Fig. 1 zeigt ein Ausführungsbeispiel der Erfindung zur Er­ zeugung vierstelliger binärer Zufallszahlen, bei dem die ver­ schiedenen erwähnten Variationsmöglichkeiten zunächst unberück­ sichtigt geblieben sind, um das Prinzip klarer herauszustellen. Es sind acht binäre Zähler mit teilerfremden Zählbasen vorgesehen, die mit 11, 12, 13, 14, 15, 16, 17, 18 bezeichnet sind und außerdem die Beschriftung Z1...Z8 und die Angabe ihrer jeweiligen Zähl­ basis tragen. Als Zählbasen sind die teilerfremden Zahlen 17, 19, 23, 25, 27, 28, 29, 31 gewählt, die den Vorteil mit sich bringen, daß alle acht Zähler als gleichartige fünfstufige Binärzähler ausgebildet sein können, die nur durch verschiedenartige innere Rückkopplungen in bekannter Weise für die jeweilige Zählbasis bemessen sind. Fig. 1 shows an embodiment of the invention for generating four-digit binary random numbers, in which the various variations mentioned ver have initially been disregarded in order to emphasize the principle more clearly. There are eight binary counters with non-prime counter bases, which are designated 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 and also bear the inscription Z1 ... Z8 and the details of their respective counting base. The non-prime numbers 17 , 19 , 23 , 25 , 27 , 28 , 29 , 31 are chosen as counting bases, which have the advantage that all eight counters can be designed as identical five-level binary counters, which are only known by different types of internal feedback Are dimensioned for the respective counting base.

Die Zählimpulse werden den Zählern über eine gemeinsame Takt­ leitung 19 und einen Schalter 20 von einem dauernd laufenden Taktimpulsgenerator (TG) 21 zugeführt. An die Taktleitung 19 ist ein weiterer Taktimpulszähler (Zo) 22 angeschlossen, dessen Zählbasis teilerfremd zu denen der übrigen Zähler (Z1...Z8) ist und größer oder gleich der des zählfähigen Registers sein muß. Im dargestellten Beispiel sei als Zählbasis die Zahl 37 ange­ nommen, die teilerfremd zu den Zählbasen der Zähler Z1...Z8 ist. Es empfiehlt sich, die Zählbasis des Zählers 20 möglichst niedrig zu wählen, wenn man eine schnelle Abfolge der Zufallszahlen er­ reichen will, wie weiter unten erläutert wird.The counts are fed to the counters via a common clock line 19 and a switch 20 from a continuously running clock pulse generator (TG) 21 . A further clock pulse counter (Zo) 22 is connected to the clock line 19 , the count base of which is not prime to those of the other counters (Z1 ... Z8) and must be greater than or equal to that of the countable register. In the example shown, the number 37 is assumed as the counting base, which is not prime to the counting bases of the counters Z1 ... Z8. It is advisable to choose the count base of the counter 20 as low as possible if one wants to achieve a rapid sequence of the random numbers, as will be explained further below.

Der Taktimpulszähler (Z0) 22 bestimmt die Länge eines Zählzyklus', der jedesmal zur Erzeugung einer neuen vierstelligen Zufallszahl durchlaufen wird. Zu diesem Zweck wird der Schalter 20, der zweck­ mäßig in bekannter Weise als elektronischer Schalter ausgebildet ist, von einem über die Leitung 23 angelegten Startimpuls einge­ schaltet. Der Taktimpulszähler 22 durchläuft dann eine Zähl­ periode von im Beispiel 37 Taktimpulsen und gibt dann über die Leitung 24 ein Ausgangssignal ab, durch welches der Schalter 20 wieder ausgeschaltet wird. Gleichzeitig sind dann die Zähler Z1...Z8 um je 37 Schritte weitergestellt worden, haben also mehr als ihre jeweilige Zählperiode durchlaufen.The clock pulse counter (Z0) 22 determines the length of a counting cycle which is run through each time to generate a new four-digit random number. For this purpose, the switch 20 , which is expediently designed in a known manner as an electronic switch, is switched on by a start pulse applied via the line 23 . The clock pulse counter 22 then runs through a counting period of 37 clock pulses in the example and then outputs via line 24 an output signal through which the switch 20 is turned off again. At the same time, counters Z1 ... Z8 were then incremented by 37 steps each, which means that they passed more than their respective counting period.

Über Abfrageleitungen und normalerweise gesperrte Torschaltungen 25 sind die Zähler (Z1...Z4) 11...14 mit den Setzeingängen der ihnen einzeln zugeordneten Registerelemente A1, A2, A3, A4 eines Registers 26 (sogenanntes A-Register) und über weitere Abfrage­ leitungen und Torschaltungen 27 die Zähler (Z5...Z8) 15...18 mit den Setzeingängen der Registerelemente B1, B2, B3, B4 eines Registers 28 (sogenanntes B-Register) verbunden. Das B-Register 28 ist gleichzeitig als Binärzähler ausgebildet, wie durch die Pfeile zwischen den Registerelementen angedeutet ist, dem Zählimpulse von der gleichen Taktleitung 19 zugeführt werden wie den übrigen Zählern Z0...Z8, jedoch über einen weiteren Schalter 29, der ebenfalls über die Leitung 23 von dem Startimpuls eingeschaltet wird. Weiterhin werden durch den Start­ impuls über eine Oder-Schaltung 31 die Torschaltungen 25 und 27 kurzzeitig geöffnet.The counters (Z1 ... Z4) 11 ... 14 with the set inputs of the register elements A1, A2, A3, A4 individually assigned to them of a register 26 (so-called A register) and via further query are via query lines and normally blocked gate circuits 25 Lines and gate circuits 27, the counters (Z5 ... Z8) 15 ... 18 are connected to the set inputs of the register elements B1, B2, B3, B4 of a register 28 (so-called B register). The B register 28 is simultaneously designed as a binary counter, as indicated by the arrows between the register elements, to which the counting pulses are supplied from the same clock line 19 as the other counters Z0 ... Z8, but via a further switch 29 , which is also via line 23 is turned on by the start pulse. Furthermore, the gate circuits 25 and 27 are briefly opened by the start pulse via an OR circuit 31 .

Die Ausgänge der Elemente A1, A2, A3, A4 des A-Registers sind mit den Ausgängen der zugeordneten Elemente B1, B2, B3, B4 des B-Registers in einer Koinzidenzschaltung 30 derart verknüpft, daß diese auf der Leitung 31 dann einen Ausgangsimpuls abgibt, wenn der Inhalt des B-Registers mit dem Inhalt des A-Registers übereinstimmt. Zu diesem Zweck enthält die Koinzidenzschaltung 30 z. B. vier logische Äquivalenz-Schaltkreise K1, K2, K3, K4, die jeweils dann ein Signal abgeben, wenn die ihnen zugeordneten Paare von Registerelementen A1, B1 bzw. A2, B2 usw. gleichen Inhalt (0 oder 1) haben. Die Ausgänge der Äquivalenz-Schaltkreise sind in einer UND-Schaltung Ko zusammengefaßt, die ein Signal an die Ausgangsleitung 31 abgibt, wenn alle vier Äquivalenz- Schaltkreise gleichzeitig Äquivalenz anzeigen. Dies geschieht sicher, bevor der Zähler Zo abgeschaltet wird, da dessen Zähl­ kapazität 37 größer als die des zählfähigen B-Registers 16 ist, so daß dieses alle möglichen Registerinhalte des A-Registers in einem Zählzyklus durchlaufen kann. Die Schaltkreistechnik solcher logischer Schaltelemente ist bekannt. The outputs of the elements A1, A2, A3, A4 of the A register are linked to the outputs of the associated elements B1, B2, B3, B4 of the B register in a coincidence circuit 30 in such a way that it then outputs an output pulse on line 31 when the content of the B register matches the content of the A register. For this purpose, the coincidence circuit 30 contains z. B. four logical equivalence circuits K1, K2, K3, K4, each of which emits a signal when the pairs of register elements A1, B1 or A2, B2 etc. assigned to them have the same content (0 or 1). The outputs of the equivalence circuits are combined in an AND circuit Ko which emits a signal to the output line 31 when all four equivalence circuits simultaneously indicate equivalence. This happens safely before the counter Zo is switched off, since its counting capacity 37 is larger than that of the countable B register 16 , so that this can run through all possible register contents of the A register in one count cycle. The circuit technology of such logic switching elements is known.

Durch den Ausgangsimpuls der Koinzidenzschaltung 30 werden über die ODER-Schaltung 31 die Torschaltungen 25 und 27 geöffnet, so daß die Registerelemente A1...A4 und B1...B4 von den an den Aus­ gangsleitungen der ihnen zugeordneten Zähler Z1...Z8 gerade anstehenden Binärziffern (0 oder 1) neu eingestellt werden. Gleichzeitig wird vom gleichen Ausgangsimpuls der Schalter 29 ausgeschaltet, so daß keine weiteren Zählimpulse an das zähl­ fähige B-Register gelangen und die neue Einstellung beider Register zunächst erhalten bleibt, während die Zähler Z0...Z8 weiterzählen, bis der Schalter 20 durch den Ausgangsimpuls des Zählers (Z0) 22 nach im Beispiel 37 Zählschritten über die Leitung 24 wieder gesperrt wird.Through the output pulse of the coincidence circuit 30 , the gate circuits 25 and 27 are opened via the OR circuit 31 , so that the register elements A1 ... A4 and B1 ... B4 from the output lines of the associated counters Z1 ... Z8 binary digits currently present (0 or 1) can be reset. At the same time, the switch 29 is switched off by the same output pulse, so that no further count pulses reach the countable B register and the new setting of both registers is initially retained, while the counters Z0 ... Z8 continue to count until the switch 20 is triggered by the output pulse of the counter (Z0) 22 is blocked again in the example 37 counting steps via the line 24 .

Das A-Register 26 und B-Register 28 sind weiterhin mit einer Additionsschaltung 32 verbunden, in welcher die Ausgänge ein­ ander zugeordneter Registerelemente des A-Registers einerseits und des B-Registers andererseits in Verknüpfungselementen D1, D2, D3, D4 jeweils zusammengeführt sind. Im einfachsten Falle der Modulo-2-Addition stellen diese Verknüpfungsschaltungen Antivalenzglieder dar, die immer dann ein Ausgangssignal Eins geben, wenn die ihnen zugeführten Eingangssignale verschieden sind, und die immer dann ein Ausgangssignal Null geben, wenn die ihnen zugeführten Eingangssignale gleich sind. An den vier Aus­ gängen der Verknüpfungselemente D1...D4 ist dann stets die Summe modulo-2 der Inhalte des A-Registers und des B-Registers verfügbar. The A register 26 and B register 28 are also connected to an addition circuit 32 , in which the outputs of another assigned register element of the A register on the one hand and of the B register on the other hand are combined in logic elements D1, D2, D3, D4. In the simplest case of modulo-2 addition, these logic circuits represent antivalence elements which always give an output signal one when the input signals fed to them are different and always give an output signal zero when the input signals fed to them are the same. The sum of modulo-2 of the contents of the A register and the B register is then always available at the four outputs of the logic elements D1 ... D4.

Durch Pfeile zwischen den Verknüpfungselementen der Additions­ schaltung 32 ist angedeutet, daß auch eine Addition mit höherem Modul insbesondere 24 verwendet werden kann. In diesem Falle sind die Verknüpfungselemente in bekannter Weise als Voll­ addierer auszubilden. Für manche Zwecke kann es erwünscht sein, den Additions-Modul x umschaltbar zu gestalten. Insbesondere kann man eine solche Umschaltung durch Öffnen und Sperren der in Fig. 1 als Pfeile angedeuteten Übertragsverknüpfungen in will­ kürlich gewählten Kombinationen durchführen. Diese Modul- Umschaltungen können auch automatisch, z. B. in Abhängigkeit von wählbaren Stellungen des Zählers Zo durchgeführt werden, so daß sich eine weitere Variationsmöglichkeit des Ablaufs der Zufallsfolge ergibt.Arrows between the logic elements of the addition circuit 32 indicate that an addition with a higher module, in particular 24, can also be used. In this case, the linking elements are to be designed in a known manner as full adders. For some purposes it may be desirable to make the addition module x switchable. In particular, such a switchover can be carried out by opening and locking the carry links indicated as arrows in FIG. 1 in arbitrarily chosen combinations. These module switches can also automatically, for. B. be carried out depending on the selectable positions of the counter Zo, so that there is a further possibility of variation of the sequence of the random sequence.

Nachdem durch Ausschalten des Schalters 29 der Zähltakt vom B-Register abgeschaltet ist und das A-Register und das B-Register ihren neuen Inhalt von den Zählern Z1...Z8 übernommen haben, steht an den vier Ausgängen der Additionsschaltung 32 die Summe modulo x der beiden Registerinhalte als neue Zufallszahl zur Verfügung. Zur Ausgabe der Zufallszahl sind die vier Ausgänge der Additionsschaltung 32 auf UND-Tore 33, 34, 35, 36 geführt, die durch den Ausgangsimpuls des Zählers Zo über die Leitung 24 geöffnet werden und die Zufallszahl an ein Abfrageregister 37 übergeben. Das geschieht also gleichzeitig mit dem Stillsetzen der Zähler Z0...Z8. Während der Zeit zwischen dem Aushalten des Schalters 29 und dem Ausschalten des Schalters 20 haben die Zähler Z1...Z8 weitergezählt, so daß durch den nächsten auf der Leitung 23 eintreffenden Startimpuls über die ODER-Schaltung 31 und die Torschaltungen 25 und 27 eine Neueinstellung des A-Registers und des B-Registers vorgenommen wird, und eine von der vorher erzeugten Zufallszahl völlig unabhängige Zufallszahl im nächsten Zählzyklus des Zählers Zo erzeugt wird.After the counter clock is switched off from the B register by switching off the switch 29 and the A register and the B register have adopted their new contents from the counters Z1 ... Z8, the sum modulo x is at the four outputs of the addition circuit 32 of the two register contents as a new random number. To output the random number, the four outputs of the addition circuit 32 are guided to AND gates 33 , 34 , 35 , 36 , which are opened by the output pulse of the counter Zo via the line 24 and transfer the random number to an interrogation register 37 . This happens at the same time as the counters Z0 ... Z8 are stopped. During the time between the holding of the switch 29 and the switching off of the switch 20 , the counters Z1 ... Z8 continued to count, so that the next start impulse arriving on line 23 via the OR circuit 31 and the gate circuits 25 and 27 readjusted them of the A register and the B register, and a random number that is completely independent of the previously generated random number is generated in the next count cycle of the counter Zo.

Die soweit anhand der Fig. 1 beschriebene Anordnung ergibt, wenn man die teilerfremden Zähler alle von einem vorbestimmten Anfangszustand, z. B. Null, aus laufen läßt, eine eindeutig bestimmte Reihenfolge von n-stelligen Zufallszahlen mit einer Wiederholungsperiode, die durch das Produkt der Zählbasen der Zähler Z0...Z8 gegeben ist. Im folgenden sollen Mittel beschrieben werden, durch die es möglich ist, einerseits die Abfolge der Zufallszahlen zu variieren und andererseits an einer beliebigen Stelle der vorbestimmten Reihenfolge mit der Zufallsfolge zu beginnen.The arrangement described so far with reference to FIG. 1 results if the counter-alien counters are all from a predetermined initial state, e.g. B. zero, runs from a clearly determined sequence of n-digit random numbers with a repetition period, which is given by the product of the counting bases of the counters Z0 ... Z8. Means are described below by which it is possible, on the one hand, to vary the sequence of the random numbers and, on the other hand, to start the random sequence at any point in the predetermined sequence.

Für den erstgenannten Zweck ergeben sich z. B. die folgenden Möglichkeiten:
For the first-mentioned purpose, z. B. Do the following:

  • 1. Die Zuordnung der Registerelemente Ai (i = 1, 2, 3, 4) des ersten Registers 26 einerseits zu den Register­ elementen Bk (k = 1, 2, 3, 4) des zählfähigen Registers 28 andererseits bei dem Vergleich in der Koinzidenz­ schaltung 30 wird variiert;1. The assignment of the register elements Ai (i = 1, 2, 3, 4) of the first register 26 on the one hand to the register elements B k (k = 1, 2, 3, 4) of the countable register 28 on the other hand in the comparison in the Coincidence circuit 30 is varied;
  • 2. Die Zuordnung der Registerelemente Ai zu den Register­ elementen Bk bei der Addition in der Additionsschaltung 32 wird variiert;2. The assignment of the register elements Ai to the register elements B k during the addition in the addition circuit 32 is varied;
  • 3. Der Additionsmodul in der Additionsschaltung wird variiert, wie oben erläutert; 3. The addition module in the addition circuit is varies as explained above;  
  • 4. Die Zählerstellungen, bei denen die teilerfremden Zähler Z1...Z8 ein Signal an die ihnen zugeordneten Registerelemente Ai bzw. Bk abgeben, werden variiert;4. The counter positions at which the counter-counter Z1 ... Z8 emit a signal to the register elements Ai and B k assigned to them are varied;
  • 5. Die Zählkapazität des Zählers Zo wird variiert.5. The counting capacity of the counter Zo is varied.

Fig. 2 zeigt schematisch ein Ausführungsbeispiel für die unter 1) und 2) genannten Möglichkeiten. Die mit Fig. 1 überein­ stimmenden Teile sind mit den gleichen Bezugszeichen versehen. Zwischen den Registerelementen Ai des Registers 26 und der vier zugeordneten Eingängen der Koinzidenzschaltung 30 sind vier doppelpolige Umschalter 41, 42, 43, 44 vorgesehen, die 24 = 16 verschiedene Schaltkominationen gestatten. Die Register­ elemente Bk des Registers 28 sind direkt mit den ihnen zuge­ ordneten Eingängen der Koinzidenzschaltung 30 verbunden. In der in Fig. 2 gezeichneten Stellung der Schalter wird ein Koinzidenzsignal bei gleichzeitiger Übereinstimmung der folgenden Paare von Registerelementen erzeugt: A1 : B1, A2 : B4, A3 : B3, A4 : B2. In gleicher Weise sind zwischen dem Register 28 und der Additions­ schaltung 32 vier doppelpolige Umschalter 44, 45, 46, 47 vorge­ sehen, die eine Vertauschung der miteinander zu addierenden Registerstellen gestatten. In der dargestellten Schalter­ stellung werden folgende Paare von Registerelementen additiv miteinander verknüpft: A1 : B4, A2 : B1, A3 : B3, A4 : B2. Fig. 2 shows schematically an embodiment for the options mentioned under 1) and 2). The parts corresponding to FIG. 1 are provided with the same reference numerals. Between the register elements Ai of the register 26 and the four assigned inputs of the coincidence circuit 30 , four double-pole changeover switches 41 , 42 , 43 , 44 are provided, which allow 2 4 = 16 different switching combinations. The register elements B k of the register 28 are connected directly to the inputs of the coincidence circuit 30 assigned to them. In the position of the switches shown in FIG. 2, a coincidence signal is generated with simultaneous agreement of the following pairs of register elements: A1: B1, A2: B4, A3: B3, A4: B2. In the same way between the register 28 and the addition circuit 32 four double-pole changeover switches 44 , 45 , 46 , 47 are easily seen, which allow a swapping of the register positions to be added together. In the switch position shown, the following pairs of register elements are additively linked: A1: B4, A2: B1, A3: B3, A4: B2.

An sich gibt es 4! = 24 verschiedene Möglichkeiten, um vier Elemente eines Registers mit vier Elementen eines zweiten Registers zu kombinieren, von denen hier der Einfachheit halber nur je 16 verwirklicht sind. Durch weitere Schalter lassen sich leicht auch alle 24 Kombinationen einstellbar machen. Die Schalter, die in Fig. 2 schematisch als mechanische Schalter gezeichnet sind, wird man in der Praxis als elektronische Schalter oder in bekannter Weise aus magnetischen Ringkernen mit Rechteckcharakteristik z. B. in Form einer Schaltmatrix ausführen.In itself there are 4! = 24 different possibilities to combine four elements of a register with four elements of a second register, of which only 16 are implemented here for the sake of simplicity. All 24 combinations can also be easily set using additional switches. The switches, which are shown schematically in FIG. 2 as mechanical switches, are used in practice as electronic switches or in a known manner from magnetic toroidal cores with a rectangular characteristic, for. B. in the form of a switching matrix.

Fig. 3 zeigt schematisch eine Ausführungsform für die Reali­ sierung der teilerfremden Zähler Zi (i = 1, 2, ...8) nach Prinzipien, wie sie im einzelnen z. B. in dem Aufsatz "How to Design Arbitrary-Length Binary Counters" in der Zeitschrift Electronics Dezember 27, 1963, Seite 34-36 angegeben sind. Der Zähler besteht in bekannter Weise aus fünf Flipflops 51, 52, 53, 54, 55. Dem Eingang des ersten Flipflops 51 werden über die Leitung 19 (vgl. Fig. 1) die zu zählenden Taktimpulse zugeführt. Die Eingänge der folgenden Flipflops sind jeweils mit dem Ausgang des vorangehenden Flipflops verbunden. Die Ausgänge 61, 62, 63, 64, 65 der Flipflops sind außerdem mit einem logischen Netzwerk 56 (Zähllogik) verbunden, dessen Aus­ gänge wiederum an die Setzeingänge 71, 72, 73, 74, 75 der Flipflops führen. Je nachdem, welche Zählbasis für den be­ treffenden Zähler gewünscht ist, wird diese Zähllogik 56 ver­ schieden geschaltet sein, wie sich das aus dem erwähnten Auf­ satz im einzelnen ergibt. Natürlich können auch Zähler ver­ wendet werden, deren Verknüpfungslogik nach anderen bekannten Prinzipien aufgebaut ist. Fig. 3 shows schematically an embodiment for the realization of the relatively prime counter Zi (i = 1, 2, ... 8) according to principles, as described in detail, for. B. in the article "How to Design Arbitrary-Length Binary Counters" in the magazine Electronics December 27, 1963, page 34-36. In a known manner, the counter consists of five flip-flops 51 , 52 , 53 , 54 , 55 . The clock pulses to be counted are fed to the input of the first flip-flop 51 via the line 19 (cf. FIG. 1). The inputs of the following flip-flops are each connected to the output of the preceding flip-flop. The outputs 61 , 62 , 63 , 64 , 65 of the flip-flops are also connected to a logic network 56 (counting logic), the outputs of which in turn lead to the set inputs 71 , 72 , 73 , 74 , 75 of the flip-flops. Depending on which counting base is desired for the relevant counter, this counting logic 56 will be switched differently, as can be seen from the above-mentioned article in detail. Of course, counters can also be used whose logic is based on other known principles.

Zur Verwirklichung der oben unter 4) genannten Variationsmög­ lichkeit der Zufallszahlenfolge sind die Ausgänge 61, 62...65 der Flipflops mit einem Umschalter 57 verbunden, der über die Leitung 58 ein Signal überträgt, welches der Stellung (0 oder 1) des durch Schalter ausgewählten Flipflops des Zählers entspricht. Bei Auftreten des Koinzidenzsignals auf der Leitung 31 (vgl. Fig. 1) wird also der gerade vorliegende Inhalt (0 oder 1) des betreffenden Flipflops über die Torschaltung 25 bzw. 27 auf das zugeordnete Registerelement Ai oder Bi übertragen. Auch der Umschalter 57 ist in der Zeichnung nur schematisch angedeutet und wird in der Praxis im allgemeinen durch eine elektronische Schaltung verwirklicht werden.In order to implement the above-mentioned variation option 4) of the random number sequence, the outputs 61 , 62 ... 65 of the flip-flops are connected to a changeover switch 57 , which transmits a signal via line 58 , which is the position (0 or 1) of the switch selected counter flip-flops. When the coincidence signal occurs on line 31 (cf. FIG. 1), the currently present content (0 or 1) of the flip-flop in question is transmitted via gate circuit 25 or 27 to the assigned register element Ai or Bi. The changeover switch 57 is also only indicated schematically in the drawing and will generally be implemented in practice by an electronic circuit.

Um den Anfangszustand einzustellen, von dem aus die Reihenfolge der erzeugten Zufallszahlen beginnen soll, sind die Setzein­ gänge 71, 72, 73, 74, 75 der Flipflops in Fig. 3 mit einer Schaltung 59 zur Voreinstellung des Zählers verbunden, über welche jeder der in Fig. 1 gezeigten Zähler Z1...Z8 vor dem Einschalten des Taktimpulsgenerators auf eine bestimmte An­ fangsstellung eingestellt werden kann. Dabei ist darauf zu achten, daß diese Anfangsstellung innerhalb des Zählerbereiches des jeweiligen Zählers liegt, also nicht eine größere Zahl darstellt, als die betreffende Zählbasis. Am sichersten wird dies dadurch erreicht, daß man die höchste Stelle (FF5) jeweils auf Null voreinstellt.In order to set the initial state from which the sequence of the generated random numbers is to begin, the set inputs 71 , 72 , 73 , 74 , 75 of the flip-flops in FIG. 3 are connected to a circuit 59 for presetting the counter, via which each of the in Fig. 1 shown counter Z1 ... Z8 can be set to a certain initial position before switching on the clock pulse generator. It is important to ensure that this starting position is within the counter range of the respective counter, that is, does not represent a larger number than the relevant base. The safest way to do this is to preset the highest digit (FF5) to zero.

Die Erfindung wurde am Beispiel der Erzeugung von Zufallszahlen mit vier Binärstellen erläutert, sie ist jedoch nicht auf diese Stellenzahl, die nur der Einfachheit halber gewählt wurde, be­ schränkt, sondern kann auch für jede andere Stellenzahl n aus­ geführt werden. Für n = 8 ergeben sich z. B. die folgenden Be­ messungen der Schaltungsanordnung. Das A-Register und B-Register haben je acht Registerelemente Ai bzw. Bk. Die Anzahl der teilerfremden Zähler Z1 (1 = 0, 1, 2...16) ist 2n + 1 = 17. Die Stellenzahl jedes dieser Zähler, auch des Taktimpulszählers Zo, kann zu acht Stellen gewählt werden und zwar mit 28 = 256 als Zählbasis für den Zähler Zo und mit den folgenden Prim­ zahlen für die übrigen 16 Zähler: 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, die alle im Bereich zwischen 27 und 28 liegen, also jeweils sämtliche Stellen eines achtstufigen Binärzählers verwenden. Soll eine Variationsmöglichkeit der Zählkapazität des Zählers Zo vorge­ sehen sein, so muß dieser natürlich mindestens 9 Binärstufen besitzen, um noch höhere Zählbasen als 256 einstellen zu können. Bei einem neunstufigen Zähler Zo wird man die Zähl­ kapazität zweckmäßig durch Voreinstellung auf gerade Zahlen 2k zwischen 0 und 256 vornehmen. Dia Zählkapazitäten ergeben sich dann als Differenzen 512 - 2k, die ebenfalls geradzahlig und damit sicher teilerfremd zu den Primzahlen sind, die die Zählkapazitäten der Zähler Z1, Z2...Z2n+1 darstellen.The invention was explained using the example of the generation of random numbers with four binary digits, but it is not limited to this number of digits, which was chosen only for the sake of simplicity, but can also be performed for any other number of digits n. For n = 8, z. B. the following loading measurements of the circuit arrangement. The A register and B register each have eight register elements Ai and Bk. The number of non-prime counters Z1 (1 = 0, 1, 2 ... 16) is 2n + 1 = 17. The number of digits of each of these counters, too of the clock pulse counter Zo, can be selected to eight digits, namely with 2 8 = 256 as the counting base for the counter Zo and with the following prime numbers for the remaining 16 counters: 167, 173, 179, 181, 191, 193, 197, 199 , 211, 223, 227, 229, 233, 239, 241, 251, which are all in the range between 2 7 and 2 8 , that is, use all digits of an eight-level binary counter. If a possibility of variation of the counting capacity of the counter Zo is to be seen, it must of course have at least 9 binary stages in order to be able to set even higher counter bases than 256. With a nine-level counter Zo, the counting capacity is expediently made by presetting to even numbers 2k between 0 and 256. The counting capacities then result as differences 512-2k, which are also an even number and are therefore certainly not prime to the prime numbers, which represent the counting capacities of the counters Z 1 , Z 2 ... Z 2n + 1 .

Claims (5)

1. Schaltungsanordnung zur Erzeugung von n-stelligen binären Zufallszahlen (Zahlenwurm) durch Addition von aus m von einem gemeinsamen Taktimpulsgenerator mit Zählimpulsen ge­ steuerten binären Zählern mit teilerfremden Zählbasen ge­ wonnenen Binärziffern mit einem n-stelligen Register, das jeweils zur Bildung einer neuen Zufallszahl mit aus den m Zählern abgeleiteten Ausgangsimpulsen über Torschaltungen neu eingestellt wird, dadurch gekennzeichnet, daß neben dem n-stelligen Register (26) ein weiteres n-stelliges und zählfähiges Register (28) vorgesehen ist, das jeweils gleich­ zeitig mit dem ersten Register (26) über weitere Torschal­ tungen (27) mit Ausgangsimpulsen der m Zähler (11...18) vor­ eingestellt wird und dem danach Zählimpulse von den gemein­ samen Taktimpulsgenerator (21) zugeführt werden, daß eine mit den n Ausgängen des ersten Registers (26) einerseits und den n Ausgängen des zählfähigen Registers (28) andererseits verbundene Koinzidenzschaltung (30) vorgesehen ist, die ein Ausgangssignal abgibt, wenn die Inhalte der einander zugeord­ neten Registerelemente des ersten Registers (26) und des zählfähigen Registers (28) gleich sind, daß durch dieses Ausgangssignal der Takt von dem zählfähigen Register abge­ schaltet und die Registerinhalte von dem augenblicklichen Stand der ihnen zugeordneten Binärzähler (11...18) neu eingestellt werden, und daß eine Additionsschaltung (32) zur Bildung der Zufallszahlen durch Addition dieser Inhalte des ersten Registers (26) einerseits und des zählfähigen Re­ gisters (28) andererseits vorgesehen ist (Fig. 1). 1.Circuit arrangement for generating n-digit binary random numbers (number worm) by adding binary counters obtained from m from a common clock pulse generator with counts with binary counters obtained with non-prime counter bases with an n-digit register, each with the formation of a new random number output pulses derived from the m counters are reset via gate circuits, characterized in that, in addition to the n-digit register ( 26 ), a further n-digit and countable register ( 28 ) is provided, which is in each case simultaneously with the first register ( 26 ) over further Toreal lines ( 27 ) with output pulses of the m counter ( 11 ... 18 ) is set before and then the count pulses from the common clock pulse generator ( 21 ) are supplied, that one with the n outputs of the first register ( 26 ) on the one hand and the n outputs of the countable register ( 28 ) on the other hand connected coincidence sc Attitude ( 30 ) is provided, which outputs an output signal when the contents of the mutually associated register elements of the first register ( 26 ) and the countable register ( 28 ) are equal, that the output from the countable register is switched off by this output signal and the Register contents are reset from the current status of the binary counters ( 11 ... 18 ) assigned to them, and that an addition circuit ( 32 ) for forming the random numbers by adding these contents of the first register ( 26 ) on the one hand and the countable register ( 28 ) on the other hand is provided ( Fig. 1). 2. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß ein weiterer, vom Taktimpulsgenerator (21) gesteuerter Zähler (22) vorgesehen ist, dessen Zählkapazität gleich oder größer als die Zählbasis des zählfähigen Regissers (28) ist und der bei Anforderung einer neuen Zufallszahl zusammen mit den teilerfremden Zählern (11...18) an den Taktimpuls­ generator (21) angeschaltet wird und bei Erreichen seiner Zählkapazität sich und die teilerfremden Zähler von den Taktimpulsgenerator wieder abschaltet (Fig. 1).2. Circuit arrangement according to claim 1, characterized in that a further, from the clock pulse generator ( 21 ) controlled counter ( 22 ) is provided, the counting capacity of which is equal to or greater than the counting base of the countable director ( 28 ) and which together when a new random number is requested is switched on to the clock pulse generator ( 21 ) with the counter-alien counters ( 11 ... 18 ) and switches off again when the counting capacity is reached and the counter-alien counter is switched off again by the clock pulse generator ( FIG. 1). 3. Schaltungsanordnung nach Anspruch 1 oder 2, dadurch gekenn­ zeichnet, daß Umschaltmittel vorgesehen sind, die eine Um­ schaltung der Zuordnung der Ausgänge der Registerelemente des ersten Registers (26) und/oder des zählfähigen Registers (28) zu den Eingangsklemmen der Additionsschaltung (32) und/oder der Koinzidenzschaltung (30) gestatten (Fig. 2).3. A circuit arrangement according to claim 1 or 2, characterized in that switching means are provided which switch the assignment of the outputs of the register elements of the first register ( 26 ) and / or the countable register ( 28 ) to the input terminals of the addition circuit ( 32 ) and / or the coincidence circuit ( 30 ) allow ( Fig. 2). 4. Schaltungsanordnung nach Anspruch 1 oder folgender, dadurch gekennzeichnet, daß Umschaltmittel (57) vorgesehen sind, die eine Umschaltung der Eingangstorschaltungen (25 bzw. 27) des ersten Registers (26) und/oder des zählfähigen Registers (28) auf verschiedene Binär-Ausgänge (61...65) des jeweils dem betreffenden Registerelement fest zugeordneten teilerfremden Zählers gestatten (Fig. 3).4. A circuit arrangement according to claim 1 or following, characterized in that switching means ( 57 ) are provided which switch the input gate circuits ( 25 or 27 ) of the first register ( 26 ) and / or the countable register ( 28 ) to different binary Allow outputs ( 61 ... 65 ) of the non-prime counter assigned to the relevant register element ( Fig. 3). 5. Schaltungsanordnung nach Anspruch 1 oder folgende, dadurch gekennzeichnet, daß Schaltmittel (59) zur Voreinstellung der teilerfremden Zähler (11...18) vorgesehen sind (Fig. 3).5. Circuit arrangement according to claim 1 or the following, characterized in that switching means ( 59 ) for presetting the non-prime counter ( 11 ... 18 ) are provided ( Fig. 3).
DE1537496A 1967-10-25 1967-10-25 Circuit arrangement for generating n-digit binary random numbers Expired - Lifetime DE1537496C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE1537496A DE1537496C1 (en) 1967-10-25 1967-10-25 Circuit arrangement for generating n-digit binary random numbers

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE1537496A DE1537496C1 (en) 1967-10-25 1967-10-25 Circuit arrangement for generating n-digit binary random numbers

Publications (1)

Publication Number Publication Date
DE1537496C1 true DE1537496C1 (en) 1999-08-19

Family

ID=5675920

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1537496A Expired - Lifetime DE1537496C1 (en) 1967-10-25 1967-10-25 Circuit arrangement for generating n-digit binary random numbers

Country Status (1)

Country Link
DE (1) DE1537496C1 (en)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NICHTS ERMITTELT *

Similar Documents

Publication Publication Date Title
DE2220878B2 (en) Circuit arrangement for digital frequency measurement
DE1491975C3 (en) Adjustable frequency divider
DE2421992C2 (en) Device for presetting an electrical pulse counter
DE1524181B2 (en) SELECTION DEVICE FOR INPUT AND OUTPUT DEVICES OF A DATA PROCESSING SYSTEM
DE1537496C1 (en) Circuit arrangement for generating n-digit binary random numbers
DE3602818A1 (en) WEIGHT EVENT COUNTER ARRANGEMENT
DE2719147A1 (en) Programmable pulse divider system - compares stored denominator with counter output to produce output pulses
DE1146922B (en) Method for pulse counting with multistable storage elements
DE2423818A1 (en) CIRCUIT ARRANGEMENT FOR CONVERTING A NUMBER INTO A PERCENTAGE OF A SPECIFIED NUMBER
DE2722981A1 (en) Binary signal digital filter - has up=down delay counter responding to different binary input stages and blocking when given count is reached
DE1181274B (en) Counter arrangement made up of magnetic core storage elements
EP0243771A2 (en) Method and arrangement for the quick and precise measurement of the frequency of a signal
DE1297150B (en) Shift register with controlled silicon diodes as storage element
DE1193098B (en) Control device for an electronic counter with two registers
DE2057903A1 (en) Pulse frequency divider
DE2102808A1 (en) Digital frequency divider
AT235054B (en) Circuit arrangement with n (n <IMAGE> 2) ring counters for cyclic scanning of a number of elements
DE3200752C2 (en)
DE1034217B (en) Frequency divider circuit
DE2844125C2 (en)
DE1121851B (en) Method and device for distributing a prescribed number of pulses over a prescribed period of time and using them to multiply two factors
AT205265B (en) Circuit arrangement for an electronic memory
DE1244861B (en) Circuit for controlling the filling status of the storage unit of a data processing machine, especially in radar systems
DE1954981A1 (en) Storage arrangement for storing groups of information
DE1247397B (en) Pulse number reduction circuit

Legal Events

Date Code Title Description
8100 Publication of the examined application without publication of unexamined application
8308 Other granted patents