DE60215044T2 - Vorrichtung und verfahren zur erzeugung einer kodemaske - Google Patents

Vorrichtung und verfahren zur erzeugung einer kodemaske Download PDF

Info

Publication number
DE60215044T2
DE60215044T2 DE60215044T DE60215044T DE60215044T2 DE 60215044 T2 DE60215044 T2 DE 60215044T2 DE 60215044 T DE60215044 T DE 60215044T DE 60215044 T DE60215044 T DE 60215044T DE 60215044 T2 DE60215044 T2 DE 60215044T2
Authority
DE
Germany
Prior art keywords
mask
bits
bit
output mask
new output
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
DE60215044T
Other languages
English (en)
Other versions
DE60215044D1 (de
Inventor
Timothy Fisher-Jeffes
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.)
MediaTek Inc
Original Assignee
Analog Devices BV
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 Analog Devices BV filed Critical Analog Devices BV
Publication of DE60215044D1 publication Critical patent/DE60215044D1/de
Application granted granted Critical
Publication of DE60215044T2 publication Critical patent/DE60215044T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/10Code generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/0007Code type
    • H04J13/0022PN, e.g. Kronecker
    • H04J13/0025M-sequences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/04Masking or blinding
    • H04L2209/046Masking or blinding of operations, operands or results of the operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Error Detection And Correction (AREA)
  • Complex Calculations (AREA)
  • Logic Circuits (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

  • Die Erfindung betrifft Verfahren und eine Vorrichtung zum Erzeugen von Code. Insbesondere betrifft die Erfindung Verfahren und eine Vorrichtung zum Erzeugen von Ausgabenmasken für Code-Generatoren.
  • In der Telekommunikation sind pn-(Pseudorauschen)Sequenzen, die auch m-Sequenzen (Sequenzen maximaler Länge) üblich, zum Beispiel zur Erstellung von Gold-Sequenzen, die zum Verwürfeln und Entwürfeln (engl.: scramble bzw. descramble) von Signalen verwendet werden.
  • 1 veranschaulicht einen m-Sequenz-Generator 10, welcher das Stammpolynom 1 + x7 + x18 (über die Golay-Feld-Ordnung 2) verwendet. Der Generator 10 umfasst ein 18 elementiges Schieberegister. Die Eingabe für das erste Element 12 des Schieberegisters wird durch Ausführen einer exklusiven-OR Operation mit den Ausgaben des nullten und siebten Elements des Registers bereitgestellt. Die m-Sequenz kann von dem Schieberegister durch Kombinieren der Ausgaben einer Kombination der Schieberegisterelemente in einer exklusiven-OR (XOR)-Operation gelesen werden. Die für die Kombination ausgewählten Elemente können jede vordefinierte Kombination von Elementen sein. In dem Fall von 1 ist die Ausgabe des Schieberegisters einfach die Ausgabe seines nullten Elements (die Kombination von den die Ausgabe bildenden Elementen wird als Ausgabemaske bezeichnet). Alle bestimmten Kombinationen von Elementen können in der XOR-Operation verwendet werden, wobei jede Kombination einem Lesen der m-Sequenz von einem anderen Punkt in ihrem Zyklus entspricht. Jedoch kann es schwierig sein, zu bestimmen, welche Kombinationen die erwünschten Verschiebungen ergeben.
  • EP 0994573 , US 5532695 und US 5228054 beschreiben Systeme, bei welchen Masken auf pn-Generator-Zustände angewendet werden. US 5532695 beschreibt auch ein Verfahren zum Modifizieren einer solchen Maske unter Verwendung von Matrizen.
  • Gemäß einem Aspekt der Erfindung wird ein Verfahren zum Erzeugen einer neuen Ausgabemaske für einen m-Sequenz-Generator bereitgestellt, wobei das Verfahren beinhaltet: Erzeugen einer Zwischenmaske für jedes in einer bestehenden Ausgabemaske gesetztes Bit und Durchführen von Modulo-2-Addition an allen erstellten Zwischenmasken, um die neue Ausgabemaske zu erzeugen, wobei jede Zwischenmaske durch Verschieben eines Verschiebe-Templates um einen Offset, der mit dem Offset des entsprechenden in der bestehenden Ausgabemaske gesetzten Bits übereinstimmt, erzeugt wird.
  • Die Erfindung betrifft auch eine Vorrichtung zum Erzeugen einer neuen Ausgabemaske für einen m-Sequenz-Generator mit Erzeugungsmitteln zum Erzeugen einer Zwischenmaske für jeden Bitsatz in einer bestehenden Ausgabemaske und Kombinationsmitteln zum Durchführen von Modulo-2-Addition an allen erstellten Zwischenmasken, um die neue Ausgabemaske zu erzeugen, wobei die Erzeugungsmittel jede Zwischenmaske durch Verschieben eines Verschiebe-Templates um einen Offset, der mit dem Offset des entsprechenden Satzbits in der bestehenden Ausgabemaske übereinstimmt, erzeugen.
  • Es wird natürlich deutlich, dass nur ein gesetztes Bit in der bestehenden Ausgabemaske sein kann, in welchem Fall die einzige erstellte Zwischenmaske verwendet wird, um die neue Ausgabemaske zu bilden.
  • In einer Ausführungsform weist jede Zwischenmaske einen ausgerichteten Bereich auf, der auf die neue Ausgabemaske ausgerichtet ist, und die neue Ausgabemaske wird durch Modulo-2-Addition aller ausgerichteten Bereiche hergestellt. Wenn eine Zwischenmaske neben ihrem ausgerichteten Bereich einen überschüssigen Bereich mit einem gesetzten Bit oder mehreren gesetzten Bits aufweist, dann werden vorzugsweise das eine gesetzte Bit oder die mehreren gesetzten Bits des überschüssigen Bereichs dazu verwendet, um den Effekt der Zwischenmaske auf die neue Ausgabemaske zu beeinflussen. Das eine gesetzte Bit oder die mehreren gesetzten Bits des überschüssigen Bereichs können verwendet werden, um die neue Ausgabemaske anzupassen, nachdem ihre Zwischenmaske bei der Addition beteiligt war oder gleichzeitig, wenn ihre Zwischenmaske bei der Addition beteiligt ist. Alternativ kann das eine gesetzte Bit oder die mehreren gesetzten Bits des überschüssigen Bereichs verwendet werden, um ihre Zwischenmaske anzupassen, bevor sie bei der Summation beteiligt ist. In einer Ausführungsform wird der Einfluss des einen gesetzten Bits oder der mehreren gesetzten Bits des überschüssigen Bereichs durch die Art einer Rückkopplungsanordnung in dem Generator bestimmt.
  • Die Erfindung wurde vorstehend mittels eines Verfahrens zum Erzeugen einer neuen Ausgabemaske für einen m-Sequenz-Generator beschrieben. Es wird angemerkt, dass die Erfindung sich auch auf Computerprogramme (wie auch immer ausgeführt) zum Durchführen derartiger Verfahren erstreckt.
  • Bestimmte Ausführungsformen der Erfindung werden nun unter Bezugnahme auf die beigefügten Figuren lediglich beispielhaft beschrieben. Es zeigt:
  • 1 ein schematisches Diagramm eines m-Sequenz-Generators;
  • 2 ein erstes Beispiel einer Berechnung einer aktualisierten Ausgabemaske;
  • 3 ein zweites Beispiel einer Berechnung einer aktualisierten Ausgabemaske;
  • 4 ein drittes Beispiel einer Berechnung einer aktualisierten Ausgabemaske; sowie
  • 5 ein schematisches Diagramm eines Logikschaltkreises zum Aktualisieren einer Ausgabemaske.
  • Ein m-Sequenz-Generator kann unter Verwendung von zwei Maskenwörtern beschrieben werden, von denen jedes eine Anzahl von Bits aufweist, welche mit der Anzahl von Elementen in dem Schieberegister, auf welches der m-Sequenz- Generator gestützt ist, übereinstimmt. Tatsächlich weist jedes Element in dem Schieberegister ein entsprechendes Bit in jedem der Maskenwörter auf. Gemäß der gängigen Konvention zur Signifikanz der Bits ist das am weitesten rechts angeordnete Bit in jeder Maske das nullte oder am wenigsten signifikante Bit (Isb) des Maskenwortes und das am weitesten links angeordnete Bit in jedem Maskenwort ist das signifikanteste Bit (msb).
  • Die zwei Maskenwörter sind die Ausgabemaske O und die Rückkopplungsmaske F. Die Ausgabemaske weist gesetzte Bits lediglich bei denjenigen Positionen auf, welche Schiebelementen entsprechen, deren Ausgaben mit einer XOR-Operation verbunden werden, um die Ausgabe des Generators zu erzeugen. Die Rückkopplungsmaske weist gesetzte Bits nur bei denjenigen Positionen auf, die Verschiebeelementen entsprechen, deren Ausgaben mit einer XOR-Operation zum Erzeugen der Eingabe für das erste Element des Verschieberegisters kombiniert werden. Im Fall des in 1 gezeigten Generators:
    O = 000000000000000001
    F = 000000000010000001
  • Wie früher beschrieben, können die zum Ausgangssignal eines m-Sequenz-Generators beitragenden Schiebeelemente variiert werden, um die Ausgabe-m-Sequenz zeitlich zu verschieben. Wenn die Ausgabenmaske Oaktuell ist und eine Zeitverschiebung durchgeführt wird, wird die Ausgangsmaske Oneu und spezifiziert die Elemente, die zur zeitverschobenen m-Sequenz beitragen. Es wird deutlich werden, dass in dem Fall, in dem das Schieberegister n Elemente enthält 2n – 1 mögliche Zeitverschiebungen durchgeführt werden können, das heißt bei irgendeinem gegebenen Oaktuell gibt es 2n – 1 mögliche Oneu, wobei jede einer anderen Zeitverschiebung entspricht.
  • Wenn Oaktuell lediglich sein Isb gesetzt hat (das heißt die m-Sequenz wird einfach von der Ausgabe des letzten Schiebelements genommen), soll sie als OEnde bezeichnet werden. Diese Ausführungsform verwendet die Serie von 2n – 1 möglichen aktualisierten Ausgabemasken, welche durch Zeitverschieben von OEnde her vorgehen können, als einen Satz Verschiebe-Templates bei der Berechnung einer aktualisierten Ausgabenmaske Oneu, was dem Durchführen von irgendeiner zufälligen vorwärtsgerichteten Zeitverschiebung an irgendeiner zufälligen aktuellen Ausgabenmaske Oaktuell entspricht. Um Oneu für eine vorwärtsgerichtete Verschiebung von c Tatzyklen ausgehend von irgendeinem beliebigen Oaktuell zu berechnen, wird ein Verschiebe-Template Sc ausgewählt, welches der aktualisierten Ausgabemaske für das Durchführen einer nach vorne gerichteten Verschiebungen um c Zyklen bei OEnde entspricht.
  • Um zum Beispiel Oneu für eine vorwärtsgerichtete Verschiebung um 6 Zyklen bei irgendeiner beliebigen Oaktuell zu berechnen, ist das ausgewählte Verschiebe-Template S6, welches das Ergebnis des Durchführens einer vorwärtsgerichteten Verschiebung um 6 Zyklen bei OEnde ist. Bei dem in 1 gezeigten n = 18-stufigen Register ergibt dieses Beispiel:
    OEnde = 000000000000000001
    S6 = 000000000001000000
  • Sobald das anzuwendende Verschiebe-Template Sc ausgewählt worden ist, wird es auf Oaktuell appliziert, um eine oder mehrere Zwischenmasken zu erzeugen. Für jedes Bit, welches in Oaktuell gesetzt ist, wird eine Zwischenmaske Ip erzeugt, wobei p den Offset des Bits von dem am wenigsten signifikanten Ende von Oaktuell bezeichnet. Das Verfahren zum Erzeugen einer Zwischenmaske Ip wird nun erörtert.
  • Der erste Schritt beim Erzeugen von Ip besteht darin, Sc um p Bits von seinem am wenigsten signifikanten Ende zu versetzen. Außer wenn c = 0, wird Ip mehr als n Bits enthalten (wobei n die Elementanzahl in dem Verschieberegister des m-Sequenz-Generators ist). Der Bereich Ip, der jenseits seiner n am wenigsten signifikanten Bits liegt, soll als das Überschusswort Ep bezeichnet werden. Wenn Ep keine gesetzten Bits enthält (oder wenn es kein Ep gibt), ist Ip vollständig. Ansonsten müssen die gesetzten Bits in Ep verarbeitet werden, da sie aufgrund der Tatsache, dass sie jenseits der n lsbs von Ip liegen, in dem Kontext einer Oneu mit n Bits bedeutlungslos wären.
  • Für jedes Bit, welches in Ep gesetzt ist, wird eine Rückwickel-Maske Wpq (englisch: wrap-back mask) erzeugt, wobei q den Offset des Bits von dem am wenigsten signifikanten Ende von Ep bezeichnet. Wpq wird durch das Verschieben von F um q Bits von ihrem am wenigsten signifikanten Ende erzeugt. Wenn alle Rückwickel-Masken berechnet worden sind, wird Ep verworfen, womit Ip mit lediglich ihren n lsbs verbleibt. Als nächstes wird bzw. werden die Rückwickel-Maske(n) aufsummiert unter Verwendung von Modulo-2-Addition, wobei die trunkierte Ip eine aktualisierte Ip erzeugt. Wenn die aktualisierte Version von Ip mehr als n Bits enthält, muss ihr überschüssiges Wort Ep abermals zum Aktualisieren von Ip verarbeitet werden und diese Schleife über Ep und Wpq wird wiederholt bis eine aktualisierte Ip erzeugt ist, welche entweder keine Ep aufweist oder welche in ihrem Ep keine gesetzten Bits enthält. Sobald Ep oder das Vorliegen von gesetzten Bits in Ep eliminiert ist, ist Ip fertig gestellt.
  • Sobald alle Ip's berechnet worden sind, werden sie unter Verwendung von Modulo-2-Addition kombiniert, um Oneu zu erzeugen. Manche Beispiele dieses Verfahrens werden nun mit Bezugnahme auf die 2, 3 und 4 aufgeführt. Diese Beispiele beziehen sich auf den in 1 gezeigten Generator (n = 18).
  • In 2 wird eine vorwärts gerichtete Zeitverschiebung von 18 Zyklen bei Oaktuell von 000000000011000001 durchgeführt. S18 ist 000000000010000001. Oaktuell weist Bits auf, die bei Offsets bei p = 0,6 und 7 gesetzt sind, somit wird I0, I6 und I7 durch Verschieben von S18 um die erforderlichen Offsets erzeugt, wie mittels der fettgezeichneten Pfeile in 2 gezeigt. Keine der Zwischenmasken enthalten irgendwelche gesetzten Bits jenseits ihrer 18 lsbs und damit sind keine Rückwickel-Masken erforderlich. Die Zwischenmasken werden einfach mittels Modulo-2-Addition (äquivalent zu einer bitweisen XOR-Operation) zum Erzeugen von Oneu kombiniert. Dies ist beim Ausführen einer XOR-Operation an jeder Spalte der drei Reihen I0, I6, I7 in 2 ersichtlich.
  • In 3 wird eine vorwärtsgerichtete Zeitverschiebung von 18 Zyklen bei einer Oaktuell von 000000100011000001 durchgeführt. Oaktuell weist gesetzte Bits bei Offsets von p = 0, 6, 7 und 11 auf, somit werden I0, I6, I7 und I11 berechnet. I0, I6 und I7 werden wie in dem Beispiel von 2 berechnet. Jedoch beinhaltet die Erzeugung von I11 eine Rückwickel-Maske. Der erste Schritt beim Erzeugen von I11 beinhaltet das Verschieben von S18 um 11 Bits, wie mittels dem fettgezeichneten Pfeil 16 angezeigt. Bei diesem Punkt enthält I11 ein überschüssiges Wort E11 mit einem gesetzten Bit bei einem Offset von q = 0 in dem überschüssigen Wort. Dieses Bit führt daher zu einer Rückwickel-Maske W11,0, welche die um q = 0 Bits nach links versetzte Rückkoppelmaske ist, das heißt W11,0 ist 000000000010000001. Die Rückwickelmaske W11,0 wird dann Modulo-2-addiert mit den n = 18 lsbs von I11 (E11 wurde verworfen), wie mittels dem fettgezeichneten Pfeil 18 gezeigt. Nun enthalten keine der Ip's irgendwelche gesetzten Bits außerhalb ihrer n = 18 lsbs, somit kann Ip Modulo-2-addiert werden, um Oneu zu erzeugen.
  • In 4 wird eine vorwärtsgerichtete Zeitverschiebung von 12 Zyklen bei Oaktuell von 100000000000000000 durchgeführt. Oaktuell enthält nur einen gesetzten Bit bei einem Offset von p = 17 und somit wird nur I17 erzeugt. Wie in 4 gezeigt, ist S12 000001000000000000 und diese wird als der erste Schritt beim Erzeugen von I17 um 17 Bits nach links verschoben (wie mit dem fettgezeichneten Pfeil 20 gezeigt). Bei dieser Stufe ist I17 ein 30-Bit-Wort, bei dem nur ihr msb gesetzt ist. Das überschüssige Wort für I17 ist E17 = 100000000000. Das gesetzte Bit bei einem Offset von q = 11 in E17 ruft die Erzeugung einer Rückwickel-Maske W17,11 durch Applizieren eines Offsets von q = 11 bei der Feedbackmaske F hervor, das heißt W17,11 ist 00000000001000000100000000000. E17 wird dann verworfen und W17,11 wird Modulo-2-addiert mit der n = 18-Bit trunkierten Version von I17, wie mittels dem fettgezeichneten Pfeil 22 angedeutet. Jedoch enthält I17 nun abermals ein gesetztes Bit jenseits seiner 18 lsbs, bei der Bitposition p = 18. Damit weist I17 abermals ein überschüssiges Wort E17 auf, welches mittels der Erzeugung einer oder mehrerer Rückwickel-Masken W17,q verarbeitet werden muss. Nun ist E17 gleich 1 und somit q = 0, was bedeutet, dass die Rückwickel-Maske W17,0 = 000000000010000001 erzeugt wird und diese ist eine unverschobene Versi on von F (da q = 0). E17 wird abermals verworfen und W17,0 wird dann (wie mittels dem gezeichneten Pfeil 24 angezeigt) mit der n = 18-Bit trunkierten Version von I17 Modulo-2-addiert. Die damit erzeugte Version von I17 weist keine gesetzten Bits jenseits ihrer n = 18 lsbs auf und ist somit vollständig. In der Abwesenheit von anderen Ip wird I17 lediglich Oneu.
  • 5 veranschaulicht einen Logikschaltkreis zum Ausführen des Verfahrens dieser Ausführungsform und ist dazu eingerichtet, die m-Sequenz-Ausgabe mittels einem Generator, der auf einen n = 18-Verschieberegister basiert, zeitlich zu verschieben.
  • In 5a ist der m-Sequenz-Generator 26 gezeigt. Ein Netzwerk 28 aus AND- und XOR-Gates wird an den Ausgängen der Elemente des Verschieberegisters im Generator 26 zum Erzeugen der Ausgabe-m-Sequenz an dem Kontenpunkt 29 betrieben. Die AND-Gates des Netzwerks 28 wirken als Selektoren, um festzustellen, ob oder ob nicht die Ausgaben der Verschiebeelemente des Generators 26 bei der XOR-Opteration zum Erzeugen der Ausgabe 29 teilhaben. Im Gegenzug werden die AND-Gates des Netzwerks 29 von einer Reihe an Registern 30 gesteuert, über welche Oakuell gespeichert ist. Zum Beispiel kann, wenn Oaktuell gleich Oende ist, nur das am meisten rechts angeordnete AND-Gate im Netzwerk 28 einen "logisch-hoch"-Bit ausgeben und damit wird nur die Ausgabe des letzten Verschiebeelements des Registers 26 verwendet, um die Ausgabe 29 zu erzeugen. Wenn entschieden wird, Oaktuell auf Oneu zu aktualisieren, wird Oaktuell parallel in die Elemente des Schieberegisters 32 geladen. Das Register 32 wird dann getaktet, um das Signal A zu erzeugen, welches Oneu erzeugt, wie nun mit Bezugnahme auf 5b beschrieben wird.
  • In 5b ist Sc ursprünglich in dem Verschiebregister 34 gespeichert und wenn der Systemtakt fortschreitet, wird Sc entlang dem Verschieberegister 40 verschoben. Die aktualisierte Ausgabemaske Oneu wird in dem Satzspeicherelement 36 gesammelt, von denen jedes in einer Modulo-2-Ansammlungsschleife angeordnet ist. Wenn von den in 5b gezeigten AND-Gates erlaubt, akummulieren die Elemente 36 an sie von dem Register 34 und von dem Register 40 (über das Rückwickel-Netzwerk 38) übergebene Bits. Das Rückwickel-Netzwerk ist eine Anordnung aus XOR-Gates, welches dem Schaltkreis ermöglicht, das korrekte Oneu – Ergebnis zu erzeugen, wenn die Ip überschüssige Worte Ep mit gesetzten Bits enthalten. Alle AND-Gates werden von dem Signal A gesteuert, welches die Folge von im Register 32 gespeicherten Oaktuell-Werten ist. Damit werden nur dann, wenn A auf "logisch-hoch" gesetzt ist, die Speicherelemente 36 aktualisiert.
  • Wenn Oaktuell aus dem Register 32 heraus getaktet worden ist, enthalten die Elemente 36 Oneu, welche dann in die Register 30 geladen werden können, um die Ausgabemaske des Generators 26 zu aktualisieren.
  • Das Verfahren des Berechnens von Oneu kann effizienter gemacht werden, in dem eine Serie von Verschiebe-Templates Sz bereitgestellt wird, die Shifts mit Potenzen mit der Basis 2, das heißt z = 2a, wobei a = 0, 1, 2, 3 .... 17 ist, entsprechen. Eine Verschiebung um einen beliebigen Wert c kann in die relevante Kombination der Glieder des durch Sz definierten Satzes zerlegt werden. Zum Beispiel könnte, um eine Verschiebung um c = 9 Bits durchzuführen S1 (a = 0) appliziert werden, gefolgt von S8 (a = 3). Die Verwendung des Satzes an Templates Sz führt dazu, dass die zum Berechnen von Oneu für eine beliebige Verschiebung c unter Verwendung eines n-elementigen Verschieberegisters verwendete Zeit dann n [log2 c] Taktzyklen wird.
  • Unter Inkaufnahme der Kosten des Replizierens von Teilen der Hardware, kann der Logikschaltkreis von 5 eingerichtet werden, um Oneu in einem einzigen Taktzyklus zu berechnen. Der Schaltkreis könnte dazu eingerichtet werden, alle endgültigen Zwischenmasken Ip zu berechnen und sie in einem einzigen Zyklus zum Erzeugen der neuen Ausgangsmaske Oneu aufzusummieren. Die ausgeführte Berechnung ist anlag zu der im 2, 3 und 4 beispielhaft Dargestellten, bei der die Spaltenaddition aller Ip-Masken zum Erzeugen von Oneu ausgeführt wird. In dieser Ausführungsform würden alle 18 Ip-Masken immer zur Addition vorliegen, selbst wenn manche von ihnen einfache Masken wären, bei denen alle Bits auf 0 eingestellt sind.

Claims (14)

  1. Verfahren zum Erzeugen einer neuen Ausgabemaske für einen m-Sequenz-Generator, wobei das Verfahren durch die Schritte gekennzeichnet ist: Erzeugen einer Zwischenmaske für jedes in einer bestehenden Ausgabemaske gesetztes Bit und Durchführen von Modulo-2-Addition an bzw. mit allen erstellten Zwischenmasken, um die neue Ausgabemaske zu erzeugen, wobei jede Zwischenmaske durch Verschieben eines Verschiebe-Templates um einen Offset, der mit dem Offset des entsprechenden in der bestehenden Ausgabemaske gesetzten Bits übereinstimmt, erzeugt wird.
  2. Verfahren nach Anspruch 1, bei dem jede Zwischenmaske einen ausgerichteten Bereich aufweist, der auf die neue Ausgabemaske ausgerichtet ist, und die neue Ausgabemaske durch Modulo-2-Addition aller ausgerichteten Bereiche erzeugt wird.
  3. Verfahren nach Anspruch 2, bei dem dann, wenn eine Zwischenmaske neben ihrem ausgerichteten Bereich einen überschüssigen Bereich mit einem gesetzten Bit oder mehreren gesetzten Bits aufweist, das eine gesetzte Bit oder die mehreren gesetzten Bits des überschüssigen Bereichs dazu verwendet werden, um den Effekt der Zwischenmaske auf die neue Ausgabemaske zu beeinflussen.
  4. Verfahren nach Anspruch 3, bei dem das eine gesetzte Bit oder die mehreren gesetzten Bits des überschüssigen Bereichs verwendet werden, um die neue Ausgabemaske anzupassen, nachdem ihre Zwischenmaske bei der Addition beteiligt war.
  5. Verfahren nach Anspruch 3, bei dem das eine gesetzte Bit oder die mehreren gesetzten Bits des überschüssigen Bereichs verwendet werden, um die neue Ausgabemaske zur gleichen Zeit anzupassen als ihre Zwischenmaske bei der Addition beteiligt ist.
  6. Verfahren nach Anspruch 3, bei dem das eine gesetzte Bit oder die mehreren gesetzten Bits des überschüssigen Bereichs verwendet werden, um ihre Zwischenmaske anzupassen, bevor sie bei der Summation beteiligt ist.
  7. Verfahren nach einem der Ansprüche 3 bis 6, bei dem der Einfluss des einen gesetzten Bits oder der mehreren gesetzten Bits des überschüssigen Bereichs durch die Art einer Rückkopplungsanordnung in dem Generator bestimmt wird.
  8. Vorrichtung zum Erzeugen einer neuen Ausgabemaske für einen m-Sequenz-Generator, gekennzeichnet durch Erzeugungsmittel zum Erzeugen einer Zwischenmaske für jedes gesetzte Bit in einer bestehenden Ausgabemaske und Kombinationsmittel zum Durchführen von Modulo-2-Addition an bzw. mit allen erstellten Zwischenmasken, um die neue Ausgabemaske zu erzeugen, wobei die Erzeugungsmittel jede Zwischenmaske durch Verschieben eines Verschiebe-Templates um einen Offset, der mit dem Offset des entsprechenden Satzbits in der bestehenden Ausgabemaske übereinstimmt, erzeugen.
  9. Vorrichtung nach Anspruch 8, bei der jede Zwischenmaske einen ausgerichteten Bereich aufweist, der auf die neue Ausgabemaske ausgerichtet ist, und die Kombinationsmittel eingerichtet sind, um die neue Ausgabemaske mittels Modulo-2-Addition aller ausgerichteten Bereiche zu erzeugen.
  10. Vorrichtung nach Anspruch 9, bei der für den Fall, dass eine Zwischenmaske neben ihrem ausgerichteten Bereich einen überschüssigen Bereich mit einem gesetzten Bit oder mehreren gesetzten Bits aufweist, die Kombinationsmittel dazu eingerichtet sind, dieses eine gesetzte Bit oder diese meh reren gesetzten Bits des überschüssigen Bereichs zu verwenden, um den Effekt der Zwischenmaske auf die neue Ausgabemaske zu beeinflussen.
  11. Vorrichtung nach Anspruch 10, bei der die Kombinationsmittel dazu eingerichtet sind, das eine gesetzte Bit oder die mehreren gesetzten Bits des überschüssigen Bereichs zu verwenden, um die neue Ausgabemaske anzupassen, nachdem ihre Zwischenmaske bei der Addition beteiligt war.
  12. Vorrichtung nach Anspruch 10, bei dem die Kombinationsmittel dazu eingerichtet sind, das eine gesetzte Bit oder die mehreren gesetzten Bits des überschüssigen Bereichs zu verwenden, um die neue Ausgabemaske zur gleichen Zeit anzupassen, als ihre Zwischenmaske bei der Addition beteiligt ist.
  13. Vorrichtung nach Anspruch 10, bei der die Kombinationsmittel dazu eingerichtet sind, das eine gesetzte Bit oder die mehreren gesetzten Bits des überschüssigen Bereichs zu verwenden, um ihre Zwischenmaske anzupassen, bevor sie bei der Summation beteiligt ist.
  14. Vorrichtung nach einem der Ansprüche 10 bis 13, bei der die Kombinationsmittel dazu eingerichtet sind, um die neue Ausgabemaske mit dem einen gesetzten Bit oder den mehreren gesetzten Bits des überschüssigen Bereichs auf eine durch die Art einer Rückkopplungsanordnung des Generator bestimmten Weise zu beeinflussen.
DE60215044T 2001-08-22 2002-08-22 Vorrichtung und verfahren zur erzeugung einer kodemaske Expired - Lifetime DE60215044T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB0120434 2001-08-22
GB0120434A GB2379140B (en) 2001-08-22 2001-08-22 Code generation
PCT/GB2002/003873 WO2003019807A1 (en) 2001-08-22 2002-08-22 Apparatus and method for generating a code mask

Publications (2)

Publication Number Publication Date
DE60215044D1 DE60215044D1 (de) 2006-11-09
DE60215044T2 true DE60215044T2 (de) 2007-04-12

Family

ID=9920831

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60215044T Expired - Lifetime DE60215044T2 (de) 2001-08-22 2002-08-22 Vorrichtung und verfahren zur erzeugung einer kodemaske

Country Status (6)

Country Link
US (1) US7053800B2 (de)
EP (1) EP1451940B1 (de)
CN (1) CN1315266C (de)
DE (1) DE60215044T2 (de)
GB (1) GB2379140B (de)
WO (1) WO2003019807A1 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7173900B1 (en) * 2002-06-26 2007-02-06 Nortel Networks Limited Method and apparatus for chip generation of a chip sequence
CN101098162B (zh) * 2006-06-27 2010-08-18 中兴通讯股份有限公司 一种长扰码相位偏移码字生成的方法和装置
CN101110015B (zh) * 2007-08-29 2012-05-23 中国人民解放军国防科学技术大学 基于掩码的数据反转桶形移位方法
CN112083954A (zh) * 2019-06-13 2020-12-15 华夏芯(北京)通用处理器技术有限公司 一种gpu中显式独立掩码寄存器的掩码操作方法
CN115311812B (zh) * 2022-08-16 2024-07-23 国家石油天然气管网集团有限公司 一种基于传感器的报警信息诊断方法和***

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57194621A (en) * 1981-05-26 1982-11-30 Nec Corp Random number generator
JPS6197746A (ja) * 1984-10-15 1986-05-16 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション 乱数発生装置
US5057837A (en) * 1987-04-20 1991-10-15 Digital Equipment Corporation Instruction storage method with a compressed format using a mask word
US5228054A (en) * 1992-04-03 1993-07-13 Qualcomm Incorporated Power-of-two length pseudo-noise sequence generator with fast offset adjustment
KR970002951B1 (ko) * 1994-04-13 1997-03-13 양승택 2^n길이 의사 난수 계열 발생 장치
JPH08181679A (ja) * 1994-12-26 1996-07-12 Nec Corp 疑似乱数雑音発生装置
US5758104A (en) * 1995-06-14 1998-05-26 Unisys Corp. Random delay subsystems
US6038577A (en) * 1998-01-09 2000-03-14 Dspc Israel Ltd. Efficient way to produce a delayed version of a maximum length sequence using a division circuit
US5926070A (en) * 1998-03-04 1999-07-20 Texas Instruments Incorporated Efficient offset mask generator for pseudo-noise sequence generator
JPH11340799A (ja) * 1998-05-28 1999-12-10 Oki Electric Ind Co Ltd M系列発生回路、m系列の発生方法及びpn系列発生回路
US6141374A (en) * 1998-10-14 2000-10-31 Lucent Technologies Inc. Method and apparatus for generating multiple matched-filter PN vectors in a CDMA demodulator
US6282230B1 (en) 1999-09-23 2001-08-28 Texas Instruments Incorporated Block pseudo-noise generating circuit
US6647051B1 (en) * 1999-12-29 2003-11-11 Koninklijke Philips Electronics N.V. Zero delay mask for galois LFSR
KR100688031B1 (ko) * 1999-12-30 2007-02-28 모픽스 테크놀로지 아이엔씨 확산 스펙트럼 어플리케이션을 위한 컨피그가능 코드발생기 시스템
WO2001050239A1 (en) 1999-12-30 2001-07-12 Morphics Technology, Inc. Apparatus and method for calculating and implementing a fibonacci mask for a code generator
US6816876B2 (en) * 2000-01-28 2004-11-09 Infineon Technologies Ag Apparatus and method for modifying an M-sequence with arbitrary phase shift

Also Published As

Publication number Publication date
DE60215044D1 (de) 2006-11-09
GB0120434D0 (en) 2001-10-17
EP1451940A1 (de) 2004-09-01
US7053800B2 (en) 2006-05-30
US20050044120A1 (en) 2005-02-24
GB2379140A (en) 2003-02-26
EP1451940B1 (de) 2006-09-27
WO2003019807A1 (en) 2003-03-06
CN1559109A (zh) 2004-12-29
GB2379140B (en) 2004-11-10
CN1315266C (zh) 2007-05-09

Similar Documents

Publication Publication Date Title
DE3787946T2 (de) Schaltung zum Kombinieren von Funktionen der Generatoren eines zyklischen redundanten Prüfungskodes und von Pseudo-Zufallszahlengeneratoren.
DE19839627B4 (de) Digitaler Signalprozessor
DE69821408T2 (de) Multiplikationsverfahren und -vorrichtung
DE2934971A1 (de) Datenverarbeitungssystem
DE3689377T2 (de) Zufallsfolgengeneratoren.
DE1499722B1 (de) Einrichtung zur modifizierung von informationswoertern
DE3700991A1 (de) Digitaler uebertragsvorgriffsaddierer
DE4309314A1 (de) Feldzusammenstellungseinrichtung zum Vereinigen von Daten
DE2658248A1 (de) Mit hoher geschwindigkeit arbeitendes multiplikationssystem sowie verfahren zur durchfuehrung einer multiplikationsoperation
DE69632655T2 (de) Pipeline-Datenverarbeitungsanordnung zur Durchführung einer Mehrzahl von untereinander datenabhängigen Datenprozessen
DE19524402A1 (de) Programmausführungssteuereinrichtung mit einer Adressierbarkeit entsprechend einer M-reihigen Pseudo-Zufallszahlenfolge
DE60215044T2 (de) Vorrichtung und verfahren zur erzeugung einer kodemaske
DE112008001707T5 (de) Finite-Feld-Operationen verwendender kryptographischer Zufallszahlengenerator
DE69501581T2 (de) Verfahren zum Erzeugen eines Fehlerkorrekturparameters in Verbindung mit der Verwendung von modularen Operationen nach der Montgomery-Methode
DE69219628T2 (de) Pseudo-Zufallsbytegenerator
DE3138698C2 (de)
DE102008033962B4 (de) Verfahren und Prozessor-Einrichtung zum Implementieren einer Charakteristik-2-Multiplikation
DE19741915A1 (de) Zwischenspeicheroptimierung in Hardware-Logikemulations-Systemen
DE3722907A1 (de) Maximallaengen-schieberegister-folgegenerator
DE3003502A1 (de) Datenfehler-korrektursystem
DE69026414T2 (de) Binäres Addiergerät
DE4446988B4 (de) Schneller Testmustergenerator
EP1342153A1 (de) Verfahren und vorrichtung zum erzeugen einer pseudozufallsfolge mittels diskretem logarithmus
DE3909713C2 (de)
DE69400891T2 (de) Einrichtung zur Speicherung von Daten

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: MEDIATEK INC., HSINCHU, TW