US20030067336A1 - Method and apparatus to generate pseudo-random non-periodic digital sequences - Google Patents

Method and apparatus to generate pseudo-random non-periodic digital sequences Download PDF

Info

Publication number
US20030067336A1
US20030067336A1 US09/972,140 US97214001A US2003067336A1 US 20030067336 A1 US20030067336 A1 US 20030067336A1 US 97214001 A US97214001 A US 97214001A US 2003067336 A1 US2003067336 A1 US 2003067336A1
Authority
US
United States
Prior art keywords
periodic
flip
signal
clock
flop
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.)
Granted
Application number
US09/972,140
Other versions
US6552588B1 (en
Inventor
Jose Cruz-Albrecht
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.)
Oracle America Inc
Original Assignee
Sun Microsystems Inc
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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Priority to US09/972,140 priority Critical patent/US6552588B1/en
Assigned to SUN MICROSYSTEMS, INC. reassignment SUN MICROSYSTEMS, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ALBRECHT, JOSE M. CRUZ
Publication of US20030067336A1 publication Critical patent/US20030067336A1/en
Application granted granted Critical
Publication of US6552588B1 publication Critical patent/US6552588B1/en
Assigned to Oracle America, Inc. reassignment Oracle America, Inc. MERGER AND CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: Oracle America, Inc., ORACLE USA, INC., SUN MICROSYSTEMS, INC.
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

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

Definitions

  • the present invention relates to generating pseudo-random digital sequences. More specifically, the present invention relates to a method and an apparatus to facilitate generating pseudo-random digital sequences that are non-periodic.
  • Random digital sequences are useful for many purposes. Among these are statistical simulation, electronic hardware testing, communication link testing, cryptography, and the like. In practice, truly random digital sequences are difficult or nearly impossible to generate. Therefore, pseudo-random digital sequences are typically employed in place of the random digital sequences.
  • Pseudo-random digital sequences can be generated in many ways.
  • Digital hardware can generate a pseudo-random digital sequence using such devices as feedback shift-registers, and many computer algorithms have been developed to generate pseudo-random numbers (digital sequences) within computer software.
  • these pseudo-random digital sequence generators should not repeat the same sequence. However, since both digital hardware and computer algorithms are typically deterministic, the same sequence will eventually repeat after some finite period. Note that many techniques have been developed, both in hardware and software, to extend this period before the sequence will repeat and thus the sequence length, but nevertheless the sequence will eventually repeat.
  • One embodiment of the present invention provides a system for generating a pseudo-random non-periodic digital sequence.
  • the system operates by first receiving a non-periodic signal at a data input of a flip-flop. This non-periodic signal is sampled at the flip-flop with a clock signal, thereby producing the pseudo-random non-periodic digital sequence at the output of the flip-flop.
  • the non-periodic signal is generated by using a chaotic circuit containing three or more energy storage elements.
  • the chaotic circuit includes a non-linear resistance element.
  • the system processes the non-periodic signal from the chaotic circuit using a comparator, thereby removing an oscillating signal superimposed on the non-periodic signal.
  • the system samples the non-periodic signal on a rising edge of the clock signal and on a falling edge of the clock signal.
  • the average frequency of the non-periodic signal is greater than three times the frequency of the clock signal.
  • the system creates the clock signal with a programmable frequency synthesizer.
  • the system provides parallel pseudo-random non-periodic digital sequences originating from multiple flip-flops to a parallel-to-serial converter.
  • This parallel-to-serial converter converts the parallel pseudo-random non-periodic digital sequences into a serial sequence at a rate that depends on the number of flip-flops. Note that the input from each flip-flop is serialized before the output of the flip-flops change.
  • the above-described embodiment provides a second pseudo-random non-periodic digital sequence that is faster than the parallel pseudo-random non-periodic digital sequence.
  • FIG. 1A illustrates a circuit for generating a pseudo-random non-periodic digital sequence in accordance with an embodiment of the present invention.
  • FIG. 1B is a timing diagram illustrating operation of the circuit in FIG. 1A in accordance with an embodiment of the present invention.
  • FIG. 2 illustrates a chaotic circuit 102 that produces a chaotic signal 108 in accordance with an embodiment of the present invention.
  • FIG. 3 illustrates the voltage-current characteristic of non-linear resistor 208 in accordance with an embodiment of the present invention.
  • FIG. 4 illustrates comparator 106 in accordance with an embodiment of the present invention.
  • FIG. 5 illustrates clock synthesizer 116 in accordance with an embodiment of the present invention.
  • FIG. 6A illustrates multiple pseudo-random non-periodic digital sequence generators coupled to a parallel-to-serial converter in accordance with an embodiment of the present invention.
  • FIG. 6B is a timing diagram illustrating operation of the circuit in FIG. 6A in accordance with an embodiment of the present invention.
  • FIG. 1A illustrates a circuit for generating a pseudo-random non-periodic digital sequence in accordance with an embodiment of the present invention.
  • This circuit includes chaotic circuit 102 , comparator 106 , clock reference 112 , clock synthesizer 116 , and flip-flop 122 .
  • Chaotic circuit 102 generates chaotic signal 108 as described below in conjunction with FIG. 2.
  • Control 104 controls the operation of chaotic circuit 102 .
  • chaotic signal 108 periodically switches between oscillating around a high voltage value and oscillating around a low voltage value.
  • Comparator 106 removes these oscillations and ensures that non-periodic signal 110 moves from rail to rail.
  • Clock reference 112 provides reference clock signal 114 to clock synthesizer 116 .
  • Clock synthesizer 116 generates clock signal 120 , which switches at a multiple of the frequency of reference clock signal 114 .
  • Control 118 controls the operation of clock synthesizer 116 and sets the frequency of clock signal 120 .
  • Flip-flop 122 receives clock signal 120 on its clock input.
  • Flip-flop 122 is implemented such that the data input, non-periodic signal 110 , is sampled on both the rising and the falling edges of clock signal 120 .
  • the Q output of flip-flop 122 produces the pseudo-random non-periodic digital sequence, which is labeled as signal 124 .
  • FIG. 1B is a timing diagram illustrating operation of the circuit illustrated in FIG. 1A in accordance with an embodiment of the present invention.
  • Chaotic signal 108 is a typical output signal from chaotic circuit 102 . As described below in conjunction with FIG. 2, chaotic signal 108 tends to periodically switch between oscillating around a high voltage value and oscillating around a low voltage value. A typical frequency for this oscillation is 2.5 gigahertz, giving a cycle time of 400 picoseconds.
  • Chaotic signal 108 switches between oscillating around a high voltage value and oscillating around a low voltage value at a variable time interval.
  • control 104 can be used to set the average time interval.
  • control 104 can be set to provide an average frequency for chaotic signal 108 of 500 megahertz. This provides an average cycle time for chaotic signal 108 of two nanoseconds.
  • the cycle time for chaotic signal 108 will vary between approximately one nanosecond and three nanoseconds.
  • Comparator 106 removes the oscillation around the high voltage value and the low voltage value on chaotic signal 108 , thereby leaving non-periodic signal 110 .
  • non-periodic signal 110 retains the basic timing characteristics of chaotic signal 108 , but with the oscillation removed. Furthermore, non-periodic signal 110 moves from rail to rail, which produces a well-defined signal to the data input of flip-flop 122 .
  • Clock synthesizer 116 provides clock signal 120 to the clock input of flip-flop 122 .
  • the frequency of clock signal 120 is a multiple of the frequency of reference clock signal 114 and is set by control 118 .
  • clock synthesizer 116 provides a 100-megahertz signal to flip-flop 122 .
  • the cycle time of clock signal 120 is, therefore, ten nanoseconds. Note that clock signal 120 typically has a cycle time of about five times the average cycle time of non-periodic signal 110 . This disparity in cycle times provides an unpredictable value at the data input of flip-flop 122 when clock signal 120 changes state.
  • Flip-flop 122 samples the state of non-periodic signal 110 on both the rising and the falling edges of clock signal 120 , thereby providing a 200-megahertz signal at the Q output of flip-flop 122 .
  • Each five-nanosecond period in signal 124 provides a high logic level or a low logic level depending on the state of non-periodic signal 110 .
  • the high-value and low-value periods can be equated to a 1 or a 0 value respectively in the pseudo-random non-periodic digital sequence. Since the state of non-periodic signal 110 is unpredictable at the sample time, the sequence of values on signal 124 is random, and will not repeat after any finite number of values have been delivered.
  • FIG. 2 illustrates a chaotic circuit 102 that produces a chaotic signal 108 in accordance with an embodiment of the present invention.
  • Chaotic circuit 102 includes a number of circuit elements, including voltage-controlled capacitor (varactor) 202 , inductor 204 , resistor 206 , non-linear resistor 208 , varactor 210 , and voltage source 212 .
  • the chaotic behavior of the chaotic circuit 102 illustrated in FIG. 2 has been analyzed (see “Sights and Sounds of Chaos,” by Leon O. Chua and Rabinder N. Madan, IEEE Circuits and Devices Magazine, January 1988, pp.
  • the chaotic signal 108 tends to switch between oscillating around a high voltage value and oscillating around a low voltage value (see chaotic signal 108 in FIG. 1B). However, the period between the switches is chaotic.
  • Voltage source 212 biases chaotic signal 108 so that chaotic signal 108 switches between values approximately one volt above and one volt below the voltage of voltage source 212 . Typically, voltage source 212 is set to Vdd/2 or one-half of the supply voltage.
  • the circuit illustrated in FIG. 2 includes three energy storage elements (varactor 202 , inductor 204 and varactor 210 ), which is the minimum number of energy storage elements required to produce a chaotic signal.
  • control 104 sets the capacitance value of the varactors.
  • any known circuit that generates a non-periodic signal can be used. Hence, the present invention is not meant to be limited to the circuit illustrated in FIG. 2.
  • FIG. 3 illustrates the voltage-current characteristic of non-linear resistor 208 in accordance with an embodiment of the present invention. Note that non-linear resistor 208 can be fabricated using two op amps, an op amp and two diodes, or two transistors and two diodes.
  • FIG. 4 illustrates comparator 106 in accordance with an embodiment of the present invention.
  • Comparator 106 compares chaotic signal 108 at the positive input to the voltage from voltage source 402 at the negative input.
  • voltage source 402 is set to Vdd/2 or one-half of the supply voltage.
  • chaotic signal 108 is more positive than voltage source 402
  • non-periodic signal 110 is positive.
  • non-periodic signal 110 is negative.
  • FIG. 5 illustrates clock synthesizer 116 in accordance with an embodiment of the present invention.
  • Clock synthesizer 116 includes phase detector 502 , filter 504 , VCO 506 , and programmable frequency divider 508 .
  • VCO 506 generates clock signal 120 based upon the input voltage from filter 504 .
  • Programmable frequency divider 508 divides this frequency at a ratio set by control 118 .
  • Phase detector 502 compares this divided clock frequency with reference clock signal 114 and produces a voltage output dependent upon the frequency difference and, ultimately, the phase difference between these two signals. This voltage output is filtered by filter 504 and applied to VCO 506 to control the frequency of VCO 506 .
  • the circuit locks clock signal 120 to a multiple of reference clock signal 114 , and thereby provides a stable clock frequency to flip flop 122 .
  • FIG. 6A illustrates multiple pseudo-random non-periodic digital sequence generators coupled to a parallel-to-serial converter in accordance with an embodiment of the present invention. Coupling the multiple sequence generators to the parallel-to-serial converter in this fashion acts to create a higher frequency pseudo-random digital sequence.
  • the pseudo-random non-periodic signal generators include chaotic circuits 602 , 612 , 622 , 632 , 642 , 652 , 662 , 672 , 682 , 692 , comparators 604 , 614 , 624 , 634 , 644 , 654 , 664 , 674 , 684 , 694 , and flip-flops 606 , 616 , 626 , 636 , 646 , 656 , 666 , 676 , 686 , 696 .
  • Flip-flops 606 , 616 , 626 , 636 , 646 , 656 , 666 , 676 , 686 , 696 sample the outputs of comparators 604 , 614 , 624 , 634 , 644 , 654 , 664 , 674 , 684 , and 694 , respectively, on both the rising and the falling edges of clock signal 630 and supply their respective outputs to parallel-to-serial converter 608 .
  • Clock reference 618 , clock synthesizer 628 , and control 638 operate as described above for clock reference 112 , clock synthesizer 116 , and control 118 respectively.
  • Frequency divider 648 divides clock signal 620 to provide clock signal 630 .
  • the division ratio of frequency divider 648 is selected to provide the same frequency for clock signal 630 as for clock signal 120 . In this example, the division ratio is ten.
  • Clock signal 620 is applied to parallel-to-serial converter 608 .
  • Parallel-to-serial converter 608 sequentially samples the output of flip-flops 606 , 616 , 626 , 636 , 646 , 656 , 666 , 676 , 686 , and 696 .
  • a different flip-flop is sampled on each edge of clock signal 620 so that the output of parallel-to-serial converter 608 includes a sequence of, in this case ten, pseudo-random non-periodic sequences. Since the sampling is on both edges of clock signal 620 , the bit period of pseudo-random non-periodic sequence 610 is two times the period of clock signal 620 .
  • FIG. 6B is a timing diagram illustrating operation of the circuit in FIG. 6A in accordance with an embodiment of the present invention.
  • Frequency divider 648 divides the frequency of clock signal 620 by N to yield clock signal 630 at 100 megahertz.
  • Parallel-to-serial converter 608 samples an input sequence on both the rising and the falling edges of clock signal 620 .
  • Pseudo-random non-periodic sequence 610 is a stream of pseudo-random non-periodic bits at a 2-gigabit per second rate. The bit period is 0.5 nanoseconds.

Landscapes

  • Manipulation Of Pulses (AREA)
  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)

Abstract

One embodiment of the present invention provides a system for generating a pseudo-random non-periodic digital sequence. The system operates by receiving a non-periodic signal at a data input of a flip-flop. This non-periodic signal is sampled at the flip-flop with a clock signal, thereby producing the pseudo-random non-periodic digital sequence at the output of the flip-flop.

Description

    RELATED APPLICATION
  • The subject matter of this application is related to the subject matter in a co-pending non-provisional application by the same inventor as the instant application entitled, “Method and Apparatus for Using a Non-Periodic Signal to Perform Clock Dithering,” having Ser. No. 09/783,800, and filing date Feb. 13, 2001.[0001]
  • BACKGROUND
  • 1. Field of the Invention [0002]
  • The present invention relates to generating pseudo-random digital sequences. More specifically, the present invention relates to a method and an apparatus to facilitate generating pseudo-random digital sequences that are non-periodic. [0003]
  • 2. Related Art [0004]
  • Random digital sequences are useful for many purposes. Among these are statistical simulation, electronic hardware testing, communication link testing, cryptography, and the like. In practice, truly random digital sequences are difficult or nearly impossible to generate. Therefore, pseudo-random digital sequences are typically employed in place of the random digital sequences. [0005]
  • Pseudo-random digital sequences can be generated in many ways. Digital hardware can generate a pseudo-random digital sequence using such devices as feedback shift-registers, and many computer algorithms have been developed to generate pseudo-random numbers (digital sequences) within computer software. [0006]
  • Ideally, these pseudo-random digital sequence generators should not repeat the same sequence. However, since both digital hardware and computer algorithms are typically deterministic, the same sequence will eventually repeat after some finite period. Note that many techniques have been developed, both in hardware and software, to extend this period before the sequence will repeat and thus the sequence length, but nevertheless the sequence will eventually repeat. [0007]
  • When these pseudo-random digital sequences repeat, their usefulness for statistical simulation and testing is limited because replaying the same sequence may produce the same result as obtained previously. Additionally, a pattern that is not included in the sequence might yield new, and unexpected, results if it is included. Moreover, repeating the same pseudo-random digital sequence in a cryptographic system can present a vulnerability that can be exploited by an opponent. [0008]
  • What is needed is a method and an apparatus for generating pseudo-random digital sequences that does not repeat the same sequence after a finite period. [0009]
  • SUMMARY
  • One embodiment of the present invention provides a system for generating a pseudo-random non-periodic digital sequence. The system operates by first receiving a non-periodic signal at a data input of a flip-flop. This non-periodic signal is sampled at the flip-flop with a clock signal, thereby producing the pseudo-random non-periodic digital sequence at the output of the flip-flop. [0010]
  • In one embodiment of the present invention, the non-periodic signal is generated by using a chaotic circuit containing three or more energy storage elements. [0011]
  • In one embodiment of the present invention, the chaotic circuit includes a non-linear resistance element. [0012]
  • In one embodiment of the present invention, the system processes the non-periodic signal from the chaotic circuit using a comparator, thereby removing an oscillating signal superimposed on the non-periodic signal. [0013]
  • In one embodiment of the present invention, the system samples the non-periodic signal on a rising edge of the clock signal and on a falling edge of the clock signal. [0014]
  • In one embodiment of the present invention, the average frequency of the non-periodic signal is greater than three times the frequency of the clock signal. [0015]
  • In one embodiment of the present invention, the system creates the clock signal with a programmable frequency synthesizer. [0016]
  • In one embodiment of the present invention, the system provides parallel pseudo-random non-periodic digital sequences originating from multiple flip-flops to a parallel-to-serial converter. This parallel-to-serial converter converts the parallel pseudo-random non-periodic digital sequences into a serial sequence at a rate that depends on the number of flip-flops. Note that the input from each flip-flop is serialized before the output of the flip-flops change. Thus, the above-described embodiment provides a second pseudo-random non-periodic digital sequence that is faster than the parallel pseudo-random non-periodic digital sequence.[0017]
  • BRIEF DESCRIPTION OF THE FIGURES
  • FIG. 1A illustrates a circuit for generating a pseudo-random non-periodic digital sequence in accordance with an embodiment of the present invention. [0018]
  • FIG. 1B is a timing diagram illustrating operation of the circuit in FIG. 1A in accordance with an embodiment of the present invention. [0019]
  • FIG. 2 illustrates a [0020] chaotic circuit 102 that produces a chaotic signal 108 in accordance with an embodiment of the present invention.
  • FIG. 3 illustrates the voltage-current characteristic of [0021] non-linear resistor 208 in accordance with an embodiment of the present invention.
  • FIG. 4 illustrates [0022] comparator 106 in accordance with an embodiment of the present invention.
  • FIG. 5 illustrates [0023] clock synthesizer 116 in accordance with an embodiment of the present invention.
  • FIG. 6A illustrates multiple pseudo-random non-periodic digital sequence generators coupled to a parallel-to-serial converter in accordance with an embodiment of the present invention. [0024]
  • FIG. 6B is a timing diagram illustrating operation of the circuit in FIG. 6A in accordance with an embodiment of the present invention.[0025]
  • DETAILED DESCRIPTION
  • The following description is presented to enable any person skilled in the art to make and use the invention, and is provided in the context of a particular application and its requirements. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the present invention. Thus, the present invention is not intended to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein. [0026]
  • Circuit for Generating Pseudo-Random Non-Periodic Digital Sequences [0027]
  • FIG. 1A illustrates a circuit for generating a pseudo-random non-periodic digital sequence in accordance with an embodiment of the present invention. This circuit includes [0028] chaotic circuit 102, comparator 106, clock reference 112, clock synthesizer 116, and flip-flop 122.
  • [0029] Chaotic circuit 102 generates chaotic signal 108 as described below in conjunction with FIG. 2. Control 104 controls the operation of chaotic circuit 102. Note that chaotic signal 108 periodically switches between oscillating around a high voltage value and oscillating around a low voltage value. Comparator 106 removes these oscillations and ensures that non-periodic signal 110 moves from rail to rail.
  • [0030] Clock reference 112 provides reference clock signal 114 to clock synthesizer 116. Clock synthesizer 116 generates clock signal 120, which switches at a multiple of the frequency of reference clock signal 114. Control 118 controls the operation of clock synthesizer 116 and sets the frequency of clock signal 120.
  • Flip-[0031] flop 122 receives clock signal 120 on its clock input. Flip-flop 122 is implemented such that the data input, non-periodic signal 110, is sampled on both the rising and the falling edges of clock signal 120. The Q output of flip-flop 122 produces the pseudo-random non-periodic digital sequence, which is labeled as signal 124.
  • FIG. 1B is a timing diagram illustrating operation of the circuit illustrated in FIG. 1A in accordance with an embodiment of the present invention. [0032] Chaotic signal 108 is a typical output signal from chaotic circuit 102. As described below in conjunction with FIG. 2, chaotic signal 108 tends to periodically switch between oscillating around a high voltage value and oscillating around a low voltage value. A typical frequency for this oscillation is 2.5 gigahertz, giving a cycle time of 400 picoseconds.
  • [0033] Chaotic signal 108 switches between oscillating around a high voltage value and oscillating around a low voltage value at a variable time interval. However, control 104 can be used to set the average time interval. For example, control 104 can be set to provide an average frequency for chaotic signal 108 of 500 megahertz. This provides an average cycle time for chaotic signal 108 of two nanoseconds. However, because of the chaotic nature of chaotic circuit 102, the cycle time for chaotic signal 108 will vary between approximately one nanosecond and three nanoseconds.
  • [0034] Comparator 106 removes the oscillation around the high voltage value and the low voltage value on chaotic signal 108, thereby leaving non-periodic signal 110. Note that non-periodic signal 110 retains the basic timing characteristics of chaotic signal 108, but with the oscillation removed. Furthermore, non-periodic signal 110 moves from rail to rail, which produces a well-defined signal to the data input of flip-flop 122.
  • [0035] Clock synthesizer 116 provides clock signal 120 to the clock input of flip-flop 122. The frequency of clock signal 120 is a multiple of the frequency of reference clock signal 114 and is set by control 118. Typically, clock synthesizer 116 provides a 100-megahertz signal to flip-flop 122. The cycle time of clock signal 120 is, therefore, ten nanoseconds. Note that clock signal 120 typically has a cycle time of about five times the average cycle time of non-periodic signal 110. This disparity in cycle times provides an unpredictable value at the data input of flip-flop 122 when clock signal 120 changes state.
  • Flip-flop [0036] 122 samples the state of non-periodic signal 110 on both the rising and the falling edges of clock signal 120, thereby providing a 200-megahertz signal at the Q output of flip-flop 122. Each five-nanosecond period in signal 124 provides a high logic level or a low logic level depending on the state of non-periodic signal 110. The high-value and low-value periods can be equated to a 1 or a 0 value respectively in the pseudo-random non-periodic digital sequence. Since the state of non-periodic signal 110 is unpredictable at the sample time, the sequence of values on signal 124 is random, and will not repeat after any finite number of values have been delivered.
  • Circuit that Generates a Chaotic Signal [0037]
  • FIG. 2 illustrates a [0038] chaotic circuit 102 that produces a chaotic signal 108 in accordance with an embodiment of the present invention. Chaotic circuit 102 includes a number of circuit elements, including voltage-controlled capacitor (varactor) 202, inductor 204, resistor 206, non-linear resistor 208, varactor 210, and voltage source 212. The chaotic behavior of the chaotic circuit 102 illustrated in FIG. 2 has been analyzed (see “Sights and Sounds of Chaos,” by Leon O. Chua and Rabinder N. Madan, IEEE Circuits and Devices Magazine, January 1988, pp. 3-13.) The chaotic signal 108 tends to switch between oscillating around a high voltage value and oscillating around a low voltage value (see chaotic signal 108 in FIG. 1B). However, the period between the switches is chaotic. Voltage source 212 biases chaotic signal 108 so that chaotic signal 108 switches between values approximately one volt above and one volt below the voltage of voltage source 212. Typically, voltage source 212 is set to Vdd/2 or one-half of the supply voltage.
  • Note that the circuit illustrated in FIG. 2 includes three energy storage elements ([0039] varactor 202, inductor 204 and varactor 210), which is the minimum number of energy storage elements required to produce a chaotic signal. In one embodiment of the present invention, control 104 sets the capacitance value of the varactors. Also note that in general any known circuit that generates a non-periodic signal can be used. Hence, the present invention is not meant to be limited to the circuit illustrated in FIG. 2.
  • FIG. 3 illustrates the voltage-current characteristic of [0040] non-linear resistor 208 in accordance with an embodiment of the present invention. Note that non-linear resistor 208 can be fabricated using two op amps, an op amp and two diodes, or two transistors and two diodes.
  • Comparator [0041]
  • FIG. 4 illustrates [0042] comparator 106 in accordance with an embodiment of the present invention. Comparator 106 compares chaotic signal 108 at the positive input to the voltage from voltage source 402 at the negative input. Typically, voltage source 402 is set to Vdd/2 or one-half of the supply voltage. When chaotic signal 108 is more positive than voltage source 402, non-periodic signal 110 is positive. On the other hand, when chaotic signal 108 is more negative than voltage source 402, non-periodic signal 110 is negative.
  • Clock Synthesizer [0043]
  • FIG. 5 illustrates [0044] clock synthesizer 116 in accordance with an embodiment of the present invention. Clock synthesizer 116 includes phase detector 502, filter 504, VCO 506, and programmable frequency divider 508. In operation, VCO 506 generates clock signal 120 based upon the input voltage from filter 504. Programmable frequency divider 508 divides this frequency at a ratio set by control 118. Phase detector 502 compares this divided clock frequency with reference clock signal 114 and produces a voltage output dependent upon the frequency difference and, ultimately, the phase difference between these two signals. This voltage output is filtered by filter 504 and applied to VCO 506 to control the frequency of VCO 506. Note that the circuit locks clock signal 120 to a multiple of reference clock signal 114, and thereby provides a stable clock frequency to flip flop 122.
  • Providing Higher Frequency Pseudo-Random Streams [0045]
  • FIG. 6A illustrates multiple pseudo-random non-periodic digital sequence generators coupled to a parallel-to-serial converter in accordance with an embodiment of the present invention. Coupling the multiple sequence generators to the parallel-to-serial converter in this fashion acts to create a higher frequency pseudo-random digital sequence. [0046]
  • In this configuration, there are ten pseudo-random non-periodic signal generators, each as described above in conjunction with FIGS. [0047] 1-5. Note that the ten signal generators are being used as an example and that the exact number of generators can be more or less than ten depending on the desired output. The pseudo-random non-periodic signal generators include chaotic circuits 602, 612, 622, 632, 642, 652, 662, 672, 682, 692, comparators 604, 614, 624, 634, 644, 654, 664, 674, 684, 694, and flip- flops 606, 616, 626, 636, 646, 656, 666, 676, 686, 696. Flip- flops 606, 616, 626, 636, 646, 656, 666, 676, 686, 696 sample the outputs of comparators 604, 614, 624, 634, 644, 654, 664, 674, 684, and 694, respectively, on both the rising and the falling edges of clock signal 630 and supply their respective outputs to parallel-to-serial converter 608.
  • [0048] Clock reference 618, clock synthesizer 628, and control 638 operate as described above for clock reference 112, clock synthesizer 116, and control 118 respectively. The output of clock synthesizer 628clock signal 620—is higher in frequency by a factor depending on the number of pseudo-random non-periodic signal generators, which are included in the circuit. In this example, the frequency of clock signal 620 is ten times the frequency of clock signal 120. Frequency divider 648 divides clock signal 620 to provide clock signal 630. The division ratio of frequency divider 648 is selected to provide the same frequency for clock signal 630 as for clock signal 120. In this example, the division ratio is ten.
  • [0049] Clock signal 620 is applied to parallel-to-serial converter 608. Parallel-to-serial converter 608 sequentially samples the output of flip- flops 606, 616, 626, 636, 646, 656, 666, 676, 686, and 696. A different flip-flop is sampled on each edge of clock signal 620 so that the output of parallel-to-serial converter 608 includes a sequence of, in this case ten, pseudo-random non-periodic sequences. Since the sampling is on both edges of clock signal 620, the bit period of pseudo-random non-periodic sequence 610 is two times the period of clock signal 620.
  • FIG. 6B is a timing diagram illustrating operation of the circuit in FIG. 6A in accordance with an embodiment of the present invention. [0050] Clock signal 620 from clock synthesizer 628 is N times the frequency of clock signal 630, where N is the number of pseudo-random non-periodic sequence generators included in the circuit. For example, when N=10 and the frequency of clock reference 618 is 100 megahertz, the frequency of clock signal 620 is 1 gigahertz. Frequency divider 648 divides the frequency of clock signal 620 by N to yield clock signal 630 at 100 megahertz.
  • Parallel-to-[0051] serial converter 608 samples an input sequence on both the rising and the falling edges of clock signal 620. Pseudo-random non-periodic sequence 610, therefore, is a stream of pseudo-random non-periodic bits at a 2-gigabit per second rate. The bit period is 0.5 nanoseconds.
  • The foregoing descriptions of embodiments of the present invention have been presented for purposes of illustration and description only. They are not intended to be exhaustive or to limit the present invention to the forms disclosed. Accordingly, many modifications and variations will be apparent to practitioners skilled in the art. Additionally, the above disclosure is not intended to limit the present invention. The scope of the present invention is defined by the appended claims. [0052]

Claims (20)

What is claimed is:
1. A method for generating a pseudo-random non-periodic digital sequence, comprising;
receiving a non-periodic signal at a data input of a flip-flop;
sampling the non-periodic signal at the flip-flop with a clock signal; and
providing an output of the flip-flop as the pseudo-random non-periodic digital sequence.
2. The method of claim 1, further comprising generating the non-periodic signal by using a chaotic circuit containing three or more energy storage elements.
3. The method of claim 2, wherein the chaotic circuit includes a non-linear resistance element.
4. The method of claim 2, further comprising processing the non-periodic signal from the chaotic circuit using a comparator, thereby removing an oscillating signal superimposed on the non-periodic signal.
5. The method of claim 1, wherein sampling the non-periodic signal includes sampling the non-periodic signal on a rising edge of the clock signal and on a falling edge of the clock signal.
6. The method of claim 1, wherein an average frequency of the non-periodic signal is greater than three times a frequency of the clock signal.
7. The method of claim 1, further comprising creating the clock signal with a programmable frequency synthesizer.
8. The method of claim 1, further comprising:
providing a parallel pseudo-random non-periodic digital sequence from a plurality of flip-flops to a parallel-to-serial converter; and
converting the parallel pseudo-random non-periodic digital sequence from the plurality of flip-flops into a serial sequence at a rate dependent on a quantity of flip-flops in the plurality of flip-flops, whereby each flip-flop in the plurality of flip-flops is serialized before the output of the plurality of flip-flops changes, thus providing a second pseudo-random non-periodic digital sequence that is faster than the parallel pseudo-random non-periodic digital sequence.
9. An apparatus for generating a pseudo-random non-periodic digital sequence, comprising;
a non-periodic signal generator;
a comparator, including an input electrically coupled to the non-periodic signal generator, wherein a comparator output is a filtered non-periodic signal;
a clock signal generator, wherein the clock signal generator generates a clock signal; and
a flip-flop, wherein a data input of the flip-flop is the filtered non-periodic signal, a clock input of the flip-flop is the clock signal, and a flip-flop output is the pseudo-random non-periodic digital sequence.
10. The apparatus of claim 9, wherein the non-periodic signal generator includes a chaotic circuit containing three or more energy storage elements.
11. The apparatus of claim 10, wherein the chaotic circuit includes a non-linear resistance element.
12. The apparatus of claim 10, wherein the comparator removes an oscillating signal superimposed on an output of the chaotic circuit.
13. The apparatus of claim 9, wherein the clock signal generator includes:
a digital clock reference circuit; and
a clock synthesizer coupled to the digital clock reference circuit.
14. The apparatus of claim 13, wherein the clock synthesizer is configured to be programmed to generate the clock signal at a multiple of a frequency of the digital clock reference circuit.
15. The apparatus of claim 9, wherein the flip-flop samples the data input on a rising edge of the clock input and on a falling edge of the clock input.
16. The apparatus of claim 9, wherein an average frequency of the filtered non-periodic signal is greater than three times a frequency of the clock signal.
17. The apparatus of claim 9, further comprising a parallel-to-serial converter, wherein the parallel-to-serial converter receives a plurality of non-periodic digital sequences and converts the plurality of non-periodic digital sequences into a serial sequence.
18. An apparatus that uses a non-periodic signal to generate a pseudo-random non-periodic digital sequence, comprising:
a non-periodic signal generator;
a comparator including an input electrically coupled to the non-periodic signal generator, wherein a comparator output is the non-periodic signal;
a clock signal generator, wherein the clock signal generator generates a clock signal; and
a flip-flop, wherein a data input of the flip-flop is the non-periodic signal, a clock input of the flip-flop is the clock signal, and a flip-flop output is the pseudo-random non-periodic digital sequence.
19. The apparatus of claim 18, wherein the non-periodic signal generator includes a chaotic circuit containing three or more energy storage elements.
20. The apparatus of claim 18, further comprising a parallel-to-serial converter, wherein the parallel-to-serial converter receives a plurality of non-periodic digital sequences and converts the plurality of non-periodic digital sequences to a serial stream.
US09/972,140 2001-10-05 2001-10-05 Method and apparatus to generate pseudo-random non-periodic digital sequences Expired - Lifetime US6552588B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US09/972,140 US6552588B1 (en) 2001-10-05 2001-10-05 Method and apparatus to generate pseudo-random non-periodic digital sequences

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/972,140 US6552588B1 (en) 2001-10-05 2001-10-05 Method and apparatus to generate pseudo-random non-periodic digital sequences

Publications (2)

Publication Number Publication Date
US20030067336A1 true US20030067336A1 (en) 2003-04-10
US6552588B1 US6552588B1 (en) 2003-04-22

Family

ID=25519230

Family Applications (1)

Application Number Title Priority Date Filing Date
US09/972,140 Expired - Lifetime US6552588B1 (en) 2001-10-05 2001-10-05 Method and apparatus to generate pseudo-random non-periodic digital sequences

Country Status (1)

Country Link
US (1) US6552588B1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080183788A1 (en) * 2006-11-10 2008-07-31 Huawei Technologies Co., Ltd. Apparatus and method for generating random number and data interaction system thereof
WO2008142488A1 (en) * 2007-05-22 2008-11-27 Tubitak-Turkiye Bilimsel Ve Teknolojik Arastirma Kurumu Method and hardware for generating random numbers using dual oscillator architecture and continuous-time chaos
CN100459487C (en) * 2003-12-31 2009-02-04 华中科技大学 Chaotic cipher production method under limited precision
US20090089347A1 (en) * 2006-01-12 2009-04-02 Stmicroelectronics Sa Method and device for generating a random number in a USB (Universal Serial Bus) peripheral
WO2013066143A1 (en) * 2011-11-01 2013-05-10 Instituto Potosino De Investigacion Cientifica Y Tecnologica , Ac. Reconfigurable multivibrator element based on chaos control
CN113608021A (en) * 2021-07-23 2021-11-05 华中科技大学 Chaotic oscillator circuit and weak signal detection system based on chaos theory

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100618389B1 (en) * 2005-03-07 2006-09-01 삼성전자주식회사 Wide band-dcsk modulation method, transmitting apparatus thereof, wide band-dcsk demodulation method, receiving apparatus thereof
US8145691B2 (en) 2006-02-24 2012-03-27 Novell, Inc. Techniques for random bit generation
US7764137B2 (en) * 2006-09-28 2010-07-27 Suvolta, Inc. Circuit and method for generating electrical solutions with junction field effect transistors

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3914740A (en) * 1973-09-04 1975-10-21 Northern Electric Co Error detector for pseudo-random sequence of digits
WO1998059458A1 (en) * 1997-06-23 1998-12-30 The Regents Of The University Of California Chaotic digital code-division multiple access (cdma) communication systems
US6356602B1 (en) * 1998-05-04 2002-03-12 Trimble Navigation Limited RF integrated circuit for downconverting a GPS signal
US6396355B1 (en) * 2000-04-12 2002-05-28 Rockwell Collins, Inc. Signal generator having fine resolution and low phase noise
US6404260B1 (en) * 2001-02-13 2002-06-11 Sun Microsystems, Inc. Method and apparatus for using a non-periodic signal to perform clock dithering

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100459487C (en) * 2003-12-31 2009-02-04 华中科技大学 Chaotic cipher production method under limited precision
US20090089347A1 (en) * 2006-01-12 2009-04-02 Stmicroelectronics Sa Method and device for generating a random number in a USB (Universal Serial Bus) peripheral
US7958175B2 (en) * 2006-01-12 2011-06-07 Stmicroelectronics Sa Method and device for generating a random number in a USB (universal serial bus) peripheral
US20080183788A1 (en) * 2006-11-10 2008-07-31 Huawei Technologies Co., Ltd. Apparatus and method for generating random number and data interaction system thereof
US8024386B2 (en) * 2006-11-10 2011-09-20 Huawei Technologies Co., Ltd. Apparatus and method for generating random number and data interaction system thereof
WO2008142488A1 (en) * 2007-05-22 2008-11-27 Tubitak-Turkiye Bilimsel Ve Teknolojik Arastirma Kurumu Method and hardware for generating random numbers using dual oscillator architecture and continuous-time chaos
US20100146025A1 (en) * 2007-05-22 2010-06-10 Scientific & Technological Research Council Of Turkey (Tubitak) Method and hardware for generating random numbers using dual oscillator architecture and continuous-time chaos
US8612501B2 (en) 2007-05-22 2013-12-17 Scientific Technological Research Council of Turkey (Tubitak) Method and hardware for generating random numbers using dual oscillator architecture and continuous-time chaos
WO2013066143A1 (en) * 2011-11-01 2013-05-10 Instituto Potosino De Investigacion Cientifica Y Tecnologica , Ac. Reconfigurable multivibrator element based on chaos control
JP2015503260A (en) * 2011-11-01 2015-01-29 インスティテュト ポトシノ デ インべスティガシオン シエンティフィカ イ テクノロジカ、エーシー.Instituto Potosino De Investigacion Cientifica Y Tecnologica,Ac. Reconfigurable multivibrator element based on chaotic control
CN113608021A (en) * 2021-07-23 2021-11-05 华中科技大学 Chaotic oscillator circuit and weak signal detection system based on chaos theory

Also Published As

Publication number Publication date
US6552588B1 (en) 2003-04-22

Similar Documents

Publication Publication Date Title
US6240432B1 (en) Enhanced random number generator
Golic New methods for digital generation and postprocessing of random data
US8612501B2 (en) Method and hardware for generating random numbers using dual oscillator architecture and continuous-time chaos
EP1776757B1 (en) Random number generation based on logic circuits with feedback
US6150847A (en) Device and method for generating a variable duty cycle clock
US9047152B2 (en) Delay device, method, and random number generator using the same
US4815018A (en) Spurless fractional divider direct digital frequency synthesizer and method
US20110302232A1 (en) Apparatus for generating random number
EP1537474B1 (en) Feedback random number generation method and system
Calbaza et al. A direct digital period synthesis circuit
US6552588B1 (en) Method and apparatus to generate pseudo-random non-periodic digital sequences
JPH113133A (en) High resolution clock circuit and high resolution clock generating method
CN110518906A (en) Signal generating circuit and its method, digit time conversion circuit and its method
US6751639B2 (en) Method and apparatus for generating numbers
Bharat Meitei et al. FPGA implementation of true random number generator architecture using all digital phase-locked loop
WO2022042065A1 (en) Random number generator and random number generation method
Lee et al. Implementing a phase detection ring oscillator PUF on FPGA
Sreekumar et al. Selection of an optimum entropy source design for a true random number generator
US20210026602A1 (en) Entropy Generator and Method of Generating Enhanced Entropy Using Truly Random Static Entropy
US20150193208A1 (en) Random Number Generator Using Ring Oscillators With Initial Delay
CN110518907A (en) Signal generating circuit and its method, digit time conversion circuit and its method
Kadam et al. Design and Implementation of chaotic nondeterministic random seed-based Hybrid True Random Number Generator
CN111782179B (en) True random number generator
Stefanou et al. High speed array of oscillator-based truly binary random number generators
EP1660988B1 (en) Hardware generator employing analog and digital correction circuits for generating uniform and gaussian distributed true random numbers

Legal Events

Date Code Title Description
AS Assignment

Owner name: SUN MICROSYSTEMS, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ALBRECHT, JOSE M. CRUZ;REEL/FRAME:012244/0837

Effective date: 20010918

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

FPAY Fee payment

Year of fee payment: 8

FPAY Fee payment

Year of fee payment: 12

AS Assignment

Owner name: ORACLE AMERICA, INC., CALIFORNIA

Free format text: MERGER AND CHANGE OF NAME;ASSIGNORS:ORACLE USA, INC.;SUN MICROSYSTEMS, INC.;ORACLE AMERICA, INC.;REEL/FRAME:037278/0692

Effective date: 20100212