DE1474581A1 - Schiebe- und Rotierschaltung fuer eine Datenverarbeitungsanlage - Google Patents
Schiebe- und Rotierschaltung fuer eine DatenverarbeitungsanlageInfo
- Publication number
- DE1474581A1 DE1474581A1 DE19651474581 DE1474581A DE1474581A1 DE 1474581 A1 DE1474581 A1 DE 1474581A1 DE 19651474581 DE19651474581 DE 19651474581 DE 1474581 A DE1474581 A DE 1474581A DE 1474581 A1 DE1474581 A1 DE 1474581A1
- Authority
- DE
- Germany
- Prior art keywords
- gates
- bits
- vertical
- shift
- paths
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/01—Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
- G06F5/015—Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising having at least two separately controlled shifting levels, e.g. using shifting matrices
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C19/00—Digital stores in which the information is moved stepwise, e.g. shift registers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Image Processing (AREA)
- Complex Calculations (AREA)
Description
Western Electric Company D. Muir III "5
Incorporated
New York, N.Y. 10007 USA
New York, N.Y. 10007 USA
Schiebe- und Rotierachaltung für eine Datenverarbeitungsanlage
Die Erfindung betrifft eine Schiebe- und Rotierschaltung zum Verschieben und Kotieren der Bit in den Stufen eines Registers
mit einer Anordnung zum Rotieren der Bit im Register in einer ersten Richtung.
In vielen Datenverarbeitungsanlagen müssen Datenworte verschoben
und rotiert werden. Bei bekannten Datenverarbeitungsanlagen wird ein l/ort zunächst in eines der Register der Anlage eingegeben.
Dann wird das Wort nach links oder Rechte verschoben oder rotiert. In der folgenden Beschreibung wird der Ausdruok "verschieben"
in seinem allgemeinen Sinn verwendet, umfaßt also die Rotier-Operation.
Trotzdem unterscheidet sich die Versohiebe-Operation von einer Rotier-Operation. Wenn die Bit eines Datenwortes bei
einer Rotier-Operation an einem Ende des Registers herausgeschoben werden, werden sie am anderen Ende des Registers wieder eingesetzt.
Wenn dagegen das Wort verschoben und nicht rotiert werden soll, werden die aus dem Register herausgeschobenen Bit am anderen
Ende nicht wieder eingesetzt. Stattdessen werden O-Werte in die
Stufen an diesem Ende des Registers eingeschrieben. Da das Datenwort nach rechts oder links versohoben oder rotiert werden kann,
sind vier verschiedene Operationen möglioh. Sie Größe der Versohiebung
muß in jedem Falle angegeben sein.
Bei bekannten Schiebe- und Rotiereohaltungen ist es allgemein
erforderlich gewesen, eine erste Anordnung zum Rotieren eines Datenwortes naoh reohts und eine zweite Anordnung zum Rotieren
eines Datenwortes naoh links vorzusehen. Verschiebungen in beiden
909839/1U9
Richtungen werden durch eine Sperrung der an einem Ende des Registers herausgeschobenen Bit durchgeführt. Die Schaltung für
Rotationen nach links ist üblicherweise identisch mit der Schaltung für Rotationen nach rechts mit der Ausnahme, daß die verschiedenen
Verbindungen in entgegengesetzter Richtung vorgenommen sind. Bisher war man der Meinung, daß eine einseitig gerichtete
Rotierschaltung nicht zur Durchführung von Verschiebungen und Rotationen in beiden Richtungen benutzt werden könnte.
Eine einseitig gerichtete Rotierschaltung kann zur Durchführung von Schiebe-Operationen in der i.etriebsrichtung benutzt werden,
indem das Wiedereinfügen der an einem Ende des Registers herausgesohobenen
Bit am anderen Ende gesperrt oder verhindert wird. Die gleiche Schaltung kann auch zur Durchführung einer Rotation
in der anderen Richtung benutzt werden, wenn das Komplement der Eingangsschiebegröße mit Bezug auf die Stufenzahl gebildet und
zur Steuerung einer Rotation in der Betriebsrichtung verwendet wird. Da man jedoch der Meinung war, daß einseitig gerichtete
Rotierschaltungen nicht zur Durchführung von Schiebe-Operationen in der anderen Richtung benutzt werden können, mußten bei bekannten
Datenverarbeitungsanlagen Schaltungen vorgesehen sein, die in beiden Richtungen arbeiten.
Die erfindungsgemäße Lösung dieser Aufgabe sieht vor, daü eine
mit den Stufen des Registers verbundene Schaltung zur Durchführung einer Schiebe-Operation in der anderen Richtung das Einschreiben
von O-Jerten in diejenigen Stufen steuert, die nach Beendigung
einer Rotations-Operation im anderen Falle Bit enthalten, die nioht an einem Ende des Registers herausgeschoben und am anderen
Ende wieder eingefügt worden sind.
Eine solche Anordnung bietet den Vorteil, daß Schiebe- und Rotations-Operationen
in beiden Richtungen mit Hilfe einer einseitig gerichteten Rotierschaltung durchgeführt werden können.
909839/1U9
Ein besseres Verständnis der Erfindung ergibt sich aus der folgenden Beschreibung anhand der Zeichnungen. Es zeigen:
Fig. 1 die grundsätzliche Arbeitsweise einer Schiebe-
und Rotierschaltung für eine Datenverarbeitungsanlage, bei der die Datenworte 16 Bit lang sind;
Fig.2 die grundsätzliche Arbeitsweise einer Schiebe- und
Rotierschaltung als Ausführungsbeispiel der Erfindung für eine Datenverarbeitungsanlage, bei
der die Datenworte 20 Bit lang sind;
Fig. 3A die Einzelheiten eines in Fig. 8B symbolisch dargestellten
Ausführungsbeispiels für ein Gatter, das in dem Blockschaltbild der Figuren 4-11 verwendet
werden kann, und Fig. 8C die Operation des Gatters für verschiedene Eingangsbedingungen}
Fig. 4-11 das erfindungsgemäße Ausführungsbeispiel einer Schiebe- und Rotierschaltung zur Verwendung in
Verbindung mit einem 20-stufigen Register;
Fig. 12 die Zuordnung der Figuren 4-11»
In dem Ausführungsbeispiel der Erfindung wird eine einseitig gerichtete Rotierschaltung in Verbindung mit dem Register benutzt.
In der Anlage, in Verbindung mit welcher die Erfindung erläutert wird, können die Bit in dem Register bei jedem einzelnen Schritt
um 1, 2, 4» ö oder 16 Positionen verschoben werden. Demgemäß ist beispielsweise eine Gruppe von Gatterwegen vorgesehen, die von
jeder Stufe zu der um 4 Positionen weiter rechts gelegenen Stufe führt, und wenn alle diese Gatterwege zusammen betätigt werden,
wird das gesamte Datenwort in einem einzigen Schritt um 4 Positionen nach rechts rotiert. Die anderen 4 Gruppen von Gatterwegen
steuern die Rotation des Datenwortes um 1, 2, 8 und 16 Positionen nach rechte. In dieser Anlage sind also statt nur eine Gruppe von
Gattern zur Verschiebung der Daten-Bit um eine Position vorzusehen, zusätzlich vier Gruppen von Gattern angeordnet. Die Schaltung
ist zwar komplizierter, aber eine Schiebe- oder Rotier-Operation läßt sich sehr schnell durchführen. Beispielsweise kann
909839/1U9
eine Rotation um 19 Positionen nach rechts in nur drei Schritten
dadurch erzielt werden, daß nacheinander die drei Gruppen von Gattern betätigt werden, die die Verschiebung von Bit um 1, 2
und 16 Positionen steuern.
Eine solche Anlage gibt zwar die Möglichkeit, ein Datenwort schnell zu verschieben oder zu rotieren, aber bisher hätte man
die vier Gruppen von Gattern, die Schiebe- und Rotations-Operationen nach rechts steuern, verdoppeln müssen, um Schiebe- und
Rotations-Operationen nach links zu steuern. Bei dem Ausführungsbeispiel der Erfindung sind dagegen die verdoppelten Gatter in
der Links-Richtung nicht erforderlich, da die Schaltungen für eine Rotation nach rechts benutzt werden können, um alle vier
Arten von Schiebe-Operationen durchzuführen. Es sind fünf Gruppen von Gattern vorgesehen, und die Gatter in jeder Gruppe steuern
jeweils Verschiebungen nach rechts um 1, 2, 4t 8 und 16 Positionen.
Statt die fünf Gruppen von Gattern zur Steuerung von Operationen in der Links-Richtung zu verdoppeln, ist eine einzige
Gruppe von Gattern vorgesehen, von denen jeweils eine an jede Stufe angeschaltet ist. Jedes Gatter steuert das Einschreiben
einer 0 in die entsprechende Stufe. Durch eine Betätigung der aeohsten Gruppe von Gattern zusammen mit den ursprünglichen fünf
Gruppen können Verschiebungen nach links durchgeführt werden.
Wenn Schaltungen für eine Rotation nach rechts vorgesehen sind, lassen sich Verschiebungen naoh reohts leicht durchführen. Ee
ist nur erforderlich, das Wiedereintreten von auf der rechten Seite des Registers herausgeschobenen Bit in die linke Seite zu
sperren. Auch Rotationen nach links lassen sieh durchführen, indem zunächst das Komplement der Schiebegröße mit Bezug auf die
Zahl der Registerstufen gebildet und dann das Datenwort nach rechts rotiert wird. Wenn beispielsweise das Datenwort in einem
20-stufigen Register um 7 Positionen nach links rotiert werden soll, läßt sich die Rotation naoh links durchführen, indem das
Datenwort um 13 Positionen nach reohts rotiert wird. Bisher war
909839/1149
man jedoch der Leinung, daß Schaltungen für eine Rotation nach rechts nicht zur Durchführung von Verschiebungen nach links benutzt
werden könnten. Auch wenn das Komplement der Schiebegröße mit Bezug auf die Stufenzahl im Register gebildet und das Wort
dann naoh reohts rotiert wird, sind die Bit, die gegebenenfalls
im Register verbleiben müssen, diejenigen, die auf der rechten Seite aus dem Register herausgeschoben werden. Folglich darf der
Wiedereintritt dieser Bit auf der linken Seite des Registers nicht gesperrt sein. Sie zu löschenden Bit sind diejenigen, die
das Register niemals verlassen haben. Es sei beispielsweise eine Verschiebung nach links um vier Positionen in einem sechs-stufigen
Register betrachtet. Dazu sei angenommen, daß das Register zu Anfang ein Datenwort mit 6 Bit enthält, das durch die folgende
Reihe dargestellt wirdi 6 5 4 3 2 1. Wenn das Komplement der Schiebegröße (nach links), 4t mit Bezug auf die Stufenzahl, 6,
gebildet wird, ist die sich ergebende Schiebegröße 2. Wenn die Bit dann um zwei Positionen naoh reohts rotiert werden, enthält
das Register die folgende Reihe« 2 16 5 4 3· Wenn aber das ursprüngliche
Wort im Register um vier Positionen nach links zu verschieben ist, lautet das Wort, das am Schluß im Register
erscheinen soll, 2 1 0 0 0 0, wobei eine 0 das Lösohen eines Bit.
angibt. Es zeigt sich also, daß, wenn zunäohst das Komplement der Schiebegröße mit Bezug auf die Stufenzahl gebildet, und die
Bit dann nach reohts um eine Zahl von Stufen rotiert werden, die gleich dem Komplement ist, die Bit, die im Register verbleiben
müssen, diejenigen sind, die auf der rechten Seite herausgeschoben und auf der linken Seite wieder eingefügt wurden, und die
zu löschenden Bit diejenigen sind, die auf der reohten Seite des
Registers nicht herausgeschoben worden sind. Im Gegensatz zu den Verschiebungen naoh reohts scheint also keine einfaohe Sperranordnung
zur Durchführung von Verschiebungen naoh links zur Verfügung zu stehen.
Bei dem Ausführungsbeispiel der Erfindung werden Verschiebungen naoh links unter Verwendung der Schaltung für Rotationen naoh
reohts duroh Lösohen derjenigen Bit im Register durchgeführt,
909839/1149
die die rechte Seite des Registers nicht verlassen. Mit Vorteil
können diese Bit während des Schiebevorgangs gelöscht werden, und zwar wird ein Bit dann gelöscht, wenn feststeht, daß es die
rechte Seite des Registers bei Beendigung der Verschiebe-Operation auf keinen Pail verlassen wird. Mit anderen Worten, es können
O-Werte in einige Stufen des Registers sogar vor Beendigung der Verechiebe-Operation eingeschrieben werden, wenn feststeht, daß
die Bit in diesen Stufen nicht aus dem Register herausgeschoben werden können. Dieses Verfahren läßt sich sowohl bei herkömmlichen
Sohiebe- und Rotierschaltungen anwenden, bei denen die Bit jeweils nur um eine Position verschoben werden können, als auch bei
Schiebe- und Rotierschaltungen, bei denen die Verschiebung auf einen Schlag erfolgt. In beiden Fällen lassen sich einseitig gerichtete
Rotierschaltungen zur Durchführung von Verschiebe- und Rotations-Operationen in beiden Richtungen verwenden.
für 16 Bit (Fig.1)
In Fig. 1 ist eine Matrix-Anordnung von ve». Knoten gezeigt, die
16 Spalten und 5 Zeilen enthält. Jeder Knoten stellt eine Stufe des Registers dar, und alle Stufen sind wenigstens 5 ^aI gezeigt.
Die Knoten in jeder Spalte bedeuten die gleiche Registerstufe.
Jeder Knoten ist mit einer Zahl und einem Buchstaben bezeichnet. Beispielsweise liegt der Knoten TD in der Spalte 7 und der Zeile
D und stellt die Stufe 7 dea Registers dar. Die Knoten 7A, 7B,
7C und 7E stellen ebenfalls die Stufe 1 des Registers dar. Alle
Knoten rechts von der Linie L-L tragen die gleichen Bezeichnungen wie die entsprechenden Knoten auf der linken Seite der Linie L-L,
so daß jede Stufe nur einmal in jeder Zeile dargestellt ist.
Eine vertikale oder diagonale Linie zwischen zwei beliebigen
Knoten stellt einen Übertragungsweg dar. Der Bit-Wert an jedem
909839/1149
knoten, d.h., in jeder Stufe, wird entweder üoer den Vertikalweg
zu dem knoten in der nächsten Zeile der gleichen Spalte oder über einen Diagonalweg zu einem Knoten in der nächsten Zeile
übertragen, der weiter rechts liegt. Betrachtet man beispielsweise die knoten in der Zeile C, so können die Bit in den Registerstufen
unverändert bleiben oder zu Stufen verschoben werden, die um vier Positionen weiter rechts liegen. Das im einzelnen
weiter unten beschriebene System enthält eine einzige Gruppe von "Vertikal"-Gattern, von denen jedes nur das erneute Einschreiben
eines Bit im Register in die gleiche Stufe steuert. Das System enthält außerdem vier Gruppen von "Diagonal"-Gattern, die das
Verschieben der Bit in Schritten von 1, 2, 4 und 8 Positionen ™
steuern. Zur Durchführung einer Rotation nach rechts sind vier Schritte erforderlich. Während des ersten Schrittes ist entweder
die Gruppe von Vertikalgattern betätigt, oder die erste Gruppe von Diagonalgattern, die benachbarte Stufen verbinden. Wenn die
Vertikalgatter betätigt sind, wird das Datenwort im Register nicht verändert. Wenn die Diagonalgatter betätigt sind, wird das
Datenwort um eine Position nach rechts verschoben. Während dieses ersten Schrittes werden die Übertragungswege betrachtet, die von
den Ilnoten in der Zeile A der Fig. 1 ausgehen. Wenn die Vertikalwege
benutzt werden, bleiben die Bit im Register unverändert, da sie in die gleichen Stufen des Registers wieder eingeschrieben
werden, d.h., die Bit werden zu gleichbezifferten Knoten in der Λ
Zeile B übertragen. Wenn die Diagonalwege benutzt werden, werden die Bit im Register alle um eine Position nach rechts versohoben.
Während des zweiten Schrittes sind entweder alle Vertikalgatter betätigt, oder alle Diagonalgatter, die die Übertragung von Bit
von jeder Stufe zu der um zwei Positionen weiter rechts liegenden Stufe steuern, (in diesem Zusammenhang sei darauf hingewiesen,
daJi die Stufe zwei Positionen rechts von der Stufe 0 die Stufe ist, und daß die Stufe zwei Positionen rechts von der Stufe 1
die Stufe 15 ist.) Wenn die Vertikalgatter betätigt sind, wird
das Wort im Register nicht verändert. Das ergibt sich aus einer
909839/1U9
Prüfung der Fig. 1, da die Bit an jedem Knoten in der Zeile B
naoh unten zu dem gleichbezifferten Knoten in der Zeile C übertragen
werden, d.h., die Bit in jeder Registerstufe werden einfaoh
nur in die gleiche Stufe wieder eingeschrieben. Wenn andererseits während des zweiten Schrittes die Diagonalwege benutzt
werden, wird jedes Bit im Register um zwei Positionen naoh rechts rotiert. Da beispielsweise der Knoten 1OB über einen Diagonalweg
mit dem Knoten 8C verbunden ist, wird das Bit in der Stufe 10 des Registers zur Stufe 8 verschoben. Entsprechend wird das Bit
in der Stufe 0 zur Stufe 14 verschoben usw.
Beim dritten Verfahrensschritt sind entweder alle Vertikalgatter
betätigt, oder alle Diagonalgatter, die entsprechende Stufen mit vier Positionen weiter rechts liegenden Stufen verbinden. Wenn
die Vertikalgatter betätigt sind, wird das gesamte Datenwort einfach nur erneut in das Register eingeschrieben. Wenn die Diagonalgatter
betätigt sind, wird das Datenwort um vier Positionen nach rechts rotiert. Wiederum sind entweder alle Vertikalgatter
oder alle Gatter einer Gruppe von Diagonalgettern betätigt.
Gemäß Fig. 1 werden die Bit an den Knoten in der Zeile C entweder
direkt nach unten zu den Knoten in der Zeile D oder nach rechts zu den Knoten in der Zeile D übertragen. Entsprechendes gilt für
den vierten Verfahrenssohritt, bei dem wiederum alle Vertikalgatter oder alle Gatter in der vierten Gruppe von Diagonalgattern
betätigt sind. Im ersten Fall wird das Datenwort einfach nur erneut in das Register eingeschrieben. Im zweiten Fall wird das
Datenwort in einem einzigen Schritt um acht Positionen naoh rechts vereohoben. Es muß daran erinnert werden, daß die tatsächlich
durchgeführte Operation aus dem Einsohreiben von Bit in das Register
besteht, statt daß die Bit von einer Gruppe von Knoten zu einer anderen verschoben werden. Das ist auoh in Fig. 1 gezeigt,
wenn man daran denkt, daß die Knoten in allen fünf Zeilen die Stufen des gleichen Registers darstellen. Die Knoten-Darstellung
gemäß Fig. 1 ist jedooh nützlich, weil sie eine anachauliohe
Darstellung der verschiedenen Gesamtversohiebungen vermittelt.
909839/1149
Das Ausführungsbeispiel der Erfindung ist ein System mit 20 Bit,
dessen Sehaltschema in Fig. 2 dargestellt ist. Bevor jedoch dieses
verhältnismäßig komplizierte Schema analysiert wird, muß das einfachere Schema gemäß Fig. 1 verstanden werden. Die Verwirklichung
eines Systems mit 16 Bit, die auf dem Schaltplan gemäß Fig. 1
beruht, ist der Verwirklichung des Systems mit 20 Bit gemäß dem Schaltplan nach Fig. 2 ähnlich. Es sei zunächst eine Rotation
naoh rechte in einem System mit 16 Bit betraohtet. Die angegebene Schiebegröße betrage 11 Positionen. Da die Wahl von Diagonalschritten zur Durchführung einer Verschiebung um 11 Positionen
auf die Sohritte 1, 2, 4 und 8 beschränkt ist, sind die Diagonalschritte 1, 2 und 8 erforderlioh. Es sei beispielsweise das Bit
betrachtet, das sich zu Anfang in der Stufe ^ befindet. Während
des ereten Betriebssohrittes werden alle Diagonalwege zwisohen den
Knoten in der Zeile A und den Knoten in der Zeile B benutzt. Das Bit am Knoten 7A wird also zum Knoten 6B übertragen, d.h., das
Bit in der Stufe 7 des Registers wird zur Stufe 6 verschoben. Während des zweiten Betriebssohrittes werden die Diagonalwege
zwischen den Knoten in der Zeile B und den Knoten in der Zeile C statt der Vertikalwege benutzt. Das Bit am Knoten 65 wird also
zum Knoten 4C übertragen, d.h., das Bit in der Stufe 6 wird über
ein entsprechendes Diagonalgatter zur Stufe 4 gegeben. Während des dritten Betriebssohrittes werden alle Vertikalwege awisohen
den Knoten in der Zeile C und den Knoten in der Zeile D benutzt· Folglich wird das betraohtete Bit, das sioh jetzt am Knoten 4C
befindet, naoh unten zum Knoten 4D übertragen. Während dieses Betriebssohrittes sind alle 16 Vertikalgatter des Systems betätigt,
und das Bit in der Stufe 4 des Registers wird «infaoh nur neu in
diese Stufe eingeschrieben. Während des vierten Betriebesohrittes
werden alle Diagonalweg· zwischen den Knoten in der Zeile D und den Knoten in der Zeile E statt der Vertikalwege benutzt. Folglioh
wird das betraohtete Bit am Knoten 4D sub Knoten 12E übertragen, d.h., das Bit, das sioh ursprünglich in der Stufe 7 befand und
jetzt in der Stufe 4 ist, wird über das Diagonalgatter awisohen
der Stufe 4 und der Stufe 12 zur Stuft 12 übertragen. Naoh Durohführung der Tier Schritt· der Folge ersoheint also das Bit, das
909839/1149
ursprünglich in der Stufe 7 war, in der Stufe 12, d.h., das Bit ist wie verlangt, um 11 Positionen nach rechts rotiert worden.
Verschiebungen nach reohts lassen sich leicht durch eine Sperrung aller durch die Diagonal-Übertragungswege dargestellten Diagonalgatter
erreichen, welche die Linie L-L kreuzen. Es sei daran erinnert, daß "bei einer Verschiebung nach rechts die auf der rechten
Seite aus dem Register herausgeschobenen Bit auf der linken Seite des Registers nioht wieder eingefügt werden dürfen. Es sind also
während des ersten Betriebsschrittes, wenn die Vertikalwege benutzt werden, keine Vertikalgatter gesperrt. Wenn jedoch die
Diagonalwege benutzt werden, d.h., alle Bit um eine Position nach reohts versohoben werden, ist das Gatter, das die Stufe 0 mit der
Stufe 15 verbindet, gesperrt. Wenn ein Gatter gesperrt ist, so
soll dies bedeuten, daß automatisch eine 0 in die Stufe eingeschrieben
wird, zu der das Gatter ein Bit überträgt. Wenn also der Übertragungsweg zwischen dem Knoten OA und dem Knoten 15B
gesperrt ist, wird das Gatter, das die Stufe 0 des Registers mit der Stufe 15 verbindet, so gesteuert, daß es eine 0 in die Stufe
unabhängig von dem Bit-Wert einschreibt, der ursprünglich in der Stufe 0 vorhanden war.
Wenn während des zweiten Schrittes einer Verschiebung nach rechts die Vertikalwege zwisohen den Knoten in der Zeile B und den rinoten
in der Zeile C benutzt werden, ist keines der 16 Vertikalgatter
des Systems gesperrt. Wenn jedoch die Diagonalgatter benutzt werden, müssen die Bit, welche die Linie L-L kreuzen, gesperrt
werden. Es müssen also die Übertragungswege zwischen den Knoten OB und 14C und den Knoten 1B und 15C gesperrt sein. Die beiden
Gatter, die die Stufen 0 und 1 des Registers mit den Stufen 14 und 15 verbinden, werden so gesteuert, daß sie automatisch O-Werte
in die Stufen 14 und 15 unabhängig vom Wert der Bit in den Stufen 0 und 1 am Ende des Sohrittes 1 einschreiben.
909839/11A9
Eine entsprechende Analyse der Fig. 1 zeigt, daß während des dritten Schrittes, wenn die Diagonalgatter der dritten Gruppe
betätigt sind, vier dieser Gatter gesperrt sein müssen, da vier Diagonalwege zwischen den Knoten in der Zeile C und den Knoten
in der Zeile D die Linie L-L kreuzen. Die vier Diagonalgatter, welche die Stufen 0-3 mit den entsprechenden Stufen 12-15 verbinden,
werden so gesteuert, daß sie automatisch O-Werte in die Stufen 12-15 unabhängig vom Wert der Bit in den Stufen 0-3 am
Ende des zweiten Schrittes einschreiben. Entsprechend werden, wenn während des vierten Betriebsschrittes die vierte Gruppe von
Diagonalgattern statt der Vertikalgatter betätigt sind, acht dieser Diagonalgatter gesperrt und O-Werte automatisch in die ^
Stufen 8-15 des Registers unabhängig vom Wert der Bit in den
Stufen 0-7 am Ende des dritten Schrittes eingeschrieben. Ifaoh
Durchführung des entweder vertikal oder diagonal verlaufenden,* vierten Schrittes stellen die Bit, die an den Knoten in der
Zeile E erscheinen, das verschobene Datenwort dar, d.h., die Bit im Register sind die gleichen wie die ursprünglichen Bit im Register
mit der Ausnahme, daß sie um die verlangte Zahl von Stufen nach rechts verschoben sind.
Eine Rotation nach links läßt sich leicht erreiohen. Es wird lediglich das Komplement der Schiebegröße mit Bezug auf die Zahl
gebildet und zur Steuerung einer Rotation nach rechts verwendet.
Um beispielsweise das Datenwort um 7 Positionen naoh links zu "
rotieren, wird es um 9 Positionen naoh rechts rotiert. Es kann
also die Schaltung für Rotationen naoh rechts zur Durchführung von Rotationen nach links dadurch benutzt werden, daß einfach das
Komplement der Schiebegröße mit Bezug auf die Zahl 16 gebildet ; wird, bevor es als "Leitwort" zur Steuerung der tatsächlichen
Rotation (nach rechts) benutzt wird.
Die vierte zu betrachtende Operation ist eine Verschiebung naoh links. Wie oben erläutert, war man bisher der Ansioht, daß bekannte
Schaltungen für eine Rotation naoh rechts nicht zur Durchführung von Verschiebungen naoh links benutzt werden können.
909839/1U9
H74581
Erfindungsgemäß ist das jedoch möglich, wobei nur überraschend
wenige zusätzliche Steuerfunktionen erforderlich sind. Wenn auoh nur wenig zusätzliche Schaltungen benötigt werden', so kann doch
die Analyse in einer gegebenen Anlage sehr kompliziert sein. Aus diesem Grund soll jetzt der Fall mit 16 Bit im einzelnen betraohtet
werden.
Zur Durchführung von Verschiebungen nach linke mit Hilfe von Schaltungen für Hotationen nach rechts läßt sich das richtige
Leitwort wiederum dadurch gewinnen, daß zunächst das Komplement der gegebenen Versohiebegröße mit Bezug auf 16 gebildet wird.
Rotiert man dann das Eingangedatenwort um eine Zahl von Positionen
nach rechts, die gleich dem Komplement ist, so wird das Eingangsdatenwort im Ergebnis um die richtige Zahl von Positionen
naoh links rotiert. Bei einer Versohiebe-Operation müssen jedoch O-Werte an einem der Enden des Ausgangswortes eingeschrieben
werden. Bei Verschiebungen nach rewhts lassen sich O-Werte leicht
an den Knoten auf der linken Seite des Systems dadurch einsohreiben,
daß die Diagonalwege, die die Linie L-L kreuzen, gesperrt werden. Ein entsprechendes Sperrverfahren für Verschiebungen nach
links ist dagegen schwierig zu verwirklichen, da die Bit, die die Linie L-L kreuzen, im System verbleiben müssen, wenn das Eingangsdatenwort
naoh links verschoben wird, und diejenigen Bit, die die Linie L-L nicht kreuzen, dazu gebracht werden müssen, am Ende der
Operation O-Werte anzunehmen. Es sei beispielsweise ein Eingangsdatenwort
betraohtet, das aus 16 1-Werten besteht. Es sei angenommen,
daß die für die Verschiebung naoh links vorgegebene Größe 5 ist. Das sich am Schluß an den Knoten in der Zeile Ξ ergebende
Datenwort muß dann 1111111111100000 sein. Wenn das Eingangedatenwort
um 11 Positionen nach rechts rotiert wird, kreuzen die 11 Bit mit der niedrigsten Stellenzahl im Eingangswort die Linie L-L
und erscheinen in den 11 Positionen mit der höchsten Stellenzahl des eich am Schluß ergebenden Wortes. Nur den 5 Bit, die die
Linie L-L nicht kreuzen, muß bei ihrer Übertragung durch das System der Wert 0 gegeben werden, damit die 5 Bit mit der niedrigsten
909839/1U9
Stellenzahl in dem sich am Schluß ergebenden Wort alle den Wert
haten. Sie Änderung des Wertes dieser 5 Bit auf den Wert 0 erscheint sohwierig, da diese 5 Bit die Linie L-L niemals kreuzen,
und es ist nicht ohne weiteres einzusehen, daß eine bestimmte Gruppe von Diagonalwegen wie im Falle einer Verschiebung naoh
rechts gesperrt werden kann.
Der Ausgangspunkt der Analyse ist das folgende Prinzip, das sioh
aus der vorstehenden Erläuterung ableiten läßt ι Eine Schiebe-Operation naoh links läßt sich durchführen, wenn die verlangte
Größe der Verschiebung naoh links mit Bezug auf 16 ergänzt wird
und dann eine Übertragung naoh reohts duroh das Netzwerk nur für diejenigen Daten-Bit zugelassen wird, die die Linie L-L kreuzen.
Wenn an irgendeiner Stelle im Netzwerk 0-Werte für die Bit eingefügt werden, die die Linie L-L nioht kreuzen, erscheinen O-Werte
an den am weitesten reohts liegenden Knoten in der Zeile E, wie verlangt.
Die Diagonallinie D-D fällt mit dem Weg I5A-OE zusammen, der in
Wirklichkeit vier bestimmte Übertragungswege enthält. Alle Vertikalwege, welohe duroh die Linie D-D verlaufen, und alle Vertikalwege, die an einem Knoten auf der Linie D-D enden, sind in Fig. 1
gestrichelt. Es sind also der Weg OD-OE und der Ausgangeweg, der von Knoten OB naoh unten geht, gestrichelt, da sie an einen Knoten
auf der Linie D-D enden. Die 7 Vertikalwege 1D-1E bis 7D-7B sind
gestriohelt, da sie die Linie D-D kreuzen. Die beiden Vertikalwege 8C-8D und 8D-8B sind gestrichelt, da sie jeweils am Knoten
8D enden, der auf der Linie D-D liegt. Die 3 Vertikalwege 9C-9D
bis 11C-11D sind gestriohelt, weil sie die Linie D-D kreuzen,
die beiden Vertikalwege 12B-12C und 12C-12D sind gestriohelt, da
sie jeweils am Knoten 12C enden, duroh den die Linie D-D verläuft.
Der Vertikalweg 13B-13C ist gestriohelt, da die Linie D-D ihn kreuzt
Die beiden Vertikalweg 14A-I4B und 14B-I4C sind gestriohelt, da
sie am Knoten 14B enden, der auf der Linie D-D liegt. Der Vertikalweg I5A-I5B und der von oben zum Knoten ISA führende Vertikalweg
sind ebenfalls gestrichelt, da sie jeweils am Knoten 15A enden, der auf der Linie D-D liegt,
909839/1149
Naohdem die gestrichelten Vertikalwege bestimmt sind, läßt sich
eine Verschiebung nach links unter Verwendung der Schaltung für eine Rotation naoh rechts auf überraschend einfache Weise erreiohen.
Es ist nur erforderlioh, daß das Komplement der Eingangsgröße für die Verschiebung nach links mit Bezug auf 16 gebildet
und das Eingangsdatenwort dann nach reohts um eine Zahl von Positionen rotiert wird, die gleich dem Komplement ist, wobei
alle gestrichelten Vertikalwege gesperrt werden, das heißt, daß an den Knoten am unteren Ende jedes Weges automatisch O-Werte
eingeschrieben werden, wenn entsprechende Vertikalschritte durchgeführt werden. Durch die absolute Sperrung der gestrichelten
fe Vertikalwege bei der Durchführung einer Versohiebe-Operation nach
linke erscheinen automatisch O-Werte an der erforderlichen Zahl
von am weitesten rechtsstehenden Knoten in der Zeile D, d.h. es erscheinen automatisch O-Werte in der erforderlichen Anzahl
der am weitesten rechts liegenden Stufen im Register. Die Sperrung der Vertikalwege, die die Diagonale D-D kreuzen, hat die
Auswirkung, daß die Daten-Bit nur dann im Register bleiben dürfen, wenn sie die Linie L-L kreuzen. Es zeigt sich, daß die vier
Diagonalwege, die auf der Linie D-D liegen, ohne Machteil auf die Betriebsweise ebenfalls gesperrt werden könnten, da die
Sperrung der gestrichelten Vertikalwege sicherstellt, daß keine Daten-Bit jemals an Knoten auf der Linie D-D ankommen. Eine zweckmäßige
Verwendung für die Sperrung einiger dieser Diagonalwege
P soll weiter unten beschrieben werden.
Tür den Aufbau einer Sohiebe- und Rotierschaltung für andere
Datenworte als solche mit 16 Bit ist es erforderlich, klar zu verstehen, warum eine Sperrung der gestrichelten Vertikalwege
in Fig. 1 sicherstellt, daß O-Werte an der richtigen Zahl von am weitesten rechts stehenden Knoten in der Zeile E erscheinen,
nachdem das Eingangsdatenwort über das Netzwerk übertragen worden ist. Die Auswahl der zu strichelnden Vertikalwege beruht auf dem
oben angegebenen Pundamental-Prinzip. Durch eine Sperrung der
909839/1149
Vertikalwege, die durch die gestrichelten Linien dargestellt werden, wird garantiert, daß O-Werte für diejnigen Bit im ursprünglichen
Datenwort eingefügt werden, die die Linie L-L nicht kreuzen, wenn sie die Knoten in der Zeile E erreichen.
Die Vertikalwege in Fig. 2 lassen sich in drei Gruppen einordnen, nämlich die gestrichelten Wege im Bereich D-D, die Vertikalwege,
die rechts oben von den gestrichelten Wegen liegen, und die Vertikalwege, die links unten von den gestrichelten Wegen sind. Der
Schlüssel für dieses Schema der Vertikalwege besteht darin, daß sichergestellt werden soll, daß eine 0 für jedes Bit eingefügt
wird, das bei seiner Übertragung über das Netzwerk die Linie L-L ^
nicht kreuzen kann. Zunächst seien die Bit an den Knoten im oberen rechten Teil des Netzwerkes betrachtet. Das Bit am Knoten OA
kreuzt L-L, wenn ein Diagonalschritt 1 durchgeführt wird. Wenn jedoch ein Vertikalschritt erfolgt, und das Bit zum Knoten OB
übertragen wird, kann es später immer noch L-L kreuzen, wenn ein Schritt 2, 4 oder 8 entlang einer Diagonalen durchgeführt wird.
Polglich darf der Vertikalweg, der den Knoten OA mit dem Knoten 6b verbindet, nicht blockiert sein. Pur das Bit am Knoten OA
darf auch dann keine 0 eingesetzt werden, wenn ein Vertikalschritt
unternommen wird, da das Bit später die Linie L-L kreuzen kann und daher im System verbleiben sollte. Es sei ein anderer Knoten,
beispielsweise der Knoten 1JG betraohtet. Zu dem Zeitpunkt, in dem ^
das Bit am Knoten TC erscheint, ist eine Verschiebung um höohstens
3 Positionen nach rechts vorgenommen worden. Das Bit am Knoten 7C hat daher L-L bis jetzt noch nicht gekreuzt. Das Bit am Knoten
70 kann jedoch L-L noch kreuzen, wenn ein Diagonalsohritt zum
Knoten 3D oder ein Vertikalsohritt zum Knoten 7D erfolgt. In
beiden Fällen kann das ursprünglich am Knoten 7C vorhandene Bit jetzt L-L kreuzen, wenn die näohste Verschiebung um 8 Positionen
entlang der Diagonalen 7D-15E oder 3D-11E erfolgt. Folglioh darf der Vertikalweg vom Knoten 7 C nicht gesperrt sein, das heißt,
es soll keine 0 für das Bit am Knoten 7G eingesetzt werden und
zwar auch dann nicht, wenn der Vertikalweg 7C-7D benutzt wird, da
das Bit die Linie L-L noch kreuzen kann, wenn ein Diagonalschritt nit dem Wert θ vorgenommen wird.
909839/1U9
H74581
Ee seien jetzt die Knoten oberhalb der gestrichelten Vertikalwege
betraohtet, beginnend mit der Gruppe von Knoten 0D-8D. Bei der Übertragung der ursprünglichen Bit an den Kno'ten in der Zeile
A zu den Knoten in der Zeile D kann eine maximale Verschiebung um 7 Positionen stattgefunden haben. Die einzigen Bit an den
Knoten in der Zeile D, die L-L bereits gekreuzt haben können, sind diejenigen an den Knoten 15D-9D, den sieben am weitesten
links stehenden Knoten in der Zeile. Auf keine irgendwie geartete Weise können die Bit an den Knoten 8D-0D die Linie L-L bereits
gekreuzt haben. Wenn diese Bit die von der Zeile D naoh unten führenden Vertikalwege benutzen, haben sie L-L nicht gekreuzt,
wenn sie an den Ausgangsknoten 8E bis OE erscheinen. In diesem Fall haben diese Bit L-L nicht gekreuzt und sie sollten als
O-Werte in dem sich am Schluß ergebenden Wort erscheinen. Aus diesem Grund darf, wenn der Diagonalsohritt um 8 Positionen nicht
ausgeführt wird, OD nicht durch das System übertragen werden, und muß durch O-Werte ersetzt werden. Ein gesperrter Vertikalweg
führt dazu, daß eine 0 in den Knoten am Fuß des Vertikalweges eingeschrieben wird. Wenn also der Diagonalschritt um 8 Positionen
nicht ausgeführt wird, werden automatisch O-Werte an den Knoten 8E-0E eingeschrieben, d.h., es werden O-Werte automatisch
in die Stufen 8 bis 0 des Registers eingeschrieben.
Ein Leitwort stellt die wirkliche Schiebegröße für die Rotation nach rechts dar. Es enthält vier Bit, X1, X2, X4 und X8, die
jeweils nur dann den Wert 1 haben, wenn der entsprechende Diagonalschritt auszuführen ist. Da das Leitwort die tatsächlich ausgeführten
Schritte darstellt, ist seine Größe bei Verschiebungen naoh links das Komplement der Eingangsgröße mit Bezug auf 16.
Wenn beispielsweise bei einer Verschiebung naoh links die Eingangsgröße 9 ist, lautet das Leitwort 0111.
Es seien jetzt die Knoten in der Zeile C betraohtet. Die Vertikalwege,
die von den Knoten 7C-0C naoh unten führen, dürfen nicht
909839/1149
gesperrt werden, da, auch wenn die Bit an diesen Knoten die
Vertikalwege benutzen, die Bit immer noch die L-L kreuzen können, wenn X8 eine 1 ist. Dqs gleiche trifft aber nioht für die Knoten
12C-8C zu. Wenn der Schritt 4 gerade betrachtet wird, ist die maximale Verschiebung durch das Netzwerk bis jetzt 3 gewesen.
Polglich können Bit, die bereits die Linie L-L gekreuzt haben, an den Knoten 15C-13C auftreten. Dagegen können die Bit an den
Knoten 12C-0C auf keine Weise bereits die Linie L-L gekreuzt haben. Die Bit an den Knoten 7C-OC brauohen nioht beeinflußt zu werden,
wie oben erläutert. Es verbleiben also nur nooh die Bit an den Knoten 12C-8C. Wenn die Bit an diesen Knoten einen Vertikalsohritt
von der Zeile C ausführen und demgemäß an den Knoten 12D-8D erscheinen, können sie die Linie L-L auch dann nicht kreuzen, wenn
als nächstes der Dlagonalsahritt mit dem Wert θ erfolgt« Der
weiteste Funkt, den eines dieser Bit erreiohen kann, ist der Knoten OE. Da die Bit an den Knoten 12C-80 die Linie L-L nooh
nicht gekreuzt haben und sie auoh nioht kreuzen können, wenn X4 eine 0 ist, sind die Vertikalwege von den Knoten 12C bis 80 gesperrt. Wenn X4 eine 0 1st, werden automatisch 0-Werte an den
Knoten 12D-8D eingeschrieben.
Es seien jetzt die Knoten in der Zeile B betraohtet. Die Bit an
den Knoten ItB-OB brauohen nicht beeinflußt zu werden. Sie können nachfolgend die Linie L-L auch dann kreuzen, wenn sie Vertikalsohritte von den Knoten in der Zeile B zu den Knoten in der Zeile
C ausführen. Sogar das Bit am Knoten 11B kann die Linie L-L naoh einem Vertikalschritt zum Knoten 11C kreuzen, wenn die Bit X4
und ΧΘ den Wert 1 haben. Folglioh brauchen die Bit an den Knoten
11B-OB nioht beeinflußt zu werden.
Wenn der Sohritt von 2 Positionen betraohtet wird, kann die bereits vorgenommene Verschiebung maximal den Wert 1 haben. Folglioh
kann das Bit am Knoten 15B die Linie L-L bereits gekreuzt haben, wobei es vom Knoten OA gekommen ist. Dagegen können die Bit an
909839/1149
den Knoten 14B-12B die Linie L-L noch nicht gekreuzt haben,
und wenn diese Bit Vertikalwege in der Zeile B benutzen, besteht keine Möglichkeit mehr, daß sie nachfolgend die Linie L-L kreuzen,
und zwar auch dann nicht, wenn X4 und ΧΘ den Wert 1 haben. Auoh
das Bit am Knoten 12B kann L-L nicht kreuzen, wenn es vertikal
naoh unten zum Knoten 12C übertragen wird. Wenn X4 und X8 beide den Wert 1 haben, kann dieses Bit nicht weiter alβ bis zum Knoten
OE gelangen. Da die 3 Bit an den Knoten HB-12B die Linie L-L nicht kreuzen können, wenn X2 den Wert 0 hat, sind die 3 entspreohenden
Wege gesperrt. Durch das Sperren dieser Wege und das automatische Einschreiben von O-Werten an den Knoten 14C-12G
erscheinen diese Bit in dem sioh am Schluß ergebenden Datenv/ort
als O-Werte.
Es seien jetzt die Knoten in der Zeile A betrachtet. Die Bit an den Knoten 13A bis OA können die Linie L-L auch dann kreuzen,
wenn X1 den Wert 0 hat. Beispielsweise kann das Bit am Knoten 13A, auoh wenn es vertikal zum Knoten 13B übertragen wird, immer
noch die Linie L-L kreuzen, falls X2, X4 und X8 alle den Wert haben. Aus diesem Grunde brauchen die Bit an den Knoten 13A-OA
nioht beeinflußt zu werden. Für die Knoten 15A und 14A gilt dies
jedoch nicht. Wenn X1 eine 0 ist, würden die Bit im System mit den höohsten Ziffernstellen zu den Knoten I5B und 14B übertragen.
Diese Bit können dann niemals mehr die Linie L-L kreuzen, auch dann nicht, wenn X2, X4 und ΧΘ den Wert 1 haben. Sas Bit am
Knoten 14B kann höchstens bis zum Knoten OE gelangen. Folglich Bind die beiden Yertikalwege 15A-I5B und I4A-14B bei der Verschiebung
naoh links gesperrt. Wenn also das Wort für das Komplement der Versohiebegröße eine 0 für das Bit X1 enthält, müssen
an den Knoten 15B und 14B automatisch O-Werte eingeschrieben
werden, d.h., O-Werte müssen in die Stufen 15 und 14 automatisch
eingeschrieben werden.
Man beachte, daß die vertikale Linie oberhalb des Knotens 15A ebenfalls gestrichelt ist. Die maximale Größe einer Rotation
naoh reohts, die angegeben werden kann, ist I5. Folglich kann
909839/1 U9
das Sit am Knoten I5A die Linie L-L niemals kreuzen, da es
höchstens bis zum Knoten OE gelangen kann. Die kleinste Größe, die bei einer Verschiebung nach links angegeben werden kann,
ist 1. VIenn eine Verschiebung nach links um den Wert 1 angegeben
wird, wird das Datenwort um I5 Positionen nach rechts rotiert.
Dadurch, daß immer eine 0 am Knoten 15A eingeschrieben wird,
erscheint eine 0 am Knoten OE. Das ist offensichtlich erforderlich, da bei jeder Verschiebung nach links, außer bei dem Trivialfall einer Verschiebung nach links mit dem \7ert Null, eine 0 in
der Position mit der niedrigsten Ziffernstelle des sich am Schluß ergebenden Drtenwortes erscheinen muß. Aus diesem Grund ist der
Ausgangsweg unterhalb der !!noten OE bei Verschiebungen naoh links
gesperrt. Einige weitere Polgerungen bezüglich dieser beiden letzterwähnten gestrichelten Wege sollen weiter unten beschrieben
werden.
Auf diese V/eise wird durch Sperrung aller gestrichelten Vertikalwege
sichergestellt, daß O-Werte für alle Bit eingesetzt werden,
die an den Knoten oberhalb dieser Wege erscheinen und keine Möglichkeit haben, die Linie L-L zu kreuzen. Die Knoten der Gruppe
im oberen rechten Bereich des Netzwerkes brauchen nicht beeinflußt zu werden, da die Bit an diesen Knoten auoh dann die Linie L-L
kreuzen können, wenn Vertikalschritte von diesen Knoten aus erfolgen. Die einzigen Knoten, die noch betrachtet werden müssen,
sind diejenigen, die unterhalb und links von den gestrichelten Vertikalwegen liegen, nämlich die Knoten 15E-IE, 15D-9-D, 15C-13C
und 15B. Die Bit an diesen Knoten brauchen ebenfalls nicht beeinfluLt
zu werden. Wenn eine 0 an einem dieser Knoten ersoheint, braucht keine Beeinflussung stattzufinden, da eine Sperrung der
vertikalen Übertragung ebenfalls dazu führen würde, daß eine 0 über das Hetzwerk übertragen wird. Auch wenn die Bit an diesen
Knoten den Wert 1 haben, müssen sie die Linie L-L bereits gekreuzt haben und soltten folglich im Netzwerk verbleiben. Beispielsweise
kann das Bit am Knoten I5C nicht vom Knoten 15A gekommen sein,
da das Bit am Knoten I5A für Verschiebungen nach links immer 0 ist.
909839/1 U9
U74581
Wenn das Bit am Knoten 15C eine 1 ist, muß es naoh einer Diagonalvers
ohiebung von 1 und einem Vertikalschritt von 2 vom Knoten OA und naoh einem Vertikalsohritt von 1 und einer Diagonalversohiebung
von 2 vom Knoten 1A gekommen sein, oder nach Diagonalversohiebungen
mit dem Y/ert 1 und 2 vom Knoten 2A. In jedem Fall
hat das Bit am Knoten I5C die Linie L-L bereits gekreuzt und
braucht am Knoten I50 nicht mehr beeinflußt zu werden. Entspreohend
müssen 1-Werte, die an den anderen Knoten erscheinen, die Linie L-L bereits gekreuzt haben und, da sie im System bleiben
sollen, dürfen die Vertikalwege von diesen Knoten nicht gesperrt sein.
(Beachte, daß bei dem speziellen Beispiel gemäß Figur 1 Verschiebungen
und Rotationen mit dem Wert 16 nicht zugelassen sind, da
der Maximalwert des Leitwortes I5 ist. Außerdem muß, wenn eine
Schaltung für ein System mit 16 Bit gemäß Fig.1 aufgebaut wird,
Vorsorge für den Trivialfall getroffen werden, bei dem für eine Verschiebung oder Rotation nach links eine Verschiebegröße 0
angegeben wird. Das Komplement von 0 mit Bezug auf 16 ist 16, und das Netzwerk kann maximal nur eine Rotation von I5 ausführen.
Für diese Fälle muß Vorsorge getroffen werden, wenn eine Schaltung für 16 Bit aufgebaut wird. Die zusätzlich erforderlichen Schaltungen
sind dem Fachmann klar, insbesondere nachdem im folgenden der kompliziertere Fall für ein System mit 20 Bit betraohtet
worden ist. Der Netzwerkplan für 16 Bit wird in erster Linie
deswegen beschrieben, weil ohne diese Grundlage das Verständnis des Schemas für ein System mit 20 Bit außerordentlich sohwierig ist.)
Der Fall mit 16 Bit ist verhältnismäßig einfach. Es wird die
Schaltung für Rotationen nach rechts benutzt, und es werden keine Wege sowohl bei Rotationen naoh rechts als auch naoh links gesperrt,
wobei im letzteren Fall das Komplement der vorgegebenen Versohiebegröße gebildet wird, bevor die Rotation naoh links mit
Hilfe einer tatsächlichen Rotation nach reohts durchgeführt wird.
909839/1149
U74581
Eine Verschiebung nach rechts wird mit Hilfe einer normalen
Rotation nach rechts durchgeführt, wobei aber die Diagonalwege,
die die Linie L-L kreuzen, gesperrt sind, das heißt, es werden O-Werte in die Knoten an den Enden dieser Wege immer dann eingeschrieben, wenn das Leitwort angibt, daß diese Wege zu benutzen sind. Schließlich läßt sich eine Verschiebung nach links
erreichen, indem zunächst das Komplement der gegebenen Verschiebegröße gebildet und dann eine Rotation naoh rechts unter Sperrung
der gestrichelten Vertikalwege durchgeführt wird. Durch eine unbedingte Sperrung der gestrichelten Vertikalwege im Fall einer
Verschiebung nach links wird sichergestellt, daß die einzigen 1-Werte im ursprünglichen Datenwort, die durch das Netzwerk zu A
den Knoten in der Zeile E übertragen werden, diejenigen sind,
die die Linie L-L kreuzen.
Wie die vorstehende Analyse gezeigt hat, sind in Figur 1 (und jedem ähnlichen Netzwerk, bei dem die Zahl von Bit im Datenwort
eine ganzzahlig· Potenz von zwei ist) drei sich nioht überlappende Gruppen von Knoten und Wegen wie folgt vorhandent
Die Gruppen von Knoten und Wegen, die denjenigen im oberen reohten Teil der Figur 1 entsprechen, welche alle diejenigen Knoten'
und Wege enthalten, die von Daten-Bit vor einer Kreuzung der Linie L-L benutzt werden können] die Gruppe von Knoten und Wegen,
die denjenigen im unteren linken Teil der Figur 1 entspreohen, welche alle diejenigen Knoten und Wege enthalten, die benutzt \
werden können, nachdem Daten-Bit die Linie L-L gekeruzt habenj
und die Gruppe von Knoten und Wegen, die denjenigen der Diagonalriohtung der Figur 1 entspreohen, welche zu keiner der beiden
vorher genannten Gruppen gehören und in keinem Fall von einem Daten-Bit vor der Kreuzung der Linie L-L benutzt werden, nooh
von einem Daten-Bit, das die Linie L-L gekreuzt hat. Diese letzte Gruppe in Figur 1 besteht aus allen der gestrichelten Wege,
allen Knoten mit oberhalb oder unterhalb gelegenen gestrichelten Wegen und den Diagonalwegen entlang der Linie D-D vom Knoten 15A
zum OE. In der vorstehenden Erläuterung ist zwar angenommen
909839/1 U9
worden, daß alle gestrichelten Vertikalwege gesperrt sind. Ein
brauchbares Verfahren unter Verwendung des Netzwerkes gemäß Fig.1 zur Durchführung einer Verschiebung nach links besteht jedoch darin,
eine Untergruppe der gestrichelten Vertikalwege entlang der Linie D-D und die Diagonalwege entlang der Linie 0-0 zu sperren.
Diese Untergruppe wird so gewählt, daß jedes Eingangsdaten-Bit gezwungen wird, die Linie L-L zu kreuzen, wenn es ohne Sperrung
durch das gesamte Netzwerk laufen soll. Es sei daran erinnert, daß Fig. 1 lediglich eine bequeme Darstellung der in den Regiaterstufen
vorgenommenen Verschiebung ist. Die Signale an den Knoten der Zeile A kann man sich als den Zustand des Registers am Anfang
der Verschiebung und die Signale an den Knoten der Zeile E eis
den Zustand am Ende der Verschiebung vorstellen. Eine Sperrung des Vertikalweges von oben zum Knoten 15A bedeutet dann, daß die
Regieterstufe 15 vor Beginn der Verschiebung zwangsläufig den
Wert 0 enthält. Entsprechend bedeutet eine Sperrung des Weges, der vom Knoten OE naoh unten führt, daß die Registerstufe 0 nach
Beendigung der Verschiebung zwangsläufig eine 0 enthält. Um solche Komplikationen zu vermeiden, umfaßt eine günstige Untergruppe
von Wegen, die in Fig. 1 zur Durchführung einer Verschiebung nach links zu sperren ist, alle gestrichelten Wege, die eine parallel
zu und dicht oberhalb der Linie D-D verlaufende Linie schneiden mit Ausnahme des Vertikalweges, der von oben zum Knoten 15A führt.
Dann sind zusätzlich die beiden Wege zu sperren, die vom Knoten 15A nach unten führen. Die gesperrten Wege sind demnach die
zwiechen den Knotenpaaren 15A-I5B, I5A-14B, 14A-I4B, 13B-13C,
12B-12C, 11C-11D, 10C-10D, 9C-9D, 8C-8D, 7D-7E, 6D-6E, 5D-5E, 4D-4E, 3D-3E, 2D-2E, 1D-1E und OD-OE. Man beachte, daß diese
Untergruppe die Bedingung erfüllt, daß jedes Daten-Bit die Linie L-L kreuzen muß, wenn es durch das Netzwerk ohne Sperrung laufen
will, d.h., wenn es naoh dem Ende der Verschiebung erscheinen soll. Es bestehen weitere Möglichkeiten für eine Auswahl zu sperrender
Untergruppen.
09839/1
In den Fall für 16 Bit wird eine Untergruppe der gestrichelten
Vertikalwege unbedingt gesperrt. Diese Wege sind bei der Durchführung einer Verschiebeoperation nach links niemals in Tätigkeit.
Tatsächlich läßt sich in jedem System, für das die Zahl von Bit eine Potenz von zwei ist und das 'fort für die Verschiebegröße
die Form ... (X32)(X16)(X8)(X4)(X2)(X1) hat, ein Netzwerk ähnlich dem nach Fig. 1 leicht bilden. Die Linie D-D wird als Gerade
durch die beiden Knoten in der oberen linken und unteren rechten Ecke gezogen. Alle Vertikalwege, die die Linie D-D schneiden,
und alle Vertikalwege, die (entweder von oben oder von unten) an einem Knoten auf der Linie D-D enden, sind gestrichelt. Eine
geeignete Zahl dieser Vertikalwege wird bei allen Verschiebungen nach links unbedingt gesperrt, und es braucht keine zusätzliche
Steuerung ausgeübt zu werden, um sicherzustellen, daß die einzigen 1-V/erte, die über das System übertragen werden, diejenigen
sind, die die Linie L-L kreuzen, das heißt, diejenigen, die nicht durch O-Werte auf der rechten Seite des sich am Schluß ergebenden
Wortes ersetzt werden dürfen. Ein schwierigerer Fall liegt dann vor, wenn die Zahl von Bit in einem Datenwort nicht eine Potenz
von 2 ist. In einem solchen Fall dürfen einige der Vertikalwege nicht unbedingt gesperrt werden. In bestimmten Fällen müssen diese
Wege offenbleiben, das heißt, sie müssen unter bestimmten Umständen 1-V/erte nach unten übertragen. Zur Erläuterung des komplizierteren
Falles wird jetzt auf Fig. 2 Bezug genommen, die das netzwerk für ein System mit 20 Bit zeigt.
Grundlagen der Betriebsweise einer Schiebe- und Rotierschaltung
für 20 Bit (Fig.2)
Es sei angenommen, daß das Schiebe- und Rotiernetzwerk nach Fig.2
zur Aufnahme von Kommandos bezüglich einer Verschiebung oder Rotation entweder nach links oder nach rechts mit einer angegebenen
Eingangs-Schiebegröße zwischen 0 und 20 benötigt wird. Es wird vorausgesetzt, daß Eingangß-Schiebegrößen mit mehr als 20
909839/1 U9
U74581
Positionen nicht von Interesse sind und als gültiges Eingangskommando nicht zugelassen sind.
Ein Wort für die Schiebegröße mit 5 Bit ist erforderlich, um
eine der Zahlen 0-20 anzugeben. Das Leitwort hat also die Form (X16)(X8)(X4)(X2)(X1). Das Leitwort, das die übertragung von Bit
in den Stufen des Registers steuert, ist bei Verschiebungen und Hotationen nach rechts identisoh mit der Eingangs-Schiebegröße
und ist bei Verschiebungen und Rotationen nach links das Komplement der Eingangs-Schiebegröße mit Bezug auf die Zahl 20.
Eine zusätzliche Gruppe von Vertikal- und Diagonalübertragungswegen
wird benutzt, um die Übertragung von den Knoten in der Zeile E zu den Knoten in der Zeile P zu steuern. Die Verschiebungen
werden in Schritten von 1,2, 4, Q und -\6 erreicht.
Figur 2 läßt sich auf die gleiche Weise wie Fig. 1 deuten. Es sind Übertragungswege vorgesehen, um Bit entweder vertikal oder
diagonal naoh rechts zu übertragen. Nur diese Wege sind erforderlich, um alle 4 möglichen Operationen zu steuern.
Die Operation der Anlage für 20 Bit bei der Rotation eines Datenwortes
mit 20 Bit naoh reohts ist leicht zu verfolgen. Um beispielsweise das Wort um 19 Positionen nach reohts zu rotieren,
wird das Wort für die Eingangsschiebegröße 10011 als Leitwort benutzt. Die betätigten Diagonalgatter gehen von Knoten in den
Zeilen A, B und E aus. Die benutzten Vertikalwege gehen von den Knoten in den Zeilen C und D aus. Dae sich am Schluß ergebende
rotierte Datenwort erscheint an den Knoten 19F bis OF. Für eine Rotation naoh links wird das Komplement der Verechiebegröße mit
Bezug auf 20 gebildet, und das Datenwort dann um eine Zahl von Positionen naoh reohts rotiert, die gleich dem Komplement ist.
Um beispielsweise um eine Position naoh links zu rotieren, wird zunächst das Komplement der Versohiebegröße 00001 mit Bezug auf
20 gebildet. Das sioh ergebende Leitwort 10011 (Dezimal 19) wird dann zur Steuerung der Rotation naoh reohts benutzt. Um eine
Verschiebung naoh rechts zu erreichen, müssen nur alle Diagonalwege,
welche die Linie L-L kreuzen, gesperrt werden. Wenn dann
909839/1U9
.25- H74581
automatisch O-Werte an jedem Knoten, an welchem ein die Linie L-L
kreuzender Diagonalweg endet, eingeschrieben werden, ist sichergestellt, daß O-Werte an der riohtigen Zahl der am weitesten links
liegenden Knoten in der Zeile P.erscheinen. Die Steuerung einer Verschiebung naoh links in einem System bis 20 Bit unter Verwendung der Schaltung für Rotationen nach reohts ist jedooh nioht
so einfach, wie in dem Fall für 16 Bit. Der Grund dafür besteht
darin, daß die die Linie D-D kreuzenden Vertikalwege nioht in allen Fällen unbedingt gesperrt werden können. Es ist eine weitere
Analyse erforderlioh, um zu bestimmen, welche Vertikalwege zur Erzielung einer Verschiebung naoh links gesperrt werden müssen.
Bei dem Netzwerk für 16 Bit gemäß Figur 2 lag der günstige Fall
vor, daß eine Gruppe gestrichelter Vertikalwge vorhanden war, die niemals von Daten-Bit, die die Linie L-L bereite gekreuzt
hatten, benötigt wurden, nooh von Daten-Bit, die die Linie L-L in späteren Stufen des Netzwerkes kreuzen würden. Diese Gruppe
von gestriohelten Wegen war groß genug, um eine Untergruppe von ihnen derart wählen zu können, daß eine Sperrung dieser Untergruppe für Verschiebungen nach links die Daten-Bit zwingt, zur
Übertragung duroh das Netzwerk die Linie L-L zu kreuzen. In dem -Netzwerk gemäß Figur 2, das typisch für den Fall ist, in welohem
die Zahl von Bit im Datenwort nioht eine ganzzahlige Potenz von 2 ist, besteht jedooh die Gruppe von Wegen, die niemals von
Daten-Bit benötigt wird, die die Linie L-L bereits gekreuzt haben, noch von Daten-Bit, die die Linie L-L in späteren Stufen des
Netzwerkes kreuzen werden, aus so wenigen Wegen, daß eine Untergruppe von ihnen nioht für Verschiebungen naoh links gewählt und
unbedingt gesperrt werden kann, derart, daß die Daten-Bit gezwungen werden, die Linie L-L zu kreuzen, wenn sie zu den Ausgangsansohlüssen des Netzwerks übertragen werden sollen. Tatsächlich sind in Fig. 2 Wege vorhanden, beispielsweise 13D-13E, die
für Bit benötigt werden, die die Linie L-L bereits gekreuzt haben, oder für Bit, die die Linie L-L später kreuzen.
909839/1UO
.26- H74581
Ein Ausgangspunkt zum Aufbau des Netzwerkes für ein System, bei dem die Zahl von Daten-Bit nicht eine ganzzahlige Potenz von 2
ist, besteht darin, die Linie L-D dicht unterhalb des Diagonalweges von dem äußersten Knoten in der oberen linken Ecke zu ziehen,
(das heißt, dicht unterhalb der Linie von 19A nach ÖF in Fig.2).
Alle Vertikalwege, die die Linie JD-D kreuzen, werden dann gestrichelt.
Die Gruppe von Knoten und V/egen links unterhalb der Gruppe von gestrichelten Wegen enthält alle Knoten und Wege, die
für Daten-Bit erforderlich sind, welche die Linie L-L bereits gekreuzt haben. Eine Sperrung der gestrichelten Wege kann daher
in keiner V/eise Daten-Bit beeinflussen, welche die Linie L-L
gekreuzt haben. Das Verfahren zur Verwendung des Netzwerkes gemäß Figur 2 für Verschiebungen naoh links soll weiter unten im einzelnen
erläutert werden. Es besteht jedoch im wesentlichen darin, die Gruppe von gestriohelten Vertikalwegen zu sperren, falls
nioht ein Daten-Bit, das einen bestimmten gestrichelten Weg benutzt, in nachfolgenden Stufen des Netzwerkes derart geleitet
wird, daß es die Linie L-L kreuzt.
In Figur 2 sind 20 gestrichelte Vertikalwege vorhanden, und zwar einer für jede Spalte. Es soll daran erinnert werden, daß in
Figur 1 alle Vertikalwege im Netzwerk zu 3 bestimmten Gruppen gehören, nämlich den gestrichelten Vertikalwegen, denen im oberen
reohten Teil der Figur und denen im unteren linken Teil der Figur.
Gemäß Fig. 1 werden die Vertikalwege im oberen rechten Teil bei Verschiebungen naoh links nicht beeinflußt, da auch dann, wenn
diese Wege benutzt werden, die Bit an den entsprechenden Knoten im folgenden die Linie L-L kreuzen können. (Die Grundregel zur
Steuerung einer Verschiebung naoh links ist immer noch die gleichet Es wird das Komplement der EingangsschiebegroBe mit Bezug auf die
Zahl von Bit in einem Datenwort gebildet und dann eine Hotation naoh rechts vorgenommen, wobei die einzigen 1-Werte in dem ursprünglichen
Wort, deren Übertragung zu den Ausgangsknoten zugelassen wird, diejenigen sind, die die Linie L-L irgendwann bei
90-9839/1U9
.27- U7A581
ihrer Übertragung durch das Netzwerk kreuzen.) In dem System mit 20 Bit gemäß Figur 2 gilt das gleiche für die Knoten und
Vertikalwege im oberen rechten Teil der Figur. Auch wenn die Bit an diesen Knoten die entsprechenden Vertikalwege nehmen, können
sie später die Linie L-L kreuzen, und aus diesem Grund sollten die Vertikalwege im oberen rechten Teil nioht gesperrt werden.
In Figur 1 werden alle gestrichelten Vertikalwege unbedingt gesperrt. Eine Sperrung der Vertikalwege im unteren linken Teil
ist nicht erforderlich, da 1-Werte an den Knoten oberhalb dieser
Wege die Linie L-L bereits gekreuzt haben müssen. Dagegen werden in Figur 2 die gestrichelten Vertikalwege nicht alle unbedingt
gesperrt, und es besteht die Möglichkeit, daß 1-Werte in dem Λ
ursprünglichen Datenwort unter bestimmten Umständen über diese gestrichelten Wege nach unten zu den Knoten im unteren linken
Teil der Zeichnung übertragen werden. Aus diesen Gründen muß auch den Vertikalwegen im unteren linken Teil der Figur Aufmerksamkeit
geschenkt werden, obwohl sich im folgenden zeigen wird, daß die für die gestrichelten Vertikalwege benutzte Steuerung
derart beschaffen ist, daß eine Steuerung der Vertikalwege im unteren linken Teil der Zeichnung nicht erforderlich ist.
Zunächst ist zu klären, warum nicht alle gestrichelten Vertikalwege
unbedingt gesperrt sein dürfen. Es sei der Weg 12D-12E
betrachtet, der die Linie D-D kreuzt. V/enn die Bit im Eingangswort
an den Knoten in der Zeile D erscheinen, ist ein Schritt ä mit dem Viert 8 zu betrachten. Die maximal mögliche Verschiebung
in den ersten drei Schritten ist 7 (wenn X1, X2 und X4 den Wert
haben). Das Bit am Knoten 12D, d.h. das Bit in der Stufe 12 des Registers nach Durchführung des dritten von den fünf Schritten
der Folge, kann auf keine V/eise die Linie L-L bereits gekreuzt haben. Das Bit am Knoten 12D kann nur von einem der Knoten
12A-19A gekommen sein. Folgt man dem Muster gemäß Fig. 1, so sollte der Jeg 12D-12E unbedingt gesperrt sein, wenn ΧΘ eine 0
ist. In Figur 1 werden die gestrichelten Vertikalwege gesperrt,
909839/1U9
da, wenn sie benutzt würden, die Bit an den Knoten oberhalb der
Wege auf keine Weise später die Linie L-L kreuzen können, bis sie die letzte Zeile von Knoten erreichen. Das Bit-am Knoten 12D
in Figur 2 kann aber auch dann die Linie L-L kreuzen, wenn X8 den Wert 0 hat. In diesem Fall wird das Bit am Knoten 12D zum
Knoten 12E übertragen. Solange X16 den Wert 1 hat, wird das Bit
am Knoten 12E die Linie L-L kreuzen und am Knoten 16F enden. Folglich kann der Vertikalweg 12D-12E nicht unbedingt gesperrt
werden, da das Bit am Knoten 12D immer noch die Linie L-L kreuzen kann, und zwar auch dann, wenn der Yertikalweg 12D-12E benutzt
wird. Man beachte jedoch, daß das Bit am Knoten 12D nur dann die fß Linie L-L auch bei Benutzung des Vertikalweges kreuzen kann, wenn
X16 den Wert 1 hat. Folglich ist der Vertikalweg 12D-12E bedingt
zu sperren, das heißt, es ist automatisch am Knoten 12E eine 0 einzuschreiben, wenn X8 eine 0 ist, falls nicht X16 den Wert 1
hat. Wenn X16 eine 1 ist, braucht der Vertikalweg 12D-12E nicht
gesperrt zu werden, da sichergestellt ist, daß das Bit am Knoten 12D die Linie L-L später kreuzt.
Es ist erforderlich, eine geeignete Übertragungsfunktion für jeden
gestrichelten Vertikalweg in Figur 2 abzuleiten. Die Übertragungsfunktion für jeden Weg gibt im wesentlichen folgendes an: Bei
einer Verschiebung nach links ist der Weg zu sperren, wenn nicht sichergestellt ist, daß das Bit am Knoten oberhalb des Weges die
™ Linie L-L nachfolgend kreuzt. Das folgende Verfahren läßt sich
benutzen, um die Übertragungsfunktionen der Vertikalwege, die die Linie D-D kreuzen, in anderen Systemen abzuleiten. Jede Übertragungsfunktion
stellt einen Bool1sehen Ausdruck dar. Der gesamte
Ausdruck hat den Viert 1, wenn der entsprechende Vertikalweg in Tätigkeit sein soll. Er ist 0, wenn der entsprechende Vertikalweg
gesperrt werden muß, und es muß automatisch eine 0 in den Knoten eingeschrieben werden, an welchem der Weg endet. In den abzuleitenden
Übertragungsfunktionen stellt der Ausdruck (HL) ein Eingangekommando
zur Durchführung einer Versohiebe-Operation naoh
links dar. HL hat den Wert 1 , wenn eine Verschiebung naoh links durchzuführen ist. Der Ausdruck HL ist 0, wenn eine der drei
anderen möglichen Operationen durchgeführt werden soll.
909839/1U9
Zunäohst werden die 5 Knoten 4E-0E betraohtet. Die Eingangs-Bit
erscheinen an diesen Knoten, wenn der Schritt um 16 Positionen vorgenommen werden soll. Bis zu diesem Punkt beträgt die maximale
Verschiebung, die bereits vorgenommen sein kann, 15 (8+4+2+1).
Die Bit an den Knoten 19E-5E können die Linie L-L bereits gekreuzt
haben. Dagegen können die Bit an den Knoten 4E-OE die Linie L-L in keinem Fall bereits gekreuzt haben, da der Knoten 4E 16 Positionen rechts von der Linie L-L liegt, und die Knoten 3E-OE nooh
weiter entfernt sind. Wenn der Diagonalsohritt mit dem Wert 16
von diesen 5 Knoten aus nicht erfolgt, haben die Bit an diesen Knoten die Linie L-L nioht gekreuzt, wenn sie an den Knoten der
Zeile F erscheinen. Aus diesem Grund müssen die Vertikalwege von ύ
den Knoten 4E bis OE bei Verschiebungen nach links unbedingt
gesperrt werden. Die Übertragungsfunktion für die 5 Vertikalwege
4E-4F bis OE-OF lautet (xTS) (HL). (Der Ausdruck X16 stellt das
Bit mit der höchsten Stellenzahl im Leitwort dar, nachdem dieses aus dem Komplement der Eingangssohiebegröße'gebildet ist. Mit
anderen Worten, X16 hat den Wert 1, wenn die Diagonalwege von den
Knoten E benutzt werden sollen.) Die Übertragungsfunktion (X16)
(HL) für die 5 Vertikalwege 4E-4F bis OE-OF gibt die Operation der Wege in allen Fällen wieder. In den drei Fällen, die keine Verschiebungen
naoh links betreffen, hat HL den Wert 0 und HL den Wert 1, so daß die Übertragung des Weges nur eine Funktion des
Leitausdruokes XT6 ist. Wenn X16 den Wert 0 hat, ergibt sioh für
X16 eine 1, und die Übertragungsfunktion hat den Wert 1. Die I
Vertikalwege können naoh Bedarf benutzt werden. Wenn X16 eine 1
ist, hat X16 den Wert 0 und die Vertikalwege sind gesperrt. Auch wenn keine Verschiebung nach Links durchgeführt wird, können die
Vertikalwege durch den Leitausdruck gesperrt werden, da sie nioht benötigt werden. (Es wurde zwar oben erläutert, daß durch das
Sperren eines Vertikalweges automatisch eine 0 in den Knoten am Fuß des Weges eingeschrieben wird. Das erfolgt jedooh nur dann,
wenn keine 1 über den Diagonalweg ankommt, der an dem gleiohen
Knoten endet. Wenn also X16 eine 1 ist, können, obwohl die 5 Vertikalwege
gesperrt sind, 1-Werte an den Knoten 4F-0F erscheinen,
909839/1U9
.3o- H7A581
wenn 1-Werte ursprünglich cn den Knoten OE und I6E-I9B "vorhanden
sind.) Wenn andererseits HL den .;ert 1 hat und damit angibt, daß
eine Verschiebung nach links durchgeführt wird, hat HL den Wert O,
und die 5 Vertikalwege werden ohne Rücksicht darauf, «eichen »Jert
XI6 hat, gesperrt. Las ist die gewünschte Operation, «enn XI6 den
V/ert 0 hat, würden die Vertikalwege normalerweise 1-Werte übertragen,
sind aber stattdessen gesperrt wie verlangt. Die Sperrung der Vertikalwege 4E-4F bis OE-OP bei Verschiebungen nach links
ist unbedingt, wie die Übertragungsfunktion (HL) (X16) zeigt.
Es seien jetzt die Knoten 12D-5D in Zeile D betrachtet. Wenn ein
Schritt mit dem V/ert 8 durchgeführt werden soll, beträgt die
maximale Verschiebung, die bis dahin stattgefunden haben kann,
7 (4+2+1). An den Knoten 19D-13D können Bit erscheinen, die die
Linie L-L bereits gekreuzt haben. Die Bit an den Knoten 12D und die Bit an den Knoten auf der rechten Seite von 12D können jedoch
die Linie L-L auf keine Weise bereits gekreuzt haben. Wenn XQ den Wert 0 hat und die 8 Vertikalwege 12D-12E bis 5D-5E beschritten
werden, besteht immer noch die Möglichkeit, daß die ursprünglich an den Knoten 12D-5D vorhandenen Bit die Linie L-L kreuzen. Auch
wenn diese Vertikalwege benutzt werden und die Bit zu den Knoten 12E-5E übertragen werden, können die Bit beim letzten Schritt noch
L-L kreuzen, wenn XI6 den V/ert 1 hat. Folglich ist, weil die
8 Wertikalwege bei Verschiebungen nach links gesperrt sein sollen,
wenn X8 den Wert 0 hat, die Sperrung bedingt. Die Wege missen nioht gesperrt sein, wenn XI6 eine 1 ist. Sann können die 8 Vertikalwege
benutzt werden, auch wenn die über sie übertragenen Bit; die Linie L-L noch nioht gekreuzt haben, da sichergestellt ist,
daß sie beim letzten Schritt L-L kreuzen.
Die Übertragungsfunktion für die 8 Vertikalwege 12D-12B bis 5D-5E
lautet ,(U5) £Cb*L") + X16T . Bei den drei Operationen, die keine
Verschiebungen naoh links sind, hat HL den Wert 0 und HL den tfert
1, so daß der in der eokigen Klammer stehende Ausdruck ebenfalls
1 ist. Für die drei Operationen besteht keine Notwendigkeit, die
909839/1U9
U7A581
— J I —
Vertikalwege zu sperren, außer als Funktion des Leitausdruokes X8. Uenn ΧΘ den Wert 0 hat, ist ΧΘ eine 1, und die Übertragungsfunktion
hat den Wert 1. Dann sind die Wege nicht gesperrt. Wenn X8 eine 1 ist, hat X8 den Wert 0 und die Übertragungsfunktion
ist 0, so daß die Übertragung über die Vertikalwege durch den Leitausdruck verhindert ist. Wenn andererseits eine Verschiebung
nach links durchgeführt wird, hat HL den Wert 1 und HL den Wert 0. In diesem Fall reduziert sich die Übertragungsfunktion
zu (X8)£xi6]. Venn X16 eine 0 ist, ergibt sich für die Übertragungsfunktion
eine 0. Das ist die gewünschte Maßnahme, denn bei Verschiebungen nach links sollen die 8 Vertikalwege 12D-12E bis
5D-5E gesperrt sein, wenn X16 den Wert 0 hat. Wenn andererseits ™
X16 eine 1 ist, reduziert sich die Übertragungsfunktion auf den Leitausdruck X8. Dann sind die Vertikalwege nicht gesperrt. Das
ist auch erforderlich, da diese 8 Vertikalwege nicht gesperrt sein und eine vertikale Übertragung auch bei Verschiebungen nach
links ermöglichen müssen, wenn X16 den Y/ert 1 hat.
Als nächstes seien die Bit an den Knoten 15C-13C betrachtet. (Der Knoten 16C, der ebenfalls an der Spitze eines gestrichelten
Vertikalweges zwischen den Zeilen C und D liegt, soll später
betrachtet werden.) Wenn ein Schritt mit dem Wert 4 durchgeführt werden soll, können die Bit an den Knoten 15C-13C die Linie L-L
noch nicht gekreuzt haben. Die drei Vertikalwege 15C-15D bis ^
I5C-I3D sollen bei Verschiebungen nach links gesperrt sein, wenn
nicht sichergestellt ist, daß die Bit an den Knoten 15C—13C
später L-L kreuzen. Ohne Rücksicht auf den Wert von X8 können «Jie drei Bit, die nach unten zu den Knoten I5D-I3D übertragen werden,
L-L immer noch kreuzen, falls XI6 den Wert 1 hat. Wenn
X8 = 1 ist, findet eine Verschiebung mit dem Wert 8 zwisohen den Zeilen D und Ji statt, aber XI6 muß ebenfalls den Wert 1 haben,
damit diese Bit die Linie L-L kreuzen (X8 und XI6 haben tatsächlich
niemals beide den Wert 1, da dies ein Leitwort bedeuten würde, dessen Wert größer als 20 ist). Folglich ist sichergestellt,
wenn und nur wenn XI6 den Wert 1 hat, daß die 3 Bit an
909839/1U9
U74581
den Knoten 15C-13C später die Linie L-L kreuzen, auch wenn die
gestrichelten Vertikalwege benutzt werden. Es müssen also die 3 Vertikalwege auf die gleiche Weise bedingt gesperrt werden,
wie die 8 Vertikalwege 12D-12E bis 5D-513. Die Übertragungsfunktion
für diese 3 Wege ist mit der vorherbetrachteten Übertragungsfunktion
identisch, mit der Aufnahme, daß der Leitausdruck (X8) durch den Ausdruck (X4) ersetzt ist. Die Übertragungsfunktion
für die 3 Vertikalwege 15C-I5D bis 13C-I3D lautet also (X4)
[ÜL + X16] .
Auch das Bit am Knoten 16C kann die Linie L-L noch nicht gekreuzt haben, wenn der Schritt mit dem Wert 4 gerade durchgeführt wird,
weil die bis dahin erfolgte maximale Verschiebung höchstens 3 (2+1) sein kann. Der /Veg I6G-I6D gehört aber zu einer anderen
Kategorie als die Wege 15C-I5D bis 13C-13D. Wenn der Vertikalweg
I6C-I6D benutzt wird, kann das Bit am Knoten 16C nachfolgend die
Linie L-L auch dann nicht kreuzen, wenn XI6 den V/ert 1 hat. Da
die Eingangsschiebegröße und das Leitwort, daß das Komplement dieser Größe mit Bezug auf 20 ist, 20 oder weniger sein muß,
muß X8 den './ert 0 haben, wenn XI6 eine 1 ist, und das Bit am
Knoten 16C kann für X4 = 0 nicht v/eiterkommen als bis zum Knoten OE. Polglich kann das Bit am Knoten 16C in keinem Fall die Linie
L-L kreuzen, wenn der Vertikalweg I6C-I6D benutzt wird. Also
muß der Weg I6C-I6D unbedingt gesperrt werden. Die tibertragungsfunktion
für diesen Weg lautet (X4)(HL). Für alle Operationen
außer einer Verschiebung nach links hat (HL) den Wert 1. v/enn die Leitfunktion X4 0 ist, hat (X4) den Wert 1. Die Übertragungsfunktion
ist dann eine 1 und der Vertikalweg I6C-I6D kann, wie verlangt,
benutzt werden. 'Venn X4 den Wert 1 hat, ist die Übertragungsfunktion
0, wie es für die richtige Führung von Bit durch das Netzwerk erforderlich ist. V/enn andererseits bei Verschiebungen
nach links HL eine 1 ist, hat (KL) den V/ert 0. Dann ist die Übertragungsfunktion 0 und der Vertikalweg ist unbedingt
gesperrt.
909839/1 U9
U74581
\lenn ein Schritt um zwei Positionen durchgeführt wird, können
die Bit des ursprünglichen Wortes bereits um maximal 1 i-ooition
verschoben worden sein. Folglich können die Bit an den knoten 1OB und I7B die Linie L-L auf keine Weise bereits gekreuzt haben.
Es sei angenommen, daß diese Bit die entsprechenden Vertikalwege zu den Knoten 18C und I7C benutzen. Damit da3 zum knoten 17C
übertragene Bit die Linie L-L kreuzt, muß es noch um 18 Positionen nach rechts verschoben werden. Das Bit am Knoten 18C muß
noch um 19 Positionen nach rechts verschoben werden. Als einzige .Schritte verbleiben diejenigen mit 4» 8 und 16 Positionen. Gemeinsam
sind die Schritte mit 8 und 16 Positionen nicht zulässig.
Die einzige Kombination von Schritten, die sicherstellt, daß %
beide Bit die Linie L-L kreuzen, ist die mit 4 und 16 Positionen.
Folglich müssen die V/ege 18B-18C und 17B-I7C bei allen Verschiebungen
nach links gesperrt werden, wenn nicht X4 und XI6 beide
den ',Veit 1 haben. Die Übertragungsfunktion für diese beiden Wege
lautet (X2) [ill + (X16)(X4)J. Diese Übertragungsfunktion beschreibt
die Tätigkeit d r beiden Wege bei allen 4 Operationsarten. Bei den 5 Operationen, die keine Verschiebung nach links beinhalten,
hat (HL) den Wert 1. Die Vertikalwege übertragen Daten-Bit, wenn X2 den Wert 0 hat. Das ist erforderlich, da die beiden Wege auf .
normale Weise arbeiten sollen, wenn bei allen Operationen außer Verschiebungen nach links ein Vertikalschritt zwischen den Knoten
18B und 18C und den Knoten I7B und 17C erforderlich ist. Wenn
X2 den Wert 1 hat, übertragen die beiden ./ege keine Daten-Bit, ™
da die Diagonalwege anstelle der Vertikalwege von den Knoten 18B und I7B aus benutzt werden. Bei Verschiebungen nach links hat
HL den .7ert 0. Wenn X2 eine 0 ist, hat X2 den Wert 1, aber die übertragungsfunktion hat den Wert 1 nur dann, wenn X4 und XI6
beide 1 sind. Die Vertikalwege sind also bei allen Verschiebungen nach links gesperrt, wenn nicht sichergestellt ist, dai. 1-i/erte,
die über diese /ege nach unton übertragen v/erden, nachfolgend die L-L kreuzen.
Der letzte, noch zu betrachtende gestriohelte Vertikalweg, der
die Linie D-D kreuzt, ist der .Veg 19A-19B. Die Übertragungsfunktion
909839/1 U9 öadoriqiNAl
für diesen .'ei:: iat ;;Leich der gerade für lic .o<;e 18...-180 iuv".
^']ύ-^rJC abgeleiteten. ..'enn eine 1 au Knoten 19λ vertikal :;u:i
Knoten 12B überbraten wird, kann sie die Linie L-L nur :.roa;;«n,
wenn sie nachfolgend um 20 I'osi tiorien nach rechts verschoben
wird. Folglich .;ird der /et: bei allen Yeruchiemuven nach linns
gesperrt, auber wenn X4 und X1b beide den ,ort 1 haben. Lan beachte,
daß, wenn X4 und X16 beide den ..ert 1 haben und eine Verschiebung
nach links durchgeführt wird, die ursprünjliche Verschiebegröße
Ü gewesen sein muß. Der e ; 19a— 19>J wird r.lso bei
allen Verschiebungen nach links gesperrt sein, außer wenn (Ins
Einga.ngs-Ditenwort überhaupt nicht verschoben werden soll. Do.s
ist auch die erforderliche Funktion, v/eil, wenn das D tcnv/ort
überhaupt nach linK3 verschoben wird, das Bit an Knoten 19·'-1
also das am v;eitesten links stehende Bit im ursprünglichen Datenwort,
gelöscht v/erden muL.
Die soeben für die 20 gestrichelten VertikalwOf.e abgelei br. ton
20 Übertraoun£s funktionen definieren die .α-bei tsv/oise ;'iiec:er ..g,;g
für alle 4 Guerationsarten. Die Vertikalv/e^e oben rechts von diesen
./egen brauchen außer durch die Leitfunktionen nicht gesteuert zu
werden, da die Bit an den !.noten am oberen Ende dieser ./··.'i-;e die
Linie L-L aucn dann nachfolgend kreuzen können, wenn sie vertikale
Schritte ausfuhren. Für diese Vertikalw-.;^G i: t al.so keine spezielLe
Steuerung bei der Ausführung einer Verschiebung nach links erforderlich.
Eine spezielle Steuerung ist auch für keinen Vertikalwec
erforderlich, wenn eine der 3 anderen Operationsarten durchgeführt
wird. Folglich hat die Übertragungsfunktion für jeden
dieser /ege einfach die Form (Xi). Jeder dieser ..'ege überträgt
nur dann ein Bit nach unten, wenn sein Steuerbit im Leitwort eine 0 ist. 7,'enn das Steuerbit eine 1 ist und die Diagonalwe -;e benutzt
werden sollen, haben die ubertragungsfunktionon für die Vertikalwege
den V/ert 0.
Die letzte Gruppe von noch zu betrachtenden Vertikalwe;jen sind
diejenigen im unteren linken Teil der Zeichnung. In Fi;;ur 1 h.-.ben
die ibertra^ungsfunktionen für diese Wege einfach nur die Form
(XT). J.uch bei Verschiebungen nach links soll die übertragung
zugelassen sein, wenn Xi den Wert ü hat, da alle 1-V/erte, die
an den Knoten am oberen Ende dieser V/ege erscheinen, die Linie
L-L bereits gekreuzt haben müssen. Das gleiche gilt jedoch nicht
für die Vertikalwege im unteren linken Teil der Figur 2. Da einige der gestrichelten Vertikalwege bei Verschiebungen nach
links nicht gesperrt sein dürfen, können 1-Werte über diese V/ege
nach unten zu den Knoten im unteren linken Teil der Zeichnung auch dann über^rajen werden, wenn sie die Linie L-L noch nicht
gekreuzt haben. Es sei jedoch daran erinnert, daß 1-Werte nur
dann über die V^rtikalwege nach unten übertragen werden sollen,
wenn sichergestellt iot, dal· sie nachfolgend die'Linie L-L
kreuzen. 1Jc ist also nicht nötig, eine zusätzliche Sperrung für
irgendeinen der Vertikalwege im unteren linken I1 eil der Zeichnung
vorzusehen. Die jbertragungsfunktionen für diese ./pge haben
wiederuu die Foru (X|).
'Ίε müssen jet::t die l'bertragungsfunktionen für die Diagonalwege
i-."i>;;el eitet werden, beinahe alle DiagonaJwege haben übertragungsfunktion
der Form (Xi). Die Diagonalwege werden innner dann benutzt,
vjen:j die entsprechenden oteuer-Bit in dem ."ort für die Vorschiebegrüße
den "ert 1 haben. Die Diagonalwege, deren ιbertragungafunktionen
nicht die einfache Form (x1) haben, sind diejenigen, welche die Linie L-I. kreuzen. Es soll daran erinnert werden, daß
diosG ..(--.e bei Verschiebungen nach rechts gesperrt v/erden müssen.
i)io '.'berbr.-igungsfunktionen für die Diagonalwege, die L-L kreuzen,
h&ben p1:-:o die Form (Xi)(IIR). HR hat nur dann den Wert 1, wenn
eine Verschiebung nach rechts durchgeführt wird. Bei Verschiebungen nach rechts werden die Diagonalwege, die L-L kreuzen,
gesperrt, da. ihre Übertragungsfunktionen den Wert ü haben. Wenn eine der drei anderen Operationsarten durchgeführt wird, hat HH
den V/ert 0, und die Übortragungsfunktionen der Diagonalwege, die
L-L kreuzen, reduzieren sich auf die Form (X1), da diese Diagonalwege
auf nie ,Leiche Weise genteuert v/erden, wie die anderen
i)i.v;on.'i]wege im Jfotzwerk.
-^«««909839/1149
Din Analyse der Ficut 2 wurde gegeben, dnriit das Verfahren zur
Ableitung der Übertragungsfunktionen für alle Arten von Y/egen auch dann verständlich ist, wenn sie für ein System abgeleitet
werden müssen, bei dem die Zahl von Bit in einem Datenwort nicht eine Potenz von 2 ist. In den Figuren 4-11 ist ein Ausführungsbeicpiel
einer Schaltung für ein System πit 20 Bit gezeigt, das
auf dem ITetswerk gemäß Fig. 2 beruht.
Schiebe- und Rotierschaltung für 20 Bit (Fig. 4-11)
^ In der Schiebe- und Hotierschaltung sind die Gatter nur in schematischer
Form dargestellt. Bevor zu einer Analyse der Schiebe- und Rotierschaltung übergegangen wird, muß die verwendete besondere
Gatter-Schaltung betrachtet werden. Die Grundschaltung des Gatters ist in Figur 3A dargestellt. Figur JB zeigt die symbolische Dar-r
Stellung des Gatters·, die in der Zeichnung benutzt wird. Figur 3C
ist eine Tabelle, die die Ausgangsspannung eines Gatters mit 3 Eingängen für die & Kombinationen von Eingangs-Signalpegeln
angibt.
Die Operation des Gatters läßt sich kurz wie folgt beschreiben. Der jiusgang liegt nur dann auf niedrigem Potential (θ), wenn alle
fc Eingänge auf hohem Potential (i) liegen. - Im folgenden soll zur
Vereinfachung der Ausdruck "hohes Potential" durch den Ausdruck
"hoch" und der Ausdruck "niedriges Potential" durch den Ausdruck "tief" ersetzt werden. - Andererseits liegt der Ausgang hoch,
wenn wenigstens ein Eingang tief ist. Bei dem Ausführungsbeispiel
der Erfindung stellen Signale mit niedrigen Pegel (Erde) 0-werte dar, und Signale mit hohem Pegel 1-Werte. Gemäß Fig. 3 A sind,
wenn alle Eingänge hoch liegen, alle Eingangsdioden in Sperrrichtung vorgespannt. Folglich fließt ein Strom von der Quelle
über den Widerstand 301, die Diode 303 und den Basis-Emitterübergang
des Transistors 3Q1. Der Transistor leitet, und der Ausgang
ist über den Transistor gegen Erde kurzgeschlossen. Der
BAD ORIGINAL 90 9839/1U9
U7A581
Ausgang liegt also tief, wenn alle Eingänge hoch sind. Wenn jedoch
wenigstens ein Eingang tief ist, fließt der Strom von der Quelle 300 durch die entsprechende Eingangsdiode zu der Eingangsquelle
mit niedrigem Pegel. Es fließt kein Strom über die Diode 303,
und der Transistor 301 bleibt gesperrt. Der Kollektor dieses Tranistors, also der Ausgang des Gatters, liegt folglich hoch,
und zwar auf dem gleichen Potential wie die Quelle 302. Damit der Ausgang hoch liegt, muß nur einer der Eingänge tief liegen.
Die Figur 3C zeigt die Arbeitsweise des Gatters, wenn drei Eingänge
vorgesehen sind. Das Ausgangssignal des Gatters hat den V/ert 1, wenn wenigstens eines der Eingangssignale eine 0 ist.
der Ausgang liegt nur dann tief, wenn alle Eingänge hoch liegen. 'Jena ein bestimmtes Gatter nur einen Eingang aufweist, arbeitet
es als Inverter, \lenn der Eingang tief ist, liegt der Ausgang
hoch, und wenn der Eingang hoch liegt, ist der Ausgang tief.
Das spezielle, bei dem Ausführungsbexspiel der Erfindung benutzte Gatter ist aus folgendem Grund vorteilhaft. Die Ausgänge von zwei
Gattern können zusammengeschaltet werden, und der kombinierte Ausgang liegt tief, wenn einer der individuellen Ausgänge tief
ist. Aus Fig. 3A ist zu ersehen, daß auch wenn der Transistor
3Q1 nicht leitet, der Ausgang tief liegen kann, wenn der Ausgangsanschluß über den Transistor in einem anderen Gatter gegen Erde
kurzgeschlossen sein kann, dessen Ausgangsanschluß über den entsprechenden Transistor mit Erde verbunden ist. Bei der im folgenden
becchriebenen Anlage wird die Eingangssammelleitung jeder Registerstufe durch eine Vielzahl von Gattern gespeist, ein
Vertikalgatter von der gleichen Stufe und eine Gruppe von Diagonalgattern von Stufen, die weiter links liegen. Nur eines dieser
Gatter soll bei einem beliebigen Schritt in Tätigkeit sein, da entweder alle Diagonalgatter in einer von fünf Grippen oder alle
Vertikalgatter in Tätigkeit sind. Dadurch, daß der Transistor in dem nichtbetätigten V/eg so gesteuert wird, daß er ausgeschaltet
bleibt, wird das Potential auf der Eingangssammelleitung allein
durch die Operation des ausgewählten Gatters gesteuert. Menn der
909839/1149 bad original
-38- U7A581
Transistor in diesem Gatter nicht leitet, lieg^ die i^ingan^ssammelleitung
auf hohem Potential. Venn der 'i'ransistor jedoch leitet, liegt die Samuelleitung tief. Folglich läßt sich das
Potential jeder Singangssammelleitung in .-ibhs.ngi^keib von dem
Zustand nur einer der Registerstufen steuern-. Die nicht betätigten
(oder gesperrten) Gatter liefern immer hohes Potential für die Sammelleitungen. Es steuert also in ..'irklichkeit das gewählte
Gatter das Potential der Sammelleitung, und zwar in Abhängigkeit
davon, ob der 'i'ransistor dieses Gatter leitet oder nicht.
Die Einzelheiten der auf dem Netzwerk der Fig. 2 beruhenden elektronischen Schiebe- und Rotierschaltung für 20 Bit sind in
den Figuren 4 - 11 gezeigt. Die Zuordnung der Figuren zeigt Fi0 1.12.
Das 20-stufige Register, das die btufen 310 bis ST19 enthält,
ist im oberen Teil der Figuren 6-8 dargestellt. Direkt unterhalb der Registerstufen befindet sich die Gruppe von 20 Vertikalgatlern
0V-19V. Die Figuren 6-8 enthalten außerdem die drei Gruppen von Diagonalgattern A0-A19, B0-B19 und C0-C19, die jeweils Verschiebungen
nach rechts um 1, 2 und 4 Positionen steuern. Die Figuren
9-11 enthalten die letzten beiden Gruppen von Diajonalgattern
D0-D19 und 30-219} die jeweils Verschiebungen nach rechts um
8 und 16 Positionen steuern. Die Figuren 4 und 5 zeigen die Steuersohaltungen,
die den Betrieb der 6 Gruppen von Gattern in den Figuren 6 bis 11 beeinflussen. Die Steuerschaltungen bestimmen,
welche G8tter jeweils in Tätigkeit sind, um die richtige Bearbeitung
des sich ursprünglich im Register befindenden Datenwortes zu steuern, "ieitere, nicht gezeigte Schaltungen werden benutzt,
um zu Anfang ein '/ort in das Register einzuschreiben. Die Einzelheiten dieser Schaltungen sind zur Erläuterung des erfindungsgemäßen
Ausführungsbeispiels nicht erforderlich.
Jede Stufe ist mit einer Eingangssammelleitung und einer Ausgangssammelleitung
verbunden. "Jenn die Stufe eine 0 darstellt, liegt
die Ausgangssammelleitung auf niedrigem Potential, und wenn die
Stufe eine 1 darstellt, liegt die Ausgangssaianelleitung auf hohem
Potential. Zum Einschreiben eines Bit in eine Regi3terstufe sind
909839/1 U9
- !ί"οαΛΟ BAD ORIGINAL
die entc-c,jen™esetzten Potentiale erforderlich. Um also eine 0
in eine Stufe einzuschreiben, muß die Jinganjssammelleitung auf
hohen Potential -liegen, und um eine 1 einzuschreiben, muli die
^injairjssr.wiaelleitnnß' auf niedrigen Potential liefen. Oberhalb
jeder Gtufe ist eine Trigger-Leitung an die Ader 5^5 angeschaltet.
V/enn ein ."-it in einer I\egisterstuf e vorhanden ist, wire: die Gtufe
(lurch das /otential der Eingangssamnielleitung nicht beeinflußt.
..r-nn jedoch ein Impuls am Trigger-Eingang erscheint, wird in
..ibii;-.n,^'i; kcit vo;:; ioti?ntial der äingan^ssaniaelleitung ein neues
Bit in die ctufe eingeschrieben. Sobald der Trigger-Impuls aufhurt,
hat das Potential der Eingangesamme1leitung erneut keinen
iiinflujä uchr auf die Stufe. Die Registerstufen STO bis STt?
weisen beiα imsprechen auf den Trigger-Inpuls eine geniignnd
^roise innere Verzögerung auf, dat. die jiu:;t;angssamiue!leitungen
ihren ..art so lan1;e nicht andern, bis der Trigger-Impuls aufhört.
An jeder IJi.n^on.vSsannelleitung enden 6 Gatter. Beispielsweise
sei die Stufe 10 betrachtet. Das Gatter 10V steuert das Potential
c-.ιιϊ der liing ngusariiaelleitmig entsprechend dem Potential auf der
^uci'j.vja^ns.'ii.uiielleitung, I.it anderen '/orten, das Gatter 10Y stellt
das Vertikalgatter dar, d:.s lediglich das erneute· Hinschreiben
des Bit in die Stufe 10 des Registers steuert. Das Diegonalgatter
„11 ist dasjenige Gatter in der ersten Gruppe, das das Bit auf der
.i.ui'a'an,^ssaiainelleitung der iStufe 11 sur Singcui-i'SsaEiDielleitmig der
Stufe 10 r'berträgt, wenn ein Schritt um eine Position nach rechts
ausgeführt wird. Das Gatter B12 ist das Diagonalgatter in der
^reiten Gruppe, das ein Bit von der Ausgangssammelleitung der
Stufe 12 zur Eingangssammelleitung der ütufe 10 überträgt, wenn die Getter in der zweiten Gruppe betätigt sind. Die Gatter in
der dritten, vierten und fünften Gruppe, die an c:ie Eingangss'jLunelleitung
der Stufe 10 angeschaltet sind, sind die Gatter 014, D18 und KG. Diene drei Gatter verbinden die iusgangssammellei-Gii
der Stufen, die uu 4> 0 und 16 Positionen links von der
o κ;. ] it-:,jQnt mit deren Eingangssanmelleitung.
CA® BAD ORIGINAL
Falls keine Steuersignale vorhanden sind, ist keines der Gatter
in den Figuren 6-11 betätigt j das heißt, das Ausgangspotential aller Gatter ist hoch. Da also das Ausgangspotential der 6 Gatter,
die an jede Eingangssanimelleitun,r angeschaltet sind, hoch ist,
liegt die Eingangs Sammelleitung ebenf 8.11s hoch. Bei jedem Betriebsschritt sind die 20 Vertikalgatter oder die 20 Gatter in jeder
Diagonalgruppe betätigt. Da nur ein Gatter der an jede Eingangssammelleitung angeschalteten Gatter betätigt sein kann, ergibt
sich, daß das Potential auf der Sammelleitung allein von der Betätigung dieses Gatters abhängt. Das Ausgangspotential der fünf
anderen, an die Sammelleitung angeschalteten Gatter ist hoch.
Wenn das bei dem Schritt betätigte Gatter hohes Potential an seinem Ausgang erzeugt, bleibt die Eingangssammelleitung auf hohem
Potential, und wenn der Trigger-Impuls auf der Ader 505 erscheint,
wird eine 0 in die Stufe eingeschrieben. "Venn der Ausgang des
betätigten Gatters auf niedrigem .Potential liegt, ist das Potential
der Eingangssammelleitung niedrig, und wenn der Trigger-Impuls auf der Ader 505 erscheint, wird eine 1 in die Stufe eingeschrieben.
Die Steuersignale werden in άφα Schaltungen der Figuren 4 und 5
abgeleitet. Die zur der Steuerschaltung übertragenen Kommandos werden elektronisch gewonnen, aber da die Gewinnung dieser Kommandos
für das Verständnis der Erfindung nicht erforderlich ist, ist ihre Erzeugung lediglich symbolisch auf der linekn Seite der Fig.4
dargestellt. Die Adern HR, HL, (JR und QL liegen alle normalerweise
auf niedrigem. Potential« Wenn irgend eine Operation durchgeführt
werden soll, geht nur eine dieser Adern auf hohes Potentail, Bei Verschiebungen nach rechts ist dies die Ader HR, bei Verschiebungen
nach links die Ader HL, bei Rotationen nach rechts die Ader QE und bei Rotationen nach links die Ader QL. Gleichzeitig
mit dem Anlegen positiven Potentials an eine dieser vier Adern zur Angabe der durchzuführenden Operation werden Steuerpotentiale
an die fünf Größenadern A1, A2, A4, ΑΘ und A16 angelegt. Die
Potentiale auf diesen Adern stellen 5 Bit in einem Binärcode dar,
BAD ORiGJNAL 909839/1U9 ■
welche die Größe der gewünschten Verschiebung angeben. Diese Größe ist der nicht koplementierte Wert und damit die tatsächliche
Größe der auszuführenden Verschiebung. Der Hauptzweck der Schaltungen
gemäß Figur 4 besteht darin, das Leitwort zu gewinnen, das die Verschiebung der Bit im Register tatsächlich steuert.
Die Leit-Bit, die die Verschiebung steuern, erscheinen auf den Leitern X16, ΧΘ, X4, X2 und X1. Die Adern xTfT, X8, X4, X2 und xT
führen die Komplemente der Bit auf den entsprechenden Leitadern. Die Komplemente werden zur Steuerung der Verschiebung ebenfalls
benötigt. Die 5 Adern X16, X8, X4, X2 und X1 liegen auf den gleichen
Potentialen wie die entsprechenden Adern A16, A8, A4» A2
und A1, wenn die Verschiebung nach rechts erfolgt. Wenn jedoch
eine Verschiebung oder Rotation nach links durchzuführen ist, ist das Leitwort auf den Adern X16-X1 das Komplement der Schiebegröße auf den Adern AI6-AI mit Bezug auf die Dezimalzahl 20.
Figur 4 enthält die Schaltungen zur Bildung des Komplements der Eingangs-Schiebegröße mit Bezug auf 20, wenn die Richtung der
Verschiebung links ist.
Die Gatter 401» 402, 403 und 404 dienen als Inverter, da jedes
von ihnen nur einen Eingang aufweist. Da nur eine der Adern BH, HL, QR und QL hoch liegt, ist der Eingang nur eines der 4 Gatter
tief. Vor der Angabe eines Befehls liegen alle vier Adern HR, HL, QR und QL tief. Alle 4 Ausgänge der Gatter 401-404 liegen hoch.
Da beide Eingänge des Gatters 405 und beide Eingänge des Gatters
406 normalerweise hoch liegen, sind die Ausgtinge der beiden Gatter
405 und 406 normalerweise tief. Wenn eine Verschiebung oder
Rotation nach links durchgeführt wird, geht ein Eingang des Gatters 406 tief und folglich der Ausgang hoch. Entsprechend geht,
wenn eine Verschiebung oder Rotation naoh reohts durchgeführt wird, ein Eingang des Gatters 405 tief und der Eingang hoch. Die
Ausgangssignale der Gatter 405 und 406 hängen also nur von der
Richtung der Verschiebung und nicht der speziellen auszuführenden Operation ab. Die Ausgänge dieser beiden Gatter steuern die
909839/1149
Komplement-Bildung der Jiingangs-Gchiebegroiae. Zwischen Verachiebe-
und B.ofcationsoperationen wird kein Unterschied gemacht, da die
Komplement-Bildung der Eingangs-Schiebe^röße lediglich eine Funktion
der Schiebe-Richtung und nicht der speziellen Art der durchzuführenden
Operation ist.
Wenn die Verschiebung nach rechts erfolgt, ist der Ausgang des Gatters 4O6 tief. Da das Ausgangssignal des Gatters 406 an einem
Eingang jedes der Gatter 407-417 liegt, sind die Ausgange dieser
Gatter alle hoch. Die Ausgänge verschiedener dieser Gatter sind zuaammengeschaltet, aber da alle Ausgänge hoch liegen,, liegen
auch alle Leiter 418-421 hoch. Diese Leiter sind mit den Ausgängen
der Gatter 422-425 verbunden, und da die 4 Leiter 418-421 hoch
liegen, sind die an die Adern XI6, X8, X4 und X2 angelegten Potentiale
nur eine Punktion der Operation der Gatter 422-425.
Ein Eingang jedes dieser 4 Gatter ist mit dem Ausgang des Gatters 405 verbunden, der bei einer Verschiebung nach rechts hoch liegt.
Der andere Eingang jedes dieser Gatter ist an eine der Adern XI6,
X8, A4 und A2 angeschaltet. Folglich isb das Ausgangssignal jedes
dieser Gatter das Komplement des entsprechenden Bit der Schiebegröße. Beispielsweise ist also das Potential auf der Ader Χίο
die Umkehrung des Potentials auf der Ader AI6. Der Inverter 429
invertiert den Bit-V/ert auf der Ader XI6, und das Aus gangs signal
dieses Gatters, XI6, ist gleich dem v/'ert des Bit A16. Entsprechendes
gilt für die Gatter 426, 427 und 428. Folglich 3ind bei
Verschiebungen nach rechts die Bit XI6, X8, X4 und X2 die gleichen
wie die Bit auf den Adern AI6, A8, A4 und A2. Die Ader X1 ist
direkt mit A1 verbunden, so daß das Bit X1 den gleichen Wert wie das Bit der niedrigsten Ziffernstelle im 7/ort für die Eingangsgröße
hat. Das Gatter 430 invertiert den Wert des Bit auf der
Ader A1, und, da der Ausgang des Gatters 430 direkt mit der Ader
X1 verbunden ist, ist das Bit X1 das Komplement des Bit X1. Wenn also die Richtung der Verschiebung rechts ist, ist das Leitwort
(X16)(X8)(X4)(X2)(X1) identisoh mit der Eingangs-Schiebegröße. Die Bit XI6, X8, X4, X2 und Χ? sind einfach nur die Komplemente
der entsprechenden Bit in dem endgültigen Wort für die Schiebegröße.
Die komplementierten Bit werden ebenfalls für Steuerzweoke benötigt. 90 9839/1149
Die Gatter 407-417 und die Gritter 430-434 "bilden das Komplement
der Einguugs-Schiebegröße auf den Adern Α16-Λ1 mit Bezug auf die
Zr.hl 2C immer dann, wenn die Icichtung der Verschiebung links ist.
Die Operation dieser Gatter läßt sich am besten "bei einer Prüfung
der folgenden 'fabelte verstehen. Die Tabelle gibt die Binärform für jede der Dezimalzahlen 0-20 an. Das Komplexent jeder
Zahl mit lieaug auf 20 int ebenfalls aufgeführt. Auf der rechten
Üsite dor Tabelle sind 5 Spalten vorhanden, und zwar je eine
Spalte für die Bit XI6, X8, X4, X2 und X1. Eine Prüfung jeder
Spalte zeigt, daii das entsprechende Bit eine 1 sein muß, damit
des endgültige Leitviort das IZomplement des Eingangswortes für
die 3chiebo;;rüße mit Besur auf 20 ist.
9 0 9 8 3 9 / 1 1 A 9£
Dezimal zahl |
Binär form |
Komplement der Dezimpl- zahl mit Be zug auf 20 |
Binär form |
Bit des Komplements Binärform, die den 1 1 haben Xl 6 X8 X4 X2 |
X | X | X | in X1 |
O | 00000 | 20 | 10100 | X | X | X | ||
1 | 00001 | 19 | 10011 | X | X | X | ||
2 | 00010 | 18 | 10010 | X | X | |||
3 | 00011 | 17 | 10001 | X | X | X | X | |
4 | 00100 | 16 | 10000 | X | X | X | X | |
VJl | 00101 | 15 | 01111 | X | X | X | ||
6 | 00110 | 14 | 01110 | X | - χ | |||
7 | 00111 | 13 | 01101 | X | X | X | ||
8 | 01000 | 12 | 01100 | X | ||||
9 | 01001 | 11 | 01011 - | X | ||||
10 | 01010 | 10 | 01010 | |||||
11 | 01011 | 9 | 01001 | X | X | |||
12 | 01100 | 8 | 01000 | X | X | |||
13 | 01101 | 7 | 00111 | X | X | |||
14 | 01110 | 6 | 00110 | X | ||||
VJI | 01111 | VJ! | 00101 | X | X | X | ||
16 | 10000 | 4 | 00100 | . X | ||||
Η | 10001 | 3 | 00011 | X | ||||
18 | 10010 | *2 ' | 00010 | |||||
19 | 10011 | 1 | 00001 | X | ||||
20 | 10100 | 0 | 00000 | |||||
Zunächst zeigt die Tabelle sofort f daß das Bit X1 immer das gleiche
vie das Bit A1 auch dann ist, wenn das Komplement der Eingangs-Schiebegröße
mit Bezug auf 20 gebildet rird. Aus diesem Grund ist die Ader X1 in Figur 4 direkt mit der Ader A1 verbunden. Die Ader
X1 führt aufgrund der Invertierung durch das Getter 430 immer das Komplement des Bit X1. Die anderen 4 Bit X16, X8, X4 und X2
verden in Abhängigkeit von der Operation der Gatter 407-417 und
430-434 gesteuert. Die Grundlagen für den Aufbau der Schaltung sind die folgenden Die Ausgänge aller Gatter 422-425 liegen hoch,
9 09839/1U9
de ein Singrnr jedes dieser Getter mit dem Ausgsnp des G'-tters
405 -verbunden ist, der hoch liegt, wenn die Richtung der Verschiebung
links ist. Folglich wird der Wert jedes der Bit Χΐβ, X8,
X4 und X2 durch das Potential der jeweils zugehörigen Ader 418-421 gesteuert. Jede dieser Adern muß tief gehen, wenn das
entsprechende komplementierte Bit im Leitwort eine 0 sein soll, das heißt, jede dieser Adern muß tief gehen, wenn das entsprechende
der Bit Χ1β, X8, X4 und X2 im endgültigen Wort für die
Verschiebegröße· eine 1 sein soll.
Zunächst sei die Ader 4I8 betrachtet, die den Wert des Bit XI6
steuert. Wie die Tabelle zeigt, muß diese Ader tief gehen, damit
das Bit XI6 den Wert 1 hat, wenn die Eingangs-Schiebegröße 0, 1,
2, 3 oder 4 ist. Die Eingangs-Schiebegröße besitzt einen dieser
Werte, wenn AI6, A8 und A4 alle den Wert 0 haben, oder wenn AI6,
A8, A2 und A1 alle den Wert Ö haben. Drei von den Eingängen des Gatters 417 sind mit den Ausgängen der Gatter 434» 435 und 432
verbunden. Wenn die Bit AI6, A8 und A4 alle den. Wert 0 haben,
sind die Ausgänge dieser drei Gatter hoch und damit drei von den Eingängen des Gatters 417 hoch. Wenn die Verschiebung nach links
erfolgt, ist der vierte Eingang des Gatters 417» der mit dem
Ausgang des Gatters 406 verbunden ist, ebenfalls hoch. Da alle
4 Eingänge des Gatters 417 hoch sind, ist sein Ausgang tief und
die Ader 4I8 tief, wie verlangt. Der andere Fall, bei dem die
Ader 4I8 tief sein muß, wenn alle Bit AI6, A8, A2 und A1 den
Wert 0 haben, wird durch das Gatter 416 gesteuert. Der Eingang
dieses Gatters, der mit dem Ausgang des Gatters 4Ο6 verbunden ist,
ist hoch, wenn die Verschiebung nach links erfolgt. Die anderen 4 Eingänge sind mit den Ausgängen der Gatter 434» 433» 431 und
430 verbunden, die hoch liegen, wenn die Bit AI6, A8, A2 und A1
alle der Wert 0 haben. Folglich liegt der Ausgang des Gatters tief, wenn die Bit AI6, A8, A2 und A1 alle den Wert 0 haben,
so daß das Bit Xi6 eine 1 ist.
909839/1149
H7A581
Die Gatter 412-415 steuern das Potential der Ader 419 und den
T.7ert des Bit X8. Die Arbeitsweise dieser Gatter läßt sich für
jede der 20 möglichen Eingangs-Schiebe^'rÖßen unterauchen. Die
Ausgänge aller dieser Gatter liegen hoch, außer wenn die Verschiebung nach links erfolgt, und die Eingangs-ochiebegröße ist
eine der Zahlen 5-12. V7ie die Tabelle zeigt, muß das Bit X8 nur dann eine 1 sein, das heißt, die Ader 419 muß tief liegen,
wenn die Eingangs-5chiebegröi3e eine der Zahlen 5-12 ist. '■"Wenigstens einer der Ausgänge der Gatter 412-415 geht tief,
wenn die Verschiebung nach links erfolgt und die Eingänge -Schiebegröße
einen der Y.rerte 5-12 hat. Auf entsprechende 7/eise
steuern die-Gatter 409-411 den Vert der Bit X4 und die Gatter
407 und 4O8 den 7ert der Bit X2. Die Hfuptfunktion der Schaltungen
in Figur 4 bestehen darin, das Leitwort (X16)(X0)(X4)
(X2)(X1) abzuleiten, das die ',7ege steuert, die das D&tenwort im Netzwerk nimmt. Die Richtung der Verschiebung durch das Netzwerk
ist immer links. V/enn das Eingangskommando für die Anlage lautet, nach links zu verschieben oder zu rotieren, wird das
Leitwort, das die tatsächliche Verschiebung nach rechts Steuerfa,
so ausgebildet, daß es das Komplement der -iJingan^s-Jchiebegröße
mit Bezug auf 20 ist.
Zusätzlich zu den 10 Adern XI6-XI, die von Figur 4 su den übrigen
Teilen der Schiebe- und Rotierschaltung führen, gehen 2 Adern
HL und HR von Figur 4 zu den übrigen Figuren. Diese 2 Adern geben
an, ob eine der Schiebe-Operationen durchzuführen ist. Die Schaltungen
in den übrigen 'feilen der Anlage benötigen keine zusätzlichen
Informationen. 7/enn die 2 Adern HL und HR keine Schiebe-Operation
angeben, wird das Eingangsdatenwort nach rechts rotiert.
Zur Durchführung einer Rotation nach links ist keine v/eitere Beeinflussung erforderlich, da das Komplement der Eingfiigs-Schiebegröße
bereits gebildet ist und automatisch die Rotation nach links steurt, obwohl das Eingangsdatenwort tatsächlich nach
reohts rotiert wird.
BAD ORIGINAL
Figur 5 enthält einen Ringzähler 504 mit 6 Stufen R1-R6. Es sei
daran erinnert, daß fünf Schritte zur Durchführung jeder Operation erforderlich sind. Wenn die Ausgangsader L1 der Stufe H1 hoch
liegt, wird der erste Schritt, und zwar entweder vertikal oder diagonal, ausgeführt. Wenn die Ausgangsader L2 der Stufe R2 hoch
liegt, findet der zweite Schritt, vertikal oder diagonal, statt. Entsprechendes gilt für die Stufen R3-R5 und die Ausgangsadern
L3-L5. Zu Anfang enthält die Stufe R6 des Zählers das 1-Bit.
Nachdem die verschiedenen Kommandosignale an die Steuerschaltung
angelegt sind, und das Leitwort abgeleitet ist, wird ein Start-Impuls an den Eingang S des Flipflops 5OO angelegt. Das Flipflop
schaltet in den Zustand 1 um, und das Gatter 501 ist erregt. Der ^
Impulsgenerator 502 arbeitet kontinuierlich, aber so lange das
Gatter 501- nicht erregt ist, werden die Impulse nicht zur Verzögerung
503 und dem Schiebe-Eingang des Ringzählers 504 übertragen.
Vfenn das Gatter jedoch durch Anlegen des Start-Impulses
erregt ist, beaufschlagen die Impulse aus dem Impulsgenerator sowohl die Verzögerung als auch den Zähler. Der erste, an den
Zähler angelegte Schiebe-Impuls bewirkt, daß das "Ir-Bi t in der
Stufe r6 zur Stufe R1 zurückgeführt wird. Folglich liegt die Ader
L1 auf hohem Potential und der erste Schritt wird ausgeführt.
!Tatsächlich steuert die Erregung der Ader L1 lediglich die Erzeugung des richtigen Potentials auf jeder der 20 Eingangssammelleitungen.
Die Bit in den Registerstufen werden erst beeinflußt, wenn einer Trigger-Impuls an die Ader 505 angelegt wird. Der j
gleiche Impuls aus dem Impulsgenerator 502, der zunächst die
Erregung der Ader L1 bewirkt hat, wird über die Verzögerung 503
zur 'frigger-Eingangsader 5O5 übertragen. Der Impuls wird verzögert,
damit die richtigen Potentiale auf den 20 Eingangssammelleitungen erzeugt werden bevor die neuen Bit in die Registerstufen eingeschrieben
werden. Der zweite Impuls aus dem Impulsgenerator 502 schiebt das 1-Bit aus der Stufe R1 des Ringzählers 504 zur Stufe
R2. Dadurch wird die Ader L1 aberregt und die Ader L2 erregt,
um den zweiten Schritt zu steuern, der v/iederum entweder vertikal
oder diagonal erfolgen kann. Dieser Vorgang setzt sich fort, bis zum Schluß der fünfte Impuls die Erregung der an den Ausgang der
Stufe R5 angeschalteten Ader LT6 bewirkt. Wenn der fünfte Impuls
über die Verzögerung 503 übertragen wird, wird der fünfte Schritt,
entweder vertikal oder um 16 Positionen nach reohts, durchgeführt.
Zu diesem Zeitpunkt erscheint das -verschobene Wor,t in den Registerstufen
STO bis ST19, und es sind keine weiteren Operationen erforderlich.
Der sechste Impuls aus dem Impulsgenerator 502 bewirkt,
daß das 1-Bit in der Stufe R5 zur Stufe R6 verschoben wird.
Die Ausgangsader der Stufe R6 ist an den Stop-Eingang R des Flipflops 500 angeschaltet. Wenn das Flipflop in den Zustand 0
umschaltet, geht der Ausgang 1 auf niedriges Potential und das Gatter 501 ist abgeschaltet. Der Zähler 504 bleibt also zur Vorbereitung
der nächsten Operation mit erregter Stufe R6 stehen.
Von der Figur 5 führen verschiedene Adern zu den Figuren 6-11.
Die Adern X1, X2, X4, X8 und X16 steuern die Erregung der Diagonalgatter
in den entsprechenden Gruppen. Wenn beispielsweise die
Ader X8 auf hohem Potential liegt, sind die Gatter D1-D19 betätigt
und übertragen die Bit in den entsprechenden Stufen zu um 8 Positionen weiter rechts liegenden Stufen. Wenn die Ader X8
auf niedrigem Potential liegt, sind diese Diagonalgatter während des vierten Betriebsschrittes nicht betätigt, da während dieses
Schrittes die Vertikalgatter betätigt sind. Auch die Adern L1, L2, L4>
L8 und L16 führen über das Kabel 520 zu den Figuren 6-11.
Jede Ader ist an alle 20 Gatter in einer entsprechenden Gruppe von Diagonalgattern angeschaltet. Nur eine dieser Adern liegt
während jedes der 5 Schritte der Schiebe-Operation auf hohem Potential, so daß höchstens eine der 5 Gruppen von Diagonalgattern
in jedem Schritt betätigt sein kann. Die 20 Gatter der Gruppe sind jedoch nur dann betätigt, wenn die entsprechende
Ader X1-X16 auf hohem Potential liegt.
Die restlichen Schaltungen in Figur 5 leiten die Steuersignale
für die 20 Vertikalgatter 0V-19V ab. Es seien zunächst die 6 Gatter 530-535 betrachtet. Der Ausgang des Gatters 535 ist an einen
Eingang jedes der 20 Vertikalgatter angeschaltet. Der Ausgang des Gatters 535 liegt normalerweise tief, damit der Ausgang jedes
9 0 9 8 3 9 / 1 U 9
BAD ORIGINAL
U74581
der Vertikalgatter auf hohem Potential ist. Wenn kein Vertikalschritt
auszuführen ist, muß der Ausgang jedes Vertikalgatters auf hohem Potential liegen, damit das Potential der entsprechenden
Eingangssammelleitung durch das betätigte Gatter der fünf an die Sammelleitung angeschalteten Diagonalgatter bestimmt ist. Der
Ausgang des Gatters 555 geht während eines Schrittintervals nur dann auf hohes Potential, wenn ein Vertikalschritt während
dieses Intervalls auszuführen ist. Wenn also beispielsweise die auf den Adern XI6-XI dargestellte Schiebegröße die Binärzahl
01011 ist, sind Vertikalschritte während des dritten und fünften ochrittintervalls auszuführen, und der Ausgang des Gatters 535
bleibt auf niedrigem Potential mit Ausnahme der Schrittintervalle 3 und 5>
bei denen er auf hohes Potential geht.
Das Gatter 535 wird durch die Ausgänge des Gatters 530-534 gesteuert.
Die Adern LI-LI6 sind jeweils an einen Eingang eines
entsprechenden dieser Gatter angeschaltet. Ba zu Anfang jede ·
dieser Adern auf niedrigem Potential liegt, sind die Ausgänge aller 5 Gatter hoch, und der Ausgang- des Gatters 535 ist tief.
Während des ersten Schrittintervalls liegt die Ader L1 auf hohem Potential. Wenn die Ader ΧΪ hoch ist, das heißt, die Vertikalgatter
während des ersten Schrittintervalls zu betätigen sind, sind beide Eingänge des Gatters 530 hoch und der Ausgang geht
tief. Folglich geht der Ausgang des Gatters 535 hoch und steuert die Operation der Vertikalgatter, Wenn während des ersten Schrittintervalls
ein Diagonalsohritt ausgeführt werden soll, liegt die Ader X1 auf niedrigem Potential, der Ausgang des Gatters 530
bleibt hoch und der Ausgang des Gatters 535 bleibt tief. Entsprechendes gilt für die Gatter 531-534, die das Gatter 535
während der Schrittintervalle 2-5 steuern. Beispielsweise geht der Ausgang des Gatters 533 während des vierten Sohrittintervalls
nur dann tief, wenn die Ader L8 hooh Hegt und die Ader ΧΘ ebenfalls
hoch ist. In einem solohen Pail ist der Vertikalschritt
auszuführen, und die Ader 535 geht auf hohes Potential,
903839/1149
Zur Durchführung einer Rotation nach rechts sind keine Sperrsignale
erforderlich. Auch zur Durchführung von Rotationen nach
links werden keine Sperrsignale "benötigt. Nach Ableitung des Komplements der Schiebegröße findet die normale Rotation nach
rechts statt. Bei Verschiebungen nach rechts ist jedoch ein Sperrsignal erforderlich, um diejenigen Diagonalgatter zu sperren,
welche die übertragung von Bit aus Stufen am rechten Ende des Registers zu Stufen am linken Ende steuern. Die Ader HR liegt bei
Verschiebungen nach rechts auf hohem Potential, und diese Ader führt zu den Figuren 6-11, um die Sperrung der Diagonalgatter zu
steuern, wie im folgenden beschrieben werden soll. Bei-Verschiebungen
nach links müssen einige der Vertikalgatter gesperrt sein. Die Vertikalgatter-Sperrsignale v/erden durch nie Gatter 5O0-512
abgeleitet und erscheinen auf den Adern BL1 , BL2, BL4-"-, I5L4B, BLü
und BL16.
Zunächst sei das aperrsi^nal auf der Ader BL16 betrachtet. L^mäß
Figur 2 müssen die Vertikalwege zwischen den iCnoten 0:1 ι rid '.'Γ
bis 4E und 4F während des fünften ochrittintervalls gesperrt sain,
das heißt, =die 5 Vertikalgatter OV bis 4V müssen automatisch das
Einschreiben von 0-'iorten in die :Jtufen 0 bis 4 steuern, wenn XI6
den V,rert 0 hat. ,Venn XI6 eine 0 ist, sind die an die Sin&r-nrssammelleitung
jeder der Stufen 0 bis 4 angeschalteten 5 uiagonalgatter
nicht betätigt und ihre Ausgänge liegen hoch. Das Potential der Eingangssammelleitungen ist allein durch die Vertikalgatter
bestimmt, und wenn die Ausgänge der 5 Vertikalgatter hoch
liegen, ist das Potential der Eingengssammelleitungen hoch, und
es werden 0-\7erte in die ersten 5 Stufen de3 Registers eingeschrieben.
Die Ader BLI6 ist an einen Eingang jedes der Gftter OV bis
4V angeschaltet, und wenn diese Ader während des fünften ochrittintervalls
auf niedriges Potential gehts werden Ü-Werte in die
ersten 5 Stufen eingeschrieben, wie verlangt. Die Ader BLI6 liegt
normalerweise hoch, da die beiden Adern L16 und HL, »die zu den
Eingängen des Gatters 507 führen, tief liegen, »"fahrend des fünften
Schattintervalls ist die Ader LI6 auf hohem Potential. V/enn die
909839/1U9
BAD ORIGINAL
Ader JIL hoch liegt, das heißt, eine Verschiebung naoh links
ausgeführt wird, geht der Ausgang des Gatters 507 tief und die
Ausgänge der Vertikalgatter OV bis 4V werden auf hohem Potential
gehalten. 17atürlieh werden, wenn während des fünften ochrittintervalls
ein Diagonalschritt ausgeführt wird, die Ausgänge
dieser 5 Gatter und auch die Ausgänge der übrigen Vertikalgatter
auf hohem Potential gehalten, damit das Potential auf den Eing'-ngssanmelleitungen
allein durch das Bit-Signal bestimmt wird, das über das eine, an jede Eingr.ngssammelleitung angeschaltete,
betätigte Magonalgatter übertragen wird. Wenn jedoch Vertikals-chritte
ausgeführt werden, sind die einzigen Gatter, die betatift
sein können, die Vertikalgatter, und wenn die Ausgänge der Gatter OV bis 4V durch das niedrige Potential auf der Sperrader
BL 16 auf hohem Potential gehalten werden, liegen die Eingangsstinmelleitungen
hoch. Dann werden O-Werte automatisch in die ersten 5 Stufen eingeschrieben, unabhängig von den Bit-Werten,
die zu Anffng in diesen Stufen waren.
? orechend Figur 2 müssen während des vies-tsn Schrittintervalls
die an die Stufen 5 bis 12 angeschalteten Vertikalgatter gesperrt sein, das heißt, auch wenn Vertikalschritte ausgeführt werden,
nässen 1He Ausgänge der Gatter 5V bis 12V auf hohem Potential
gehalten werden, damit O-Werte automatisch in die Stufen 5 bis des .tegisters eingeschrieben werden, falls X8 eine 0 ist. Vv ie
jo'loch oben beschrieben, ist die Sperrung nur bedingt. Diese
fi.-tter müssen nur dann gesperrt sein, wenn die Bit in den Stufen
Jy bis 12 die Linie L-L während des fünften Schrittes nicht kreuzen
!tonnen. Yährend die Sperräder BL8 während des vierten Sohrittintorv^lls
bei hohem Potential der Ader L8 auf niedriges Potentini gehen muß, wenn die Ader JlL hoch liegt, darf die Sperrader
nur denn auf niedrigos i'otential gehen, wenn XI6 den Wert 0 hat.
Aur; diesem Grund erhält df.c Gatter 508 drei Eingangs signale,
nämlich L8, HL und X16. V.'enn X16 eine 1 ist, hat XI6' den Wert 0
und der Ausgang des Grotters 508 ist hoch, da die an die Stufen
I, biß 12 nm.QBohaltoten Vertikalgatter nicht gesperrt sein dürfen.
Φ39 8 3 9 / 1 U 9
-52- H74581
Yvrenn jedoch X16 eine 1 ist und angibt, daß die Bit in den Stufen
5 bis 12 während des fünften Sohrittintervalls die Linie L-L
nicht kreuzen werden, liegen die drei Eingänge des1 Gatters 508
hoch und die Ader BL8 geht während des fünften Schrittintervalls auf niedriges Potential.
Unter Bezugnahme auf Figur 2 soll daran erinnert werden, daß zur Ausführung des Schrittes mit 4 Positionen der übertragungsweg
16C-16D unbedingt gesperrt sein muß, während die 'Übertragungswege
13C-13D bis I5C-I5D nur dann gesperrt sein dürfen, wenn XI6 den
_ Wert 0 hat, da die über diese 3 Vertikalwege nach unten über-
W tragenen Bit die Linie L-L kreuzen, wenn der Diagonalschritt von
16 Positionen durchgeführt wird. Das Gatter 509 wird zur Ableitung
des Sperrsignals BL4A benutzt. Die Ader BL4A geht unbedingt auf
niedriges Potential, wenn die Adern L4 und HL hoch liegen. Die Ader BL4A ist an einen Eingang des Gatters 16V angeschaltet, und
bei Verschiebungen nach links wird während des vierten Schrittintervalls das Bit in der Stufe 16 des Registers automatisch so
abgeändert, daß es den IVert 0 hat. Das Gatter 510 wird zur Ableitung
des Sperrsignals BL4B benutzt. Die Eingangssignale dieses
Gatters sind die gleichen wie die für das Gatter 509 mit der
Ausnahme, daß ein zusätzliches Eingangssignal XI6 vorgesehen ist.
Folglich geht die Ader BL4B während des dritten Schrittintervalls k bei einer Verschiebung nach links nur dann auf niedriges Potential,
wenn XI6 den Wert 0 hat. Dieses Sperrsignal geht an einen Eingang
jedes der Gatter 1JV bis I5Y. Bei einer Verschiebung nach links
werden während des dritten Schrittintervalls die Ausgänge dieser Gatter nur für den Fall auf hohes Potential gebracht, daß XI6
den Wert 0 hat.
Gemäß Figur 2 dürfen bei Verschiebungen nach links die Vertikalgatter
I7B-I7C und 18B-18C nur dann gesperrt sein, wenn X16 oder
X4 den Wert 0 hat. Y/enn wenigstens eines dieser Bit eine 0 ist, hat ein über die beiden Vertikalwege nach unten übertragenes Bit
nicht die Möglichkeit, die Linie L-L bis zum Ende der Verschie-
; ;9 09839/1 U9
-53- . H74581
bung zu kreuzen. Folglich darf die Sperrader BL2, die an die
Tertikaigatter 17V und 18V angeschaltet ist, während des zweiten
Schrittintervalls bei Verschiebungen nach links nur dann auf niedriges Potential gehen, wenn wenigstens eines der Bit X4 und
X16 den Wert 0 hat. Zwei von den Eingangssignalen des Gatters 511
sind die Signale L2 und HL. Diese Signale stellen während des zweiten Schrittintervalls bei einer Verschiebung nach links beide
hohes Potential dar. Das dritte Eingangssignal des Gatters kommt vom Ausgang des Gatters 506. Die beiden Eingangssignale dieses
Gatters sind die Bit X4 und X16. Wenn eines der Bit X4 und X16
den Wert 0 hat, geht der Ausgang des Gatters auf hohes Potential, und da alle drei Eingänge des Gatters 511 hoch liegen, geht das
Sperrsignal BL2 auf niedriges Potential. Das Sperrsignal BL2 ist ein bedingtes Signal. Es geht während des zweiten Schrittintervalls
bei einer Verschiebung naoh links nur dann auf niedriges Potential, wenn wenigstens eines der Bit X4 und X16 eine
0 ist. .Venn beide Bit den Wert 1 haben, ist der Ausgang des
Gatters 506 tief, und das Sperrsignal BL2 bleibt.hoch, damit die
Vertikalgatter 17V und 18V nicht automatisch gesperrt werden.
Der letzte, noch zu betrachtende gestrichelte Vertikalweg in
Figur 2 ist der Weg 19A-19B. Dieser Weg ist einer der 5 Vertikalwege,
die dem Gatter 19V entsprechen. Wie oben beschrieben, wird der Weg während des ersten SchrittintervalIs bei einer Verschiebung
nach links bedingt gesperrt. Er ist nur dann gesperrt, wenn wenigstens eines der Bit X4 und X16 eine 0 ist. Die 3 Eingänge
des Gatters 512 sind L1, HL und der Ausgang des Gatters 5O6.
Der Bedingungsfaktor ist der gleiche wie der für die beiden Vertikalwege I7B-I7O und 18B-18C, und folglich ist das Gatter 5O6
an einen Eingang jedes der Gr.tter 51I und 512 angeschaltet.
Ea seien jetzt die Gatterverbindungen in den Figuren 6-11 betrachtet.
Von den 6 Gruppen mit jeweils 20 Gattern ist nur eine Gruppe während jedes Schrittintervalls betätigt. Einem Eingang
909839/1U9
jedes der Gatter in der Gruppe A wird das Signal L1 zugeführt. Entsprechendes gilt für die Gruppen B, C, D und E von Diagonalgattern
und die Signale L2, L4i L8 und L16. Polglich kann in
jedem Schrittintervall höchstens eine der 5 Gruppen von Diagonalgattern
betätigt sein, das heißt, die Ausgänge der Gatter in höchstens einer dieser Gruppen können auf niedriges Potential
gehen, um das Einschreiben von 1-Vierten in die entsprechenden Stufen zu steuern,
Während des entsprechenden Schrittintervalls darf nur dann eine bestimmte Gruppe von Diagonalgattern in Tätigkeit treten, wenn
während dieses Intervalls der Diagonalschritt auszuführen ist. Ob der Diagonalschritt auszuführen ist, wird durch das entsprechende
der 5 Bit X1-X16 bestimmt. Das ßit X1 ist eines der iüngangssignale
für jedes der Diagon?.!gat ter in der C-ruun>e Λ, das
Bit X2 ist eines d^r Eingangs signale f"r jedes der Di' yonoli;£.tter
in der Gruppe B, das Bit X4 ist eines der Eingangssigiu.le für
jedes der Dia,:;onalgatter in der Gruppe G usw. Es seien beispielsweise
die Gatter GO bis C19 betrachtet. Jedes dieser Gatter erhält
ein Eingangssignal L4 und ein Eingangssignal X4. ..'ütirend
des ersten, zweiten, vierten und fünften Üchrittintervalls ist
L4 tief, und der Ausgang jedes der 20 Gatter wird auf hohem Potential gehalten, damit diese Gatter die Eingangssannielleitungen
nicht steuern. Während des dritten Schrittintervalls ist L4 hoch,
und die 20 Diagonalgatter sind nicht gegen eine Betätigung gesperrt. Wenn jedoch X4 eine 0 ist, sollen diese Gatter gesperrt
sein, da der Diagonalschritt mit dem viert 4 nicht auszuführen ist
wenn X4 eine 0 ist, wird der Ausgang jedes der 20 Gatter auf
hohem Potential gehalten, und die Gatter üben wiederum keine Steuerung für die Potentiale der.Eingangssammelleitungen aus.
Nur wenn ein Diagonalschritt mit dem Wert 4 auszuführen ist,
liegen beide Signale L4 und X4 während des dritten Schrittintervalls
hoch. Zu diesem Zeitpunkt bringt keines der beiden Signale die Ausgänge der Gatter auf hohes Potential, und die Gatter
arbeiten entsprechend den übrigen Eingangssignalen.
909-839/1149
Jedes der 100 Diagona!gatter v/eist neben einem der !-Eingänge
und einem der X-Eingänge einen Eingang auf, der an die Ausgangssai.ii.ielleitung
einer entsprechenden Stufe angeschaltet ist. Einige Magon~lgatter haben einen vierten Eingang HR, der jedoch im
Augenblick nicht beachtet werden soll. Wenn die ersten beiden älnc'ange jedes Gatters hoch liegen, wird das Ausgangssignal allein
durch den dritten Eingang bestimmt. Wenn der dritte Eingang, der
an eine Ausgangssammelleitung angeschaltet ist, ebenfalls hoch liegt, geht der Ausgang auf niedriges Potential. Tenn andererseits
der dritte Eingang tief liegt, bleibt der Ausgang auf hohem Potential auch dann, wenn die anderen beiden Eingänge hoch sind. Man ■
erkennt, daß, wenn eines der Diagonalgatter erregt ist, das darüber übertragene Signal invertiert wird. Wenn die ersten beiden
Eingänge auf hohem rotential liegen, ist das Potential des Ausgangs
dem des dritten Eingangs entgegengesetzt, der an eine Ausgangssammelleitung angeschaltet ist. Aus diesem Grund sind die
Potentiale, die auf den Ausgangssammelleitungen 0- und 1-Werte
darstellen, den Potentialen entgegengesetzt, die auf den Eingangs-Samuel
leitungen erforderlich sind, um diese Bit in die Registerstufen einzuschreiben.
Als Beispiel sei dns Diagoualgatter C9 betrachtet. Während des
dritten Schrittintervalls liegen, wenn X4 eine 1 ist, die Ausgänge
der 20 Vertikalgatter und der Diagonalgatter der Gruppen A,
B, D und E alle auf hohem Potential, Polglich liegen von den sechs
an die Mngangssammelleitung der Stufe 5 angeschalteten Ausgängen
die Ausgänge der Gatter 57, Αβ, BJ, C9, D13 und E1 alle auf hohem
rotential mit Ausnahme des Ausgangs des Gatters C9, der auf
niedriges i-otential gehen kann. Xlenn dieser Ausgang tief liegt,
ist die Eingangssamraelleitung der Stufe 5 ebenfalls auf niedrigem
Potential, /ährend des dritten Schrittintervalls liegt die Ader
L4 hoch und steuert und steuert das Gatter G9 nicht. Da der Diagonalochritt
auszuführen ist, liegt die Ader X4 ebenfalls hoch und steuert dns Gatter C9 nicht. Der dritte Eingang des Gatters
int an die AusgangHsammelleitung der Stufe 9 angeschaltet. Wenn
39/ 1U9 BAD
die Stufe 9 ,eine O enthält, liegt die Ausgangssammelleitung auf ,
niedrigen Potential, und der Ausgang des Gatters C9 "bleibt hoch.
Da die Ausgänge aller 6 Gatter, die an die Eingangssammelleitung
der Stufe 5 angeschaltet sind, auf hohem Potential liegen, ist das Potential der Sammelleitung hoch, und es wird eine 0 in die
Stufe eingeschrieben. Auf diese Weise wird die 0 in der Stufe 9 zur Stufe 5 geschoeben. Wenn andererseits die Stufe 9 eine 1
enthält, liegt ihr Ausgang hoch. Da alle drei Eingänge des Gatters
G9 hoch liegen, geht der Ausgang tief und legt die Eingangssammelleitung der Stufe 5 an Erde. Da die EingangsSammelleitung
tief ist, wird eine 1 in die Stufe 5 eingeschrieben.
Alle anderen Diagonalgatter arbeiten auf entsprechende Weise mit der Ausnahme, daß einige Gatter HR-Eing'angssignale aufweisen.
Es sei daran erinnert, daß bei Verschiebungen nach rechts Bit, die über die Linie L-L in Figur 2 geschoben werden, nicht wieder
auf der linken Seite in das Register eingefügt werden.dürfen.
Ton den 20 Diagonalgattern der Gruppe A ist das Eingangssignal
KR nur an das Gatter AO angeschaltet. Dies ist das einzige Gatter der Gruppe, das veranlassen kann, daß ein Bit die Linie L-L
kreuzt, das heißt, auf der linken Seite wieder in das Register eingefügt wird. Bei einer Verschiebung nach rechts wird also,
wenn HR den Wert 0 hat, der Ausgang des Gatters AO unabhängig vom Wert des Bit in. der Stufe 0 und dem Potential ihrer Ausgangssammelleitung
auf hohem Potential gehalten. Da der Ausgang des Gatters AO hoch liegt, ist die EingangsSammelleitung der Stufe 19
ebenfalls hoch (die anderen 4 Diagonalgatter, die an dieser Eingangssammelleitung
enden, arbeiten während des ersten Schrittintervalls nicht, und das Vertikalgatter 19V arbeitet nicht,
wenn X1 eine 1 ist), und es wird eine 0 in die Stufe eingeschrieben, wenn ein Trigger-Impuls auf der Ader 505 erscheint. Von den
***■ Gattern der Gruppe B können nur die Gatter B1 und BQ Bit zu den
Stufen (19 und 18) auf der linken Seite des Registers übertragen. Folglich ist das Signal HR als viertes Eingangssignal an diese
beiden Gatter angelegt, damit sie bei Verschiebungen nach rechts
9U9839/1U 9
gesperrt sind. Entsprechendes gilt für die am weitesten rechts liegenden Gatter der Gruppen C, D und E. Das Sperrsignal ER
ist ein Eingangssignal für die vier am weitesten rechts liegenden Diagonalgatter in der Gruppe G, die acht am weitesten rechts
liegenden Diagonalgatter in der Gruppe D und die 16 am weitesten
rechts liegenden Diagonalgatter in der Gruppe E,
Es sollen jetzt die Vertikalgatter OV Ms 19V betrachtet werden. Jedes Gatter weist drei Eingänge auf. Ein erster Eingang ist an
die Ausgangssammelleitung der entsprechenden Stufe angeschaltet. Έβηη die anderen beiden Eingänge des Gatters hoch liegen, hat
der Ausgang des Gatters, der an die EingangsSammelleitung der
gleichen Stufe angeschaltet ist, das entgegengesetzte Potential wie die Ausgangssammelleitung und bewirkt, daß der gleiche Bit-Wert
erneut in die Stufe eingeschrieben wird. Das Potential der Ausgangssammelleitung wird allein durch das Vertikalgatter bestimmt,
da die Ausgänge der 100 Diagonalgatter auf hohem Potential bleiben, wenn die Vertikalgatter erregt sind. Der zweite Eingang
jedes der Vertikalgatter liegt am Ausgang des Gatters 535. Die
entsprechende Ader liegt normalerweise auf niedrigem, Potential, um die Ausgänge der 20 Vertikalgatter auf hohem Potential zu
halten. Die vertikale Betätigungsader VE geht auf hohes Potential,
damit die Vertikalgatter nur dann in Tätigkeit treten, wenn ein Vertikalschritt auszuführen ist. Es sei daran erinnert, daß der
Ausgang des Gatters 535 normalerweise tief liegt. Er bleibt während jedes Schrittintervalls tief, wenn ein Diagonalschritt
auszuführen ist, damit die Ausgänge der Vertikalgatter auf hohem Potential gehalten werden und folglich die Potentiale der entsprechenden
Eingangssammelleitungen nicht steuern. Bei jedem Schrittintervall, in dem ein Vertikalschritt auszuführen ist,
ist das Signal VE jedoch hoch. Die Vertikalgatter können also in Abhängigkeit von den anderen Eingängen in !Tätigkeit treten.
Das dritte Eingangssignal für jedes Vertikalgatter ist eines der Sperrsignale. Ohne diese Sperrsignale, die beispielsweise bei
909839/1149
-se- H7A581
Rotationen und Verschiebungen nach rechts nicht vorhanden sind, würde die Operation jedes Vertikalgatters allein durch das
Potential der entsprechenden Ausgangssammel/leitung bestimmt.
Bei Verschiebungen nach links müssen einige Vertikalgatter gesperrt
sein, das heißt, ihre Ausgänge müssen auf hohem .Potential gehalten werden, damit O-Werte in die entsprechenden Stufen
eingeschrieben v/erden. Wie oben erläutert, sind die verschiedenen Sperrsignale BL1 bis BL'! 6 an diejenigen Vertikalgatter
angelegt, die so gesteuert werden müssen, deß sie bei Verschiebungen
nach links automatisch O-Werte in die entsprechenden
Stufen einschreiben. 7/ahrend die Sperrsignale normalerweise hoch liegen und keine Steuerung ausüben, ist während einer Verschiebung nach links, wenn ein Vertikalweg in Figur 2 zu sperren ist,
das an das entsprechende Vertikalgatter angelegte Sperrsignal auf niedrigem Potential und bewirkt, daß der Ausgang unabhängig
vom Potential der entsprechenden Ausgangssammeileitung auf hohes
Potential geht. Da die Eingangssammelleitung auf üiese Weise auf hohem Potential gehalten wird, wird eine 0 in die entsprechende
Stufe eingeschrieben. Wie oben erläutert, ist das Sperrsignal BL1 an einen Eingang des Gatters 19V angelegt, das Sperrsignal
BL2 an die Eingänge der Grtter 17V und 18V, das Sperrsignal
BL4A an einen Eingang-des Gatters 16V, das operrsignal
BL4B an Eingänge der Gatter 13V bis 15V, <las Sperrsignal BL8
an Eingänge der Gatter 5V bis 12V und das Sperrsignal BL16 an
Eingänge der Gatter OV bis $Ψ· Bde Sperrsignale sind nur bei
Verschiebungen nach links wirksam und können dann während der entsprechenden Schrittintervalle auf niedriges Potential gehen.
Jedes Vertikalgatter hat zusätzlich zu einem Bit-Eingangssignal von einer entsprechenden Stufe zwei Eingangssignale. Das an
jedes Vertikalgatter angelegte Signal VE bewirkt das Arbeiten der gesamten Gruppe von Gattern im Gegensatz zum Arbeiten einer
der 5 Gruppen von Diagonalgattern. Selbst wenn jedoch das Signal
VE die Vertikalgatter zu betätigen versucht, können bestimmte Gatter immer noch in Abhängigkeit von den entsprechenden Sperrsignalen
gesperrt werden. Durch die Sperrung der Vertikalgatter in der beschriebenen Weise wird die Möglichkeit geschaffen,
909839/1 U9
Verschiebungen nach links ι unter Verwendung von Schaltungen für
Rotationen nach rechts durchzuführen.
Es sei noch angemerkt, daß Alternativmöglichkeiten für den Einsatz
von Vertikalgattern zur Steuerung von Verschiebungen nach links mit Schaltungen für Rotationen nach rechts bestehen. Die
Vertikalgatter werden bei Verschiebungen nach rechts und bei
beiden Rotations-Operationen tatsächlich nicht benötigt, da sie
lediglich das erneute Einschreiben der Bit in die Registerstufen steuern. Die Vertikalgatter sind bei dem Ausführungsbeispiel
der Erfindung für Verschiebungen nach links erforderlich, um das Einschreiben von O-Werten in gewählte Stufen zu steuern. Statt
der Vertikalgatter, die bei allen vier Operationsarten in Tätigkeit
sind» kann eine Gruppe von Gattern vorgesehen sein, die nur bei einer Verschiebung nach links in Tätigkeit sind und die durch
die Sperrsignale direkt derart gesteuert werden, dai3 sie O-V/erte
in die gewählten Stufen einschreiben.
90-9 839/1 U-9
Claims (1)
- U7A581Patentansprüche1. Schiebe- und Rotierschaltung zur Verschiebung und Rotation der in den Stufen eines Registers enthaltenen Bit mit einer Rotierschaltung., die die Bit im Register in einer ersten Richtung rotiert und dabei die an einem Ende des Registers herausgeschobenen Bit am anderen Ende -wieder einfügt, dadurch gekennzeichnet, daß eine mit den Stufen des Registers verbundene Schaltung (Gatter OY- 1°/V) zur Durchführung einer Schiebe-Operation in der anderen Richtung| flas Einschreiben von 0-\7erten in diejenigen Stufen steuert, die bei Beendigung einer Rotier-Operation im anderen Falle Bit enthalten würden, die nicht an einem Ende aus dem Register herausgeschoben und am anderen Ende wieder eingefügt worden sind.2. Schiebe- und Rotierschaltung nach Anspruch 1, dadurch gekennzeichnet, daß eine Schaltung (Komplement-Schaltung in Mg. 4) zur Bildung des Komplements einer angegebenen Schiebegröße mit Bezug auf die Zahl von Stufen im Register die Arbeitsweise der Rotierschaltung steuert, -wenn eine Schiebe-Operation in der anderen Richtung durchzuführen ist.J. Schiebe- und Rotierschaltung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Schaltung zvut Durchführung der Schiebe-Operation in der anderen Richtung eine Vielzahl individueller Schaltungen (Gatter 0T-19V), die jeweils mit einer entsprechenden Stufe verbunden sind, und eine Schaltung (Gatter 530-535) enthält, die mit der Vielzahl individueller Schaltungen verbunden ist und diese zum Einschreiben von O-Werten in die909839/1149-61- . U74581Registerstufen nur in den Fällen erregt, wenn die Rotierschal tung nicht in !Tätigkeit ist.4. Schiebe- und Rotierschaltung naoh Anspruch 1, 2 oder J, dadurch gekennzeichnet, daß die Schaltung, die das Einschreiben von O-Werten in die Stufen steuert, so beeinflußt ist (durch die Ausgangssignale der Gatter 507-512), daß sie noch vor Durchführung der Schiebe-Operation Ö-Werte in diejenigen Stufen einschreibt, die Bit enthalten, welche bei Beendigung der Rotier-Operation nicht an einem Ende des Registers herausgeschoben sind. Λ909839/114Leerseite
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US420566A US3374463A (en) | 1964-12-23 | 1964-12-23 | Shift and rotate circuit for a data processor |
US478536A US3374468A (en) | 1964-12-23 | 1965-08-10 | Shift and rotate circuit for a data processor |
Publications (3)
Publication Number | Publication Date |
---|---|
DE1474581A1 true DE1474581A1 (de) | 1969-09-25 |
DE1474581B2 DE1474581B2 (de) | 1973-07-26 |
DE1474581C3 DE1474581C3 (de) | 1974-02-21 |
Family
ID=27024912
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE1474582A Expired DE1474582C3 (de) | 1964-12-23 | 1965-12-21 | Schiebe- und Rotierschaltung für eine Datenverarbeitungsanordnung |
DE1474581A Expired DE1474581C3 (de) | 1964-12-23 | 1965-12-21 | Schiebe- und Rotierschaltungsanordnung |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE1474582A Expired DE1474582C3 (de) | 1964-12-23 | 1965-12-21 | Schiebe- und Rotierschaltung für eine Datenverarbeitungsanordnung |
Country Status (7)
Country | Link |
---|---|
US (1) | US3374468A (de) |
BE (2) | BE674111A (de) |
DE (2) | DE1474582C3 (de) |
FR (2) | FR1464277A (de) |
GB (2) | GB1136399A (de) |
NL (2) | NL6515944A (de) |
SE (1) | SE314112B (de) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3417375A (en) * | 1966-03-25 | 1968-12-17 | Burroughs Corp | Circuitry for rotating fields of data in a digital computer |
US3553445A (en) * | 1966-08-22 | 1971-01-05 | Scm Corp | Multicipher entry |
US3496475A (en) * | 1967-03-06 | 1970-02-17 | Bell Telephone Labor Inc | High speed shift register |
US3510846A (en) * | 1967-07-14 | 1970-05-05 | Ibm | Left and right shifter |
GB1254537A (en) * | 1967-12-12 | 1971-11-24 | Sharp Kk | Digital computer apparatus |
US3582899A (en) * | 1968-03-21 | 1971-06-01 | Burroughs Corp | Method and apparatus for routing data among processing elements of an array computer |
US3659274A (en) * | 1970-07-28 | 1972-04-25 | Singer Co | Flow-through shifter |
US3866023A (en) * | 1971-12-29 | 1975-02-11 | Honeywell Inf Systems | Apparatus and method for bidirectional shift register operation |
US3800289A (en) * | 1972-05-15 | 1974-03-26 | Goodyear Aerospace Corp | Multi-dimensional access solid state memory |
US3790960A (en) * | 1972-10-30 | 1974-02-05 | Amdahl Corp | Right and left shifter and method in a data processing system |
US3967101A (en) * | 1975-03-17 | 1976-06-29 | Honeywell Information Systems, Inc. | Data alignment circuit |
US4162534A (en) * | 1977-07-29 | 1979-07-24 | Burroughs Corporation | Parallel alignment network for d-ordered vector elements |
JPS5636741A (en) * | 1979-08-31 | 1981-04-10 | Fujitsu Ltd | Shift system |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3258584A (en) * | 1957-04-09 | 1966-06-28 | Data transfer and conversion system | |
US3076181A (en) * | 1957-09-26 | 1963-01-29 | Rca Corp | Shifting apparatus |
US3193808A (en) * | 1960-10-13 | 1965-07-06 | Sperry Rand Corp | Digital shift circuit |
US3192363A (en) * | 1961-05-24 | 1965-06-29 | Ibm | Binary multipler for skipping a string of zeroes or ones |
US3238377A (en) * | 1961-12-04 | 1966-03-01 | Ibm | Cryogenic m out of n logic circuits |
US3210737A (en) * | 1962-01-29 | 1965-10-05 | Sylvania Electric Prod | Electronic data processing |
US3274556A (en) * | 1962-07-10 | 1966-09-20 | Ibm | Large scale shifter |
US3229080A (en) * | 1962-10-19 | 1966-01-11 | Ibm | Digital computing systems |
-
1965
- 1965-08-10 US US478536A patent/US3374468A/en not_active Expired - Lifetime
- 1965-12-08 NL NL6515944A patent/NL6515944A/xx unknown
- 1965-12-20 GB GB53883/65A patent/GB1136399A/en not_active Expired
- 1965-12-20 GB GB53882/65A patent/GB1136246A/en not_active Expired
- 1965-12-21 BE BE674111D patent/BE674111A/xx unknown
- 1965-12-21 DE DE1474582A patent/DE1474582C3/de not_active Expired
- 1965-12-21 DE DE1474581A patent/DE1474581C3/de not_active Expired
- 1965-12-21 BE BE674117D patent/BE674117A/xx unknown
- 1965-12-22 SE SE16649/65A patent/SE314112B/xx unknown
- 1965-12-23 FR FR43528A patent/FR1464277A/fr not_active Expired
- 1965-12-23 FR FR43599A patent/FR1464279A/fr not_active Expired
-
1966
- 1966-01-27 NL NL666601068A patent/NL153348B/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
BE674111A (de) | 1966-04-15 |
DE1474582B2 (de) | 1973-07-26 |
NL153348B (nl) | 1977-05-16 |
DE1474581B2 (de) | 1973-07-26 |
DE1474582C3 (de) | 1974-02-21 |
FR1464277A (fr) | 1966-12-30 |
US3374468A (en) | 1968-03-19 |
DE1474581C3 (de) | 1974-02-21 |
DE1474582A1 (de) | 1969-09-25 |
BE674117A (de) | 1966-04-15 |
NL6515944A (de) | 1966-06-24 |
FR1464279A (fr) | 1966-12-30 |
GB1136399A (en) | 1968-12-11 |
NL6601068A (de) | 1967-02-13 |
SE314112B (de) | 1969-09-01 |
GB1136246A (en) | 1968-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE1901343C3 (de) | Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen | |
DE2356260C3 (de) | Dynamisch doppelt geordneter Schiebregisterspeicher und Verfahren zum Betrieb des Speichers | |
DE1474581A1 (de) | Schiebe- und Rotierschaltung fuer eine Datenverarbeitungsanlage | |
DE2212873B2 (de) | Aus schieberegistern aufgebaute speichereinrichtung und verfahren zum betrieb der speichereinrichtung | |
DE1275797B (de) | Schaltung zur Realisierung von nicht vorherbestimmten Schaltfunktionen | |
DE1499739C3 (de) | Datenspeicher zur gleichzeitigen Entnahme mehrerer Wörter | |
DE1449544A1 (de) | Datenverarbeitende Maschine mit ueberlappend abrufbarem Speicherwerk | |
DE2318445A1 (de) | Selektiv schaltbares schieberegister | |
DE2423265A1 (de) | Informatikmaschine | |
DE1269182B (de) | Inhaltsadressierter Informationsspeicher (Katalogspeicher) | |
DE1474351B2 (de) | Datenspeicher | |
DE3546006C2 (de) | ||
DE2459476C3 (de) | ||
DE2235883C3 (de) | Datenverarbeitungseinrichtung | |
DE1295656B (de) | Assoziativer Speicher | |
DE1250489B (de) | I Schaltungsanordnung zur Einspei cherung von Leerstellen-Kennworten in einen assoziativen Speicher | |
DE1916377B2 (de) | Verfahren und Anordnung zur Verschiebung von Datenfeldern | |
DE2233164B2 (de) | Schaltungsanordnung zur uebertragung von aufeinanderfolgenden bitstellen zwischen zwei registern | |
DE1296427B (de) | Datenbearbeitungssystem | |
DE1549638B1 (de) | Einrichtung zur Untersuchung zweier Vektorfolgen | |
DE1499284B2 (de) | Datenverarbeitungsanlage | |
DE2936430A1 (de) | Integrierte schaltung in dynamischer mos-logik mit getrennter anordnung kombinatorischer und sequentieller logischer elemente | |
DE2443749A1 (de) | Computer-speichersystem mit einer speichereinheit | |
DE2047220C3 (de) | Assoziativspeicher | |
DE1549638C (de) | Einrichtung zur Untersuchung zweier Vektorfolgen |
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 |