DE1574660A1 - Schieberegister hoher Geschwindigkeit - Google Patents

Schieberegister hoher Geschwindigkeit

Info

Publication number
DE1574660A1
DE1574660A1 DE19681574660 DE1574660A DE1574660A1 DE 1574660 A1 DE1574660 A1 DE 1574660A1 DE 19681574660 DE19681574660 DE 19681574660 DE 1574660 A DE1574660 A DE 1574660A DE 1574660 A1 DE1574660 A1 DE 1574660A1
Authority
DE
Germany
Prior art keywords
shift
reorganization
stages
register
stage
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
DE19681574660
Other languages
English (en)
Other versions
DE1574660B2 (de
DE1574660C3 (de
Inventor
Arnold Thomas Frederick
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.)
AT&T Corp
Original Assignee
Western Electric Co 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 Western Electric Co Inc filed Critical Western Electric Co Inc
Publication of DE1574660A1 publication Critical patent/DE1574660A1/de
Publication of DE1574660B2 publication Critical patent/DE1574660B2/de
Application granted granted Critical
Publication of DE1574660C3 publication Critical patent/DE1574660C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/01Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
    • G06F5/017Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising using recirculating storage elements

Description

WESTERN ELECTRIC COMPANY Incorporated T. P. Arnold 1
New York, N. Y. 10007, USA
Schieberegister hoher Geschwindigkeit
Die Erfindung betrifft ein Schieberegister mit einem geschlossenen Kreis von η Stufen^uml eine anfängliche Folge von Datenbits zu speichern, das eine Steueranordnung zur Übertragung von Datenbits zwischen den Stufen enthält. Ein derartiges Schieberegister ist in der US-Patentschrift 3 239 764 von Y. P. Verma und M. G. Smith beschrieben.
Bei der Steueranordnung des bisherigen Schieberegisters liefert eine Vielzahl von wählbaren Wegen von jeder Stufe ein Mittel, um eine Folge von Datenbits über verschiedene Sprungentfernungen zu einer neuen Gruppe von Stufen zu verschieben. Die verschiedenen Sp rung entfernung en entsprechen aufeinanderfolgenden Ausdrücken einer Potenzreihe und ergeben die Beweglichkeit jede gewünschte kurze oder lange Gesamtverschiebung zu erzielen. Die Zeit die zur Durchführung langer Gesamtverschiebungen notwendig 1st, wird dadurch verkürzt, daß Schiebewege für immer höhere Ausdrücke der Potenzreihe hinzugefügt werden.
ORIGINAL JMSPECTEP
Wenn die Anzahl der Stufen η zunimmt, kann die Kompliziertheit der Schiebewege zwischen den Stufen beim bisherigen Schieberegister dadurch Probleme ergeben, daß der Aufbau unhandlich wird. Z. B. sind bei einem Register mit 40 Stufen 6 Wege zwischen den Stufen je Stufe erforderlich, um eine minimale Potenz reihenschiebezeit zu erzielen. Wenn die Anzahl der Stufen η bei noch längeren Schieberegistern zunimmt, wächst ebenfalls die Anzahl der Wege zwischen den Stufen, sie können so zahlreich werden, daß sie die Ausführung in Form von praktischen Schaltungen unmöglich machen.
Das obige Problem wird erfindungsgemäß durch eine Schieberegister-Steuerschaltung gelöst, die Re organisations wege zwischen den Stufen enthält. Diese Reorganisationswege werden zwischen die Stufen des Registers eingefügt, sie werden verwendet, um die Datenfolge in neue Folgen periodisch zu reorganisieren, wobei aufeinanderfolgende neue Folgen Schiebe Spannweiten oder Sprung entfernung en aufweisen , die wie aufeinanderfolgende Ausdrücke einer Potenzreihe zunehmen.
Um jede gewünschte Gesamtverschiebung durchzuführen, werden ausgewählte Bitfolgen über herkömmliche Schiebewege verschoben, die wegen der reorganisierten Bitfolgen eine effektive Verschiebung hervorbringen, die gleich der zu dieser Zeit vorhandenen
Schiebe Spannweite ist. Die Datenbits werden zu einer vorbestimmten Anzahl von Folgen reorganisiert, derart, daß die Bits irgendeine Gesamt Schiebeoperation in der Reihenfolge ihrer Anfangsfolge beenden, ohne Rücksicht darauf, wie oft sie verschoben werden. Am Ende irgendeiner Gesamtschiebeoperation bleiben sämtliche Bits in Positionen, die gegenüber ihren ursprünglichen Positionen um eine Anzahl von Registerpositionen verschoben sind, die der gewünschten Gesamtverschiebung entspricht. Wenn derartige Reorganisationswege verwendet werden, sind nur zwei oder drei Wege zwischen den Stufen je Stufe erforderlich, um schnelle Gesamtverschiebungen durch Schieberegister vorzunehmen, die langer als 40 Stufen sind.
Nachfolgend wird die Erfindung anhand der beigefügten Zeichnungen beschrieben, es zeigen:
Fig. 1 ein Blockschema eines Ausführungsbeispiels der Erfindung,
Fig. 2 ein Blockschema eines weiteren Ausführungsbeispiels der Erfindung,
Fig. 3 A und 8B Schemen einer binären Stufe und einer Gatteranordnung, die in verschiedenen Ausführungen der Erfindung benutzt werden,
Fig. 4 und 5 in der in Fig. 6 dargelegten Weise an-
einandergelegt ein Blockschema einer weiteren Ausführung der Erfindung, und
109820/ 1 S77
■Fig. 7 und 8 Diagramme {Zeitdiagramme) für die Ausführungen der Erfindung.
Bei den Ausführungsbeispielen der Erfindung reorganisieren Kontrollschaltungen Datenbits einer anfänglichen Folge zu aufeinanderfolgenden neuen Folgen, die jeweils von Haus aus eine VerschiebungsSpannweite zu der anfänglichen Folge aufweisen. Die Datenbits werden periodisch von Folge zu Folge während der Zeitelemente oder Intervalle reorganisiert, die zwischen andere Intervalle eingefügt sind, während derer eine Reihe von Schiebeimpulsen angelegt wird. Die aufeinanderfolgenden Folgen haben jeweils eine Verschiebungs Spannweite, die jeweils einen der aufeinanderfolgenden Ausdrücke einer Potenzreihe darstellt. Weitere Steuerschaltungen erzeugen die Verschiebungsimpulsreihen, welche die Datenbits, die in ausgewählten Folgen angeordnet sind, nur verschieben wenn es erforderlich ist, um die gewünschte Gesamtverschiebung vorzunehmen. Nach Beendigung einer vorbestimmten Anzahl von Reorganisations- und Schiebeoperationen sind die Datenbits in der Reihenfolge ihrer anfänglichen Folge angeordnet, d och ist jedes Bit um die Anzahl von Registerpositionen verschoben, die der gewünschten Gesamtverschiebung entspricht.
109820/1577
Eingehende Erläuterung
%). Schieberegister mit η Stufen
In Fig. 1 ist ein Aus führungsbeispiel der Erfindung dargestellt. Bei dieser Ausführung sind verschiedene Stufen 402, 404, 406, 407, 408 und 409 in einem geschlossenen Kreis mit Hilfe einer Verkopplungsschaltung 520 in einer Steueranordnung 521 angeordnet. Die Verkopplungs schaltung 520 verkoppelt die Stufen 402, 404, 406, 407, 408 und 409 so, daß die gespeicherte Datenfolge periodisch in neue Folgen reorganisiert wird und daß die Daten in vorbestimmten Folgen dieser Datenfolgen verschoben werden. Die Verkopplungs schaltung 520 enthält eine Gruppe von Reorganisationswegen 522, die auf periodische Reorganisationsimpulse einer ReorganisationsimpuäsTquelle 40 ansprechen um Datenbits zwischen den Stufen zu übertragen und hierdurch die neuen Datenfolgen herzustellen. Die Verkopplungs schaltung 520 enthält ferner eine Gruppe von Verschiebungswegen 526, die auf Verschiebeimpulsreihen einer Verschiebeimpulsquelle 60 ansprechen, um jedes gespeicherte Bit auf eine benachbarte Stufe in dem geschlossenen Kreis zu übertragen. Bits die nur in ausgewählten Folgen der verschiedenen Folgen angeordnet sind, werden über Verschiebungswege übertragen, um eine gewünschte Gesamtverschiebung zu erzielen.
109820/1577
Eine gemeinsame Steuerschaltung 39 legt die Reorganisationsimpulse der Reorganisationsimpulsquelle 40 und die Schiebeimpulse der Schiebeimpulsquelle 60 in getrennten Zeitintervallen fest. In allen Fällen steuert die gemeinsame Steuerschaltung 39 die Schieb eimpulsquelle 60 unmittelbar. Wie durch die gestrichelten Linien angegeben ist, steuert die gemeinsame Steuerschaltung 39 bei einigen Ausführungen die Reorganisationsimpulsquelle 40 unmittelbar, während bei anderen Ausführungen die gemeinsame Steuerschaltung 39 die Reorganisationsimpulsquelle 40 mit Hilfe der Schieb eimpulsquelle 60 mitteäbar steuert.
Bei allen Ausführungen legt ein Zeitgeber 42 die Zeitsignale unmittelbar an die gemeinsame Steuerschaltung 39 und an die Schiebeimpulsquelle 60 an um ihre Arbeitsweise zu koordinieren. Die Zeitsignale werden ferner bei einigen Ausführungen an die Reorganisations impuls wuelle 40 angelegt, um ihre Arbeitsweise zu koordinieren wieyfe/ es durch eine gestrichelte Linie vom Zeitgeber 42 zur Reorganisationsimpulsquelle 40 angegeben ist.
Die Folge von binären Daten ist in ihrer anfänglichen Reihenfolge in den Stufen 402, 404, 406, 407, 408 und 409 gespeichert. Diese Stufen sind sämtlich gleich, sie können geeignete bistabile Kreise bisheriger Art sein. Ein derartiger bistabiler Kreis ist gezwungen, den einen oder den anderen seiner beiden stabilen
Zustände anzunehmen, um binären Signalen zu entsprechen, die an die Eingangs klemmen angelegt werden. Diese Stufen enthalten ferner Ausgangskreise, die eine Doppelschienenanzeige des Zustande der Stufe zu jedßr Zeit liefern. Nachdem die Daten anfangs in den Stufen gespeichert sind, werden sie über die Reorganisationswege 522 periodisch reorganisiert und über die "Verschiebewege 526 intermittierend verschoben, um eine gewünschte Gesamtverschiebung im Register zu erzielen. Nach Beendigung einer vorbestimmten Anzahl von Reorganisationsoperationen, die später eingehender beschrieben werden, werden die Daten in einer endgültigen Folge vom Register abgelesen, wobei diese Folge die gleiche Bitreihenfolge wie die anfängliche Folge hat. Die Bits in der endgültigen Folge sind sämtlich gegenüber ihrer anfänglichen Position um die Anzahl der Positionen der gewünschten Gesamtverschiebung verschoben.
2) Schieberegister mit η Stufen - Ein Re organisations weg und ein "Verschiebungsweg je Stufe
In Fig. 2 ist eine erste Ausführung eines Schieberegisters 20 hoher Geschwindigkeit dargestellt, das die Informationsbits in vorbestimmten Folgen reorganisiert um lange Gesamtverschiebungsoperationen zu beschleunigen. Das Schieberegister 20 enthält eine Reihenanordnung von η Registerstufen, die in einem
10Q820/1S77
fortlaufendem Ring oder in einem Kreis angeordnet sind. Die η Stufen sind als Beispiel in Form der Stufen 402, 404, 406, 407, 408 und 409 dargestellt, die jeweils ein anderes Bit einer anfänglichen Datenfolge während der Intervalle einer Gesamtverschiebeoperation speichern. In der Zeichnung sind einige der Stufen durch gestrichelte Linien verbunden um anzudeuten, daß weitere Stufen einzufügen sind, wenn die gestrichelten Linien auftreten. Wenn auch in Fig. 2 nur sechs Stufen des Registers 20 zur Erläuterung der Erfindung dargestellt sind, kann doch die Erfindung mit größerem Nutzen bei Registern verwendet werden, die wesentlich mehr als sechs Stufen aufweisen.
Die einzelnen Stufen 402, 404, 406, 407, 408 und 409 sind bistabile Sp eicher einrichtung en, die unter dem Einfluß von Eingangssignalen mit zwei Pegeln, wiche Bits binärer Daten darstellen, einen von zwei stabilen Zuständen annehmen müssen. Eine Art einer derartigen Stufe ist ein bistabiler Multivibrator kreis, wie der in Fig. 3A dargestellte Kreis 30. Im Kreis 30 befinden sich die vier npn Transistoren 32, 33, 34 und 35, die so überkreuz gekoppelt sind, daß sie komplementäre Ausgangssignale mit hohem und niedrigem Pegel am "!."-Ausgang 37 und "θ"-Ausgang 38 liefern, und zwar je nach dem Leitungszustand der Transistoren. Der "!"-Ausgang 37 ist mit der Emitterelektrode
109820/1577
des Transistors 35 verbunden, während der "O"-Ausgang 38 mit der Emitterelektrode des Transistors 33 verbunden ist. Wenn der Transistor 32 leitet, sind die Transistoren 33 und gesperrt, so daß am n0"-Ausgang 38 ein niedriger Pegel entsteht, wobei der Transistor 35 leitet, so daß am 11I11 -Ausgang 37 ein hoher Pegel entsteht. Wenn der Transistor 32 gesperrt ist, leiten die Transistoren 33 und 34, so daß am "0n-Ausgang 38 ein hoher Pegel entsteht, wobei der Transistor 35 gesperrt ist, so daß am "l"-Ausgang 37 ein niedriger Pegel entsteht. Wenn immer der "l"-Ausgang 37 einen hohen Pegel mit positivem Potential aufweist, hat der "θ"-Ausgang 38 einen niedrigen Pegel mit positivem Potential, wobei angenommen wird, daß Schaltung 30 eine binäre Ziffer 11I11 speichert. Wenn umgekehrt der "l"-Ausgang 37 einen Pegel mit niedrigem Potential hat, besitzt der "(^'-Ausgang 38 einen Pegel mit hohem Potential, wobei angenommen wird, daß die Schaltung 30 eine binäre Ziffer 11O" speichert.
Ein Einstelleiter S und ein Rückstelleiter R werden verwendet, um den Kreis 30 zur Speicherung einer binären Ziffer 11I" oder "O11 unter dem Einfluß von Eingangssignalen zu veranlassen, die eine binäre Ziffer oder ein Bit einer anfänglichen Datenfolge darstellen. Am Einstelleiter S und dem Rückstelleiter R werden jeweils komplementäre Signale, die ein Bit darstellen, angelegt, um einen anfänglichen Leitungszustand herzustellen. -
109820/1577
Nachdem ein anfängliches Datenbit in jeder Stufe mit Hilfe des Einstelleiters S und des Rückstelleiters R jeder Stufe gespeichert ist, werden in Fig. 2 die Datenbits von der einen Stufe über Verkopplungsschaltungen unter dem Einfluß von an das Register angelegten ÜbertragungsSignalen während der Übertragungsintervall e oder Zeitgeberzyklen zu einer anderen Stufe übertragen. Diese Übedtragungs signale werden durch zwei Impulsquellen erzeugt* die als Reorganisationsimpulsquelle 40 und als Schiebeimpulsquelle 60 bezeichnet sind. Die Reorganisationsimpulsquelle 40 und die Schiebeimpulsquelle 60 sprechen auf Signale von einer gemeinsamen Steuerschaltung 39 und eines Zeitgebers 42 an. Die Schiebeimpulsquelle 60 spricht ferner auf «SEüilese-Gattersignale einer Einlese-Gatterquelle 45 an.
In Fig. 7 sind der Ausgang 25 des Zeitgebers 42 und der Ausgang 26 der Einlesegatterquelle 45 für die Ausführung der Fig. 2 in einem Zeitdiagramm dargestellt.
Eine erste Art von Übertragungssignal wird in Form von Reorganisations impuls en erzeugt, die von der Reorganisationsimpulsquelle 40 geliefert werden, die die Reorganisationsimpulse über eine Sammelleitung 41 gleichzeitig an die Reorganisationsgatter 422, 424, 426, 427, 428 und 429 anlegt, die jeweils mit einem Eingang mit einer getrennten Registerstufe rerbunden sind.
109820/1177
Wenn auch in der Gruppe der Reorganisationswege 522 der Fig. 2 nur sechs Reorganisationsgatter dargestellt sind, so ist doch selbstverständlich ein und nur ein Reorganisationsgatter mit dem Eingang jeder Stufe des Schieberegisters 20 verbunden. Daher sind entlang der Sammelleitung 41 gestrichelte Linien angebracht, um weitere Verbindungen zwischen der Sammelleitung und den Reorganisationsgattern für nichtdargestellte Registerstufen anzudeuten.
Jedes der Reorganisationsgatter 422, 424, 426, 427, 428 und sowie weitere nichtdargestelle Reorganisationsgatter ist ein Gatterkreis, der eine einzelne Stufe dazu veranlaßt, unter dem Einfluß des gleichzeitigen Anlegens von binären Eingangs Signalen und eines Reorganisationsimpulses den einen oder den anderen seiner zwei stabilen Zustände anzunehmen. Eine Art von Reorganisationsgatter, z.B. das Ga tterjfir/ 428 in Fig. 2, ist ein Steuerkreis 50, wie er in Fig. 3B dargestellt ist. Der Steuerkreis 50 enthält die Doppelschieneneingangsleiter Xl und XO, die jeweils mit dem nl"-Ausgang und dem n0"-Ausgang irgendeiner Stufe im Schieberegister 20 verbunden sind. Ein Verfahren zur Bestimmung der Stufe, mit dem die Leiter Xl und XO verbunden sind, wird später beschrieben. Vorerst sei bemerkt, daß eine einfache Linie 434 in Fig. 2 eine Doppelschienenverbindung zwischen den "1"- und 11O"-Ausgängen der Stufe 404 und den Leitern Xl und XO des Gatters 428 darstellt.
109820/1577
In Fig. 3B ist der Leiter Xl über einen Widerstand 52 und einen Kondensator 53 in Reihenschaltung mit einer Zeitklemme TX verbunden, die so bezeichnet ist, damit sie den Leiter Xl und XO entspricht. In Fig. 2 ist die Sammelleitung 41 mit den Klemmen TX jedes der Reorganisationsgatter einschließlich des Gatters 428 verbunden. In Fig. 3B verbindet eine Diode 55 eine Klemme Al mit dem Verbindungspunkt zwischen dem Widerstand 52 und dem Kondensator 53 derart, daß die Kathode der Diode 55 mitdem Verbindungspunkt verbunden ist. Der Leiter XO ist über einen Widerstand 56 und einen Kondensator 57 in Reihenschaltung mit der Zeitklemme TX verbunden. Eine Diode 58 verbindet eine Klemme A2 mit dem Verbindungspunkt zwischen dem Widerstand 56 und dem Kondensator 57 derart, daß die Kathode der Diode 58 mit diesem Verbindungspunkt verbunden ist. Die Klemmen Al und A2 der Fig. 3B sindtjewetls mit den in gleicher Weise bezeichneten Klemmen Al und A2 des Kreis 30 in Fig. 3A verbunden, wenn die Kreise der Fig. 3A und 3B zusammen in einem Schieberegister, z. B. dem Schieberegister 20 der Fig. 2, verwendet werden sollen.
In Fig. 3A sind die Klemmen Al und A2 jeweils mit den Basis- . elektroden der Transistoren 32 und 34 verbunden, um Eingangssignale von den Leitern Xl und XO anzulegen, damit der Leitungszustand des Kreises 30 weiter gesteuert wird, nachdem die anfäng-
109820/1877
lichen Eingangssignale vom Einstelleiter S und Rückstelleiter R entfernt sind. Wenn ein Reorganisationsimpuls über die Sammelleitung 41 der Fig. 2 an die Klemmen Tx in Fig. 2 und damit auch drr Fig. 38 angelegt wird, während ,komplementäre Doppelschienensignale an die Leiter Xl und XB angelegt werden, veranlaßt die Schaltung 50 die Schaltung 30 der Fig. 3A, den einen oder den anderen ihrer stabilen Leitungszustände anzunehmen.
Als Beispiel sei angenommen, daß vor dem Anlegen eines Reorganisationsimpulses an die Klemme TX an den Leiter Xl ein Signal mit hohem Pegel und an den Leiter XO ein Signal mit niedrigem Pegel angelegt ist. Ferner sei angenommen, daß die Transistoren 32 und 35 gesperrt sind, während die Transistoren 33 und 34 leiten, so daß die Klemme Al über einen Widerstand im Emitterkreis des gesperrten Transistors 35 mit Erde verbunden ist, während die Klemme A2 über den Basis-Emitterübergang des leitenden Transistors 34 mit Erde verbunden ist. Dann wird die Kathode der Diode 58 auf einem hiedrigen Potential nahe Erde gehalten, · das durch ein Potential an der Klemme A2 und dem niedrigen Pegel auf dem Leiter XO bestimmt ist. Die Kathode der Diode 55 wird auf einem Pegel mit hohem Potential gehalten, weil der hohe Pegel auf dem Leiter Xl über den Widerstand 52 angeschlossen ist. Die Diode 55 ist daher in Sperrichtung vorgespannt und gesperrt, weil an der Klemme Al ein vergleichsweise niedrig geres Potential als auf dem Leiter Xl liegt.
109820/1577
Die Reorganisationsimpulsquelle 40 erzeugt positive Pegel und Pegel mit dem Potential Null, die durch Übergänge in positiver und negativer Richtung getrennt sind, wobei die Planke in negativer Richtung benutzt wird, um die Reorganisationsoperationen einzuleiten. Tn Fig. 7 ist der Ausgang 46 der Reorganisationsimpulsquelle 40 dargestellt. Wenn auch sowohl Impulsflanken in positiver als auch in negativer Richtung der Quelle 40 über die Kondensatoren 53 lind 57 der Fig. 3B mit den Kathoden der Dioden 55 und 58 gekoppelt sind, so sind doch nur die Flanken in negativer Richtung in der Lage, den Leitungszustand der Schaltung 30 zu beeinflussen. Wenn die Flanke jedes Reorganisationsimpulses in negativer Richtung über die Kondensatoren 53 und 57 mit den Kathoden der Dioden gekoppelt wird, wird das Kathodenpotential der Diode 58 an die vom Leiter XO ein geringes Signal angelegt ist, auf einen negativen Wert gezwungen, so daß sie so vorgespannt wird, daß die leitet. So werden die Klemme A2 un d die Basis des Transistors 34 auf ein Potential gebracht, das negativer als das Bzugspotential ist, wobei der Transistor 34 gesperrt wird. Da die Schaltung 30 so angeordnet ist, daß entweder die Transistoren 32 und 35 oder die Trauisistoren 33 und 34 leiten, leiten die Transistoren 32 und 35, wobei angenommen ist, daß die Schaltung 30 eine binäre Ziffer "1" speichert.
109820/1577
Umgekehrt wird die Schaltung 30 gezwungen eine binäre "θ" zu speichern, wenn eine Flanke eines Reorganisatfonsimpulses in negativer Richtung an die Klemme TX angelegt wird, während an den Leiter XO ein hoher Pegel und an den Leiter Xl ein niedriger Pegel angelegt wird.
In Fig. 2 sind die Stufen 402, 404 und 406 jeweils voneinander durch irgendeine konstante Anzahl von Stufen getrennt, um eine Übertragungsoperation im Register 20 darzustellen, wenn ein Reorganisationsimpuls auftritt. Die konstante Anzahl von Stufen, welche die Stufe 402 von der Stufe 404 und die Stufe von der der Stufe 406 trennen, bestimmt, wieviele Positionen diese Stufen gegeneinander verschoben werden. Die Anzahl von Positionen, um die die Stufe 404 gegen die Stufe 402 und die Stufe 404 gegen die Stufe 406 verschoben ist, wird nachfolgend als Reorganisationskonstante Q bezeichnet, die irgend einen ganzzahligen Wert "haben kann, wobei η und Q keinen gemeinsamen ganzzahligen Divisor außer 1 aufweisen»
Ein vorher erwähntes Bild für das Verbinden der Stufen mit den Reorganisationsgattern kann dadurch verwirklicht werden, daß der Ausgang einer ersten Stufe, z. B. der Stufe 404, mit dem Eingang des Reorganisationsgatters 428 verbunden wird, das zum Eingang der Stufe 408 gehört. Danach wird der φφ^(φΙAusgang einer zweiten Stufe 406 mit dem Eingang des Reorganisationsgatters
109820/1577
verbunden, das zum Eingang der Stufe 409 gehört. Die Stufe 406 ist in eine Position verschoben, die gegenüber der ersten Stufe 404 um eine Anzahl von Positionen verschoben ist, die gleich der Reorganisationskonstanten Q ist. Stufen 408 nnd 409 befinden sich in benachbarten Positionen in der Reihenanordnung der Registerstufen. Diesem Bild ist zu folgen, bis der Ausgang jeder Stufe mit dem Eingang eines der Reorganisationsgatters verbunden ist. So wird der Ausgang jeder Stufe mit dem Eingang eines getrennten Reorganisationsgatters verbunden und der Eingang jedes Reorganisationsgatters mit dem Ausgang einer getrennten Stufe.
Eine Reorganisations-Operation kann nunmehr erklärt werden wenn angenommen wird, daß sämtliche Reorganisationswege angeschlossen sind, daß jedes der Reorganisationsgatter mit seiner zugehörigen Stufe verbunden ist, daß in allen Stufen Daten gespeichert sind und daß ein Reorganisationsweg über die Sammelleitung 41 an die Klemmen TX angelegt ist. Da man es mit einer Reorganisationsoperation zu tun hat, wird die Aufmerksamkeit auf die in den Stufen 402, 404 und 406 gespeicherten Daten konzentriert und der Rest zeitweise außer acht gelassen. Nunmehr wird ein erstes Bit, das gerade vor dem Reorganisationsimpuls in der Stufe 402 gespeichert ist, mit Hilfe der Leitung 436 und des Gatters 427 zur Stufe 407 übertragen, ferner wird
109820/U77
Yl
ein'zweites Bit einer gerade vor dem Reorganisationsimpuls in der Stufe 404 gespeichert ist, mit Hilfe der Leitung 434 und dem Gatter 428 zur Stufe 408 übertragen, schließlich wird ein
drittes Bit, daß gerade vor dem Reorganisationsimpuls in der Stufe 406 gespeichert ist, mit Hilfe des Gatters 429 zur Stufe 409 übertragen. In gleicher Weise wird jedes Bit, das während eines Intervalls gerade vor dem Reorganisationsimpuls im Register 20 gespeichert ist, zwischen den Stufen übertragen, um eine neue Datenfolge für die Dauer des nächsten Intervalls ("^t- 1) herzustellen. In der neuen Folge ist wiederum jedes Bit in einer Stufe für die Dauer des Intervalls (0-1) gespeichert. Während des Intervalls (T+ 1) speichern benachbarte Stufen Bits, die vorher während des Intervalls t?in Stufen gespeichert waren, die gegeneinander um eine Anzahl von Registerpositionen verschoben sind, die gleich der Reorganisationskonstante Q ist. Selbstverständlich werden Bits, die gerade vor dem Reorganisationsimpuls in der rechten Stufe gespeichert sind, im Ring so übertragen, daß sie von links wieder eingeführt werden.
Durch die Schiebeimpulsquelle 60 wird eine zweite Art von Übert ragung s signal en in Schiebeimpulsreihen erzeugt, wobei die Quelle die Schiebeimpulse über eine Sammelleitung 59 in Fi1Ig. 2 gleichzeitig an die Schiebegatter 462, 464, 466, 467, 468 und anlegt, die jeweils zu einem Eingang einer getrennten FlegLsterstufe
109820/1577
MT
gehören. Wenn auch in der Gruppe der Schiebewege 526 der Fig. 2 nur sechs Schiebegatter dargestellt sind, so gehört doch selbstverständlich zu einem Eingang j eäer Stufe des Schieberegisters 20 ein und nur ein Schiebegatter. Deshalb erstrecken sich von der Sammelleitung 59 gestrichelte Linien, um weitere Verbindungen zwischen der Sammelleitung 59 und Schiebegatter für nicht dargestellte Registerstufen anzudeuten.
Jedes der Schiebegatter 462, 464, 466, 467, 468 und 469 sowie weitere nicht dargestellte Schiebegatter ist ein Gatterkreis der eine einzelne Stufe des Registers 20 dazu veranlaßt, unter dem Einfluß des gleichzeitigen Anlegens von binären Eingangssignalen und eines Schiebeimpulses den einen oder den anderen ihrer zwei stabilen Zustände anzunehmen. Eine Art von Schiebegatter, z.B. das Gatter 468 in Fig. 2, ist ein Steuerkreis 50" der Fig. 3B. Der Steuerkreis 50" ist ein Duplikat des Steuerkreises 50. Die Bezeichnung mit " wird verwendet, um den Kreis 50" vom Kreis zu unterscheiden. Wenn der Kreis 50" in ein Register eingeschaltet ist, wie es in Fig. 2 dargestellt ist, sind die Doppelschieneneingangsleiter Zl und ZO des Kreises 50" jeweils mit dem "!"-Ausgang und dem "θ"-Ausgang einer benachbarten Stufe verbunden. Ein Verfahren zur Bestimmung der Stufe, mit dom die Leiter Zl und ZO verbunden sind, wird später beschrieben. Vorerst S6Ü bemerkt, daß eine einfache Linie 472 in I1'ig. Ii eine
109820/15*77 aAD original
Doppelschienenverbindung zwischen den "l"- und "θ"-Ausgängen der Stufe 407 und den Leitern Zl und ZO des Gatters 468 darstellt.
In Fig. 3B ist eine Zeitklemme TZ so bezeichnet, damit sie den Leitern Zl und ZO entspricht. In Fig. 2 ist die Sammelleitung 59 mit der Klemme TZ jedes der Schiebegatter einschließlich des Gatters 468 verbunden. Wie vorher erwähnt, sind in Fig. 3B die Klemmen Al uniä A2 jeweils mit den in gleicher Weise bezeichneten Klemmen Al und A2 des Kreises 30 in Fig. 3A verbunden, so daß die Kreise 50, 50" und 30 in Fig. 2 als Reorganisations gatter 428,als Schiebegatter 468 und als Registerstufe 408 verwendet werden. In gleicher Weise gehört ein Schiebegatter und ein Reogganisationsgatter zu jeder Stufe des Registers 20. Das Gaiter 50, das ebenfalls ein Duplikat des Kreises 50 ist, wird bei der Ausführung der Fig. 2 nicht benutzt.
In Fig. 7 ist der Ausgang 47 der Schiebeimpulsquelle 60 dargestellt. Ein Schiebeimpuls, der über die Sammelleitung 59 an die Klemmen TZ gleichzeitig mit den über die Leitung 471 angelegten komplementären Doppelschienensignalen angelegt wird, bringt das Schiebegatter 468 in einen Zustand, der die Stufe 408 veranlaßt, den einen oder den anderen ihrer stabilen Zustände anzunehmen. Dies ist dem Anlegen von komplemen-
109820/1677
tären Signalen über die Leiter Zl und ZO der Pig. 3B analog, um die Schaltung 30 der Fig. 3A zu veranlassen, den einen oder den anderen ihrer stabilen Zustände in einer Schiebeoperation anzunehmen, die in gleicher Weise wie eine Reorganisationsoperation arbeitet. Der einzige Unterschied besteht darin, daß Schiebeimpulse an die Zeitklemmen TZ und nicht Reorganisationsimpulse wie sie den Zeitklemmen Tx zugeführt werden, angelegt werden. Jeder Schiebeimpuls ist jedoch ein Übergang in negativer Richtung zwischen Signalen mit hörern und niedrigem Pegel, ähnlich dem Reorganisationsimpuls.
Es sei angenommen, daß die Kreise 50 und 50" der Fig. 3B im Register 20 der Fig. 2 für jedes Reorganisationsgatter und jedes Schiebegatter benutzt werden, und daß die Schaltung 30 der Fig. 3A für jede Stufe des Registers 20 benutzt wird. Jedes Paar von Reorganisation- und Schiebegattera im Register 20 weist Klemmen Al und A2 auf, wie sie für die Kreise 50 und 50" der Fig. 3B dargestellt sind. Beide Klemmen Al und A2 jedes Paars von Reorganisations- und Schiebegattern sind jeweils mit den Klemmen Al und-A2 der zugehörigen Stufe verbunden, die in der in Fig. 3A gezeigten Weise aufgebaut ist. In Fig. 2 sind die Verbindungen des Reorganisationsgatter 428 und des Schiebegatters 468 über die Klemmen Al und A2 mit der Stufe 408 sche matisch als Linien 74 dargestellt. Die Leiter Xl und XO des
109820/1677
Reorganisationsgatters 428 sind schematisch als einfache Linie 34 dargestellt. Die Leiter Zl und ZO zum Schiebegatter 468 sind ebenfalls schematisch als einfache Linie 481 dargestellt. Ingleicher Weise sind die Leiter Xl und XO zu jedem Reorgani sationsgatter und die Leiter Zl und ZO zu jedem Schiebegatter als einfache Linien im Schieberegister 20 dargestellt.
In Fig. 2 sind die Stufen 407, 408 und 409 aufeinanderfolgende oder benachbarte Stufen des Registers 2O1 die nur durch die Schiebegatter 468 und 469 getrennt sind, um Übertragungsoperationen darzustellen, die unter dem Einfluß jedes Schiebeimpulses auftreten. In Verfolgung eines vorher erwähnten Bildes zur Verbindung der Schiebegatter sei bemerkt, daß der Ausgang der Stufe 407 mit dem Eingang des Schiebegatters 468 verbunden ist, daß zum Eingang zur Stufe 408 gehört, die der Stufe 407 benachbart ist, und daß der Ausgang der Stufe 408 mit dem Eingang des Schiebegatters 469 verbunden ist, das zum Eingang der Stufe 409 gehört, die der Stufe 408 benachbart ist. In gleicher Weise ist der Ausgang jeder Stufe mit dem Eingang des Schiebegatters zu verbinden, das zum Eingang der rechts benachbarten Stufe gehört, oder in der Vorwärtsrichtung der Verschiebung.
Eine Schiebeoperation kann nunmehr erklärt werden, wenn angenommen wird, daß sämtliche Schiebewege angeschlossen sind, daß ein Bit in jeder der Stufen gespeichert ist und daß ein Schiebe-
109820/1677
impuls über die Sammelleitung 59 angelegt wird. Da man es mit einer Schiebeoperation zu tun hat, soll die Aufmerksamkeit auf die Bits konzentriert werden, die in den Stufen 407 und 408 gespeichert sind und der Rest zeitweilig außer acht gelassen werden.. Das gerade vor dem Schiebeimpuls in der Stufe 407 gespeicherte Bit wird mit Hilfe des Schiebegatters 468 zur Stufe 408 übertragen, während das Bit, das gerade vor dem Schiebeimpuls in der Stufe 408 gespeichert ist, mit Hilfe des Schiebegatters 469 zur Stufe 409 übertragen wird. In gleicher Weise wird jedes Bit um eine Stufe nach rechts oder in Vorwärtsrichtung unter dem Einfluß des über die Sammelleitung 59 angelegten Schiebeimpulses übertragen. Selbstverständlich wird das Bit, das gerade vor dem Schiebeimpuls in der Stufe am weitesten rechts grspeichert ist, auf dem Ring zur Stufe am weitesten links übertragen.
Die maximale Zeit der Übertragungsintervalle oder Zeitgeberzyklen, die erforderlich ist, um eine gesamte Schiebeoperation im Register 20 zu beenden, kann dahingehend bestimmt, werden, daß sie gleich (Q) (l+(logQn)) Intervallen oder Zeitgeberzyklen ist, in dem die Anzahl der Übertragungsintervalle betrachtet wird, die für die Schiebeübertragungen erforderlich ist, die bei jeder neuen Datenfolgen durchgeführt werden, zusammen mit der Anzahl der Datenfolgen, die für jede gesamte Schiebeoperation
109820/1577
notwendig ist. Eine gesamte Schiebeoperation ist die Neuanordnung einer anfänglichen Datenfolge, um eine vorbestimmte Anzahl von Positionen entfernt von ihrer anfänglichen Position im Register. Eine gesamte Schiebeoperation umfaßt ein Intervall für jede Übertragungsoperation. Sie b eginnt mit dem Eintritt einer anfänglichen Datenfolge und setzt sich über alle Operationen fort, die erforderlich sind, um die vorbestimmte gesamte Anzahl von Registerpositionen zu verschieben. Das Register 20 erfordert Q Übertragungsintervalle während des Vorhandenseins jeder Datenfolge, weil (Q-I) Übertragungsintervalle erforderlich sind, um die in jeder Folge angeordneten Bits zu verschieben, wobei ein Üb ertragung s int ervall erforderlich ist, um die Daten in jeder Folge zu reorganisieren. Während einer gesamten Verschiebeoperation fordert das Register 20 (l+(log Ji)) Datenfolgen, um alle möglichen Gesamtverschiebungsoperationen durchzuführen. Der Ausdruck (log„n) gleicht numerisch der größten ganzen Zahl, die kleiner als der Wert von log_n ist.
Da (l+(log„n)) Datenfolgen erforderlich sind, um eine gesamte Verschiebungsoperation durchzuführen und da Q Übertragungsintervalle für jede Folge erforderlich sind, sind (Q)(l+(log_n)) Übertragungsintervalle oder Zeitgeberzyklen während jeder gesamten Verschiebeoperation notwendig, um die längstmögliche Verschiebung durchzuführen, wenn immer sie auftreten soll.
109820/1577
Wenn man sich nun ins Gedächtnis zurückruft, daß jede Reorganisationsoperation nicht mehr tut als eine heue Folge im Register herzustellen, kann man annehmen, daß der Eintritt von Daten in das Register 20, d.h. die Einleseoperation, eine Übertragungs operation ist, welche die anfängliche Folge von Daten im Register speichert. Bei dieser Betrachtungsweise treten die Intervalle für die Übertragungsoperationen in folgender Reihenfolge auf: Intervall für die anfängliche Folge, Schiebeintervall (oder Intervalle), Reorganisationsintervall, Schiebeintervall (oder Intervalle), Reorganisationsintervall, Schiebeintervall (oder InteEvalle) in einer Anzahl von Intervallen oder Zeitgeberzyklen aufgetreten ist, die gleich (Q)(I+ (log~n)) ist.
Als Ergebnis des Eintritts der anfänglichen Folge und des Durchführens jeder Reorganisationsoperation in den eben erwähnten Übertragungen wird eine Schiebespannweite K, die gleich irgendeiner Potenz der Reorganisationskonstante Q ist, im Register hergestellt, so daß ein an das Register während der bezeichneten Intervalle angelegter Schiebeimpuls bewirkt, daß jedes Bit der Daten sich über zahlreiche Positionen der anfänglichen Folge als die vorhandene Schiebespannweite K in einen Schiebeintervall oder Zeitgeberzyklus -^erschiebt. Wenn die Daten in der anfänglichen Folge gespeichert sind, ist eine Schiebespannweite K=Q =1 zwischen den benachbart gespeicherten Bits vorhanden. Für jeden
109820/1577
Schiebeimpuls der auftritt, während die Schiebespannweite K = Q vorhanden ist, wird jedes Bit effektiv um Q =1, oder um eine Position in der anfänglichen Folge verschoben. Nach einem ersten Reorganisationsimpuls ist eine Verschiebespannweite K = Q = Q zwischen benachbart gespeicherten Bits vorhanden. Für jeden Verschiebeimpuls der auftriit, während die Verschiebespannweite K = Q vorhanden ist, wird jedes Bit effektiv um Q = Q Positionen in der anfänglichen Folge vErschoben. Ein weiterer Reorganisationsimpuls erzeugt eine Ver-
Schiebespannweite K = Q = Q · Q zwischen benachbart gespeicherten Bits. Für jeden Schiebeimpuls der auftritt, während die
2
Verschiebespannweite K = Q vorhanden ist, wird jedes Bit
effektiv um Q = Q · Q Positionen in der anfänglichen Folge verschoben. Die Verschiebespannweite K nimmt in einer Potenzreihe von Q infolge jeder nachfolgenden Reorganisationsübertragung zu, bis (Q)(l+(lognn)) Intervalle oder Zeitgeberzyklen verstrichen sind, wobei angegeben wird, daß eine ausreichende Zeit verstrichen ist, um die längstmögliche Verschiebung im Register zu beenden. Daher können die Daten im Register abgelesen werden, das Register kann freigemacht werden, und es kann eine weitere neue Datenfolge in das Register eintreten, um eine weitere gesamte Schiebeoperation zu beginnen.
109820/1577
15746ÜÜ
Die Tabelle I ist eingefügt, um Schiebeimpuls reih en für eine Reihe von gewünschten gesamten Schiebeübertragungen für ein Schieberegister zu zeigen, ähnlich dem Register 20 der Fig. 2, die jedoch^-peziell so angeordnet sind, daß sieje^ine Reorganisationskonstante Q = 2 haben. Die Reorganisationskonstante Q = 2 wird dadurch erhalten, daß die Reorganisationsgatter und die Zellen wie vorher beschrieben miteinander Verbunden werden.
Tabelle I
N ist eine ungerade Zahl, Q = 2
Gewünschte Gesamtverschiebung
0001 0011 0101 Olli 1001 Inter- Schiebe- 0000 0010 9100 0110 1000 vall spann- 0123456789
weite K
Einlesen t? ' 111 Ί 111111
Anfangsfolge X2
Reorganisation tf
Folge Nr. 2 £
Reorganisation C
Folge Nr. 3 t
Q0= 1 0 1 0 1 0 1 0 1 0 1
1 1 1 1 1 1 1 1 1 1
2 0 0 1 1 0 0 1 1 0 0
1 1 1 1 1 1 1 H-* T-H T-H
Q2= 4 0 0 0 0 1 1 1 1 0 0
1 1 1 1 1 1 1 1 1 1
O3 = • 8 0 0 0 0 0 0 0 0 1 1
Reorganisation Ύ. Folge Nr. 4 "^8
In der Tabelle I gibt die linke Spalte eine Operation oder eine wichtige Beziehung an, die während der Reihe von Zeitgeberzyklen oder Intervallen auftritt, welche in der zweiten Spalte dargestellt
103820/1577
sind. Die dritte Spalte gibt an, daß die Verschiebungsspannweite K gleich der Reorganisationskonstanten Q erhoben in irgendeine^ Potenz ist, während aufeinanderfolgende Bitfolgen während der Intervalle zur Verschiebung, z.B. der Intervalle TT0* V'Λ> £> und ν vorhanden sind. Jede Schiebespannweite K gibt die
D O
Anzahl der Positionen an, um die die Datenbits effektiv in der anfänglichen Folge verschoben sind, wenn ein Schiebeimpuls während des Vorhandenseins der jeweiligen Folge angelegt wird. Die Spaltenreihen unter der Überschrift "gewünschte Gesamtverschiebung" geben vor allem an, daß eine Einleseoperation während des Intervalls vT stattfindet, um jede Gesamtverschiebeoperation zu beginnen. Die anfängliche Bitfolge wird in die Stufen des Registers 20 in Fig. 2 parallel über die Einstelleiter S und die Rückstelleiter R unter dem Einfluß des Einleseimpulses eingelesen. Zweitens geben die Spalten an, ob ein Reorganisationsimpuls oder ein Schiebeitnpuls während jedes nachfolgenden Intervalls angelegt wird. Die binären Zahlen (Basis 2) und die dezimalen Zahlen (Basis 10) stehen über jeder Spalte um die Anzahl von Positionen anzugeben, um die die Datenbits bei der gesamten Verschiebung zu verschieben sind. Z. B. ist eine Gesamtverschiebung von 5 eine fünfstufige Verschiebung in den η Stufen des Schieberegisters 20 (wobei η größer als 5 ist).
109820/1577
Ih den Spalten unter "gewünschte GesamtverSchiebung" zeigen die Einlesereihe und die Reorganisations reihen eine "l" für jede mögliche gewünschte Ges amtver Schiebung. Hierdurch wird die Tatsache dargestellt, daß eine Einleseoperation und eine Reorganisation sop er ation stets während der angegebenen Intervalle auftritt. Die Schiebeimpulse treten in Reihen auf, die von der Anzahl von Positionen in der anfänglichen Folge abgeleitet sind, um die die Bits während der gesamten Verschiebeoperation verschoben werden sollen. In dieser Spalte ist eine Reihe von Schiebeimpulsen vorhanden. Die Schiebeimpulsreüien sind von den Positionsangaben der binären Zahlen abgeleitet, die sich über jeder Spalte befinden. Ein Schiebeimpuls wird angelegt, wenn in der binären Zahl eine "1" auftritt, er wird weggelassen, wenn in der binären Zahl eine "θ" auftritt. So hat man z. B. bei einer Gesamtverschiebung von 5 Positionen eine binäre Zahl 0101, wobei man findet, wenn man die binäre Zahl von rechts nach links betrachtet, daß Schiebeimpulse während der Intervalle *2T und ^ „ angelegt werden, wenn Schiebe-
et D
0 2
Spannweiten K = Q = 1 und K = Q =4 vorhanden sind, weil in den entsprechenden Positionen der binären Zahl "Einsen" auftreten. Die Schiebeimpulse werden während der Intervalle O" und ^ weggelassen, wenn die Schiebespannweiten K = Q - 2 und
3
K = Q =8 vorhanden sind, weil in den entsprechenden Positionen der binären Zahl "Nullen" auftreten. Durch Betrachten der Tabelle I kann bestimmt werden, daß die Reihe von Schiebeimpulsen für jede
109820/1577
gewünschte Gesamtverschiebung direkt in Beziehung zur gewünschten Gesamtverschiebung steht, ausgedrückt in Positions angab en der binären Zahlen.
Die Tabelle I ist eine allgemeine Tabelle, die in der Breite und Tiefe so erweitert werden kann, daß sie größere Gesamtverschiebungen umfaßt. Die B reite und Tiefe der Tabelle I hängt von der Anzahl der Stufen η in einem bestimmten Register ab, für das sie vorbereitet ist. Die Tabelle I muß groß genug sein, um eine gesamte Verschiebung von (n-1) Positionen zu umfassen, und tief genug, um ein Intervall zu umfassen, während dessen die Vers chiebungs spann-weite K=Q og^n' beträgt. Die Tabelle kann unterhalb der untersten ffieihe abgeschnitten werden, die mit Folge bezeichnet ist, wobei wenigstens ein Schiebeimpuls für eine gewünschte Gesamtverschiebung angelegt werden soll.
Es sei ein hypothetisches Schieberegister mit 215 Stufen betrachtet, die für eine Reorganisationskonstante Q = 2 angeordnet sind, und die eine anfängliche Folge von Daten speichern, welche um 93 Positionen verschoben werden sollen. Es ist ein Intervall L·.. erforderlich, um diese Daten in das Register zu schieben. Die betreffende Spalte "gewünschte Gesamtverschiebung" einer erweiterten Tabelle I zeigt eine binäre Zahl 01011101 für die gewünschte Gesamtverschiebung von 93. Wenn man die binäre Zahl von rechts
1 09820/1S77
nach links nimmt, erhält man eine Schiebeimpulsreihe mit einem Schiebeimpuls der Schiebeimpulsquelle 60 während jedes der Intervalle C', *Ce* "Cqj ** 10 vm.d"C a die aber keine Schiebeimpulse der Schieb eimpulsquelle 60 während der Intervalle U., C19 und C1 η aufweist. Während jedes ded Intervalle
γ t t 13ί L15 wird ein Reorganisationsimpuls der Reorganisationsimpulsquelle 40 angelegt. Die gesamte Schiebeoperation von 93 Stufei- in dem Register mit 21)5 Stufen erfordert nur 16 Intervalle. Ih der Tat kann jede gewünschte Gesamtverschiebung in den 215 Stufen in den 16 Intervallen durchgeführt werden.
Sobald das letzte Schiebeintertoall in einer Gesamtverschiebungsoperation entsprechend der Tabelle I verstrichen ist, können die Daten im Schieberegister sortiert und parallel über die Ausgangsleiter der Stufen ausgelesen werden. Wenn auch die Bits periodisch zu neuen Folgen reorganisiert sind, so daß zu erwarten ist, daß sie nu nmehr durcheinandergebracht sind, sind die Reaktionsoperationen doch so gleichförmig, daß man tatsächlich genau kennt, wo irgend ein bestimmtes Bit anfänglichen Folge nach (Q)(l+(log-.n)) Operationen zu finden ist.
Wenn man ein Bit durch eine Gesamtverschiebungsoperation verkann
folgt, ififij. es am einfachsten gefunden werden, in dem man eine
109820/1577
gewünschte Gesamtverschiebung von null Positionen betrachtet. Die Daten werden eingelesen und Reorganisationsimpulse zyklisch angelegt, jedoch werden kein e V erschiebungsimpulse während der gesamten Verschiebeoperation angelegt. Da während der gesamten Verschiebeoperation keine Schiebeimpulse angelegt werden, ist am Ende dieser Operation zu erwarten, daß die Daten in der anfänglichen Folge und in ihrer ursprünglichen Position angeordnet sind. Während der gesamten Schiebeoperation kann jedes Bit leicht durch die neuen Folgen verfolgt werden, die sich durch die Reorganisationsübertragungen ergeben, bis die letzte Folge auftritt. Die Daten in dieser letzten Folge werden in den Stufen Ji gespeichert, so daß die Ausgangsleiter der Stufen nur so angeordnet zu werden brauchen, daß die Bits in ihren ursprünglichen Positionen in der anfänglichen Folge liegen. Wenn somit (^)(l+(log n)) Intervalle bei irgendeiner Gesamtvers chiebeoperation aufgetreten sind, befinden sich die Daten in den Ausgangsleigärn in der richtigen Position und brauchen nur von den Ausgangsleitern abgenommen zu werden, um die Sortierung durchzuführen.
Nachdem die Aiisgangsleiter fiir ein spezielles Register auf diese Weise angeordnet sind, sollen sie in der aggeordneten Weise üeiben. Für andere gewünschte Gesamtverschiebungsoperationen von 1 bis n-1 Positionen werden die Bits über dieselben Atisgangsleiter
10982QM577
in der anfänglichen Folge sortiert, jedoch wird die Datenfolge um eine Anzahl von Registerpositionen verschoben, die gleich der gewünschten Gesamtverschiebung ohne weitere Sortierungslogik ist.
Die Tabelle II ist eingefügt, um eine Folge von Übertragungen für ein Schieberegister zu zeigen, das gleich dem Register der Fig. 2 ist, das jedoch so angeordnet ist, daß es eine Reorganisationskonstante Q = 3 hat. Die Reorganisationskonstante Q = 3 erhält man, in dem man die Reorganisationsgatter und die Stufen in der vorher beschriebenen Weise schaltet. Die Ausgänge der Stufen, die sich im Register drei Positionen voneinander entfernt befinden, sind jeweils mit den Eingängen von Reorganisationsgattern verbunden, die zu benachbarten Stufen gehören. Wenn z. B. in Fig. 2 die Reorganisationskonstante Q = 3 ist, befinden sich zwei Stufen zwischen den Stufen 402 und 404, während die Stufen 407 und benachbart sind. Der Ausgang jeder Stufe ist ferner mit dem Eingang des Schiebegatters verbunden, das zur benachbarten Stufe gehört.
Tabelle II
Einlesen Anfängliche Folge Anfängliche Folge %. Reorganisation Folge Nr. 2 Folge Nr. 2 R e ο rganis ation Folge Nr. 3
8 Schiebe-
Spann
weite K
Gewünschte 0
oa
1
002
L
2
010
3
Gesamtvers chiebung 012
5
02[
6
021
7
022
8
100
9
Inter
vall
OC
0
1 1 1 011
4
1 1 1 1 1
Q°-l 1 1 1 0 1 1 0 1 1 0
2 Q°=l 0 0 1 0 1 1 0 0 1 0
^3 0 1 1 1 0 1 1 1 1 1
*4 Q1= 3 1 0 0 1 1 1 1 1 1 0
Q1 = 3 0 0 0 0 1 0 1 1 1 0
χ 0 1 1 1 0 1 1 1 1 1
Q2=. 9 1 0 0 0 1 0 0 0 0 1
0 0
In der Tabelle II gibt die linke Spalte eine Operation oder eine wichtige Beziehung an, die während der Reihe von Zeitgeberzyklen oder Intervallen vorhanden ist, die in der zweiten Spalte unter der Überschrift "Intervall" dargestellt ist. Die Spalte unter der Überschrift "Schiebespannweite" gibt an, daß die Schiebe Spannweite K gleich der Reorganisationskonstanten Q ist, in irgend eine Potenz erhoben, während jede Bitfolge während der Intervalle X^, X^, tC# *C*_ undt_ vorhanden ist. Jede Schiebe-Spannweite K gibt die Anzahl von Positionen an, um die die Datenbits effektiv in der anfänglichen Folge verschoben sind, wenn ein Schiebeimpuls während des Vorhandenseins der bestimmten Folge angelegt wird.
1098^0/1577
Die Reihe vom Spalten unter der Überschrift " Gewünschte Gesamtverschiebung11 geben an, daß eine Einleseoperation während des Intervalls TI auftritt, die jede Gesamtversehiebeoperation in Gang setzt. Die Datenbits werden in das Register in der oben erwähnten Weise eingelesen. Die Spalten geben ferner an, daß Reorganisationsimpulse der Reorganisationsimpuls quelle 40 periodisch an das Register 20 während jeder Gesamtverschiebeoperation angelegt werden, Dezimalzahlen (Basis 10) und ternäre Zahlen (Basis 3) stehen über jeder Spalte, um jeweils die Anzahl von Positionenanzugeben, um digs die Datenbits verschoben werden sollen, ferner das Auftreten von Schiebeimpulsen in der Schiebeimpulsreihe, die erforderlich sind, um jede gewünschte GesamtverSchiebung durchzuführen.
Die Schiebeimpulsreihen werden durch das Auftreten eines Schiebeimpulses oder einer "l" oder das Nichtauftreten eines Schiebeimpulses oder einer "θ" während ausgewählter Intervalle für irgendeine gewünschte Gesamtverschiebung dargestellt. In der Tabelle Π werden (Q-I) =3-1-2 Intervalle für mögliche Schiebeübertragungen während des Vorhandenseins jeder Folge \>*erwendet»
Die Reihe von Schiebeimpulsen in jeder Spalte steht direkt zu der ternären Zahl (Basis 3) in Beziehung, welche die jeweulige gewünschte Gesamteverschiebung darstellt« Wenn eine "0" in der
109820/1577
rechten Poslion der ternären Zahl auftritt, gibt es keinen Schiebeimpuls der Schieb eimpulsquelle 60 während der Intervalle X. und'Lh. Wenn in der rechten Position der ternären ZahJ eine "l" auftritt, gibt es einen Schiebeimpuls der Scbiebeimpulsquelle 60 während des Intervalls T*, jedoch keinen Schiebeimpuls während des Intervalls £ . Wenn eine "2" in der rechten Position der ternären Zahl auftritt, gibt es zwei Schiebeimpulse angelegt von der Schieb eimpulsquelle 60 und zwar einen während jedes der IntervalleX"* und*C . Eine ähnliche Untersuchung der zweiten Position der ternären Zahl zeigt, ob 0, 1 oder 2 Schiebeimpulse während der Intervalle C und *£ _ auftreten.
D D
So hat man z. B, bei einer gesamten Verschiebung von fünf Positionen eine ternäre Zahl 012, wobei man bei Betrachtung der ternären Zahl von rechts nach links findet, daß Schiebeimpulse während der beiden Intervalle TT und T* angelegt werden, wenn die Schiebespannweite K=Q =1 vorhande η ist, und während
o* 1
des Intervalls \ _, wenn die Schiebespannweite K=Q =3 vorhanden ist. Während des Vorhandenseins der Schiebespannweite K=Q =3 im Intervall*C1 tritt kein anderer Sehiebeimpiüs &ufe
ebenso nicht während des "\5rhandenseins der Schiebespannweite K=Q = 9 im Intervall X. _.
Die Tabelle EE ist allgemein und kann der Breite und. Tiefe nach so erweitert werden, daß größere Gesamtverschiebungen umfaßt. Die Tabelle II muß breit genug sein, um eine gesamte Verschiebung von n-I Positionen zu umfassen* ferner muß sie tief genug sein, um ein Intervall zu. umfassen,, während: dessen, die Schiebespannweite K = Q Q ist.
Es sei nunmehr ein hypotetisch.es Schieberegister mit 415 Stufen betrachtet, die für eine Reorganisationskonstante Q = 3 eingerichtet sind und die eine anfängliche Folge von Daten speichern, die um 96 Positionen verschoben werden sollen. Es war ein Internal] *£*.. erforderlich, um diese anfängliche Datenfolge in das Register ivi schieben. Die entsprechende Spalte "Gewünschte Gtisamtverf-chjcliuiig" einer erweiterten Tabelle II zeigt eine ternäre Zahl 010120 für die gewünschte Gesanitverschiebung von 96. WciTii n^i die/gV#^#j4f<//##/νψ^^#£& WV ternäre ZaW von rechts nach links nimmt, erhält man eine Schiebeimpulsreihe mit einem Schiebeimpuls der Schiebeimpulsquelle 60 während jedes der Intervalle % und *£*„, wenn die
D D
Verschiebespannweite K = Q =3 vorhanden ist. Ferner tritt ein Verschiebungsimpuls während jedes der Intervalle ύ und
2 "C1 . auf, wenn die entsprechenden Schiebespannweiten K = Q =9
und K = Q =81 vorhanden sind. Es treten keine Schiebeimpulse während des Vorhandenseins der Schiebe Spannweiten
10982Ö/167? bad original
0 3 5
= Q = 0, K = Q = 27, und K=Q = 243 während der jeweiligen
Intervalle Vn und L o, TT, Λ und f ., _ und Λ*-, r, und auf.
<ä ο 11 LZ Ii Io
Ferner sind keine Schiebeimpulse während der Intervalle C
und *vl vorhanden.
15
Die gesamte Schiebeoperation von 96 Stufen erfordert nur 18 Intervalle. In der Tat kann jede gewünschte Gesamtverschiebung in den 415 Stufen innerhalb der 18 Intervalle durchgeführt werden.
Sobald das letzte Schiebeintervall in einer Gesamtverschiebeoperation nach Tabelle II verstrichen ist, können die Daten im Schieberegister über Leiter sortiert werden, die <l«n Leitern gleichen, die anhand der Tabelle I beschrieben wurden. Die Leiter vom Ausgang jeder Stufe sind so angeordnet, daß sie die Daten nach dem letzten Üb ertragungs int ervall in ihre anfängliche Folge bringen. Diese Leiteranordnung erfolgt am einfachsten für eune V erschiebung von 0 Positionen. Wenn die Leiter erst einmal richtig angeordnet sind, wird ihre Position gesichert, so daß die Daten über die Leiter in ihre richtigen Positionen von den Stufen abgelesen werden. Daher sortiert eine einfache Leitergruppe die Daten in die richtigen Positionen.
Bei einer Anordnung ähnlich der Anordnung der Tabellen I und II können zusätzliche Tabellen für Schieberegister zusammengestellt
10Ö82Ö/1577
■Μ
werden, die dem Register 20 gleichen, bei dem jedoch die Reorganisationskonstante Q gleich Irgendeiner ganzen Zahl größer als 1 ist. Diese zusätzlichen Tabellen können leicht dadurch entwickelt werden, daß über jeder Spalte die gewünschte Gesamtverschiebung in dezimalen Zahlen (Basis 10) und Zahlen mit der Basis Q aufgeschrieben wird. Ein Einleseintervall t. gibt eine nl" in jeder Spalte unter 'ler Überschrift "Gewünschte Gesamtverschiebung" an. Die "Anfängliche Folge" muß in (Q-I) Intervallen oder Reihen dargestellt wvvenU-n, die mit t , t., ... t~ bezeichnet sind. Ein Reorganisationsinttrvall t zeigt eine "l" in jeder Spalte unter der Überschrift "Gewünschte Gesamtverschiebung" an. Die "Folge Hr. 2" ist in (Q-I) Intervallen t o... t„„ dargestellt. Die Intervalle treten von oben nach unten in die Tabelle ein bis fä) (1+ (log. n)) dar-
gestellt sind.
Die Zahl mit der Basis Q über jeder Spalte unter der Überschrift "Gewünschte Gesamtverschiebung" gibt die Schiebeirnpulse an, die während des Vorhandenseins jeder Folge angelegt werden. Wenn eine "θ" in der Position am weitesten rechts der Zahl mit der Basis Q auftritt, treten während des Vorhandenseins der anfänglichen. Folge keine Schit-beimpulse auf. Worin eine "l" in der Position am weitesten« rechts der Zahl mit der Basis Q auftritt, tritt während des Vorhandenseins der anfänglichen Folgt1 ein Schiebt·-
109820/1677 bad oR!G,NA1.
9$
impuls auf. Wenn eine "2" in der Position am weitesten rechts der Zahl mit der Basis Q auftritt, treten während des Vor-" handenseins der anfänglichen Folge zwei Schiebeimpulse auf. Eine ähnliche Untersuchung ist zu verwenden, um die Zahl der Schiebeimpulse zu bestimmen,, die während des Vorhandenseins einer zweiten Folge "Folge Nr. 2I! und nachfolgender Folgen angelegt werden.
Jede Folge besteht (Q-I) Intervalle, bevor die Folge reorganisiert wirdj so daß genügend Zeit vorhanden ist, Schiebeimpulse anzulegen, ddr· ι Anzahl gleich der grüßlen Zahl cies Zahlensystems mit der B-*. it Q int.
liie Sch".·-. ■ npuLsi'cihr für jc-Hc- iijöj.'lirhi1 GesamtVersohiebung h '];;( Gi ί ' ;i?fc -MuU' * Jis und Niohia üirrtens von Schiebeimpu! ■■ )\, 'M-- in '·· ":-p - ' «■ <lo3 siili < i;!( bcnf'i-n Tabelle dargestellt ist.
Die Rc-i'v. riifc·· "iiti τij uisqnelii «0 i,.:d die Schiebeunpulsqui-]]e PU enthalt'η ' ·υρ]..« j· von logischen Gattern mit Eingangsfunktionon die so gewählt sind, daß Ausgangs signale entsprechend den vorher beschriebenen Tabellen entstehen. Die gemeinsame Steuerquelle 39 enth a Jt einen Schiebeübertragungs zähler und euien Folgezählf.-i-j der unter dem Einfluß von Zeitgebersignalen zählt. Ausgeh;-vife Aufgänge der Zahler werden den Eingängen der Gatter in der Reorganisationsimpiilsquelle zugeführt, um zyklische
1 09820/1S77 bad original
Reorganisationsimpulse zu erzeugen. Weitere ausgewählte Ausgänge der Zähler werden verwendet, um nacheinander die Gatter in der Sehiebeimpulsquelle während Intervalle in Tätigkeit zu setzen, die zwischen die Reorganisationsimpulse eingeschoben sind. Daten in binärer Darstellung der Zahlen mit der Basis Q werden in Registerkreisen gespeichert, die zu getrennten Gattern in der Sehiebeimpulsquelle gehören, so daß wenn jedes Gatter durch die Zähler in Tätigkeit gesetzt wird, es einen Schiebeimpuls erzeugt oder nicht, entsprechend den vorher beschriebenen Tabellen.
Ein Schieberegister, das in einem fortlaufenden Ring angeordnet ist, wie das Schieberegister 20, ist ein System, in dem eine endliche oder geschlossene Reihe von ganzen Zahlen wiederholt in zyklischer Weise benutzt werdenkann, um in Beziehung stehende Elemente zu bezeichnen. Bei einer derartigen geschlossenen Reihe von Zahlen wird die Anzahl der bestimmten ganzen Zahlen ein Modul genannt. Bei einem Modulsystem von ganzen Zahlen werden alle Zahlen als ganze Zahlen kleiner als oder gleich dem Modul ausgedrückt. Bei einer Modularithmetik, die mit einer derartigen geschlossenen Reihe von ganzen Zahlen durchgeführt wird, werden die Ergebnisse von Operationen ebenfalls als ganze Zahlen kleiner ader gleich dem Modul ausgedrückt. So ist bei einem System mit dem Modul 12
32 = 8 (mod 12).
1 09820/1577
Da der Modul 12 beträgt, werden alle Zahlen einschließlich 32 in ganzen Zahlen kleiner als 12 ausgedrückt. Dies geschieht in gleicher Weise wie die Zeit von einem Zifferblatt abgenomraen wird. Eine Zahl, die größer als der Modul ist, kann durch Teilen der Zahl durch den Modul ausgedrückt werden. Der Rest ist die richtige ganze Zahl zum Ausdrucken der größeren Zahl. So ist 32 durch 12 gleich 2 mit einem Rest von 8. Daher ist
32 = 8 (mod 12).
Da das Schieberegister 20 eine geordnete Reihe von η binären Stufen ist, kann eine Reihe von ganzen Zahlen mit einem Modul η benutzt werden, um die Elemente des Registers und ihrer Operation darzustellen. Vor jeder Übertragungsoperation sind die η Stufen als eine Reihe von ganzen Zahlen Mi (t) zu bezeichnen, wobei i = 0, 1, 2 ... (n-1) ist. Nach jeder Übertragungsoperation sind die η Stufen mit einer anderen Reihe von ganzen Zahlen M. (t +1) (mod n) zu bezeichnen, wobei i = 0, 1, 2 ... (n-1) und j = 0, 1, 2 ... (n-1) ist. Jedes j bezeichnet eine Stufe, in der ein bestimmtes Bit nach der Üb ertragung sop er ation gespeichert ist, wobei jedes i die Stufe bezeichnet, in der dies Bit vor der Übertragungsoperation gespeichert war.
Bei der vorher beschriebenen Schiebeoperation, die jedes Bit von der Stufe in der es gespeichert war, während eines Intervalls t zu der nächsten Stufe im Ring für das nächste Inteevall (t+1) über-
trägt, ergibt sich die folgende Reihe von ganzen Zahlen als Bezeichnung für die Folge der Stufen nach der Operation;
* (t + l)(mod n); M1^J (t + l)(mod n);
(t + l)(mod n)· ... M1**1' \ (t + l)(mod n).
3+nr ι
Das (mod n) gilt sowohl für die i als auch für die j -Ausdrücke der Reihe, wobei jedes j gleich (i+1) ist. Eine derartige Schiebeoperation tritt im Schieberegister 20 jedesmal auf, wenn ein. Schiebeimpuls durch die Schiebeimpulsquelle 60 erzeugt.
Bei der vorher beschriebenen Reorganisationsoperation wird jedes Bit von der Stufe,, in der es während eines Intervalls t gespeichert war, zu einer anderen Stufe im Ring für das nächste Intervall (t + 1) übertragen, so daß eine neue Datenfolge entsteht. Eine derartige Reorganisationsoperation ergibt die folgende Reihe von ganzen Zahlen als Bezeichnungen für die Folge von Stufen nach der Operation:
\ (t + l)(mod n); M^ (t + l)(mod n);
(t + l)(mod n): ... M*^1 )Q (t + l)(mod n).
Das (mod n) gilt sowohl für die i- als auch für die j-Ausdrücke der Reihe. Diese Reorganisationsoperation tritt im Schieberegister 20 jedesmal auf, wenn ein Reorganisationsimpuls durch die Reorganisationsimpulsquelle 40 erzeugt wird.
108*20/1677
Wie vorher erwähnt wurde, erzeugen aufeinanderfolgende Reorganisationsoperationen mit Hilfe der Reorganisationswege nachfolgende neue und anderen Folgen der Daten, die in den Stufen des Registers 20 gespeichert sind. Wie in den Ausdrücken M. beschrieben, wobei jedes Bit durch die Position der Stufe dargestellt ist, in der das Bit in der anfänglichen Folge gespeichert war, erscheinen die aufeinanderfolgenden Bilder die bei einer Gesamtverschiebeoperation zur Verschiebung der anfänglichen Datenfolge um 0 Positionen auftreten, während der Intervalle t ,
t. und tn3 wie aus der Tabelle III folgt: 4 b
Tabelle III
Registerstellen B
oder
1
C
oder
2
M.
1
E
oder
4
F
oder
5
G
ode
6
Intervall A
oder
0
M1 M2 D
odei
3
M4 M5 M6
Mo, M2 M4 M3 M1 M3 M5
*4 Mo M4 Mj M6 M2 M6 M3
Mo M5
In der Tab ι lie III sind die einzelnen Schieberegisterstufen durch die Quadrate innerhalb der Reigen dargestellt. Jede Reihe stellt sämfiichi Stufen im Register während eines der gewählten Intervalle t , t. und 1 dar. Selbstverständlich sind in dieser Tabelle die
Δ 4 ti
Schiebegatter und die Reorgnnisationsgniier der einfachheithalber
109820/1577
ty 157466
weggelassen. Während jedes ausgewählten Intervalls wird jede Stufe durch das Bit der ursprünglichen Datenfolge bezeichnet, die in der Stufe für dieses Intervall gespeichert ist. Wie aus der Tabelle III hervorgeht und wie vorher festgestellt wurde, können die Bits der ursprünglichen Datenfolge leicht durch die aufeinanderfolgenden Folgen verfolgt werden, die sich durch die Reorganisations operationen ergeben. Wenn einmal die Ausgangsleiter so angeordnet sind, daß sie die Bits sortieren, welche in der letzten während de s Intervalls tR gespeicherten Folge organisiert sind, kann jede gesamte Verschiebeoperation durchgeführt werden, weil irgendwelche Schiebeimpulse, die zwischen die Reorganisationsimpulse eingeschoben sind, die endgültige Reihenfolge der Bits im Register 20 nicht umwirft.
3) Schieberegister mit η Stufen - Zwei Reorganisations wege und ein Schiebeweg je Stufe
In den Fig. 4 und 5, die in der in Fig. 6 dargestellten Weise angeordnet werden sollen, ist eine Ausführung eines Schieberegisters 400 hoher Geschwindigkeit dargestellt, das Informationsbits in vorbestimmten Folgen reorganisiert und Daten verschiebt, die in ausgewählten Folgen angeordnet sind, um lange Gesamtverschiebungsoperationen zu beschleunigen. Wenn die Daten über die Gruppen von
109820/1S77
Reorganidationswegen 522 reorganisiert werden, werden sie manchmal über eine Gruppe von primären Reorganisationswegen
61ΪΪΘ
reorganisiert, die die Daten nur inVneue Folge in einer Weise reorganisieren, die bei der Ausführung der Fig. 2 benutzt wurde. Zu anderen Zeiten werden die Daten über eine Gruppe von sekundären Reorganisationswegen reorganisiert, welche eine Schiebeübertragung und eine Reorganisationsübertragung in einer einzigen Reorganisations operation beeinflussen, die nur ein Übertragungsintervall oder Zeitgeberzyklus erfordert.
Das Schieberegister 400 erhält eine Reihenanordnung von η Registerstufen, die in einem fortlaufenden Ring angeordnet sind. Die η Stufen sind als Beispiel in Form der Stufen 401, 402, 403, 404, 405, 406, 407, 408 und 409 dargestellt, von denen jede ein anderes Bit einer ursprünglichen Datenfolge während der Intervalle einer Gesamtverschiebeoperation speichert. Es sind gestrichelte Linien gezeichnet, welche die Stufen 402-403, 404-405 und 406-407 verbinden, um anzuzeigen, daß zusätzliche Stufen eingefügt werden können wo die gestrichelten Linien auftreten. Wenn auch in den Fig. 4 und 5 nur neun Stufen des Registers 400 zur Erläuterung der Erfindung dargestellt sind, so riiann doch die Erfindung mit größerem Nützen bei Registern mit mehr als 9 Stufen angewendet werden.
Die einzelnen Stufen 401 bis 409 sind bistabile Speichereinrichtungen, die veranlaßt werden, einen von zwei stabilen Zuständen unter dem Einfluß von Eingangssignalen mit zwei Pegeln anzunehmen, welche Bits oder binäre Daten darstellen. Eine Art einer derartigen Stufe ist eine bistabile Multivibratorschaltung wie die Schaltung 30 in Fig. 3A» Eine Einstellklemme S und eine Rückstellklemme R jeder Stufe wird verwendet, um eine anfängliche Datenfolge im Register 400 zu speichern, damit jede Gesamtverschiebeoperation in Gang gesetzt wird.
Nachdem ein Bit einer anfänglichen Datenfolge in jeder Stufe des Registers 400 mit Hilfe des Einstelleiters S und des Rückstellleiters R der einzelnen Stufen gespeichert ist, werden die Datenbits von einer Stufe zu anderen während der Übertragungsintervalle oder Zeitgeber zyklen unter dem Einfluß von an da Register angelegten ÜbertragungsSignalen übertragen. Diese Übertragungssignale werden durch zwei Impulsquellen erzeugt, die als Reorganisatiönsimpulsquelle 420 und als Schiebeimpulsquelle 460 bezeichnet sind. Die Reorganisationsimpülsquelle 420 spricht auf Signale der Verschiebeimpülsquelle 460 an. Die V erschiebeimpulsquelle 460 spricht auf Signale einer gemeinsamen Steuerschaltung 480 an, ferner auf Signale eines Zeitgebers 42 und schließlich auf EinlesegätterBignale einer Einlesegatterqüdle 45*
1Q982Q/U7?
In Fig. 8 sind der Ausgang 25 des Zeitgebers 42 und der Ausgang 26 der Einlesegatterquelle 45 in einem Zeitdiagramm für die Ausführung der Fig. 4 und 5 dargestellt. Zusätzlich ist in Fig. 8 der Ausgang 73 der Verschiebeimpulsquelle 460 und der primäre Impulsausgang 76 sowie der sekundäre Impulsausgang 78 der Reorganisationsimpulsquelle 420 dargestellt.
Die primären und sekundären Reorganisationsimpulse werden durch die Reorganisations impulsquelle 420 erzeugt, die diese Impulse an eine Sammelleitung 41 oder eine Sammelleitung 432 anlegt, und über diese an die Gruppe der Organisationswege 522. Die primären Reorganisationsimpulse, die mit X bezeichnet sind und die an die Sammelleitung 41 angelegt werden, werden gleichzeitig an die Zeitleiter TX der primären Reorganisationsgatter 421, 422, 423, 424, 425, 426, 427, 428 und 429 angelegt, die jeweils zu einem Eingang einer getrennten Registerstufe gehören. Die sekundären Reorganisationsimpulse, die mit Y bezeichnet sind und die an die Sammelleitung 432 angelegt werden, werden gleichzeitig an die Zeitleiter TY der sekundären Reorganisationsgatter 441, 442, 443, 444, 445, 446, 447,448 und 449 angelegt, die jeweils zu einem Eingang einer getrennten Registerstufe gehören. Wenn auch neun Reorganisationsgatter dargestellt sind, die mit den Sammelleitungen 41 und 432 verbunden sind, so ist doch selbstverständlich ein Reorganisationsgatter zwischen jede der Sammelleitungen 41 und 432 und jede einzelne Stufe des Registers 400 geschaltet. Daher
109820/1577
weisen die Sammelleitungen 41 und 432 gestrichelte Linien auf, die von ihnen ausgehen, um eine Verbindung zwischen jeder Sammelleitung und einem Reorganisationsgatter jeder der η Stufen des Registers 400 anzugeben.
Jedes der primären Reorganisationsgatter 421-429 jedes der sekundären Reorganisationsgatter 431-439 und jedes zusätzliche Reorganisationsgatter, das nicht dargestellt ist, ist ein Gatterkreis der eine einzelne Stufe des Registers 400 veranlaßt, den einen oder anderen ihrer zwei stabilen Zustände unter dem Einfluß des gleichzeitigen Anlegens von binären Eingangs Signalen und eines Reorganisationsimpul es anzunehmen. Die Steuereingangskreise 50 und 50' in Fig. 3B, die anhand der Ausführung der Fig. beschrieben wurden, stellen Anordnungen von Gattern dar, die für die primären und sekundären Reorganisationsgatter benutzt werden können, die zum Eingang einer Stufe gehören, z. B. für die Gatter 428 und 448 in Fig. 5.
Es ist angenommen, daß die primären Reorganisationsgatter 421 bis 429 der Schaltung 50 gleichen und daß sie verwendet werden, um die im Register 400 gespeicherten Daten unter dem Einfluß jedes primären Reorganisationsimpulses X der an die Zeitleiter TX angelegt wird, r-u einer neuen Folge zu reorganisieren.
109820/1577
Die Doppelschieneneingangssignale auf den Leiter Xl und XO
der Schaltung 50 führen vom "l" Ausgang und "θ" Ausgang
irgendeiner Stufe zum Schieberegister 400. Ein Verfahren zum Bestimmen der Stufe von der aus die Leiter Xl und XO ausgehen, gleicht dem Verfahren, das anhand der Ausführung der Fig. 2 beschrieben wurde. Es sei bemerkt, daß ein einziger Weg 434 in den Fig. 4 und 5 eine Doppelschienenverbindung von den "1" und 11O" -Ausgängen der Stufe 404 zu den Leitern Xl und XO
des primären Reorganisationsgatters 428 darstellt.
Es ist angenommen, daß die sekundären Reorganisationsgatter 441-449 sämtlich dem Kreis 50J gleichen, sie werden benutzt, um eine vorhandene Datenfolge um eine Registerposition effektiv zu verschieben und um die vorhandene Folge zu einer neuen Datenfolge unter dem Einfluß jedes an die Zeitleiter TY angelegten sekundären Reorganisationsimpulses Y zu reorganisieren. Die Doppelschieneneingangssignale auf den Leitern Yl und YO jedes Kreises 50* gehen jeweils vom Ausgang 11I" und vom Ausgang "θ" irgendeiner Stufe im Register 400 aus. Ein Verfahren zur Bestimmung der richtigen Stufe wird später beschrieben. Es sei jedoch bemerkt, daß ein einzelner Weg 435 in den Fig. 4 und 5 eine Doppelschienenverbindung von den Ausgängen !!l" und "θ" der Stufe 403 zu den Leitern Yl und YO des sekundären Reorganisationsgatters 448 darstellt.
109830/1577
1 5746B0O So
Wie aus Fig. 8 hervorgeht, zeigen die Sekundären und primären Reorganisationsinipulse X und Y, die durch die Reorganisations impulsquelle 420 erzeugt werden, den in der Ausführung der Fig. 2 erzeugten Reorganisationsimpulse. Die zeitliche Lage der Impulse X und Y ist jedoch von der zeitlichen Lage verschieden, die bei der Ausführung der Fig. 2 benutzt wurde, sie wird später eingehender beschrieben.
In den Fig. 4 und 5 sind die Stufen 402 und 403, 404 und 405 sowie 406 und 407 im allgemeinen keine aufeinanderfolgende Stufen, es wird später angenommen, daß sie voneinander durch irgendeine konstante Anzahl vcn Stufen getrennt sind, um eine Übertragungsoperation im Register 400 darzustellen, wenn ein primärer oder sekundärer Reorganisationsimpuls auftritt. Die Stufen 401 und 402, 403 und 404 sowie 405 und 406 sollen benachbart angeordnet sein, wobei der Ausgang beider Stufen jedes Paares über Reorganisationswege zum Eingang einer Stufe geleitet wird. Die konstante Anzahl von Stufen von der Stufe 402 zur Stufe 304 und von der Stufe 404 zur Stufe 406 bestimmt, um wieviele Positionen diese Stufen gegeneinander verschoben sind. Die konstante Anzahl von Positionen, um die die Stufe 404 gegen die Stufe 402 verschoben ist, oder um die die Stufe 406 gegen die Stufe 404 verschoben ist, wird nachfolgend als Reorganisaticnc-ikc1 .; ?t rie Q bezeichnet. Es sei wiederum bemerkt, daß η ur.i ^ keinem g^,i:e:;>warnen ganzzahligen Divisor außer eins aufweisen.
109820/1577
Das vorher erwähnte Bild zur Verbindung der Stufenausgänge mit den Eingängen derprimären Reorganisationsgatter kann dadurch erhalten werden, daß der Ausgang einer ersten Stufe, z. B. der Stufe 404, über einen Weg 436 mit dem Eingang des Gatters 427 verbundeni st, das zum Eingang der Stufe 407 gehört. Dieses Bild kann durch eine derartige Verbindung zwischen zwei Stufen begonnen werden, doch ist es oftmals zweckmäßig, durch die Verbindung des Ausgangs einer ausgewählten Stufe mit dem Eingang ihreseigenen primären Reorganisationsgatters zu beginnen. Danach wird der Ausgang einer zweiten Stufe 404 über den Weg 434 mit dem Eingang der Stufe 428 verbunden, die zum Eingang der Stufe 408 gehört. Die zweite Stufe 404 befindet sich in einer Posidon, die gegen die erste Stufe 402 durch eine Anzahl von Positionen verschoben ist, die gleich der Reorganisationskonstanten Q ist. Die Stufen 407 und 408 befinden sich in benachbarten Positionen im Register. Das Bild kann weiter verfolgt werden bis der Ausgang jeder Stufe üforr einen Weg mit dem Eingang eines der primären Reorganisationsgatter verbunden ist. Somit ist der Ausgang jeder Stufe mit dem Eingang eines einzigen primären Reorganisationsgatters verbunden, während der Eingang jjedes primären Reorganisationsgatters vom Ausgang einer einzigen Stufe abgeht.
109820/1577
Über die Reorganisations wege kann eine Reorganisations operation durchgeführt werden, wenn alle Wege geschaltet sind, jedes primäre Reorganisationsgatter mit seiner zugehörigen Stufe verbunden ist, ein Bit in jede der Stufen gespeichert ist und ein Reorganisationsimpuls über die Sammelleitung 41 an die Zeitleiter TX angelegt ist.
Ähnlich der Reorganisation der Daten bei der Ausführung der Fig. 2 werden nun Bits, die jeweils in den Stufen 402, 404 unfl 406 gerade vor dem primären Reorganisationsimpuls X auf dem Leiter 41 gespeichert sind, mit Hilfe der Gatter 427, 428 und zu den Stufen 407, 408 und 409 übertragen. In gleicher Weise wird jedes Bit, das im Register 400 wärend eines Intervalls t gerade vor dem primären Reo rganisationsimpuls K gespeichert ist, unter dem Einfluß des Impulses zwischen den Stufen übertragen, um eine neue Datenfolge für die Dauer des nächsten Intervalls (t+1) herzustellen. Wähtend des Intervalls (t+1) speichern benachbarte Stufen Bits, die vorher während des Intervalls t in Stufen gespeichert waren, die gegeneinander um eine konstante Anzahl von Registerpositionen verschoben waren, die gleich der Reorganidationskonstante Q ist. Daten von den rechten Stufen gerade vor dem primären Reorganisationsimpuls werden auf dem Ring übertragen, um von links entsprechend dem Bild für die primäre Reorganisation wieder eingeführt zu werden.
1 09820/1577
Das vorher erwähnte Bild zum Verbinden der Stufenausgänge mit den Eingängen der sekundären Reorganisationsgatter kann hergestellt werden, in dem der Ausgang einer dritten Stufe 401 über einen Weg 407 mit dem Eingang des Gatters 447 verbunden wird, das zum Eingang der Stufe 407 gehört. Danach wird der Ausgang einer vierten Stufe 403 über den Weg 435 mit dem Ausgang des Gatters 448 verbunden, das zum Eingang der Stufe 408 gehört. Die dritte und vierte Stufe 401 und 403 sind jeweils um eine Position in Rückwärtsrichtung des Registers gegen die erste und die ζ leite Stufe 402 und 404 verschoben. Dieses Bild der Wege zu den Eingängen der sekundären Reorganisationsgatter kann verfolgt werden, bis der Ausgang jeder Stufe über einen Weg mit dem Eingang eines sekundären Reorganisationsgatters verbunden ist. Somit ist der Ausgang jeder Stufe mit dem Eingang eines einzigen sekundären Reorganisationsgatters verbunden, während der Eingang jedes sekundären Reorganisationsgatters vom Ausgang einer einzigen Stufe ausgeht.
Eine Reorganisationsoperation, die eine effektive Schiebeübertragung und eine Reorganisationsübertragung der Datenfolge umfaßt, kann über die sekundären Reorganisationswege durchgeführt werden, wenn diese Wege sämtlich geschaltet sind, jedes sekundäre Reorganisationsgatter mit der zugehörigen Stufe verbunden ist, ein Bit in jeder der Stufen gespeichert ist und ein Reorganisationsimpuls über die Sammelleitung 432 an die Zeitleiter TY angelegt ist.
109820/1577
Bits, die jeweils in den Stufen 401, 403 und 405 gerade vor dem sekundären Reorganisationsimpuls Y auf dem Leiter 432 gespeichert sind, werden nunmehr über die Gatter 447, 448 und 449 zu den Stufen 407, 408 und 409 übertragen. In gleicher Weise wird in einem Zeitgeberzyklus jedes Bjt, das im Register 400 gespeichert ist, während eines Intervalls t gerade vor dem sekundären Reorganisationsimpuls Y zwischen den Stufen unter dem Einfluß des Impulses übertragen, um die vorhandene Folge um eine Registerposition effektiv zu verschieben und eine neue Datenfolge für die Dauer des nächsten Intervalls (t+1) herzustellen. Während des Intervalls (t+1) speichert jede Stufe ein Bit, das vorher während des Intervalls t in einer Stufe gespeichert war, die der Stufe benachbart ist und die in der umgekehrten Richtung zu der Stufe Ii egt, von der ein Bit unter dem Einfluß eines primären Reorganisationsimpulses kommen würde. Daten von den rechten Stufen werden gerade vor dem sekundären Reorganisationsimpuls auf dem Ring übertragen, um entsprechend dem Bild für die sekundäre Reorganisation von links wieder eingeführt zu werden.
Das Ergebnis der sekundären Reorganisation besteht darin, daß jedes Bit der Daten im Register 400 in eine Stufe kommt, in der es bei der Ausführung der Fig. 2 nach einem Schiebeimpuls und
1 09820/1S77
einem Reorganisationsimpuls wäre. Daher sind keine zwei Zeitgeberzyklen oder Übertragungsintervalle erforderlich, vielmehr wird die Schiebeübertragung und die Reorganisations übertragung gleichzeitig in einem Übertragungsintervall mit Hilfe der Gruppe von Wegen über die sekundären Reorganisationsgatter durchgeführt.
Ein Verfahren zur Bestimmung, ob die Daten über die primären oder die sekundären Reorganisationsgatter zu reorganisieren sind, wird später beschrieben.
Es werden Schiebeimpulsreihen durch die Schiebeimpulsqueile 460 erzeugt, welche die Schiebe impulse über eine Sammelleitung 459 in den Fig. 4 und 5 gleichzeitig an die Schiebegatter 461, 462, 463 , 464, 465, 466, 467, 468 und 469 anlegt, die jeweils zu einem Eingang einer getrennten Registerstufe gehören. Wenn auch in den Fig. 4 und 5 neun Schiebegatter dargestellt sind, so gehört doch selbstverständlich zu einem Eingang jeder Stufe des Schieberegisters 400 ein und nur ein Schiebegatter. Daher gehen von der Sammelleitung 459 gestrichelte Linien aus, um weitere Verbindungen zwischen der Sammelleitung 459 und den Schiebegattern für die nichtdargestellten Stufen anzudeuten.
Jedes der Schiebegatter kann ein Steuerkreis 50" sein, wie er
1 09820/1577
in Fig. 3B dargestellt und anhand der Ausführung der Fig. 2 beschrieben wurde. Wenn der Kreis 5O11 in ein Register eingeschaltet ist, wie es in den Fig. 4 und 5 dargestellt ist, werden die Doppelschieneneingangssignale auf den Leitern Zl und ZO des Kreises 50" vom Ausgang 11I" und vom Ausgang 11O11 einer benachbarten Stufe in umgekehrter Richtung des Registers geführt. Es sei bemerkt, daß Doppelschienenverbindungen durch eine einzige Linie dargestellt sind, z. B. durch den Weg 471 von den Ausgängen "l" und "θ" der Stufe 407 zu den Leitern Zl und ZO des Gatters 468.
In den Fig. 4 und 5 wird die Schiebeoperation in einer Weise durchgeführt, die der bei der Ausführung der Fig. 2 beschriebenen Schiebeoperation gleicht. Jedes Datenbit bewegt sich von der Stufe, in der es gespeichert wurde, zu einer benachbarten Stufe nach rechts. So wird das Bit, das in der Stufe 407 gerade vor einem Schiebeimpuls gespeichert ist, mit Hilfe des Schiebegatters 468 zur Stufe 408 übertragen, während das Bit, das in der Stufe 408 gerade vor dem Schiebeimpuls gespeichert ist, mit Hilfe des Schiebegatters 469 zur Stufe 409 übertragen wird. In gleicher Weise wird jedes Bit um eine Stufe nach rechts oder in Vorwärtsrichtung unter dem Einfluß des über die Sammelleitung 459 angelegten Schiebeimpulses verschoben. Selbstverständlich wird das Bit, das in der Stufe am weitestens rechts gespeichert ist, gerade vor dem Schiebeimpuls auf dem Ring zur Stufe am weitesten links verschoben.
109820/1677
5*
Die maximale Zeit der Übertragungsintervalle, oder Zeitgeberzyklen, die erforderlich ist, um eine gesamte Verschiebeoperation im Schieberegister 400 zu beenden, kann dahingehend bestimmt werden, daß sie gleich (Q-l)(l+(log„n)) + 1 Intervallen oder Zeitgeberimpulsen ist, im dem die Anzahl von Übertragungsintervallen betrachtet wird, die erforderlich ist, um jede neue Datenfolge zusammen mit der Anzahl von Datenfolgen zu verschieben, die für jede Gesamtverschiebeoperation erforderlich ist. Die Intervalle, die zur Beendigung einer Gesamtverschiebeoperation erforderlich sind, werden in gleicher Weise ausgedrückt wie es bei der Ausführung der Fig. 2 beschrieben wurde. Jedoch ist der Multiplikator (Q-I) für die Ausführungen der Fig. 4 und 5 kleiner als der Multiplikator Q für die Ausführung der Fig. 2.
Bei der Ausführung der Fig. 4 und 5 erfordert die gesamte Verschiebeoperation nur (Q-I) Übertragungsintervalle während des Vorhandenseins jeder Datenfolge, weil (Q-I) Übertragungsintervalle erforderlich sind, um die in jeder Folge angeordneten Bits zu verschieben. Alle Verschiebe- und Reorganisationsoperationen sind mit Ausnahme der anfänglichen Einleseoperation werden bei jeder Folge innerhalb (Q-I) Intervallen beendet, weil die Reorganisationsübertragung, wie sie bei der Ausführung der Fig. 2 zur Erzeugung jeder neuen Folge verwendet wurde, zeitlich mit der letzten Schiebeübertragung für die vorangehende Folge
109820/1577
bei der Ausführung der Fig. 4 und 5 zusammenfällt. Die Einleseoperation, die als erste Operation angenommen wird, fällt'nicht mit ihr zusammen, wodurch die + 1 am Ende des Ausdrucks entsteht. Während einer gesamten Schiebeoperation erfordert das Register 400 (1+ (log n)) Folgen von Daten, um alle möglichen gesamten Schiebeoperationen durchzuführen. Der Ausdruck (log^n) ist wiederum numerisch gleich der größten ganzen Zahl, die kleiner als log η ist.
Da (1 + (log n)) Datenfolgen erforderlich sind, um eine gesamte
Q sind
Schiebeoperation durchzuführen\(Q-l) Üb ertragungs int ervalle für jede Folge erforderlich, während (1) Übertragung für das Einlesen erforderlich ist, und (Q-l)(l+(log n)) +1 Üb ertragungs int ervalle oder Zeitgeberzyklen während jeder gesamten Schiebeoperation notwendig sind.
Wenn man sich nun ins Gedächtnis zurückruft, daß jede Reorganisationsoperation eine neue Folge im Register herstellt, sieht man, daß der Eintritt von Daten in das Register 400, d. h. die Einleseoperation, eine Üb ertragungs operation ist, welche die anfängliche Folge von Daten im Register speichert. Bei dieser Betrachtungsweise treten die Intervalle für die Übertragungsoperationen in folgender Reihenfolge auf: Intervall der anfänglichen Folge(Q-2) Schiebeintervalle, primäres oder sekundäres Reorga-
109820/1S77
nisationsintervall (Q-2) Schiebeintervalle, primäres oder sekundäres Reorganisationsintervall bis eine Anzahl von Intervallen oder Zeitgeberzyklen, die gleich (Q-l)(l+(log n)) + beträgt, aufgetreten ist.
Als Ergebnis des Eintritts der anfänglichen Folge und der Durchführung jeder Reorganisationsoperation (primär oder sekundär) bei den eben erwähnten Übertragungen wird im Register eine Verschiebungsspannweite K hergestellt, die gleich irgendeiner Potenz der Reorganisationskonstanten Q ist. Jeder Schieb eimpuls, wenn er über die Sammelleitung 459 an die Klemmen TZ während der bezeichneten Intervalle angelegt wird, bewirkt, daß jedes Bit der Daten in einem Schiebeintervall oder Zeitgeberzyklus über so viele Positionen der anfänglichen Folge wie die vorhandene Schiebespannweite K in einer Weise verschoben wird, die der Schiebeoperation bei der Ausführung der Fig. 2 gleicht. Der sekundäre Reorganisationsimpuls Y bewirkt, wenn er während der bezeichneten Intervalle angelegt wird, daß jedes Bit in einem Intervall über so viele Positionen der anfänglichen Folge wie die vorhandene Schiebespannweite K verschoben wird, wenn der sekundäre Reorganisationsimpuls auftritt. Ferner wird eine neue Datenfolge hergestellt.
109820/1577
Die primäre Reorganisationsimpuls X bewirkt, wenn er über die Sammelleitung 41 an die Klemmen TX angelegt wird, eine Reorganisation der Datenfolge über die primären Reorganisationsgatter zu einer neuen Folge, und zwar in einer Weise, die ebenfalls der Ausführung der Fig. 2 gleicht. Somit wird ein Bit das in einer Stufenposition M.(t) gespeichert ist, zu einer Stufen position M. (t+l)(mod n) übertragen, wobei dort die folgende
Reihe von ganfaen Zajilen erzeugt wird, welche die Folge der Stufen während des Intervalls (t+1) bezeichnen.
M1 (t+l)(mod n); MXt^(t+l)(mod n);
(t+1) (mod η)· ... MJfr^ (t+1) (mod η)
Das (mod η) gilt sowohl für die i- als auch für die j-Ausdrücke der Reihe.
Der sekundäre Reorganisationsimpuls Y der über die Sammelleitung 432 an die KlemmenTY angelegt wird, bewirkt eine Reorganisation der Datenfolge über die sekundären Reorganisations gatter in eine neue Folge, und zwar in einer Weise, die von der Ausführung der Fig. 2 etwas verschieden ist. Ein Bit, das in einer Stufenposition M. (t) gespeichert ist, wird im verhältnis zu einem Bit, das über den primären Reorganisationsweg zu einer Stufenposition M. (t+1) (mod n) übertragen würde, unter dem
Einfluß des über die Sammelleitung 432 angelegten Impulses
1 09820/1S77
rf
zum M. 1 (t) —^M . (t+l)(mod n) übertragen» Somit wird eine Schiebeübertragung eine Reorganisationsübertragung nicht in zwei getrennten Übertragungsintervallen durchgeführt, vielmehr wird jedes Bit direkt in einem Übertragungsintervall als Ergebnis einer sekundären Reorganisationsübertragung zu einer Position übertragen, in der es sich bei der Ausführung der Fig. sowohl infolge einer Schiebeübertragung als auch einer Reorganisationsübertragung befindet.
Die Steuerschaltung en der Ausführungen der Fig. 4 und 5 gleichen den Steuerschaltung en, die bei der Ausführung der Fig. 2 benutzt wurden.
In Fig. 8 sind die Impulse X und Y als ausgezogene Linie und als gestrichelte Linie während jedes geeigneten Intervalls dargestellt, um anzudeuten, daß diese Impulse während jedes Reorganisationsintervalls alternativ auftreten. Es werden primäre Reorganisations impulse erzeugt, wenn ein X in der Tabelle 4 erscheint, während sekundäre Reorganisationsimpulse erzeugt werden, wenn in dieser Tabelle ein Y erscheint.
Nach einer primären oder einen sekundären Reorganisations operation werden die Daten entsprechend einer Schiebeimpulsreihe weiterverschoben oder nicht. Somit geht die gesamte Schiebeoperation
1 0 9820/1S7 7
stufenweise vor sich, bis (Q-I)(I + (lognn)) + 1 Übertragungsoperationen stattgefunden haben.
Einlesen *1 =1
Anfängliche Folge *2 =1
Reorganisation *3 Q1 =3
Folge Nr. 2 *4 Q1 =3
R e ο rganis ation *5 Q1 =9
Folge Nr. 3
Tabelle IV
Q = 3 Gewünschte Gesamtverschiebung
000 002 011 020 022
Inter- Schiebe- 001 010 012 021 100 vall spannweite K 0123456789
1111111111 0110110110 XXYXXYXXYX 0001111110 XXXXXXYYY X 0000000001
Die Tabelle IV ist eingefügt, um Impulsreihen für eine Reihe von gewünschten Gesamtverschiebungen für ein Schieberegister zu zeigen, das dem Register 400 der Fig. 4 und 5 gleicht, das jedoch speziell so angeordnet ist, daß es eine Reorganisationskonstante Q = 3 aufweist. Die Reorganisationskonstante Q = 3 wird erhalten, in dem man die primären nnd sekundären Reorganisationsgatter und die Zellen in der vorher beschriebenen Weise verbindet.
Die Tabelle IV gleicht der Tabelle II in jeder Hinsicht, abgesehen davon, daß das letzte Intervall zur Verschiebung während des Vor-
109820/1577
handenseins jeder Folge, z.B. der anfänglichen Folge und der Folge Nr. 2 mit dem Reorganisationsintervall verschmolzen ist, das den entsprechenden Intervallen für die V erschiebung folgt. In der Tab. IV ist ein Reorganisationsimpuls X oder Y dargestellt der während jedes Intervalls zur Reorganisierung der Datenfolge auftritt. Der Reorganisationsimpuls X tritt in der Tabelle IV auf, wenn immer eine "θ" in dem entsprechenden letzten Intervall für jede Folge der Tabelle II auftritt. Der Impuls X wird über die Sammelleitung 41 an die Klemmen TX angelegt, um die primären Reorganisationsgatter zu betätigen. Der Reorganisationsimpuls Y tritt in der Tabelle IV auf, wenn immer eine "l" in dem entsprechenden letzten Intervall für jede F olge der Tabelle II auftritt. Der Impuls Y wird über die Sammelleitung 432 an die Klemmen TY angelegt, um die sekundären Reorganisationsgatter in Tätigkeit zu setzen.
Die Tabelle IV ist eine allgemeine Tabelle, die in der Breite und Tiefe erweitert werden kann, um größere Gesamtverschiebungen zum umfassen als sie in dem Register mit zehn Stufen möglich sind. Die Breite und Tiefe der Tabelle IV hängt von der Anzahl der Stufen η in einem bestimmten Register ab, für das die Tabelle IV hergestellt ist. Die Tabelle IV muß breit genug sein, um eine gesamte Verschiebung von n-1 Positionen zu umfassen, ferner,
109820/1677
ß4
tief genug, um ein Intervall zu umfassen, während dessen die ■Verschiebungsspannweite K=Q °gQ .
Sobald das letzte Schiebeintervall in einer Gesamtverschiebeoperation nach Tab. IV verstrichen ist, sind die Daten im Schieberegister bereit, um über Ausgangsleiter der Stufen sortiert zu werden, wie es für die Ausführung der Fig. 2 beschrieben wurde.
Bei einer Anordnung, die der Anordnung der Tabelle IV gleicht, können zusätzliche Tabellen für Verschieberegister zusammengestellt werden, die dem Register 400 gleichen, die jedoch eine Reorganisationskonstante Q aufweisen, welche gleich irgendeiner ganzen Zahl größer als eins ist, solange η und Q keinen gemeinsamen ganzzahligen Divisor haben.
Diese zusätzlichen Tabellen können leicht entwickelt werden, in dem über jeder Spalte die gewünschte Gesamtverschiebung in dezimalen Zahlen (Basis 10) und Zahlen mit der Basis Q (Basis Q) geschrieben wird. Die Reihe für ein Einleseintervall t. gibt eine "l" in jede1 Spalte unter der Überschrift "Gewünschte Gesamtverschiebung" an. Die "Anfängliche Folge" muß für (Q-2) Intervalle oder Reihen dargestellt werden, die mit to, to ... t~ Λ
c 6 Q-I
bezeichnet sind. Ein Reorganisationsintervall oder eine Reihe,
die mit t~ befceichnet ist, gibt ein 11X" oder ein 11Y" an, je nach dem Q
109820/1577
ob die ganze Zahl mit der Basis Q in der Position am weitesten rechts über der Spalte geringer als ihr Maximalwert oder gleich ihrem Maximalwert ist. Die Folge Nr. 2 ist für Q-2 Intervalle darzustellen, die mit t_ .,... too bezeichnet sind. Dann tritt eine weitere primäre oder sekundäre Reorganisationsübertragung während eines Intervalls t ., auf. Diese Intervalle sind von oben nach unten in die Tabelle eingesetzt, bis (Q-l)(l+(log n))+l Intervalle dargestellt sind.
Man hat festgestellt, daß ein günstiges Verhältnis von Zeitgeberzyklen zu den gesamten Registerstufen η für Schieberegister vorhanden ist, die entsprechend dem Schieberegister 400 angeordnet sind. Da die Schieberegisterlänge mit der Anzahl der Stufen η zunimmt, wird dieses Verhältnis fortlaufend günstiger.
Die Reorganisationsimpulsquelle 420 und die Schiebeimpulsquelle 460 enthalten Gruppen von logischen Gattern, die Eingangs funktionen aufweisen, die so ausgewählt sind, daß sie Ausgangs signale entsprechend Tabellen erzeugen, die der Tabelle IV gleichen. Die gemeinsame Steuerquelle 480 enthält einen Schiebeübertragungszähler und einen Folgefcähler, der unter dem Einfluß von Zeitgebersignalen zählt. Die Daten in binärer Darstellung der Zahlen mit der Basie Q werden in Registerkreisen der Schiebeimpulsquelle gespeichert. Diese gesp eicherten Daten und die ausgewählten
109820/1877
Ausgänge der Zähler gehen zu den Gattern in der Reorganisationsimpulsquelle 420 und zu den Gatter in der Schiebeimpulsquelle 460/ um Reorganisationsimpulse und Schiebeimpulse entsprechend den vorher erwähnten Tabellen zu erzeugen.
Es sei bemerkt, daß der Ausdruck (Q-I), der die Anzahl der Übertragungsoperationen darstellt, die während des Vorhandenseins jeder Folge einer gesamten Schiebeoperation auftreten, sich auf Q-I = 1 vermindert, wenn ein Register so angeordnet wird, daß es eine Reorganisationskonstante Q = 2 aufweist. Da die letzte Schiebeoperation für jede Folge mit der Reorganisationsoperation verschmilzt, sind keine getrennten Schiebeimpulse notwendig. Die Impulsreihen vermindern sich auf eine Reihe von Reorganisationsimpulsen, die in Reihen zur abwechselnden Reorganisation über primäre und sekundäre Schiebewege angeordnet sind. Bei einem derartigen Register sind die Sammelleitung 459 und sämtliche Gatter, die zur Belieferung der Sammelleitung 459 -verwendet werden, unnötig und können im Register 400 weggelassen werden.
Es können weitere Ausführungen der Erfindung zusammengestellt werden. Z. B. können die Stufen eines Schieberegisters durch eine Gruppe von Reorganisations wegen 522 verbunden werden, die einen Weg je Stufe umfassen. Ferner können die Stufen durch eine Gruppe
109820/1577
von Schiebewegen 526 miteinander verbunden werden, die zwei derartiger Schiebewege je Stufe umfassen. Ein erster Schiebeweg je Stufe überträgt die Daten an eine benachbarte Stufe in vorwärtsrichtung des Schieberegisters wie vorher beschrieben, während ein zweiter Schiebeweg je Stufe die Daten an eine benachbarte Stufe in Rückwärts richtung des Schieberegisters überträgt. Es werden Reorganisationsimpulse erzeugt und in einer Weise angelegt, wie es vorher anhand der Fig. 2 beschrieben wurde. Es können Schiebeimpulse entsprechend der Schiebespannweite, die während jedes Intervalls vorhanden ist, angelegt werden, wobei die Möglichkeit von Vowärts- oder positiven Verschiebungen wie auch von Rückwärts- oder negativen Verschiebungen in Betracht gezogen wird.
Die maximale Zeit der Übertragungsintervalle oder Zeitgeberzyklen, die zur Beendigung einer Gesamtverschiebungsoperation in einem derartigen Register erforderlich ist, kann dahingehend bestimmt werden, daß sie gleich (3+1/2 ( l+(log n)) Intervallen ist, wenn Q eine ungerade Zahl ist, in dem die Anzahl der Übertragungsintervalle betrachtet wird, die während des Vorhandenseins jeder neuen Folge von Daten erforderlich sind, zusammen mit der Anzahl von Datenfolgen, die für jede Gesamtverschiebung sop er ation erforderlich sind.
109820/1577
Während des Vorhandenseins jeder Datenfolge gibt es (Q+l)/2 Datenintervalle. Es werden (Q-1)/2 Verschiebungsintervalle während des. Vorhandenseins jeder Folge verwendet. Zusätzlich zu den Schiebeintervallen ist für jede Folge das Einleseintervall und das Reorganisationsübertragungsintervall erforderlich. Die Summe des Reorganisationsintervalls und der (Q-I)/2 Verschiebeintervalle ist gleich der (Q+l)/2 Übertragungsintervallen, die je Folge erforderlich sind.
Während jeder Gesamtverschiebungsoperation sind (l+(log_n)) Datenfolgen notwendig, um alle möglichen Gesamtverschiebungsoperationen in einem Register durchzuführen, dessen Reorganisationskonstante Q gleich einer ungeraden Zahl ist. Der Ausdruck (logQn) ist numerisch gleich der größten ganzen Zahl, die kleiner als log^n ist.
Da (l+(log0n)) Datenfolgen notwendig sind, um eine Gesamtverschiebungsoperation durchzuführen, während (Q+l)/2 Übertragungsintervalle für jede Folge notwendig sind, sind nur (Q+l)/ö (£+(log_n)) Übertragungsintervalle notwendig, um jpede mögliche Gesamtverschiebungsoperation in einem Register durchzuführen, bei dem Q gleich einer ungeraden Zahl ist.
109820/1677
Wenn man annimmt, daß das Einlesen von Daten in ein derartiges Register eine erste Reorganisationsübertragung ist, treten die Intervalle der Übertragungsoperationen in folgender Reihenfolge auf: Einlese- oder erstes Reorganisationsintervall, Schiebeintervall (vorwärts, rückwärts oder keine Verschiebung), Schiebeintervall (vorwärts, rückwärts oder keine Verschiebung) .., (Q-l)/2 des Verschiebungsintervalls (vorwärts, rückwärts oder keine \erschiebung), Reorganisationsintervall, Verschiebeintervall (vorwärts, rückwärts oder keine Verschiebung), Verschiebeintervall (vorwärts, rückwärts oder keine Verschiebung) ... (Q-l)/2 des Verschiebeintervalls (vorwärts, rückwärts oder keine Verschiebung) ... bis eine Anzahl von Übertragungsintervallen gleich (Q+l)/2 (j.+(log„n)) in einem Register aufgetreten ist, bei dem Q gleich einer ungeraden Zahl ist.
Die maximale Zeit für Übertragungsintervalle oder Zeitgeberzyklen, die erforderlich ist, um eine GesamtvBrßchiebungsoperation in einem derartigen Register durchzuführen, kann dahingehend bestimmt werden, daß sie gleich (1+%)(1+ (log^( ))) Intervallen ist, wenn Q eine gerade Zahl ist, in dem die Anzahl der Übertragungsintervalle betrachtet wird, die während des Vorhandenseins jeder neuen Folge von Daten erforderlich ist, zusammen mit der Zahl von Datenfolgen, die für jede Gesamtverschiebungsoperation notwendig ist.
109820/1577
Während des Vorhandenseins jeder Datenfolge sind (— + 1) Übertragungsintervalle vorhanden. Es werden Q/2 Schiebeintervalle während des Vorhandenseins jeder Folge benutzt. Zusätzlich zu den Schiebeintervallen ist das Einleseintervall oder Reorganisations Übertragungsintervall vorhanden, das für jede Folge erforderlich ist. Die Summe des Reorganisationsintervalls und der Q/2 Schiebe intervalle ist gleich den (—+1) Übertragungsintervallen, die je Folge erforderlich sind.
Während jeder Gesamtverschiebeoperation sind
(1 + (log ——) )) Datenfolgen erforderlich, um alle möglichen Gesamtverschiebungsoperationen in einem Register durchzuführen, dessen Q gleich einer geraden Zahl ist. Der Ausdruck (log„( )
ist numerisch gleich der größten ganzen Zahl die kleiner als die
_ ,.. . A-n + nQ . .
Zahl log ( ^-^ ist.
Da (1 + (log ( rr——) )) Datenfolgen erforderlich sind, um eine
Q Q
Gesamtverschiebeoperation durchzuführen und da (— +1) Über-
Ci
tragungsintervalle für jede Folge erforderlich sind, sind nur (—·+ I)(I + (log^J ——))) Übertragungsintervalle zur Durchführung jeder möglichen Gesamtverschiebeoperation in einem Register notwendig, wenn Q gleich einer geraden Zahl ist.
109820/1577

Claims (10)

PATENTANSPRÜCHE
1. Schieberegister bestehend aus einem geschlossenen Kreis
von η Stufen, das eine Steueranordnung enthält, um Datenbits zwischen den Stufen zu übertragen,
dadurch gekennzeichnet, daß die Steueranordnung (521) eine Verkopplungsschaltung (520) enthält, um eine Folge von Daten periodisch in neue Folgen zu reorganisieren, wobei die aufeinanderfolgenden neuen Datenfolgen jeweils eine andere Verschiebungsspannweite K haben, die gleich den aufeinanderfolgenden Ausdrucken einer Potenzreihe einer Reorganisations konstanten Q ist.
2. Schieberegister nach Anspruch 1, dadurch gekennzeichnet, daß die Steueranordnung (521) Reorganisationswege (436 und 434) von irgendwelchen zwei Stufen (z. B. 402 und 404) die mit i und (i+QHttiod n) während eines ersten Intervalls t enthält, um dort gespeicherte Bits auf Stufen (z.B. 407 und 408), die mit j und (j + 1) (mod n) während eines zweiten Intervalls (t + 1) zu übertragen, wobei Q für jede Stufe des Registers eine Konstante ist.
3. Schieberegister nach Anspruch 1, dadurch gekennzeichnet, daß die Steuerschaltung (521) Reorganisationswege (522) enthält,
109820/1877
1 574BgO
um eine Folge von Bits
M1Ct), M1+I(t)(modn), ... M^-^t)(mod n) zu einer Zeit t in mehrere neue Bitfolgen zu reorganisieren, wobei die erste neue Folge zur Zeit (t+1) die Form fy n), M^ (t+1) (mod n),
i)d n), ... M^n_-1)Q(t+l)(mod n),
wobei ferner die erste neue Bitfolge eine Vers chiebungs Spannweite K hat und schließlich nachfolgende neue Bitfolgen jeweils eine verschiedene VerschiebungsSpannweite K entsprechend den aufeinanderfolgenden Ausdrücken einer Potenzreihe einer Reorganisationskonstante Q haben.
4. Schieberegister nach Anspruch 3, dadurch gekennzeichnet, daß die Steuerschaltung (521) eine Reorganisationsimpulsquelle (40) enthält, um die Reorganisationswege in vorbestimmter Weise so oft zu betätigen, daß die Bitfolge über einen Zyklus von verschiedenen Folgen, der in der anfänglichen Folge endet, verändert wird.
5. Schieberegister nach Anspruch 4, dadurch gekennzeichnet, daß die Verkopplungsschaltung (520) Schiebew.ege (526) enthält, um Bitse die in Stufen (s, B, 407, 408) gespeichert sind, zu
1Ö982Ö/1SH
benachbarten Stufen (ζ. B. 408, 409) zu übertragen und daß die Steueranordnung (521) eine Schiebeimpulsquelle (60) enthält, um die Schiebewege (526) mit Reihen von Schiebeimpulsen zu betätigen, die so ausgewählt sind, daß sie eine gewünschte Gesamtverschiebung während des Zyklus der verschiedenen Polgen vornehmen.
6. Schieberegister nach Anspruch 1, dadurch gekennzeichnet, daß die Verkopplungsschaltung (520) η Reorganisations wege (522) zwischen den Stufen enthält.
7. Schieberegister nach Anspruch 6, dadurch gekennzeichnet, daß die Verkopplungsschaltung (520) η Schiebewege (526) zwischen den Stufen enthält.
8. Schieberegister nach Anspruch 1, dadurch gekennzeichnet, daß die Verkopplungsschaltung (520) mehr als η Schiebewege (526) zwischen den Stufen und η Reorganisationswege (522) zwischen den Stufen enthält.
9. Schieberegister nach Anspruch 1, dadurch gekennzeichnet, flaß die Verkopplungsschaltung (520) η Schiebewege (526) zwischen den Stufen und mehr als η Reorganisationswege (522) zwischen den Stufen enthält.
109820/1S77
sr
10. Schieberegister nach Anspruch 1, dadurch gekennzeichnet, daß die Verkopplungsschaltung (520) η primäre und η sekundäre Reorganisationswege (522) enthält.
105820/1677
DE1574660A 1967-03-06 1968-03-05 Schieberegister hoher Geschwindigkeit Expired DE1574660C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US62105267A 1967-03-06 1967-03-06

Publications (3)

Publication Number Publication Date
DE1574660A1 true DE1574660A1 (de) 1971-05-13
DE1574660B2 DE1574660B2 (de) 1973-05-30
DE1574660C3 DE1574660C3 (de) 1974-01-10

Family

ID=24488513

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1574660A Expired DE1574660C3 (de) 1967-03-06 1968-03-05 Schieberegister hoher Geschwindigkeit

Country Status (8)

Country Link
US (1) US3496475A (de)
JP (1) JPS5229132B1 (de)
BE (1) BE711677A (de)
DE (1) DE1574660C3 (de)
FR (1) FR1559910A (de)
GB (1) GB1206701A (de)
NL (1) NL6802727A (de)
SE (1) SE351312B (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3643221A (en) * 1970-04-16 1972-02-15 Ibm Channel buffer for data processing system
US3605024A (en) * 1970-06-01 1971-09-14 Goodyear Aerospace Corp Apparatus for shifting data in a long register
US3866023A (en) * 1971-12-29 1975-02-11 Honeywell Inf Systems Apparatus and method for bidirectional shift register operation
JPS53123915A (en) * 1977-04-04 1978-10-28 Sanyo Electric Co Ltd Diaphragm for speakers
JPS53153935U (de) * 1977-05-10 1978-12-04
JPS5546624A (en) * 1978-09-28 1980-04-01 Pioneer Electronic Corp Diaphragm for plane-diaphragm type speaker
JPH0511027A (ja) * 1991-07-04 1993-01-19 Sharp Corp スキヤン回路を内蔵した集積回路

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3239764A (en) * 1963-08-29 1966-03-08 Ibm Shift register employing logic blocks arranged in closed loop and means for selectively shifting bit positions
US3374463A (en) * 1964-12-23 1968-03-19 Bell Telephone Labor Inc Shift and rotate circuit for a data processor
US3374468A (en) * 1964-12-23 1968-03-19 Bell Telephone Labor Inc Shift and rotate circuit for a data processor
US3421092A (en) * 1965-10-22 1969-01-07 Hughes Aircraft Co Multirank multistage shift register

Also Published As

Publication number Publication date
JPS5229132B1 (de) 1977-07-30
NL6802727A (de) 1968-09-09
FR1559910A (de) 1969-03-14
GB1206701A (en) 1970-09-30
SE351312B (de) 1972-11-20
DE1574660B2 (de) 1973-05-30
BE711677A (de) 1968-07-15
US3496475A (en) 1970-02-17
DE1574660C3 (de) 1974-01-10

Similar Documents

Publication Publication Date Title
DE856608C (de) Schaltanordnung zur UEbertragung von verschluesselten elektrischen Impulszuegen
DE3606406A1 (de) Konfigurierbares logikelement
DE2007353C3 (de) Vierteiliges Addierwerk
DE1574660A1 (de) Schieberegister hoher Geschwindigkeit
DE1260530B (de) Zaehlschaltung zur Zaehlung jedes von einer Vielzahl von angelegten Eingangsimpulsen
DE1107431B (de) Programm-UEberspringungs- und Wiederholungsschaltung
DE3001388A1 (de) Frequenzteiler
DE1044465B (de) Schieberegister mit einer Kette von Triggerkreisen
DE3524797A1 (de) Anordnung zur bitparallelen addition von binaerzahlen
DE1073222B (de) Programmschritt Steuerung fur elek ironische Rechenmaschinen 14 1 5^ V St Amerika
DE2017132B2 (de) Binärer Parallel-Addierer
DE1018657B (de) Mit Impulsgruppen nach der binaeren Zaehlweise arbeitendes Rechengeraet
EP0333884B1 (de) CMOS-Parallel-Serien-Multiplizierschaltung sowie deren Multiplizier- und Addierstufen
DE1151684B (de) Elektronisch arbeitende Rechenmaschine mit einer Programmvorrichtung
DE1512260B2 (de) Verfahren und einrichtung zur datenuebertragung durch puls-phasen-modulation
DE1105207B (de) Speichereinrichtung
DE831922C (de) Zaehl- und Rechenmaschine mit durch Elektronenroehren gesteuerter Summierungseinrichtung
DE2210037A1 (de) Speicher-Prozessor-Element
DE1236247B (de) Serienrechenmaschine
DE1549483A1 (de) Schaltungsanordnung zur Durchfuehrung logischer und arithmetischer Grundoperationen
DE2337356C3 (de) Im Dualsystem arbeitende Multiplizierschaltung
DE1001837B (de) Elektronisches Rechenmaschinenelement
DE1021601B (de) Elektronischer Umschalter
DE2704258B2 (de) Digital-Analog-Wandler
DE1774606C (de) Speicheranordnung zur Durchführung logischer und arithmetischer Grundoperationen

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
E77 Valid patent as to the heymanns-index 1977
8339 Ceased/non-payment of the annual fee