DE2457312C3 - Anordnung zur Durchführung arithmetischer oder logischer Operationen an ausgewählten Gruppen aufeinanderfolgender Bits in einer Datenverarbeitungsanordnung - Google Patents

Anordnung zur Durchführung arithmetischer oder logischer Operationen an ausgewählten Gruppen aufeinanderfolgender Bits in einer Datenverarbeitungsanordnung

Info

Publication number
DE2457312C3
DE2457312C3 DE2457312A DE2457312A DE2457312C3 DE 2457312 C3 DE2457312 C3 DE 2457312C3 DE 2457312 A DE2457312 A DE 2457312A DE 2457312 A DE2457312 A DE 2457312A DE 2457312 C3 DE2457312 C3 DE 2457312C3
Authority
DE
Germany
Prior art keywords
transmission control
outputs
arrangement
word
control circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
DE2457312A
Other languages
English (en)
Other versions
DE2457312A1 (de
DE2457312B2 (de
Inventor
Jean-Marie Versailles Bourrez
Claude Nessin Saint Cloud Chemla
Jean-Louis Les Clayes Sous Bois Fressineau
Maurice Versailles Hubert
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bull SA
Original Assignee
Bull SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bull SA filed Critical Bull SA
Publication of DE2457312A1 publication Critical patent/DE2457312A1/de
Publication of DE2457312B2 publication Critical patent/DE2457312B2/de
Application granted granted Critical
Publication of DE2457312C3 publication Critical patent/DE2457312C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30018Bit or string instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30032Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE

Description

Die Erfindung bezieht sich auf eine Anordnung zur Durchführung arithmetischer oder logischer Operationen an ausgewählten Gruppen aufeinanderfolgender Bits (Bitfelder) in Wörtern gleicher Länge in einer Datenverarbeitungsanordnung, wobei die Anfangsstelle des auszuwählenden Bitfeldes, seine Länge und die vorgeschriebene Verschiebung durch Befehlscodegruppen in einem Befehlswort festgelegt sind, mit einem Rechenwerk und mit einem Bitfeldwähler, dem das das Bitfeld enthaltende Wort zugeführt wird und der unter Steuerung durch die Befehlscodegruppen daraus das Bitfeld auswählt und mit der vorgeschriebenen Verschiebung den Eingängen des Rechenwerks zuführt.
Bei einer aus der Veröffentlichung »Western Computer Proceedings« 1957, Seiten 146 bis 155 bekannten Anordnung dieser Art sind die Bitfelder, die ausgewählt und mit einer ν jrgegebenen Verschiebung dem Rechenwerk zugeführt werden können, festgelegte Bitgruppen (Zeichen oder Bytes), aus denen jedes Datenwort aufgebaut ist. Beispielsweise ist jedes Datenwort von 36 Bits in vier gleiche Bytes von jeweils neun Bits unterteilt, die in vier getrennte Eingangsregister einer Austauschanordnung eingebracht werden; die Austauschanordnung hat vier Ausgangsregister, die in allen möglichen Permutationen mit den Eingangsregistern verbunden werden können. Die vier Bytes des Eingangsworts können dadurch in jeder gewünschten gegenseitigen Vertauschung an den Ausgängen der Austauschanordnung zur Verfügung gestellt werden. Diese bekannte Anordnung ist aber auf die byieweiSe
Auswahl und Verschiebung beschränkt; eine Auswahl und Verschiebung von Bitfeldern, die nicht mit den Bytes übereinstimmen, ist nicht möglich. Ferner wird für die Vertauschung der Bytes eine zusätzliche Taktzeit benötigt, die der Übertragung von den Eingangsregistern in die Ausgangsregister entspricht
In den Veröffentlichungen »Proceedings of the Eastern Joint Computer Conference« 1959, Seiten 51 und 52, und Buch holz »Planning a Computer System« 1962, Seiten 208 und 209, sind andererseits Anordnungen der eingangs angegebenen Art beschrieben, bei denen die Auswahl und Verschiebung beliebiger Bitfelder in einer einzigen Taktzeit möglich ist Dies erfolgt mit Hilfe einer vollständigen Matrix, die einen erheblichen Schaltungsaufwand erfordert
Die konventionelle Lösung der Auswahl und Verschiebung von Bitfeldern beliebiger Länge und mit beliebiger Anfangsstelle besteht darin, das Datenwort in ein Schieberegister einzubringen und in diesem so lange zu verschieben, bis das gewünschte Bitfeld an den entsprechenden Ausgängen des Schieberegisters zur Verfugung steht Diese Lösung ist einfach und wenig aufwendig, erfordert aber eine beträchtliche Zahl von Taktzeiten, die noch dazu je nach der Größe und Lage des Bitfeldes verschieden ist
Die hierdurch bedingten Wartezeiten sind in schnellen Datenverarbeitungsanlagen unerwünscht
Der Erfindung liegt die Aufgabe zugrunde, eine Anordnung der eingangs angegebenen Art zu schaffen, mit welcher in einer einzigen Taktzeit aus jedem Datenwprt ein Bitfeld beliebiger Länge und mit beliebiger Anfangsstelle ausgewählt und mit einer vorgeschriebenen Verschiebung zur Verfugung gestellt werden kann.
Nach der Erfindung wird diese Aufgabe dadurch gelöst, daß der Bitfeldwähler eine Übertragungssteueranordnung enthält die für jede Binärstelle des Wortes je eine Übertragungssteuerschaltung enthält, daß alle Übertragungssteuerschaltungen eine der Anzahl der zu übertragenden Binärziffern entsprechende Anzahl von Torschaltungen mit je einem Signaleingang und zwei Steuereingängen enthalten, daß ein Anfangsstellen-Decodierer vorgesehen ist, der für jede Anfangsstellen-Befehlscodegruppe an einem zugeordneten Ausgang ein Signal abgibt, daß ein Feldlängen-Decodierer vorgesehen ist, der an einer durch die Feldlängen-Befehlscodegruppe festgelegten Anzahl von aufeinanderfolgenden Ausgängen, deren Lage durch die Verschiebungs-Befehlscodegruppe bestimmt ist Signale abgibt, daß die ersten Steuereingänge der Torschaltungen jeder Übertragungssteuerschaltung gemeinsam jeweils mit einem der Ausgänge des Feldlängen-Decodierers verbunden sind, daß die zweiten Steuereingänge der Torschaltangen jeder Übertragungssteuerschaltung der Reihe nach an die verschiedenen Ausgänge des Anfangsstellen-Decodierers angeschlossen sind, und daß an die Signaleingänge der Torschaltungen jeder Übertragiingssteuerschaltung jeweils eines der zu übertragenden Bits in einer von Übertragungssteuerschaltung zu Übertragungssteuerschaltung zyklischen Vertauschung angelegt sind.
Bei der Anordnung nach der Erfindung werden die Bits des auszuwählenden Bitfeldes durch entsprechend angesteuerte Torschallungen unmittelbar zu den Ausgängen des Bitfeldwählers übertragen, so daß sie in der gleichen Taktzeit, in der sie den Eingängen des Bitfeldwählers zugeführt werden, auch an dessen Ausgängen erscheinen. Die durch den Anfangssteüen Decodierer und den Feidlängen-Decodierer selektiv geöffneten Torschaltungen wählen einerseits die zu übertragenden Bits aus und bestimmen andererseits die Ausgänge, zu denen die ausgewählten Bits übertragen werden.
Eine vorteilhafte Ausgestaltung der Erfindung besteht darin, daß der Übertragungssteueranordnung eine weitere Übertragungssteueranordnung vorgeschaltet ist die für jede Binärstelle des Wortes eine Übertra-
gungssteuerschaltung enthält daß jede Übertragungssteuerschaltung so viele Signaleingänge hat, wie Zeichen im Wort vorhanden sind, und an diesen Signaleingängen die einander entsprechenden Bits der verschiedenen Zeichen empfängt daß die Übertra-
gungssteuerschaltungen der vorgeschalteten Übertragungssteueranordnung in Abhängigkeit von der Anfangsstellen-Befehlscodegruppe und von der Verschiebungs-Befehlscodegruppe so gesteuert werden, daß sie an ihren Ausgängen die Zeichen des Wortes entweder in der richtigen Reihenfolge oder gegeneinander vertauscht abgeben, und daß jede Übertragungssteuerschaltung der nachgeschalteten Übertragungssteueranordnung eine der Stellenzahl jedes Zeichens entsprechende Anzahl von Torschaltungen enthält, deren Signaleingänge mit der gleichen Anzahl von aufeinanderfolgenden Ausgängen der vorgeschalteten Übertragungssteueranordnung verbunden sind.
Bei dieser Ausgestaltung nimmt die weitere Übertragungssteueranordnung eine byteweise Auswahl und
jo Vertauschung vor, doch erfolgt diese zusätzlich zu der in der anderen Übertragungssteueranordnung durchgeführten bitweisen Auswahl und Verschiebung von Bitfeldern. Durch die vorgeschaltete byteweise Vertauschung wird der Schaltungsaufwand noch weiter verringert, ohne daß die Verarbeitungszeit verlängert wird.
Eine bevorzugte Ausführungsform der Anordnung nach der Erfindung besteht in diesem Fall darin, daß jede Übertragungssteuerschaltung der vorgeschalteten
Übertragungssteueranordnung eine der Anzahl der Zeichen im Wort entsprechende Anzahl von Torschaltungen enthält, von denen jede einen Signaleingang und zwei Steuereingänge hat, daß ein weiterer Anfangsslellen-Decodierer vorgesehen ist, der eine der Anzahl der Zeichen des Wortes entsprechende Anzahl von Ausgängen hat und ein Signal jeweils an dem Ausgang abgibt, der dem Zeichen zugeordnet ist, das die Anfangsstelle enthält, daß ein Verschiebungs-Decodierer mit mehreren Ausgängen vorgesehen ist, der in Abhängigkeit von der Verschiebungs-Befehlscodegruppe jeweils an einem dieser Ausgänge ein Signal abgibt, daß die ersten Steuereingänge der Torschaltungen jeder Übertragungssteuerschaltung mit jeweils einem der Ausgänge des weiteren Anfangsstellen-Decodierers verbunden sind, und daß jeder Ausgang des Verschiebungs-Decodierers mit den zweiten Steuereingängen
aller Torschaltungen einer Gruppe von Übertragungssteuerschaltungen verbunden ist.
Nachfolgend wird ein Ausführungsbeispiel der
bo Erfindung anhand der Zeichnung näher beschrieben. In der Zeichnung zeigt
F i g. 1 das Blockschaltbild einer Anordnung gemäß einem Ausführungsbeispiel der Erfindung,
Fig.2 ein Ausführungsbeispiel des Bitfeldwählers in
b5 der Anordnung von Fig. 1,
F i g. 3 die Einzelheiten eines Teils der ersten Übertragungssteueranordnung im Bitfeldwähier von Fig. 2,
Fig.4 die Einzelheiten eines Teils der zweiten Übertragungssteueranordnung im Bitfeldwähler von F i g. 2 und
F i g. 5 ein Ausführungsbeispiel der Verschiebungsund Verkettungsschaltung in der Anordnung von Fig. I.
Bei aem dargestellten Beispiel ist die Anordnung zur Durchführung arithmetischer oder logischer Operationen an den Ausgang eines Datenspeichers MA angeschlossen, und die nach Durchführung der Operationen an ihrem Ausgang S erhaltenen Daten werden über einen Eingang des Datenspeichers MA zu einer Einordnungsadresse zurückgebracht, die in einem Steuerwort angegeben ist, das in einem Register Ksteht. Das Steuerwort wird aus einem Steuerwortspeicher MK in das Register K eingegeben, und die Einordnungsadresse ist durch den in einem Abschnitt KAR des Registers K stehenden Teil des Steuerworts angegeben. Jedes Wort A, welches aus dem Datenspeicher MA kommt, wird in einem binären Rechenwerk ΦΒ mit einem Wort B verknüpft, welches beispielsweise aus einem zweiten Datenspeicher MB kommt. Vor dieser Verknüpfung soll aber ein Feld von Binärziffern durch einen Bitfeldwähler SC aus dem Wort A gemäß den Parametern r, /und k ausgewählt werden, die von dem in einem Abschnitt KEA des Registers K stehenden Teil des Steuerwortes stammen: eine Anfangsstellen-Befehlscodegruppe r bezeichnet die Stelle der ersten Binärziffer des Bitfeldes, eine Feldlängen-Befehlscodegruppe I bezeichnet die Länge des Bitfeldes, und eine Verschiebungs-Befehlscodegruppe k bestimmt die Richtung und Größe der Verschiebung des ausgewählten Bitfeldes für seine Eingabe in das binäre Rechenwerk ΦΒ. Die Art der Operation indem Rechenwerk ΦΒ wird durch den in einem Registerabschnitt ΚΦΒ stehenden Teil des Steuerwortes festgelegt und braucht nicht näher erläutert zu werden, da das Rechenwerk ΦΒ eine an sich bekannte Datenverarbeitungseinrichtung ist, die jede bei der Datenverarbeitung übliche Operation ausführen kann. Es handelt sich dabei um Operationen, die in einer Taktzeit ausgeführt werden können.
Jedes aus dem Datenspeicher MA kommende Wort A besteht aus einer festgelegten Anzahl von Binärziffern a\ bis a» und wird im Bitfeldwähler SC in ein Wort umgewandelt, welches ausgehend von einer Ziffer bestimmter Stelle des Wortes A eine festgelegte Länge hat und außerdem gemäß der Verschiebungs-Befehlscodegruppe k ausgerichtet ist. Bei dem beschriebenen Beispiel hat die Verschiebungs-Befehlscodegruppe k nur zwei Werte, die einer rechtsbündigen Ausrichtung oder einer linksbündigen Ausrichtung entsprechen und mit rf und ^ bezeichnet sind (vgl. F i g. 3). Die Anordnung ist aber nicht auf eine Wahl zwischen einer rechtsbündigen Ausrichtung und einer linksbündigen Ausrichtung beschränkt; die Verschiebung kann bei Bedarf auch anders sein und wird dann durch andere Werte der Befehlscodegruppe k festgelegt Die Binärziffern C\ bis c/ bzw. qx-i)... c, des ausgewählten und ausgerichteten Bitfeldes werden den Eingängen des Rechenwerks Φ Β zugeführt, welches an seinem anderen Eingang die Ziffern 6/bis 6, des Wortes Uempfängt.
Die Ziffern Φι bis Φχ des durch die Operation in dem Rechenwerk ΦΒ erhaltenen Wortes werden den Eingängen einer Verschiebungs- und Verkettungsschaltung TS zugeführt, in welcher die Übertragung des Wortes durch Befehle bedingt ist, die von dem in einem Registerabschnitt KTSstehenden Teil des Steuerwortes stammen. Der Ausdruck »bedingt« kann für das dargestellte Beispiel folgendermaßen definiert werden:
— das von dem Rechenwerk ΦΒ abgegebene Wort wird unverändert zu dem Ausgang 5 (Binärziffern «7 bis Sx) der Verschiebungs- und Verkettungsschaltung TSübertragen, oder
— das von dem Rechenwerk ΦΒ abgegebene Wort wird zu dem Ausgang S der Verschiebungs- und Verkettungsschaltung TS mit einer Verschiebung um eine Binärziffer nach links übertragen, oder
ui — das von dem Rechenwerk abgegebene Wort wird zu dem Ausgang S der Verschiebungs- und Verketlungsschaltung TS mit einer Verschiebung um eine Binärziffer nach rechts übertragen,
— andere Verschiebungen könnten bei Bedarf vorgese-' hen werden, und
— in ein Wort, dessen Verschiebung durch irgendeine der drei obengenannten Bedingungen festgelegt ist, wird verkettet ein Teil der Ziffern des Wortes B (oder bei Bedarf irgendeines anderen Wortes) an Plätzen von Ziffern φ eingegeben, die dadurch bezeichnet werden, daß an die Verschiebungs- und Verkettungsschaltung TS eine Maske m angelegt wird, die am Ausgang des Bitfeldwählers SCgebildet ist (oder die auch von dem im Registerabschnitt KTS stehenden Teil des Steuerwortes stammen könnte).
Für die Auswahl des Bitfeldes kann jedes Wort A vorteilhafterweise als in mehrere Zeichnen (oder Bytes)
jo mit jeweils derselben Anzahl von Binärziffern zerlegt angesehen werden. Diese Zerlegung ermöglicht es, den Bitfeldwähler einfach aus zwei in Kaskade angeordneten Übertragungsstei'eranordnungen zu bilden: Die erste Übertragungssteueranordnung bewirkt, gesteuert
j-, durch die Befehlscodegruppen k (Verschiebung) und r (Stelle der ersten Ziffer des auszuwählenden Bitfeldes), eine gegenseitige Vertauschung (oder auch keine Vertauschung) der Zeichen, und die zweite Übertragungssteueranordnung führt die eigentliche Auswahl und Verschiebung des Bitfeldes durch. Die Verschiebung entspricht der bei dem beschriebenen Beispiel einer linksbündigen oder rechtsbündigen Ausrichtung des ausgewählten Bitfeldes, dessen Länge durch die Befehlscodegruppe / (Feldlänge) bestimmt ist Jede
Übertragungssteueranordnung hat ebenso viele Übertragungssteuerschaltungen, wie Binärziffern in einem zu verarbeitenden Wort vorhanden sind, bei dem hier beschriebenen Beispiel also χ Übertragungssteuerschaltungen. In der ersten Übertragungssteueranordnung hat
jede Übertragungssteuerschaltung so viele Eingänge, wie in dem zu verarbeitenden Wort Zeichen vorhanden sind. In der zweiten Übertragungssteueranordnung hat jede Übertragungssteuerschaltung so viele Eingänge, wie Ziffern in jedem Zeichen vorhanden sind. Die Eingänge der Übertragungssteuerschaltungen der ersten Übertragungssteueranordnung empfangen jeweils die zwei Ziffern einander entsprechender Stellen in den Zeichen.. Die Eingänge der Übertragungssteuerschaltungen der zweiten Übertragungssteueranordnung sind mit den Ausgängen der Übertragungssteuerschaltungen der ersten Übertragungssteueranordnung in einer regelmäßigen Vertauschung verbunden, die von einer Schaltung der zweiten Anordnung zu der nächsten jeweils um eine Ziffer fortschreitet
Zur Erläuterung einer solchen Ausführungsform wird auf die Fig.2 bis 4 Bezug genommen, die einen Bitfeldwähler zum Auswählen eines Bitfeldes aus Wörtern mit sechzehn Binärziffern betreffen, die für die
Auswahl in zwei Oktaden Φ\ und Φ2 zerlegt sind. Die erste Oktade enthält die Ziffern al bis a8 und die zweite Oktade die Ziffern a9 bis al7. Die Anfangsstellen-Befehlscodegruppe r hat vier Binärziffern. Der Anfangsstellen-Decodierer Kr (F i g. 3 und F i g. 4) hat somit sechzehn Ausgänge 1 bis 16. Die Feldlängen-Befehlscodegruppe / hat ebenfalls vier Binärziffern. Der Feldlängen-Decodierer K/ (Fig.4) hat somit sechzehn Ausgänge 1 bis 16. Die Verschiebungs-Befehlscodegruppe k hat zwei Zustände, und der Verschiebungs-Decodierer Kk weist somit nur zwei Ausgänge g und c/auf, die zueinander komplementär erregt werden und die linksbündige bzw. die rechtsbündige Ausrichtung angeben.
Der Feldwähler von Fig.2 enthält eine erste Übertragungssteueranordnung M\ mit sechzehn Übertragungssteuerschaltungen Ci bis Ci6, von denen die drei Übertragungssteuerschaltungen G, Ce, C\t in Fig. 3 genauer dargestellt sind. Jede Übertragungssteuerschaltung besteht aus zwei Torschaltungen F\a,F\b... F>)U, Ggb -■- Fi6* Fi6b, deren Ausgänge ODER-verknüpft sind. Jede Torschaltung hat zwei Steuereingänge und ist nur dann entsperrt, wenn an diesen beiden Eingängen Signale mit dem gleichen Digitalwert anliegen, während sie gesperrt ist, wenn die Signale an diesen beiden Eingängen entgegengesetzte Digitalwerte haben. Die Übertragungsschaltung Q empfängt die Ziffern al und a9 des Wortes A; die Übertragungssteuerschaltung C2 empfängt die Ziffern al und alO usw.; die Übertragungssteuerschaltung G> empfängt die Ziffern a9 und al; die Übertragungssteuerschaltung Ci0 empfängt die Ziffern alO und a2, usw. Das Ausgangssignal g des Verschiebungs-Decodierers Kk wird jeweils einem Steuereingang aljer Torschaltungen F\a, Fu,... Fg* F$b der acht ersten Ubertragungssteuerschaltungen Q ... C8 zugeführt, und das Ausgangssignal d wird jeweils einem Steuereingang aller Torschaltungen Fg3, F$b ■ ■ ■ Fi63, F^b der acht anderen Übertragungssteuerschaltungen C9... Ci6 zugeführt wobei diese Ausgangssignale wie gesagt, immer entgegengesetzte Digitalwerte haben.
Die Ausgänge 1 bis 8 des Anf angssteilen-Decodierers Kri sind mit einer ODER-Schaltung OUi verbunden, und das durch die ODER-Verknüpfung erhaltene Signal wird jeweils an einen Steuereingang der linken Torschaltung Fi2 ... Fs3 in jeder der acht ersten Übertragungssteuerschaltungen Q ... Ce und an einen Steuereingang der rechten Torschaltung Fg/,... F166 in jeder der acht anderen Übertragungssteuerschaltungen C9 ... Ge angelegt. Die Ausgänge 9 bis 16 des Anfangsstellen-Decodierers Kr\ sind in gleicher Weise mit einer ODER-Schaltung OU2 verbunden, und das durch die ODER-Verknüpfung erhaltene Signal wird jeweils an einen Steuereingang der rechten Torschaltung F\b ...Fib in jeder der acht ersten Übertragungssteuerschaltungen Ci... C8 und an einen Steuereingang der linken Torschaltung F9a ... F)6s in jeder der acht anderen Übertragungssteuerschaltungen Ce ... Qe angelegt. Die Ausgangssignale der beiden ODER-Schaltungen OUi und OU2 haben offensichtlich immer entgegengesetzte Digltalwerte.
Aufgrund der angegebenen Bedingungen für die Steuerung der Torschaltungen:
— Entsperrung für gleiche Digitalwerte,
— Sperrung für verschiedene Digitalwerte,
ergibt die Übertragungssteueranordnung M1 von F i g. 2 and3dann offensichtlich die folgende Funktion:
1. die Ziffern al bis al6 des Wortes werden in den beiden folgenden Fällen in unveränderter Reihenfolge an den Ausgängen der Übertragungssteuerschaltungen G bis C|6abgegeben:
a) bei linksbündiger Ausrichtung (g) und einer Anfangsstelle rvon 1 bis 8;
b) bei rechtsbündiger Ausrichtung (d) und einer ι ο Anfangsstelle rvon 9 bis 16;
2. die beiden Oktaden Φ\ und Φ2 werden in den beiden folgenden Fällen gegenseitig vertauscht an den Ausgängen der Übertragungssteuerschaltun-
!5 gen Ci bis Ci6abgegeben:
a) bei linksbündiger Ausrichtung (g) und einer Anfangsstelle rvon 9 bis 16;
b) bei rechtsbündiger Ausrichtung (d) und einer
Anfangsstelle rvon 1 bis 8.
Die Ausgangssignale der sechzehn Übertragungssteuerschaltungen C] bis Ci6 der ersten Übertragungssteueranordnung Mi werden zu den Eingängen der sechzehn Übertragungssteuerschaltungen D\ bis Du, einer zweiten Übertragungssteueranordnung M2 übertragen und auf diese Eingänge verteilt. Die Anzahl der Eingänge jeder Übertragungssteuerschaltung D\ bis Die
«ι entspricht der Ziffernzahl einer Oktade. Die erste Übertragungssteuerschaltung D\ der Übertragungssteueranordnung M2 empfängt die Ausgangssignale der Übertragungssteuerschaltung G bis Cg der ersten Übertragungssteueranordnung Mi, die zweite Übertragungssteuerschaltung Di empfängt die Ausgangssignale der Übertragungssteuerschaltungen C2 bis C9 usw., mit einer regelmäßigen Verschiebung um ein Ausgangssignal der ersten Übertragungssteueranordnung Mi bei jeder weiteren Übertragungssteuerschaltung der zwei-
4(i ten Übertragungssteueranordnung M2 und mit einer Wiederaufnahme der Ausgangssignale der ersten Übertragungssteueranordnung Mi in zyklischer Vertauschung bis zu der sechzehnten Übertragungssteuerschaltung £>i6 der zweiten Übertragungssteueranordnung M2, welche als Eingangssignale die Ausgangssignale der Übertragungssteuerschaltungen de, Ci, C2, C% G, d, C6 und C7 in der angegebenen Reihenfolge hat. Zur Veranschaulichung ist in F i g. 4 ein Ausführungsbeispiel der Übertragungssteuerschaltung D? der zweiten
Übertragungssteueranordnung M2 dargestellt. Sie besteht aus acht Torschaltungen Gia ... Ci% deren Ausgänge in einer ODER-Verknüpfung zu einem Ausgang zusammengefaßt sind, der die Ziffer dl abgibt und mit einem derselben Stelle zugeordneten Eingang
des Rechenwerks ΦΒ verbunden ist. Die Übertragungssteuerschaltung Di empfängt an ihren acht Eingängen die Ausgangssignale der Übertragungssteuerschaltungen Ci bis Cn der Übertragungssteueranordnung Mi, nämlich die Ziffern a7(15), a8(16), a9(l), alO(2), al1(3), al2(4), al3(5) und al4(6), wobei die in Klammern gesetzten Nummern für den Fall der Vertauschung der Oktaden an den Ausgängen der ersten Übertragungssteueranordnung Mi gelten.
Jede Torschaltung G jeder Übertragungssteuerschal-
tung Di bis D^ der zweiten Übertragungssteueranordnung Afc ist nur entsperrt, wenn sie an ihren beiden Steuereingängen Signale mit ein und demselben vorbestimmten Digitalwert empfängt (11 oder 00, aber
nicht eine Kombination 01 oder 10 dieser Digitalwerte).
Für die zweite Übertragungssteueranordnung M2 ist ein zweiter Anfangsstellen-Decodierer Ka vorgesehen, dessen Ausgänge paarweise ODER-verknüpft sind, wodurch Steuersignale für die Torschaltungen G der Übertragungssteuerschaltungen D\ bis D\b geliefert werden. Die Ausgänge 1 und 9 des Anfangsstellen-Decodierers Ka sind in ODER-Verknüpfung zu einem Ausgang R\ zusammengefaßt, die Ausgänge 2 und 10 zu einem Ausgang R2 usw., bis schließlich zu dem Ausgang Rs, der durch die ODER-Verknüpfung der Ausgänge 8 und 16 gebildet ist. Zur Vereinfachung sollen die an den Ausgängen Ru R2 ... Rs erhaltenen Steuersignale mit den gleichen Bezugszeichen benannt werden.
Das Steuersignal R\ wird an die erste Torschaltung da, G2a,... C71,... Gi6a jeder Übertragungssteuerschaltung D\... Dj ... D\t angelegt, das Steuersignal R2 an die zweite Torschaltung Gi/* G2b ■ ■ ■ Gn, ■ ■ ■ G\eb, usw., bis schließlich zum Steuersignal Rs, das an die achte Torschaltung G|fc G2A ... Gn, ■■■ G]6/, jeder Übertragungssteuerschaltung D\...Dj...D\6 angelegt wird.
Alle acht Torschaltungen jeder Übertragungssteuerschaltung Di ... Die empfangen ferner gemeinsam ein zugeordnetes Steuersignal L, das von einem Feldlängen-Decodierer Kt aus der Feldlängen-Befehlscodegruppe / abgeleitet wird. So empfangen die acht Torschaltungen G1 a ... G7A der in F i g. 4 dargestellten Übertragungssteuerschaltung D7 gemeinsam das zugeordnete Steuersignal Lj von dem in gleicher Weise bezeichneten Ausgang des Feldlängen- Decodieren Kl·
Die Länge des Bitfeldes wird durch die Anzahl der Binärziffern angegeben, die an den Ausgängen des Bitfeldwählers SC von der ersten Stelle an (bei linksbündiger Ausrichtung) oder von der letzten Stelle an (bei rechtsbündiger Ausrichtung) abgegeben werden. Der Feldlängen-Decodierer Ki hat sechzehn Ausgänge L\ ... L)6, und die Länge des Bitfeldes wird durch die Anzahl von aufeinanderfolgenden aktivierten Ausgängen für den Bitfeldwähler SC festgelegt. Indessen kann man die Ausgangssignale des Feldlängen-Decodierers nicht unverändert in ihrer Reihenfolge nehmen. Da bei dem betreffenden Beispiel zwei Möglichkeiten vorhanden sind, nämlich eine rechtbündige Ausrichtung und eine linksbündige Ausrichtung des ausgewählten Bitfeldes. Aus diesem Grund wird zunächst jedes Ausgangssignal des Feldlängen-Decodierers Ki an zwei Torschaltungen angelegt, von denen die eine bei einer rechtsbündigen Ausrichtung durch das Signal d entsperrt ist und als Torschaltung (g) bezeichnet werden soll, und von denen die andere bei einer linksbündigen Ausrichtung durch das Signal g entsperrt ist und als Torschaltung (<# bezeichnet werden soll. Die Ausgangssignale dieser Torschaltungen werden dann paarweise auf die sechzehn Ausgänge L\ bis Li6 gegeben, und zwar in folgender Weise: Das Ausgangssignal der Torschal tung (g) am Ausgang 1 des Feldlängen-Decodierers Ki wird mit dem Ausgangssignal der Torschaltung (d) am Ausgang 16 zu dem Steuersignal L\ ODER-verknüpft, das an alle Torschaltungen der Übertragungssteuer schaltung Di angelegt wird. Umgekehrt wird das Ausgangssignal der Torschaltung (d) am Ausgang 1 mit dem Ausgangssignal der Torschaltung (g) am Ausgang 16 zu dem Steuersignal Li6 ODER-verknüpft, das an alle Torschaltungen der Übertragungssteuerschaltung Αβ angelegt wird. Die Ausgangssignale der Torschaltungen, die mit den Ausgängen 2 und 15 des Feldlängen-Decodierers Ki verbunden sind, werden in ähnlicher Weise verarbeitet damit sich die Steuersignale La und Us
ergeben, usw.
Die am Schluß der Beschreibung angefügten Tabellen I und II zeigen die Verteilung der Ziffern al bis a16 an den Ausgängen el bis cl6 des Bitfeldwählers SC in allen vorkommenden Fällen. Die erste Spalte »/« jeder Tabelle gibt die durch die Anfangsstellen-Befehlscodegruppe r bestimmte Anfangsstelle des Bitfeldes an; die betreffende Ziffer erscheint bei linksbündiger Ausrichtung (Tabelle I) am ersten Ausgang (el) des Bitfeldwäh lers SC, und sie erscheint bei rechtsbündiger Ausrichtung (Tabelle II) am neunten Ausgang (c9), wenn eine ausreichende Feldlänge (acht oder mehr Bits) vorgese hen ist.
Die zweite Spalte »Λ« jeder Tabelle gibt den erregten Ausgang des Anfangsstelien-Decodierers ΚΛ (Fig.4) an.
Die sechzehn Ziffern in jeder Zeile wurden für die betreffenden Werte von r(l bis 16) und k (godcr d)alle in der angegebenen Reihenfolge an den Ausgängen des Bitfeldwählers SC erscheinen, wenn die Feldlängen-Befehlscodegruppe / eine Fcldlänge von sechzehn Bits angeben würde. Bei kleinerer Feldlänge erscheint nur die angegebene Anzahl von Bits, die bei linksbündiger Ausrichtung (Tabelle I) vom linken Rand und bei rechtsbündiger Ausrichtung (Tabelle II) vom rechten Rand aus gezählt wird; die übrigen Ausgänge sind gesperrt.
Beispiel 1
k=^(linksbündig); r= 12; 1=4.
Nach Tabelle I erscheinen die folgenden Ziffern an den Ausgängen el bis c4:
al2;al3;al4;al5.
Die übrigen Ausgänge <5 bis cl6 sind gesperrt.
Beispiel 2
Jt= d (rechtsbündig); r= 5; /= 6.
4> Nach Tabelle II erscheinen die folgenden Ziffern an den Ausgängen ei 1 bis cl6:
a7;a8;a9;alO;all;al2.
Die übrigen Ausgänge el bis clO sind gesperrt
Es ist zu bemerken, daß bei der rechtsbündigen Ausrichtung (Tabelle H) die durch die Anfangsstellen der Befehlscodegruppe r angegebene Stelle nicht in allen Fällen unmittelbar die erste Stelle des ausgewähl ten Bitfeldes angibt, sondern nur in dem Sonderfall, daß die durch die Feldlängen-Befehlscodegnippe /angege bene Länge des Bitfildes acht Bits beträgt; bei größerer Feldlänge befindet sich die angegebene Stelle im Innern
bo des Bitfeldes, und bei kleinerer Feldlänge gehört sie nicht zu dem ausgewählten Bitfeld. Diese Tatsache kann aber bei bekannter Bitfeldlänge leicht beim Programmieren berücksichtigt werden, da bekannt ist, daß die angegebene Stelle stets dem Ausgang <S zugeordnet ist Die in den Tabellen angegebenen Verteilungen der Ziffern al bis al6 könnten auch mit einer einzigen Übertragungssteueranordnung erhalten werden, die der Übertragungssteueranordnung M2 von F i g. 2 entspre-
chen würde, unter Fortfall der Übertragungssteueranordnung M\. Dann müßte aber jede Ühertragungssteuerschaltung A bis Di6 ebenso viele Torschaltungen enthalten, wie Bitstellen in dem ganzen Wort vorhanden sind, so daß bei 16 Bitsidien 256 Torschaltungen benötigt würden. Die byteweise Verschiebung mit Hilfe der ersten Übertragungssteueranordnung M\ ergibt demgegenüber eine beträchtliche Einsparung; bei dem angegebenen Beispiel hat die erste Übertragungssteiicr anordnung 2 ■ 16 = 32 Torschaltungen, und die zweite Übertragungssteueranordnung hat 8 - 16=128 Torschaltungen, so daß insgesamt nur 160 Torschaltungen benötigt werden.
In jedem Fall steht das ausgewählte und verschobene Bitfeld an den Ausgängen ei bis c!6 des Biifcldwählers SC in der gleichen Taktzeit zur Verfügung, in der das Wort A an dessen Eingänge angelegt wird.
Bei dem angegebenen Beispiel sind die Verschiebungen »absolut«, d. h. bei einer rechtsbündigen Ausrichtung wird die Ziffer am Ende des ausgewählten Bitfeldes in die Stelle 16 und bei einer linksbündigen Ausrichtung in die Stelle 1 gebracht. Man kann somit sagen, daß es sich dabei um Ausrichtungswerte c/i6 und g\ handelt. Wenn die Verschiebungs-Befehlscodegruppe k eine andere Binärziffer enthielte, die Ausrichtungswerte d)5 und g2 bezeichnete, so wurden die Ausgangssignale des Feldlängen-Decodierers Ki in gleichartiger Weise gemäß dem oben angegebenen Verfahren verarbeitet werden, und die auf diese Weise erhaltenen sechzehn Ausgangssignale L würden mit den zuvor festgelegten Ausgangssignalen L ODER-verknüpft, damit Steuersignale für die Übertragungssteuerschaltungen Di bis Di6 gebildet würden, durch welche bei Linksverschiebung die erste Ziffer des ausgewählten Bitfeldes in die Stelle 2 und bei Rechtsverschiebung die letzte Ziffer des Bitfeldes in die Stelle 15 gebracht würde.
In demselben Zeitpunkt, in welchem die Übertragung der Ziffern des durch die oben beschriebenen Einrichtungen ausgewählten und ausgerichteten Bitfeldes erfolgt, ist eine Maskierungscodegruppe m direkt aus den Ausgangssignalen der zweiten Ubertragungssteueranordnung M2 ableitbar, entweder in direkter Konfiguration (Ziffern 1 an den erregten Ausgängen des Bitfeldwählers SQ oder einfach Verwendung der aktivierten Steuersignale L) oder in komplementärer Konfiguration (Ziffern 0 an den erregten Ausgängen des Bitfeldwählers SC oder Verwendung der nichtaktivierten Steuersignale L mit Umkehrung des Digitalwertes).
Das durch den Bitfetdwähler gebildete Wort wird an die Eingänge c(c/ bis C1) des binären Rechenwerks Φ Β angelegt, das an einer anderen Reihe von Eingängen die Ziffern b (6/ bis bx) des Wortes B empfängt Das Rechenwerk ΦΒ arbeitet mit parallelen Codegruppen und liefert somit quasi augenblicklich das Resultat der Operation, die unter der Steuerung durch ein Funktionsoder Operationssignal ausgeführt wird, welches aus dem Teil ΚΦΒ des Steuerwortes in dem Register K stammt Das Rechenwerk ΦΒ gibt somit an seinen Ausgängen parallel die Ziffern φ(φι bis φχ) des Ergebniswortes ab. Selbstverständlich wird dieses Wort entsprechend der Länge des in dem Bitfeldwähler SC ausgewählten Bitfeldes und der Ausrichtung dieses Bitfeldes Ziffern enthalten, die alle einen Binärwert »0« haben (oder die alle einen Binärwert »1« haben, je nach der Interpretation, die in dem Rechenwerk Φ B dem Vorhandensein von festgelegten Digitalwerten zugeordnet ist).
Dieses Ergebniswort könnte zwar ohne weiteres direkt an dem Ausgang S abgegeben werden, vorzugsweise wird es jedoch, wie weiter oben beschrieben, einer Verschiebungs- und Verkettungsschaltung TS zugeführt, die eine zusätzliche Konditionierung des Wortes vornehmen kann, und zwar gemäß einer von mehreren Modalitäten: — Übertragung ohne Modifikation, Übertragung mit einer Verschiebung nach rechts oder nach links (um eine Binärziffer bei dem dargestellten Bespiel) und/oder Verkettung mit Ziffern eines anderen Wortes, das bei dem dargestellten Beispiel das Wort B
ίο selbst ist; falls erwünscht, könnte man hierfür auch ein drittes Wort, welches für die Operation in dem Rechenwerk ΦΒ nicht verwendet wird, oder auch das ursprüngliche Wort A verwenden. Fig.5 zeigt als einfaches Erläuterungsbeispiel eine mögliche Ausführungsform der Verschiebungs- und Verkettungsschaltung TS. Sie enthält sechzehn Übertragungssteuerschaltungen Ei bis Fi6, von denen jede vier Eingänge hat, entsprechend den vier Ausgängen des den Teil KTSdes Steuerworts enthaltenden Abschnitts des Registers K.
Die an diesen Ausgängen abgegebenen Signale bedeuten: — 1: Verschiebung um eine Binärziffer nach links; 0: keine Verschiebung, +1: Verschiebung um eine Binärziffer nach rechts; und ß, Blockierung der Übertragungen von Verkettungsziffern. Es kann immmer nur einer der drei Ausgänge — 1, 0, +1 des Registerabschnitts KTS aktiviert werden, aber der Ausgang B kann unabhängig von den drei anderen Ausgängen aktiviert werden.
Jede Übertragungssteuerschaltung E1 ... Fi6 besteht
so dann beispielsweise aus vier Torschaltungen, deren Ausgänge in ODER-Verknüpfung zu einem Ausgang Si ... Sie zusammengefaßt sind, der einer Ziffer des endgültigen Wortes zugeordnet ist In jeder Übertragungssteuerschaltung ist eine der Torschaltungen mit
j5 dem Eingang für die Verkettungsziffer i>i, bi ... fti6 verbunden, die dieselbe Stelle wie die Übertragungssteuerschaltung hat, und diese Torschaltung steht unter der Steuerung durch das Blockierungssignal B, welches sie sperrt, und außerdem unter der Steuerung durch die Ziffer ml... ml6 der entsprechenden Stelle der Maske, die sie freigibt und dabei gleichzeitig die anderen Torschaltungen dieses Elements sperrt
In jeder Übertragungssteuerschaltung Fi, Ei... Fj6 ist ferner der Informationseingang einer zweiten Torschaltung mit dem der gleichen Stelle zugeordneten Ausgang φί, φ2 ... φ16 des Rechenwerks ΦΒ verbunden. Diese Torschaltung ist-entsperrt wenn der Ausgang 0 des Registerabschnitts KTS aktiviert ist Der Informationseingang einer dritten Torschaltung in den Übertra- gungssteuerschaltungen Fi bis F15 ist mit dem der nächsthöheren Stelle zugeordneten Ausgang g>2... φ!6 des Rechenwerks Φ Β verbunden. Diese Torschaltung ist entsperrt wenn der Ausgang +1 des Registerabschnitts KTS aktiviert ist Der Informationseingang einer vierten Torschaltung in den Übertragungssteuerschaltungen F2 bis Fi6 ist mit dem der nächstniedrigeren Stelle zugeordneten Ausgang φί ... <pl5 des Rechenwerks ΦΒ verbunden. Diese Torschaltung ist entsperrt, wenn der Ausgang —1 des Registerabschnitts KTS aktiviert ist In der ersten und in der letzten Übertragungssteuerschaltung Fi und Fi6 kann man Torschaltungen anordnen, die beliebige digitale Ziffern CL empfangen, wobei diese Torschaltung in der ersten Übertragungssteuerschaltung Fi durch die Aktivierung des Ausgangs — 1 des Registerabschnitts KTS und in der letzten Übertragungssteuerschaltung F]6 durch die Aktivierung des Ausgangs +1 des Registerabschnitts KTSgesteuert wird.
Tabelle I
Ausgangssignale des Bitfeldwählers SC bei linksbündiger Ausrichtung (k
a) r<9: Oktaden unverändert übertragen
q)
r R cl c2 C* c3 c4 c5 c6 c7 c8 c9 clO ell c 12 c 13 c 14 c 15 c 16
1 1 al a2 a 10 a3 a4 a5 a6 a7 a8 a9 a 10 all a 12 a 13 a 14 a 15 a 16
2 2 a2 a3 all a4 a5 a6 a7 a8 a9 a 10 all a 12 a 13 a 14 alS a 16 al
3 3 a3 a4 a 12 a5 a6 a7 a8 a9 a 10 all a 12 a 13 a 14 a 15 a 16 al a2
4 4 24 -a5 a 13 a6 a7 a8 a9 a 10 all a 12 a 13 a 14 a 15 a 16 al a2 a3
5 5 a5 a6 a 14 a7 a9 a 10 all a 12 a 13 a 14 alS a 16 al al a3 a4
6 6 36 a7 a 15 a8 a9 a 10 all a 12 a 13 a 14 a 15 a 16 al a2 aZ a4 a5
7 7 a7 a8 a 16 a9 a 10 all a 12 a 13 a 14 alS a 16 al a2 a3 a4 a5 a6
8 8 a8 a9 al a 10 all a 12 a 13 a 14 a 15 a 16 al a 2 a3 a4 aS a6 a7
b) r> 8: Oktaden vertauscht
r R el c3 c4 c5 c6 c7 c8 c9 clO ell cl2 c 13 c 14 c 15 c 16
9 1 a9 all a 12 a 13 a 14 a 15 a 16 al a2 a3 a4 a5 ab a7 a8
10 2 a 10 a 12 a 13 a 14 a 15 a 16 al a2 a3 j4 aS a6 al a8 a9
11 3 all a 13 a 14 a 15 a 16 al a2 a3 a4 a5 a6 a7 a8 a9 a 10
12 4 a 12 a 14 a 15 a 16 al a2 a3 a4 a5 a6 al a8 a9 a 10 all
13 5 a 13 a 15 a 16 al a2 a3 a4 aS a6 al a% a9 a 10 all a 12
14 6 a 14 a 16 al a2 a3 a 4 a5 a6 a7 a% a9 a 10 all a 12 a 13
15 7 a 15 al al a3 a4 a5 a6 al a8 a9 a 10 all a 12 a 13 a 14
16 8 a 16 a2 a3 a4 a5 a6 a7 a9 a 10 all a 12 a 13 a 14 a 15
Tabelle Il
Ausgangssignale des Bitfeldwählers SC bei rechtsbündiger Ausrichtung (k ■■
a) r<9: Oktaden vertauscht
d)
r 9 R cl c2 c2 c3 cA c4 c5 c6 cl c8 c9 clO ell c 12 c 13 c 14 c 15 c16
1 10 1 a9 a 10 a2 all ail a4 a 13 a 14 a 15 a 16 al a2 a3 a4 a5 a6 a7 a8
2 11 2 a 10 all a3 a 12 a 13 a5 a 14 a 15 a 16 al a2 33 34 aS a6 al a8 a9
3 12 3 all a 12 a4 a 13 a 14 a6 a 15 a 16 al a2 a3 a4 a5 a6 a7 a% a9 a 10
4 13 4 a 12 a 13 a5 a 14 a 15 a7 a 16 al a2 a3 a4 a5 a6 a7 a8 a9 a 10 all
5 14 5 a 13 a 14 aS a 15 a 16 a8 al a2 a3 a4 aS a6 a7 a8 a9 a 10 all a 12
6 15 6 a 14 a 15 al a 16 al a2 a3 a4 ,a5 a6 a7 a8 a9 a 10 all a 12 a 13
7 16 7 a 15 a 16 al a2 a 10 a3 a4 a5 a6 a7 a8 a9 a 10 all a 12 a 13 a 14
8 8 a 16 al a9 a2 a3 all a4 a5 a6 a7 a8 a9 a 10 all a 12 a 13 a 14 a 15
b) r> 8: Oktaden unverändert übertragen
r R cl c3 c5 c6 c" c8 c9 clO ctl cl2 c 13 c 14 c 15 c 16
1 al a3 a5 a6 a7 a8 a9 a 10 all a 12 a 13 a 14 a 15 a 16
2 a2 a4 a6 a7 a8 a9 a 10 all a 12 a 13 a 14 a 15 a 16 al
3 a3 a5 a7 a8 a9 a 10 all a 12 a 13 a 14 a 15 a 16 al a2
4 a4 a6 a8 a9 a 10 all a 12 a 13 a 14 a 15 a 16 al a2 a3
5 a5 a7 a9 a 10 all a 12 a 13 a 14 a 15 a 16 al al a3 a4
6 a6 a8 a 10 all a 12 a 13 a 14 alS a 16 al a2 a3 a4 a5
7 ti a9 all a 12 a 13 a 14 a 15 a 16 al 32 a3 a4 a5 a6
8 a8 a 10 a 12 a 13 a 14 a 15 a 16 al a2 a3 a4 a5 a6 a7
Hierzu 4 Blatt Zeichnungen

Claims (3)

Patentansprüche:
1. Anordnung zur Durchführung arithmetischer oder logischer Operationen an ausgewählten Gruppen aufeinanderfolgender Bits (Bitfelder) in Wörtern gleicher Länge in einer Datenverarbeitungsanordnung, wobei die Anfangsstelle des auszuwählenden Bitfeldes, seine Länge und die vorgeschriebene Verschiebung durch Befehlscodegruppen in einem ι ο Befehlswort festgelegt sind, mit einem Rechenwerk und mit einem Bitfeldwähler, dem das das Bitfeld enthaltende Wort zugeführt wird und der unter Steuerung durch die Befehlscodegruppen daraus das Bitfeld auswählt und mit der vorgeschriebenen Verschiebung den Eingängen des Rechenwerks zuführt, dadurch gekennzeichnet, daß der Bitfeldwähler (SC) eine Übertragungssteueranordnung (Mj^ enthält, die für jede Binärstelle des Wortes
je eine Übertragungssteuerschaltungen (Di,.., Die) 2« enthält, daß alle Übertragungssteuerschaltungen (D\,..., Die) eine der Anzahl der zu übertragenden Binärziffern entsprechende Anzahl von Torschaltungen (z. B. G?m ■ · -, Chh, F i g. 4) mit je einem Signaleingang und zwei Steuereingängen enthalten, daß ein Anfangsstellen-Decodierer Λ) vorgesehen ist, der für jede Anfangsstellen-Befehlscodegruppe (r) an einem zugeordneten Ausgang (Ru..., Rn) ein Signal abgibt, daß ein Feldlängen-Docodierer (Ki) vorgesehen ist, der an einer durch die Feldlängen-Befehlscodegruppe (I) festgelegten Anzahl von aufeinanderfolgenden Ausgängen (Lu ■ ■ -, L\t), deren Lage durch die Verschiebungs-Befehlscodegruppe (k) bestimmt ist, Signale abgibt, daß die ersten Steuereingänge der Torschaltungen (z. B. Gia, ..., r> G7/,) jeder Übertragungssteuerschaltung (Di,..., Di6)
gemeinsam jeweils mit einem der Ausgänge (L\
Lie) des Feldlängen-Decodierers (K\) verbunden sind, daß die zweiten Steuereingänge der Torschaltungen (z. B. G73,..., G?h) jeder Übertragungssteuer- -in schaltung (Di, ..., Di) der Reihe nach an die
verschiedenen Ausgänge (R\ Ra) des Anfangs-
stellen-Decodierers (Ka) angeschlossen sind, und daß an die Signaleingänge der Torschaltungen (z. B. Gia,..., Gh,) jeder Übertragungssteuerschaltung (Di, -r> ..., Di6) jeweils eines der zu übertragenden Bits in einer von Übertragungssteuerschaltung zu Übertragungssteuerschaltung zyklischen Vertauschung angelegt sind.
2. Anordnung nach Anspruch 1 für die Verarbei- >o tung von Wörtern, die aus mehreren Zeichen (Bytes) gleicher Stellenzahl bestehen, dadurch gekennzeichnet, daß der Übertragungssteueranordnung (M2) eine weitere Übertragungssteueranordnung (Mi) vorgeschaltet ist, die für jede Binärstelle des Wortes eine Übertragungssteuerschaltung (Ci, ..., Ci6) enthält, daß jede Übertragungssteuerschaltung (Ci, ..., Ci6) so viele Signaleii,gange hat, wie Zeichen im Wort vorhanden sind, und an diesen Signaleingängen die einander entsprechenden Bits der verschie- wi denen Zeichen empfängt, daß die Übertragungssteuerschaltungen (Ci Ci6) der vorgeschalteten
Übertragungssteueranordnung(M,) in Abhängigkeit von der Anfangsstellen-Befehlscodegruppe (r) und von der Verschiebungs-Befehlscodegruppe (k) so gesteuert werden, daß sie an ihren Ausgängen die Zeichen des Wortes entweder in der richtigen Reihenfolge oder gegeneinander vertauscht abgeben, und daß jede Übertragungssteuerschaltung (A, ..., Di6) der nachgeschalteten L"lbertragungssteueranordnung (M2) eine der Stellenzahl jedes Zeichens entsprechende Anzahl von Torschaltungen (z. B. Gi„ .., Gh) enthält, deren Signaleingänge mit der gleichen Anzahl von aufeinanderfolgenden Ausgängen der vorgeschalteten Übertragungssteueranordnung (Mi) verbunden sind.
3. Anordnung nach Anspruch 2, dadurch gekennzeichnet, daß jede Übertragungssteuerschaltung (Ci, ..., Ci6) der vorgeschalteten Übertragungssteueranordnung (Mi) eine der Anzahl der Zeichen im Wort entsprechende Anzahl von Torschaltungen (Fi3, Fn; ■ ■·, Fi63, Fi64) enthält, von denen jede einen Signaleingang und zwei Steuereingänge hat, daß ein weiterer Anfangsstellen-Decodierer (Kn) vorgesehen ist, der eine der Anzahl der Zeichen des Wortes entsprechende Anzahl von Ausgängen hat und ein Signal jeweils an dem Ausgang abgibt, der dem Zeichen zugeordnet ist, das die Anfangsstelle enthält, daß ein Verschiebungs-Decodierer (Kk) mit mehreren Ausgängen (g, d) vorgesehen ist, der in Abhängigkeit von der Verschiebungs-Befehlscodegruppe (k) jeweils an einem dieser Ausgänge ein Signal abgibt, daß die ersten Steuereingänge der Torschaltungen (Fi3, Fi4; ..„ Fi6*, Fi6*) jeder Übertragungssteuerschaltung (Ci, ..., Q6) mit jeweils einem der Ausgänge des weiteren Anfangsstelien-Decodieren (Kri) verbunden sind, und daß jeder Ausgang (g, d)des Verschiebungs-Decodierers (Kk) mit den zweiten Steuereingängen aller Torschaltungen (Fu, Fi4;..., F|6a, Fi64) einer Gruppe von
Übertragungssteuerschaltungen (G, ..., Cs; C9
G6) verbunden ist.
DE2457312A 1973-12-04 1974-12-04 Anordnung zur Durchführung arithmetischer oder logischer Operationen an ausgewählten Gruppen aufeinanderfolgender Bits in einer Datenverarbeitungsanordnung Expired DE2457312C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR7343136A FR2253415A5 (de) 1973-12-04 1973-12-04

Publications (3)

Publication Number Publication Date
DE2457312A1 DE2457312A1 (de) 1975-06-05
DE2457312B2 DE2457312B2 (de) 1978-11-30
DE2457312C3 true DE2457312C3 (de) 1979-08-02

Family

ID=9128664

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2457312A Expired DE2457312C3 (de) 1973-12-04 1974-12-04 Anordnung zur Durchführung arithmetischer oder logischer Operationen an ausgewählten Gruppen aufeinanderfolgender Bits in einer Datenverarbeitungsanordnung

Country Status (8)

Country Link
US (1) US4023023A (de)
BE (1) BE822448A (de)
DE (1) DE2457312C3 (de)
ES (1) ES432556A1 (de)
FR (1) FR2253415A5 (de)
GB (1) GB1494327A (de)
IT (1) IT1024958B (de)
NL (1) NL7415387A (de)

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1524850A (en) * 1975-12-23 1978-09-13 Ferranti Ltd Data processing apparatus
US4139899A (en) * 1976-10-18 1979-02-13 Burroughs Corporation Shift network having a mask generator and a rotator
US4194241A (en) * 1977-07-08 1980-03-18 Xerox Corporation Bit manipulation circuitry in a microprocessor
US4219874A (en) * 1978-03-17 1980-08-26 Gusev Valery Data processing device for variable length multibyte data fields
US4321668A (en) * 1979-01-02 1982-03-23 Honeywell Information Systems Inc. Prediction of number of data words transferred and the cycle at which data is available
US4467443A (en) * 1979-07-30 1984-08-21 Burroughs Corporation Bit addressable variable length memory system
US4509144A (en) * 1980-02-13 1985-04-02 Intel Corporation Programmable bidirectional shifter
US4358826A (en) * 1980-06-30 1982-11-09 International Business Machines Corporation Apparatus for enabling byte or word addressing of storage organized on a word basis
US4484276A (en) * 1981-02-19 1984-11-20 Sperry Corporation Shift matrix preselector control circuit
JPS5824941A (ja) * 1981-08-07 1983-02-15 Hitachi Ltd 演算装置
JPS5827241A (ja) * 1981-08-12 1983-02-17 Hitachi Ltd 十進演算装置
CA1211219A (en) * 1982-06-30 1986-09-09 Hideo Kuroda Digital data code conversion circuit for variable- word-length data code
US4667305A (en) * 1982-06-30 1987-05-19 International Business Machines Corporation Circuits for accessing a variable width data bus with a variable width data field
US4506345A (en) * 1982-07-02 1985-03-19 Honeywell Information Systems Inc. Data alignment circuit
US5034900A (en) * 1984-10-05 1991-07-23 Hitachi, Ltd. Method and apparatus for bit operational process
US5265204A (en) * 1984-10-05 1993-11-23 Hitachi, Ltd. Method and apparatus for bit operational process
US6552730B1 (en) 1984-10-05 2003-04-22 Hitachi, Ltd. Method and apparatus for bit operational process
JP2667806B2 (ja) * 1985-10-11 1997-10-27 株式会社日立製作所 ベクトルプロセツサ
US4920483A (en) * 1985-11-15 1990-04-24 Data General Corporation A computer memory for accessing any word-sized group of contiguous bits
US4903228A (en) * 1988-11-09 1990-02-20 International Business Machines Corporation Single cycle merge/logic unit
US5020013A (en) * 1989-09-29 1991-05-28 Cyrix Corporation Bidirectional variable bit shifter
US5319763A (en) * 1991-04-02 1994-06-07 Motorola, Inc. Data processor with concurrent static and dynamic masking of operand information and method therefor
US5341500A (en) * 1991-04-02 1994-08-23 Motorola, Inc. Data processor with combined static and dynamic masking of operand for breakpoint operation
US5974539A (en) * 1993-11-30 1999-10-26 Texas Instruments Incorporated Three input arithmetic logic unit with shifter and mask generator
US5590350A (en) * 1993-11-30 1996-12-31 Texas Instruments Incorporated Three input arithmetic logic unit with mask generator
US5961635A (en) * 1993-11-30 1999-10-05 Texas Instruments Incorporated Three input arithmetic logic unit with barrel rotator and mask generator
US5805913A (en) * 1993-11-30 1998-09-08 Texas Instruments Incorporated Arithmetic logic unit with conditional register source selection
US5485411A (en) * 1993-11-30 1996-01-16 Texas Instruments Incorporated Three input arithmetic logic unit forming the sum of a first input anded with a first boolean combination of a second input and a third input plus a second boolean combination of the second and third inputs
US6116768A (en) * 1993-11-30 2000-09-12 Texas Instruments Incorporated Three input arithmetic logic unit with barrel rotator
US5596763A (en) * 1993-11-30 1997-01-21 Texas Instruments Incorporated Three input arithmetic logic unit forming mixed arithmetic and boolean combinations
US6098163A (en) * 1993-11-30 2000-08-01 Texas Instruments Incorporated Three input arithmetic logic unit with shifter
US5509129A (en) * 1993-11-30 1996-04-16 Guttag; Karl M. Long instruction word controlling plural independent processor operations
US5493524A (en) * 1993-11-30 1996-02-20 Texas Instruments Incorporated Three input arithmetic logic unit employing carry propagate logic
US6058473A (en) * 1993-11-30 2000-05-02 Texas Instruments Incorporated Memory store from a register pair conditional upon a selected status bit
US7197625B1 (en) * 1997-10-09 2007-03-27 Mips Technologies, Inc. Alignment and ordering of vector elements for single instruction multiple data processing
US5864703A (en) * 1997-10-09 1999-01-26 Mips Technologies, Inc. Method for providing extended precision in SIMD vector arithmetic operations
FR2770661B1 (fr) * 1997-11-03 2001-08-10 Inside Technologies Microprocesseur comprenant des moyens de concatenation de bits
WO2001016702A1 (en) 1999-09-01 2001-03-08 Intel Corporation Register set used in multithreaded parallel processor architecture
CA2383532A1 (en) * 1999-09-01 2001-03-08 Intel Corporation Branch instruction for processor architecture
US7191309B1 (en) * 1999-09-01 2007-03-13 Intel Corporation Double shift instruction for micro engine used in multithreaded parallel processor architecture
US7302621B2 (en) * 2000-01-03 2007-11-27 Icoding Technology, Inc. High spread highly randomized generatable interleavers
US7681018B2 (en) * 2000-08-31 2010-03-16 Intel Corporation Method and apparatus for providing large register address space while maximizing cycletime performance for a multi-threaded register file set
US20020053017A1 (en) * 2000-09-01 2002-05-02 Adiletta Matthew J. Register instructions for a multithreaded processor
US7620832B2 (en) * 2000-09-20 2009-11-17 Mips Technologies, Inc. Method and apparatus for masking a microprocessor execution signature
US7020871B2 (en) * 2000-12-21 2006-03-28 Intel Corporation Breakpoint method for parallel hardware threads in multithreaded processor
FR2821184A1 (fr) * 2001-02-16 2002-08-23 Koninkl Philips Electronics Nv Trames de commandes et procede de concatenation de trame de commandes
US7237097B2 (en) * 2001-02-21 2007-06-26 Mips Technologies, Inc. Partial bitwise permutations
US7711763B2 (en) * 2001-02-21 2010-05-04 Mips Technologies, Inc. Microprocessor instructions for performing polynomial arithmetic operations
US7181484B2 (en) * 2001-02-21 2007-02-20 Mips Technologies, Inc. Extended-precision accumulation of multiplier output
US7599981B2 (en) * 2001-02-21 2009-10-06 Mips Technologies, Inc. Binary polynomial multiplier
US7162621B2 (en) * 2001-02-21 2007-01-09 Mips Technologies, Inc. Virtual instruction expansion based on template and parameter selector information specifying sign-extension or concentration
US7318145B1 (en) 2001-06-01 2008-01-08 Mips Technologies, Inc. Random slip generator
US7487505B2 (en) 2001-08-27 2009-02-03 Intel Corporation Multithreaded microprocessor with register allocation based on number of active threads
US7216204B2 (en) 2001-08-27 2007-05-08 Intel Corporation Mechanism for providing early coherency detection to enable high performance memory updates in a latency sensitive multithreaded environment
US6868476B2 (en) 2001-08-27 2005-03-15 Intel Corporation Software controlled content addressable memory in a general purpose execution datapath
US7225281B2 (en) * 2001-08-27 2007-05-29 Intel Corporation Multiprocessor infrastructure for providing flexible bandwidth allocation via multiple instantiations of separate data buses, control buses and support mechanisms
US7610451B2 (en) * 2002-01-25 2009-10-27 Intel Corporation Data transfer mechanism using unidirectional pull bus and push bus
US7437724B2 (en) * 2002-04-03 2008-10-14 Intel Corporation Registers for data transfers
US7337275B2 (en) * 2002-08-13 2008-02-26 Intel Corporation Free list and ring data structure management
US6941438B2 (en) 2003-01-10 2005-09-06 Intel Corporation Memory interleaving
US7305593B2 (en) * 2003-08-26 2007-12-04 Lsi Corporation Memory mapping for parallel turbo decoding
GB2411978B (en) * 2004-03-10 2007-04-04 Advanced Risc Mach Ltd Inserting bits within a data word
US20080256424A1 (en) * 2007-04-13 2008-10-16 Broadcom Corporation Information bit puncturing for turbo coding with parameter selectable rate matching tailored to lower eb/no without degrading bler (block error rate) performance
US10255462B2 (en) 2016-06-17 2019-04-09 Arm Limited Apparatus and method for obfuscating power consumption of a processor

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3596074A (en) * 1969-06-12 1971-07-27 Ibm Serial by character multifunctional modular unit
US3728689A (en) * 1971-06-21 1973-04-17 Sanders Associates Inc Program branching and register addressing procedures and apparatus
FR2175261A5 (de) * 1972-03-06 1973-10-19 Inst Francais Du Petrole

Also Published As

Publication number Publication date
ES432556A1 (es) 1976-09-16
BE822448A (fr) 1975-05-21
FR2253415A5 (de) 1975-06-27
IT1024958B (it) 1978-07-20
DE2457312A1 (de) 1975-06-05
DE2457312B2 (de) 1978-11-30
GB1494327A (en) 1977-12-07
US4023023A (en) 1977-05-10
NL7415387A (nl) 1975-06-06

Similar Documents

Publication Publication Date Title
DE2457312C3 (de) Anordnung zur Durchführung arithmetischer oder logischer Operationen an ausgewählten Gruppen aufeinanderfolgender Bits in einer Datenverarbeitungsanordnung
DE1952374C3 (de) Informationsverarbeitendes System mit einer Adressiervorrichtung
DE1499175B2 (de) Steuereinrichtung in einem mehrspezies rechner
DE2130299B2 (de) Eingabe-/Ausgabekanal für eine Datenverarb eitungsanlage
DE1193996B (de) Schiebespeicher mit Steuervorrichtung
DE1269393B (de) Mikroprogramm-Steuerwerk
DE2536622C2 (de) Verzweigungssteuerung mit flexibler Auswahl von Steuerworten
DE1914560C3 (de) Schaltungsanordnung zur Verschiebung eines Datenwortes innerhalb eines Rechenelementen-Feldes
DE2210426C2 (de) Verfahren zur vorranggesteuerten Auswahl einer von mehreren Funktions einheiten zur Anschaltung an eine ihnen gemeinsam zugeordnete Einrichtung in Datenverarbeitungsanlagen und Schaltung zur Durchführung des Verfahrens
DE2656086C2 (de) Rechenanlage
DE1262641B (de) Mikroprogrammsteuerwerk
DE2900586C2 (de) Anordnung zum Decodieren von Codewörtern variabler Länge
DE1449784A1 (de) Schieberegister
DE1239124B (de) Vorrichtung zum Einspeichern einer Dezimalzahl in ein Register
DE2235883C3 (de) Datenverarbeitungseinrichtung
DE2406171B2 (de) Synchron-mehrzweck-zaehler
DE2306679A1 (de) Einrichtung zum bearbeiten digitaler daten
DE2000275A1 (de) Elektronischer Walzenschalter
DE2446990A1 (de) Speicheranordnung
DE2233164B2 (de) Schaltungsanordnung zur uebertragung von aufeinanderfolgenden bitstellen zwischen zwei registern
DE1107432B (de) Elektronische Rechenmaschine
DE1298318B (de) Steuerwerk fuer eine digitale Rechenanlage
DE2136536C3 (de) Anordnung zur Komprimierung binarer Daten
DE1474024B2 (de) Anordnung zur willkuerlichen umordnung von zeichen innerhalb eines informationswortes
DE1499284B2 (de) Datenverarbeitungsanlage

Legal Events

Date Code Title Description
OGA New person/name/address of the applicant
C3 Grant after two publication steps (3rd publication)