DE10162582C2 - Pseudozufallssequenzgenerator und Verfahren hierfür - Google Patents
Pseudozufallssequenzgenerator und Verfahren hierfürInfo
- Publication number
- DE10162582C2 DE10162582C2 DE10162582A DE10162582A DE10162582C2 DE 10162582 C2 DE10162582 C2 DE 10162582C2 DE 10162582 A DE10162582 A DE 10162582A DE 10162582 A DE10162582 A DE 10162582A DE 10162582 C2 DE10162582 C2 DE 10162582C2
- Authority
- DE
- Germany
- Prior art keywords
- pseudo random
- significant bits
- sequence
- sequence generator
- random sequence
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
- G06F7/584—Pseudo-random number generators using finite field arithmetic, e.g. using a linear feedback shift register
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/04—Arrangements for selecting an address in a digital store using a sequential addressing device, e.g. shift register, counter
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/58—Indexing scheme relating to groups G06F7/58 - G06F7/588
- G06F2207/582—Parallel finite field implementation, i.e. at least partially parallel implementation of finite field arithmetic, generating several new bits or trits per step, e.g. using a GF multiplier
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Tests Of Electronic Circuits (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
Diese Erfindung bezieht sich auf eingebaute Eigentests
(BIST; BIST = built-in self-test) von Halbleitervorrichtun
gen und insbesondere auf Pseudozufallssequenzgeneratoren zum
Testen von Halbleiter-Cache-Speichervorrichtungen und ein
Verfahren hierfür.
Herkömmliche Cache-Speichervorrichtungen weisen nur Größen
von Potenzen von 2, z. B. 1024, 4096, usw., auf. Ein Eigen
testen dieser Vorrichtungen wird üblicherweise unter Ver
wendung eines herkömmlichen Linearrückkopplungsschieberegi
sters (LFSR; LFSR = linear feedback shift register) durch
geführt, um pseudozufällige Adressen über einem entspre
chenden Potenz-von-zwei-Bereich zu erzeugen. So wurden,
weil es keine frühere Motivation gab, ein System oder ein
Verfahren zu entwickeln, um pseudozufällige Adressen zum
Testen einer Cache-Speichervorrichtung zu erzeugen, die ei
ne Größe aufweist, die keine Potenz von 2 ist, derartige
Systeme und Verfahren bisher weder gelehrt noch vorgeschla
gen.
Bei dem Testen einer Cache-Speicher-Größe, die keine Potenz
von 2 ist, z. B. eines 0,75M-Cache-Speichers, würden, obwohl
ein herkömmliches LFSR verwendet werden könnte, unzulässige
Adressen erzeugt werden. Ein herkömmliches LFSR erzeugt Ad
ressen in dem Hexadezimalbereich z. B. von 0 bis 0x3fff (0
bis 16.383 dezimal), wohingegen der erforderliche Hexadezi
malbereich von 0 bis 0x2fff (0 bis 12.287 dezimal) reicht.
So wäre es von Vorteil, ein System und ein Verfahren zur
Pseudozufallsadreßerzeugung für ein Cache-Speicher-Testen
zu entwickeln, die das obere Viertel eines Adreßbereichs
vermeiden, der andernfalls eine Potenz von 2 wäre.
Die JP 04-086017 A beschreibt einen Pseudozufallssignal-
Generator, dessen Betrieb leicht wieder gestartet werden
kann, sogar dann, wenn ein Schieberegister zurückgesetzt
wurde. Dies wird erreicht, indem während des zurückgesetz
ten Zustandes das Ausgangssignal eines exklusiven ODER-
Gatters durch Verwendung eines EX-NOR-Gatters invertiert
wird.
Die DE 36 39 577 A1 beschreibt einen Logikbaustein zur Erzeu
gung von ungleich verteilten Zufallsmustern. Der Logikbau
stein umfaßt zwei Typen von Grundzellen, von denen jede ei
ne Registerzelle und eine Teilschaltung aus Gattern umfaßt.
Die Grundzellen werden in Abhängigkeit von zwei Steuersi
gnalen als normales Register, als normales Schieberegister
oder als linear rückgekoppeltes Schieberegister betrieben.
Die GB 2345976 A beschreibt ein lineares Rückkopplungs
schieberegister, das aus Adreßzwischenspeichern gebildet
ist. Die Mehrzahl von Zwischenspeichern sind angeordnet, um
in einem normalen Modus als Zwischenspeicher zu arbeiten,
und um in einem Testmodus derart verschaltet zu sein, um
ein lineares Rückkopplungsschieberegister zu bilden, wel
ches eine Sequenz von Testsignalen an eine integrierte
Schaltung bereitstellt.
Es ist die Aufgabe der vorliegenden Erfindung, einen Pseu
dozufallssequenzgenerator mit verbesserten Charakteristika
und ein verbessertes Verfahren zum Erzeugen einer pseudozu
fälligen Sequenz von Zahlen zu schaffen.
Diese Aufgabe wird durch einen Pseudozufallssequenzgenera
tor gemäß Anspruch 1 oder ein Verfahren zum Erzeugen einer
pseudozufälligen Sequenz von Zahlen gemäß Anspruch 14 ge
löst.
Die vorliegende Erfindung bezieht sich auf ein System und
ein Verfahren zum Erzeugen von pseudozufälligen Zahlense
quenzen, die einen vorbestimmten oberen Bruchteil eines Be
reichs ausschließen, der andernfalls eine Potenz von 2 ent
hält. Die höchstwertigen N Bits jeder Zahl werden zyklisch
erzeugt, indem die Bits der vorhergehenden Zahl in der Se
quenz von einer ersten Speicherzelle in Richtung einer N-
ten Speicherzelle eines sequentiellen Registers unidirek
tional verschoben werden, und indem ein neues Bit in der
ersten Speicherzelle ansprechend auf eine vorbestimmte
Kombination der vorherigen N höchstwertigen Bits erzeugt
wird, derart, daß immer zumindest eines der N Bits eine 0
ist, wodurch ein vorbestimmter oberer Bruchteil eines
Potenz-von-zwei-Bereichs ausgeschlossen wird. Für jede Zahl
in der pseudozufälligen Sequenz werden die N höchstwertigen
Bits einem Niederstwertige-Bits-Abschnitt zugeordnet, der
unter Verwendung einer herkömmlichen Methodik erzeugt wird,
derart, daß jeder Wert des Niederstwertige-Bits-Abschnitts
für jeden zyklischen Wert der höchstwertigen Bits genau
einmal erzeugt wird.
Bei einigen Ausführungsbeispielen wird das Zuordnen zwi
schen den höchstwertigen und den niederstwertigen Bits dis
kontinuierlich randomisiert, indem ein Verschiebungssteue
rungsbit an den Höchstwertige-Bits-Abschnitt angelegt wird,
der durch Durchführen einer UND-Verknüpfung bezüglich des
äußeren Verschiebungssteuerungsbits des Niederstwertige-
Bits-Abschnitts mit dem Bit-Wert eines ausgewählten Bits
der niederstwertigen Bits erhalten wird. So verschieben
sich die höchstwertigen Bits, wenn, und nur wenn, die Werte
sowohl des externen Verschiebungssteuerungsbits als auch
des ausgewählten niederstwertigen Bits hoch sind. Bei eini
gen Ausführungsbeispielen wird der neue Wert des ersten der
höchstwertigen Bits durch eine Rückkopplungslogik erzielt,
indem z. B. die vorherigen N höchstwertigen Bits einer NOR-
Verknüpfung unterzogen werden. Die Gesamtzahl von Bits in
jeder pseudozufälligen Sequenzzahl ist nicht beschränkt,
wobei praktische Implementierungen üblicherweise in dem Be
reich von 4 bis 64 Bits liegen. Die Zahl N der höchstwerti
gen Bits kann in einem Bereich von 2 Bits bis zu der gesam
ten Zahl von Bits in der Sequenzzahl ausgewählt werden.
Dies führt zu ausgeschlossenen oberen Bereichsbruchteilen
von 1/4, 1/8, 1/16, . . ., (1/2)N.
Pseudozufallssequenzgeneratoren gemäß der vorliegenden Er
findung können rechtsverschiebend oder linksverschiebend
sein, was Sequenzen in umgekehrten Reihenfolgen erzeugt.
Weitere Implementierungen umfassen gekoppelte Rechts- und
Linksverschiebungskonfigurationen. Sowohl Hardware- als
auch Software-Implementierungen sind verfügbar.
Diese Lösung gemäß der vorliegenden Erfindung ist einfach,
noch immer ziemlich zufällig und erzeugt eine eindeutige
und umkehrbare Sequenz. Das System und das Verfahren gemäß
der vorliegenden Erfindung können üblicherweise durch einen
Parallelausgangsbus auf das Testen von Cache-
Speichervorrichtungen angewendet werden, die Adreßbereiche
aufweisen, die keine Potenzen von 2 sind, z. B. eines 12k-
oder eines 0,75M-Cache-Speichers.
Die vorangegangene Erklärung hat die Merkmale und techni
schen Vorteile der vorliegenden Erfindung relativ allgemein
herausgestellt, so daß die folgende detaillierte Beschrei
bung der Erfindung besser verständlich wird. Zusätzliche
Merkmale und Vorteile der Erfindung werden im folgenden be
schrieben und bilden den Gegenstand der Ansprüche der Er
findung. Es sollte für Fachleute offensichtlich sein, daß
das Konzept und das offenbarte spezifische Ausführungsbeispiel
ohne weiteres als eine Basis zum Modifizieren oder
Entwerfen anderer Strukturen zum Ausführen der gleichen
Ziele der vorliegenden Erfindung verwendet werden können.
Es sollte für Fachleute ebenfalls offensichtlich sein, daß
gleichwertige Aufbauten nicht von der Wesensart und dem Be
reich der Erfindung abweichen, die in den beigefügten An
sprüchen dargelegt ist. Die neuartigen Merkmale, von denen
ausgegangen wird, daß sie charakteristisch für die Erfin
dung sind, sowohl bezüglich der Organisation als auch des
Verfahrens der Operation, sowie weitere Ziele und Vorteile
werden aus der folgenden Beschreibung besser verständlich,
wenn dieselbe in Verbindung mit den beigefügten Figuren be
trachtet wird. Es wird jedoch ausdrücklich darauf hingewie
sen, daß alle Figuren lediglich zu Zwecken der Darstellung
und Beschreibung vorgesehen sind und nicht als eine Defini
tion der Grenzen der vorliegenden Erfindung betrachtet wer
den sollten.
Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung
werden nachfolgend Bezug nehmend auf die beiliegenden
Zeichnungen näher erläutert. Es zeigen:
Fig. 1 ein vereinfachtes schematisches Diagramm, das ei
ne Vorrichtung zum Erzeugen einer pseudozufälli
gen Hexadezimalsequenz, die von 0 bis 0x2fff
reicht, gemäß einem Ausführungsbeispiel der vor
liegenden Erfindung darstellt; und
Fig. 2 ein vereinfachtes schematisches Diagramm, das ei
ne Vorrichtung, die eine Linksverschiebung von
Bits anwendet, zum Erzeugen einer pseudozufälli
gen Sequenz wie in Fig. 1 darstellt.
Fig. 1 ist ein vereinfachtes schematisches Diagramm, das
eine Vorrichtung zum Erzeugen einer pseudozufälligen Hexa
dezimalsequenz, die von 0 bis 0x2fff reicht, gemäß einem
Ausführungsbeispiel der vorliegenden Erfindung darstellt.
Der Vorrichtungseingang 20 ist ein Signal, das "Aktualisie
rung" genannt wird. Vorrichtungsausgänge umfassen einen 14-
Bit-Parallelbus 120, auf dem eine pseudozufällige Ausgangs
sequenz 118-0 bis 118-13 erscheint. Alle Elemente 0 bis 13
sind identische Speicherelemente, die jeweils zwei Eingänge
und einen Ausgang aufweisen. Der Eingang an dem linken Rand
jedes Elements ist ein Dateneingang (0 oder 1). Der Eingang
an dem unteren Rand eines Elements ist ein Aktualisierungs
signal. Ein Datenausgang 118-0 bis 118-13 befindet sich an
dem rechten Rand jedes jeweiligen Elementes 0 bis 13. Wenn
das Aktualisierungssignal hoch ist, wird der Wert, der an
dem Dateneingang erscheint, gespeichert. Dieser gespeicher
te Wert erscheint etwas später oder bei einer späteren
Taktflanke an dem Ausgang. In der Praxis können die Spei
cherelemente 0 bis 13 herkömmliche Master-Slave-Latches,
flankengesteuerte Flipflop oder andere Speicherzellen sein.
Die Ausgänge für alle Speicherelemente 0 bis 13 sind der
pseudozufällige Ausgang der Vorrichtung und durch den 14-
Bit-Parallelbus 120 mit dem Adreßtor eines Cache-Speichers
verbunden. Speicherelemente 2 bis 13 in dem rechten Ab
schnitt 14 in Fig. 1 sind als ein herkömmliches 12-Bit-LFSR
konfiguriert. Diese Speicherelemente 2 bis 13 enthalten die
zwölf niederstwertigen Bits jeder Adresse in der pseudozu
fälligen Sequenz. Wenn die rechten zwölf Speicherelemente
das Aktualisierungssignal 20 empfangen, verschieben sich
alle gespeicherten Bits gleichzeitig um eins nach rechts,
wobei ein neuer Binärwert, der durch eine herkömmliche Ex
klusiv-ODER-Rückkopplungsschaltung 17 erzeugt wird, durch
dem Speicherelement 2 eine Verbindung 117 zugeführt wird.
Auf wiederholte Aktualisierungen hin wird eine pseudozufäl
lige Sequenz erzeugt, die sich nicht wiederholt, bis alle
Werte genau einmal besucht wurden, wie in der Technik be
kannt ist. Ein NOR-Gatter 15, das einen Eingang 114 auf
weist, der alle elf Ausgänge 118-2 bis 118-12 von den Spei
cherelementen 2 bis 12 umfaßt, bearbeitet das Alle-Null-
Adreß-Szenario auf eine herkömmliche Art und Weise. Ohne
dasselbe kann das LFSR nie aus einer Alle-Null-Adresse aus
treten und wird dort für immer bleiben.
Bezug nehmend auf den linken Abschnitt 18 von Fig. 1 ent
halten Speicherelemente 0 und 1 die zwei höchstwertigen
Bits jeder Adresse in der pseudozufälligen Sequenz und wei
sen ein spezialisiertes Aktualisierungssignal 119 auf, das
aus dem Aktualisierungssignal 20 besteht, das an dem Gatter
19 mit dem Ausgangssignal 118-2 von dem Speicherelement 2
in dem rechten Abschnitt aus Fig. 1 UND-verknüpft wird. Das
Ausgangssignal von jedem anderen Speicherelement in dem
rechten Abschnitt 14 könnte anstelle des Speicherelementes
2 mit ähnlichen Ergebnissen verwendet werden. Folglich ist
das Speicherelement 2 als ein willkürliches Beispiel ge
zeigt. Dies bewirkt, daß die Elemente 0 und 1 nur aktuali
siert werden, wenn sowohl das Aktualisierungssignal 20 als
auch das Ausgangssignal 118-2 hoch sind. Wenn ein speziali
siertes Aktualisierungssignal 119 auftritt, verschiebt sich
der Binärwert in dem Speicherelement 0 in das Speicherele
ment 1, wobei das Speicherelement 0 einen neuen Binärwert
von einem NOR-Gatter 16 durch die Verbindung 116 empfängt.
Die Eingänge an das NOR-Gatter 16 sind die Ausgänge 118-0
und 118-1 der Speicherelemente 0 bzw. 1. Die Tabelle 1 be
schreibt, wie sich diese Binärlogik verhält.
Die Sequenz 00, 10, 01 wiederholt sich unendlich. Es ist
wichtig, daß der Wert 11 nie auftritt, und daß folglich das
obere Viertel eines Potenz-von-zwei-Adreßbereichs ausge
schlossen wird, wie dies erwünscht war. Der rechte Ab
schnitt 14 durchläuft zyklisch dreimal seinen Satz von nie
derstwertigen Bit-Werten - jedesmal einem unterschiedli
chen, eindeutigen Wert von höchstwertigen Bits von dem
rechten Abschnitt 18 zugeordnet. Diese "Zuordnung" wird
derart verwürfelt, daß die Adreßsequenz noch immer ziemlich
zufällig ist. Anders ausgedrückt erzeugt die Vorrichtung
eine Sequenz von pseudozufälligen Adressen, die jede Adres
se genau einmal umfaßt, bis alle Adressen erzeugt wurden.
Dies ist analog zu dem, was ein LFSR für einen Potenz-von-
zwei-Bereich durchführt. Die Vorrichtung gemäß der vorlie
genden Erfindung liefert die analoge Lösung für einen
Adreßbereich, der keine Potenz von 2 ist.
Die obigen Überlegungen treffen auf die Vorrichtung zu, die
in Fig. 1 gezeigt ist und eine Bit-Verschiebung nach rechts
aufweist. Fig. 2 ist ein vereinfachtes schematisches Dia
gramm, das eine Vorrichtung darstellt, die eine Links-
Verschiebung von Bits zum Erzeugen einer pseudozufälligen
Sequenz wie in Fig. 1 anwendet. Die gezeigten Speicherele
mente sind die gleichen wie entsprechende Speicherelemente
mit identischen Nummern, die in Fig. 1 gezeigt sind, mit
der Ausnahme, daß der Dateneingang an dem rechten Rand je
des Elementes ist und der Ausgang 218-0 bis 218-13 an dem
linken Rand, in bezug auf Fig. 1 also umgekehrt. Analog zu
Fig. 1 sind die Ausgänge durch einen 14-Bit-Parallelbus 220
mit dem Adreßtor eines Cache-Speichers verbunden. Das NOR-
Gatter 15 führt die gleiche Funktion durch wie in Fig. 1,
mit der Ausnahme, daß es als Eingänge 214 alle Ausgänge
118-3 bis 118-13 von den Speicherelementen 3 bis 13 auf
weist. Das NOR-Gatter 16 ist das gleiche wie in Fig. 1, je
doch durch eine Verbindung 216 mit dem Eingang des Elemen
tes 1 anstelle des Elementes 0 verbunden. Das spezialisierte
Aktualisierungssignal 219 für die Elemente 0 und 1 ist
die UND-Verknüpfung an dem Gatter 19 des Aktualisierungssi
gnals 20 und dem Ausgang 218-3 des Elementes 3 anstelle des
Elementes 2. Wie oben beschrieben wurde, wird das Element 3
nur zur Annehmlichkeit der Erklärung ausgewählt, wobei das
Ausgangssignal jedoch von jedem anderen Speicherelement in
dem rechten Abschnitt 210 statt dessen mit ähnlichen Ergeb
nissen verwendet werden könnte. Folglich ist das Speicher
element 2 als ein willkürliches Beispiel gezeigt. Die Bi
närlogiktabelle für den linken Abschnitt aus Fig. 2 ist in
Tabelle 2 gezeigt.
Wie in Tabelle 2 gezeigt ist, führt ein linksverschiebender
Pseudozufallssequenzgenerator gemäß der vorliegenden Erfin
dung die gleiche Funktion wie die Rechtsverschiebungsversi
on durch, die in Fig. 1 gezeigt ist, jedoch in der umge
kehrten Reihenfolge. Eine tatsächlich implementierte Vor
richtung wird durch Zusammenführen der Rechtsverschiebungs
vorrichtung aus Fig. 1 mit der Linksverschiebungsvorrich
tung aus Fig. 2 realisiert. Fachleute können die Lehren der
vorliegenden Erfindung anwenden, um dieses Zusammenführen
zu realisieren, und um die implementierte Vorrichtung neu
zu erzeugen.
Andere Adreßbereiche mit anderen Teilpotenzen von 2 können
durch Anwenden der Prinzipien der vorliegenden Erfindung
realisiert werden. Für Fachleute ist z. B. zu erkennen, daß
der Bereich durch Erhöhen oder Reduzieren der Zahl von
Speicherelementen in dem Niederstwertige-Bits-Abschnitt
(LFSR-Abschnitt) des Registers erhöht oder reduziert werden
kann. Es gibt keine absolute Grenze für den Adreßbereich,
typische Adreßbereiche umfassen üblicherweise jedoch insge
samt zwischen 4 und 64 Bits. Zusätzlich können Fachleute
die Lehren der vorliegenden Erfindung anwenden, um die
Bruchteilverwendung des Adreßbereichs zu erhöhen, indem die
Zahl von Speicherelementen erhöht wird, und indem die Rück
kopplungslogik in dem (spezialisierten) separaten
Höchstwertige-Bits-Abschnitt des Registers auf geeignete
Weise modifiziert wird. Wenn z. B. die Zahl der Höchstwerti
ges-Bit-Speicherzellen von zwei auf drei erhöht wird, kann
ein Bereich von 7/8 einer Potenz von 2 unter Verwendung ei
ner Rechtsverschiebungssequenz von 000, 100, 010, 101, 110,
011, 001 erzeugt werden. Diese Sequenz läßt den unzulässi
gen Wert 111 weg und schließt so das obere 1/8 eines Be
reichs der Potenz von 2 aus. Ähnlich schließt ein speziali
sierter 4-Bit-Register-Abschnitt das obere 1/16 eines Be
reichs einer Potenz von 2 aus.
Die vorliegende Erfindung kann für jede Anwendung verwendet
werden, bei der eine pseudozufällige Sequenz erwünscht ist,
und bei der die Sequenz einen Bruchteil der Werte vermeiden
muß, um z. B. entweder Adressen oder Daten zu erzeugen, bei
denen keine Potenz von 2 implementiert oder erwünscht wird.
Dies kann z. B. auf Vorrichtungen, wie z. B. Speicher, Plat
ten oder Bänder, zutreffen. Zusätzlich können Ausführungs
beispiele dieser Vorrichtung ohne weiteres in Software co
diert sein, um die gleichen Ergebnisse zu erzielen.
Die vorliegende Erfindung kann bei einem Cache-Speicher je
der Größe angewendet werden, der drei Viertel eines Potenz-
von-zwei-Adreßraums verwendet. Sie erzeugt eine pseudozufällige
Sequenz, die eindeutig ist, bis alle Werte genau
einmal auftreten. Die gleiche Sequenz wird in umgekehrter
Reihenfolge erzeugt, wenn die Verschiebungsrichtung umge
kehrt wird. Die vorliegende Pseudozufallssequenzerzeugungs
vorrichtung kann auf das Testen von Cache-
Speichervorrichtungen angewendet werden, die eine Vielzahl
von Größen aufweisen, die keine genauen Potenzen von 2
sind, z. B. auf einen 12k- (0 bis 0x2fff Hexadezimal) oder
einen 0,75M-Cache-Speicher.
Claims (27)
1. Pseudozufallssequenzgenerator mit folgenden Merkmalen:
einem ersten Abschnitt (14), der als ein Linearrück kopplungsschieberegister (LFSR) konfiguriert ist und einen ersten Aktualisierungseingangsanschluß (20) und eine Mehrzahl von sequentiellen ersten Speicherelemen ten (2-13) aufweist, wobei jedes erste Speicherelement einen ersten Ausgangsanschluß aufweist;
einem zweiten Höchstwertige-Bits-Abschnitt (18) (MSB- Abschnitt), der mit dem ersten Abschnitt verbunden ist, wobei der zweite Abschnitt folgende Merkmale um faßt:
ein UND-Gatter (19), bei dem ein Eingangsanschluß mit dem ersten Aktualisierungseingangsanschluß verbunden und ein anderer Eingangsanschluß mit einem ersten Aus gangsanschluß eines der Mehrzahl von ersten Speicher elementen verbunden ist, wobei das UND-Gatter einen Ausgangsanschluß (119) aufweist;
N sequentielle zweite Speicherelemente (0-1), wobei bei jedem zweiten Speicherelement ein zweiter Aktuali sierungseingangsanschluß mit dem Ausgangsanschluß des UND-Gatters verbunden ist, wobei jedes zweite Spei cherelement einen Dateneingangsanschluß und einen Da tenausgangsanschluß aufweist, wobei die sequentiellen zweiten Speicherelemente von einem zweiten Element Null bis zu einem zweiten Element N - 1 sequentiell der art verbunden sind, daß der Datenausgangsanschluß des zweiten Elementes N - 1 mit dem Dateneingangsanschluß des zweiten Elementes Null durch eine Rückkopplungslo gikschaltung verbunden ist,
derart, daß der Datenausgangsanschluß des zweiten Ele mentes Null mit dem Dateneingangsanschluß eines näch sten sequentiellen zweiten Elementes verbunden ist.
einem ersten Abschnitt (14), der als ein Linearrück kopplungsschieberegister (LFSR) konfiguriert ist und einen ersten Aktualisierungseingangsanschluß (20) und eine Mehrzahl von sequentiellen ersten Speicherelemen ten (2-13) aufweist, wobei jedes erste Speicherelement einen ersten Ausgangsanschluß aufweist;
einem zweiten Höchstwertige-Bits-Abschnitt (18) (MSB- Abschnitt), der mit dem ersten Abschnitt verbunden ist, wobei der zweite Abschnitt folgende Merkmale um faßt:
ein UND-Gatter (19), bei dem ein Eingangsanschluß mit dem ersten Aktualisierungseingangsanschluß verbunden und ein anderer Eingangsanschluß mit einem ersten Aus gangsanschluß eines der Mehrzahl von ersten Speicher elementen verbunden ist, wobei das UND-Gatter einen Ausgangsanschluß (119) aufweist;
N sequentielle zweite Speicherelemente (0-1), wobei bei jedem zweiten Speicherelement ein zweiter Aktuali sierungseingangsanschluß mit dem Ausgangsanschluß des UND-Gatters verbunden ist, wobei jedes zweite Spei cherelement einen Dateneingangsanschluß und einen Da tenausgangsanschluß aufweist, wobei die sequentiellen zweiten Speicherelemente von einem zweiten Element Null bis zu einem zweiten Element N - 1 sequentiell der art verbunden sind, daß der Datenausgangsanschluß des zweiten Elementes N - 1 mit dem Dateneingangsanschluß des zweiten Elementes Null durch eine Rückkopplungslo gikschaltung verbunden ist,
derart, daß der Datenausgangsanschluß des zweiten Ele mentes Null mit dem Dateneingangsanschluß eines näch sten sequentiellen zweiten Elementes verbunden ist.
2. Pseudozufallssequenzgenerator gemäß Anspruch 1, bei dem die ersten
Speicherelemente (2-13) und die zweiten Speicherele
mente alle im wesentlichen identisch zueinander sind.
3. Pseudozufallssequenzgenerator gemäß Anspruch 2, bei dem die ersten
Speicherelemente (2-13) und die zweiten Speicherele
mente (0-1) aus der Gruppe ausgewählt sind, die aus
Master-Slave-Latches und flankengesteuerten Flipflop
besteht.
4. Pseudozufallssequenzgenerator gemäß einem der Ansprüche 1 bis 3,
bei dem die ersten Ausgangsanschlüsse der ersten Spei
cherelemente (2-13) und die Datenausgangsanschlüsse
der zweiten Speicherelemente (0-1) alle mit einem Par
allelausgangsbus (120) verbunden sind.
5. Pseudozufallssequenzgenerator gemäß Anspruch 4, bei dem der Paral
lelausgangsbus (120) ein 14 Bit breiter Parallelaus
gangsbus ist.
6. Pseudozufallssequenzgenerator gemäß einem der Ansprüche 1 bis 3,
bei dem die ersten Ausgangsanschlüsse der ersten Spei
cherelemente (2-13) und die Datenausgangsanschlüsse
der zweiten Speicherelemente alle mit einem Adreßtor
eines Cache-Speichers verbunden sind.
7. Pseudozufallssequenzgenerator gemäß einem der Ansprüche 1 bis 6,
bei dem die Mehrzahl von sequentiellen ersten Spei
cherelementen (2-13) aus zwölf ersten Speicherelemen
ten besteht.
8. Pseudozufallssequenzgenerator gemäß einem der Ansprüche 1 bis 7,
bei dem N gleich 2 ist.
9. Pseudozufallssequenzgenerator gemäß Anspruch 8, bei dem die Rück
kopplungslogikschaltung ein NOR-Gatter (16) enthält,
das einen Ausgangsanschluß (116) und mehrere
Eingangsanschlüsse aufweist.
10. Pseudozufallssequenzgenerator gemäß Anspruch 9, bei dem der Aus
gangsanschluß (116) des NOR-Gatters (16) mit dem Da
teneingangsanschluß des zweiten Elementes Null verbun
den ist.
11. Pseudozufallssequenzgenerator gemäß Anspruch 10, bei dem die Daten
ausgangsanschlüsse des zweiten Elementes Null bzw. des
nächsten zweiten Elementes jeweils mit einem separaten
Eingangsanschluß des NOR-Gatters (16) verbunden sind.
12. Pseudozufallssequenzgenerator gemäß einem der Ansprüche 1 bis 11,
bei dem der unterschiedliche Eingangsanschluß des UND-
Gatters (19) mit einem ersten Ausgangsanschluß eines
ersten sequentiellen Speicherelementes in der Mehrzahl
von ersten sequentiellen Speicherelementen verbunden
ist.
13. Pseudozufallssequenzgenerator gemäß einem der Ansprüche 1 bis 11,
bei dem der unterschiedliche Eingangsanschluß des UND-
Gatters (19) mit einem ersten Ausgangsanschluß eines
zweiten sequentiellen Speicherelementes in der Mehr
zahl von ersten sequentiellen Speicherelementen (2-13)
verbunden ist.
14. Verfahren für einen Pseudozufallssequenzgenerator zum
Erzeugen einer pseudozufälligen Sequenz von Zahlen,
die einen vorbestimmten oberen Bruchteil eines Potenz-
von-zwei-Bereichs ausschließt, wobei das Verfahren
folgende Schritte aufweist:
Erzeugen eines Höchstwertige-Bits-Abschnitts jeder Zahl in der Sequenz, die aus N seitlich aufeinander folgenden Binärbits besteht, derart, daß der Wert zu mindest eines derartigen Binärbits gleich 0 ist;
Erzeugen des Höchstwertige-Bits-Abschnitts jeder Zahl in der Sequenz durch unidirektionales Verschieben der Werte des Höchstwertige-Bits-Abschnitts der vorherge henden Zahl in der Sequenz um ein Bit von dem ersten Bit in Richtung des N-ten der N aufeinanderfolgenden Bits und durch gleichzeitiges Empfangen eines neuen Wertes für das erste Bit, wobei der neue Wert anspre chend auf die jeweiligen Werte des Höchstwertige-Bits- Abschnitts der vorhergehenden Zahl in der Sequenz er halten wird;
Erzeugen eines Niederstwertige-Bits-Abschnitts jeder Zahl in der Sequenz unter Verwendung von herkömmlichen Pseudozufallssequenzierungsverfahren; und
Kombinieren des Niederstwertige-Bits-Abschnitts mit dem Höchstwertige-Bits-Abschnitt jeder Zahl in der Se quenz, derart, daß jeder Wert des Niederstwertige- Bits-Abschnitts genau einmal für jeden Wert des Höchtstwertige-Bits-Abschnitts erzeugt wird.
Erzeugen eines Höchstwertige-Bits-Abschnitts jeder Zahl in der Sequenz, die aus N seitlich aufeinander folgenden Binärbits besteht, derart, daß der Wert zu mindest eines derartigen Binärbits gleich 0 ist;
Erzeugen des Höchstwertige-Bits-Abschnitts jeder Zahl in der Sequenz durch unidirektionales Verschieben der Werte des Höchstwertige-Bits-Abschnitts der vorherge henden Zahl in der Sequenz um ein Bit von dem ersten Bit in Richtung des N-ten der N aufeinanderfolgenden Bits und durch gleichzeitiges Empfangen eines neuen Wertes für das erste Bit, wobei der neue Wert anspre chend auf die jeweiligen Werte des Höchstwertige-Bits- Abschnitts der vorhergehenden Zahl in der Sequenz er halten wird;
Erzeugen eines Niederstwertige-Bits-Abschnitts jeder Zahl in der Sequenz unter Verwendung von herkömmlichen Pseudozufallssequenzierungsverfahren; und
Kombinieren des Niederstwertige-Bits-Abschnitts mit dem Höchstwertige-Bits-Abschnitt jeder Zahl in der Se quenz, derart, daß jeder Wert des Niederstwertige- Bits-Abschnitts genau einmal für jeden Wert des Höchtstwertige-Bits-Abschnitts erzeugt wird.
15. Verfahren gemäß Anspruch 14, bei dem das Erzeugen in
Hardware implementiert ist.
16. Verfahren gemäß Anspruch 14, bei dem das Erzeugen in
Software implementiert ist.
17. Verfahren gemäß einem der Ansprüche 14 bis 16, bei dem
das Kombinieren des Niederstwertige-Bits-Abschnitts
mit dem Höchstwertige-Bits-Abschnitt diskontinuierlich
ist, derart, daß die resultierende Sequenz verwürfelt
wird.
18. Verfahren gemäß Anspruch 17, bei dem das Verschieben
stattfindet, wenn sowohl ein externes Aktualisierungs
bit als auch ein vorbestimmtes Bit, das durch den Ni
derstwertige-Bits-Abschnitt erzeugt wird, hoch sind.
19. Verfahren gemäß einem der Ansprüche 14 bis 18, bei dem
das unidirektionale Verschieben in einer Richtung
stattfindet, die aus einer Gruppe ausgewählt wird, die
aus einer ersten Richtung und einer zweiten Richtung
besteht, die entgegengesetzt zu der ersten Richtung
ist.
20. Verfahren gemäß Anspruch 19, bei dem die pseudozufäl
lige Sequenz, die in der zweiten Verschiebungsrichtung
erzeugt wird, in einer umgekehrten Reihenfolge bezüg
lich der pseudozufälligen Sequenz ist, die in der er
sten Verschiebungsrichtung erzeugt wird.
21. Verfahren gemäß Anspruch 20, das ferner ein Kombinie
ren des Erzeugens einer ersten Sequenz von Zahlen in
der ersten Verschiebungsrichtung mit dem Erzeugen ei
ner zweiten Sequenz von Zahlen in der zweiten Richtung
aufweist, um eine kombinierte pseudozufällige Sequenz
von Zahlen zu erzeugen.
22. Verfahren gemäß einem der Ansprüche 14 bis 21, das
ferner ein Anwenden der pseudozufälligen Sequenz auf
ein Adreßtor eines Cache-Speichers aufweist.
23. Verfahren gemäß einem der Ansprüche 14 bis 22, bei dem
die Gesamtzahl von Bits in der pseudozufälligen Se
quenzzahl in einem Bereich von 4 Bits bis 64 Bits
liegt.
24. Verfahren gemäß einem der Ansprüche 14 bis 23, bei dem
der ausgeschlossene vorbestimmte obere Bruchteil eines
Potenz-von-zwei-Bereichs aus der Gruppe ausgewählt
wird, die aus einem Viertel, einem Achtel und einem
Sechzehntel besteht.
25. Verfahren gemäß Anspruch 24, bei dem N gleich 3 ist.
26. Verfahren gemäß Anspruch 24, bei dem N gleich 2 ist.
27. Verfahren gemäß Anspruch 26, bei dem der neue Wert er
halten wird, indem die jeweiligen Werte aller N des
vorhergehenden Höchstwertige-Bits-Abschnitts einer
NOR-Verknüpfung unterzogen werden.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/756,947 US6691142B2 (en) | 2001-01-09 | 2001-01-09 | Pseudo random address generator for 0.75M cache |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10162582A1 DE10162582A1 (de) | 2002-08-01 |
DE10162582C2 true DE10162582C2 (de) | 2003-08-14 |
Family
ID=25045732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10162582A Expired - Fee Related DE10162582C2 (de) | 2001-01-09 | 2001-12-19 | Pseudozufallssequenzgenerator und Verfahren hierfür |
Country Status (2)
Country | Link |
---|---|
US (1) | US6691142B2 (de) |
DE (1) | DE10162582C2 (de) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6865660B2 (en) * | 2002-06-28 | 2005-03-08 | Micron Technology, Inc. | Method and apparatus for generating deterministic, non-repeating, pseudo-random addresses |
US20040024803A1 (en) * | 2002-07-31 | 2004-02-05 | Allen Montijo | Cascaded modified PRBS counters form easily programmed and efficient large counter |
US7668893B2 (en) * | 2005-08-30 | 2010-02-23 | Micron Technology, Inc. | Data generator having linear feedback shift registers for generating data pattern in forward and reverse orders |
US8184034B2 (en) * | 2008-07-21 | 2012-05-22 | Cambridge Silicon Radio Limited | Code sequence generator |
US11586418B2 (en) | 2020-01-17 | 2023-02-21 | Macronix International Co., Ltd. | Random number generator, random number generating circuit, and random number generating method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3639577A1 (de) * | 1986-11-20 | 1988-05-26 | Siemens Ag | Logikbaustein zur erzeugung von ungleich verteilten zufallsmustern fuer integrierte schaltungen |
JPH0486017A (ja) * | 1990-07-30 | 1992-03-18 | Hitachi Shonan Denshi Co Ltd | 疑似ランダム信号発生器 |
GB2345976A (en) * | 1999-01-22 | 2000-07-26 | Sgs Thomson Microelectronics | Linear feedback shift register formed from address latches for testing a memory |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2641921B1 (fr) * | 1988-12-30 | 1991-03-15 | Portenseigne Radiotechnique | Dispositif generateur de sequence pseudo-aleatoire |
US5105376A (en) * | 1990-08-08 | 1992-04-14 | Vlsi Technology, Inc. | Linear feedback shift registers |
US5867409A (en) * | 1995-03-09 | 1999-02-02 | Kabushiki Kaisha Toshiba | Linear feedback shift register |
JP2937919B2 (ja) * | 1997-01-16 | 1999-08-23 | 日本電気アイシーマイコンシステム株式会社 | 疑似乱数発生回路 |
SE512009C2 (sv) * | 1998-05-18 | 2000-01-10 | Ericsson Telefon Ab L M | Linjärt återkopplade skiftregister med låg effekt |
US6430586B1 (en) * | 1999-06-08 | 2002-08-06 | International Business Machines Corporation | Controllable bit stream generator |
-
2001
- 2001-01-09 US US09/756,947 patent/US6691142B2/en not_active Expired - Fee Related
- 2001-12-19 DE DE10162582A patent/DE10162582C2/de not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3639577A1 (de) * | 1986-11-20 | 1988-05-26 | Siemens Ag | Logikbaustein zur erzeugung von ungleich verteilten zufallsmustern fuer integrierte schaltungen |
JPH0486017A (ja) * | 1990-07-30 | 1992-03-18 | Hitachi Shonan Denshi Co Ltd | 疑似ランダム信号発生器 |
GB2345976A (en) * | 1999-01-22 | 2000-07-26 | Sgs Thomson Microelectronics | Linear feedback shift register formed from address latches for testing a memory |
Also Published As
Publication number | Publication date |
---|---|
DE10162582A1 (de) | 2002-08-01 |
US6691142B2 (en) | 2004-02-10 |
US20020129071A1 (en) | 2002-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60116046T2 (de) | Eingebaute Selbsttestschaltung mit einem Schieberegister mit linearer Rückkopplung | |
DE10045568B4 (de) | Ereignisgestütztes Halbleiterprüfsystem | |
DE2346617C3 (de) | Verfahren zur Prüfung der einseitig begrenzten Laufzeitverzögerung einer Funktionseinheit | |
DE4206286C2 (de) | Speicherzugriffssystem und Verfahren zum Ausgeben eines digitalen Datenstromes | |
DE2349324A1 (de) | Verfahren und vorrichtung zum pruefen funktioneller logischer schaltungen | |
DE102006004557A1 (de) | Kryptografische Logikschaltung und Kryptografieverfahren | |
DE2512130A1 (de) | Verfahren zum erzeugen von pseudozufaelligen bitfolgewoertern und eine einrichtung zum durchfuehren dieses verfahrens | |
DE19944911C2 (de) | Wellenformgenerator, Halbleitertestvorrichtung und Halbleitervorrichtung | |
DE19680782C2 (de) | Hochgeschwindigkeits- Mustergenerierungsverfahren und unter Verwendung dieses Verfahrens arbeitender Hochgeschwindigkeits-Mustergenerator | |
DE602004009784T2 (de) | Datenkomprimierung | |
DE3824684A1 (de) | Pseudo-zufalls-rauschcode-generator | |
DE112008001707T5 (de) | Finite-Feld-Operationen verwendender kryptographischer Zufallszahlengenerator | |
DE19951534A1 (de) | Integrierte Halbleiterschaltung | |
DE10162582C2 (de) | Pseudozufallssequenzgenerator und Verfahren hierfür | |
DE3146721C2 (de) | ||
DE3743586C2 (de) | ||
DE19741915A1 (de) | Zwischenspeicheroptimierung in Hardware-Logikemulations-Systemen | |
DE10210264A1 (de) | Ein Testvektorkomprimierungsverfahren | |
DE19701779C2 (de) | Digitalfilter | |
DE19636881A1 (de) | Zeitlagearchitektur für eine Testanlage | |
DE2235802A1 (de) | Verfahren und einrichtung zur pruefung nichtlinearer schaltkreise | |
DE19781563C2 (de) | Mustergenerator | |
DE3819706A1 (de) | Vorrichtung zum erzeugen einer linear auftretenden maximallaengencodefolge | |
DE3422287C2 (de) | ||
DE4233947C2 (de) | Ausgangsschaltung für eine integrierte Halbleiterschaltung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8304 | Grant after examination procedure | ||
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE |
|
8339 | Ceased/non-payment of the annual fee |