DE2457312B2 - 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
DE2457312B2
DE2457312B2 DE2457312A DE2457312A DE2457312B2 DE 2457312 B2 DE2457312 B2 DE 2457312B2 DE 2457312 A DE2457312 A DE 2457312A DE 2457312 A DE2457312 A DE 2457312A DE 2457312 B2 DE2457312 B2 DE 2457312B2
Authority
DE
Germany
Prior art keywords
transmission control
arrangement
outputs
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.)
Granted
Application number
DE2457312A
Other languages
English (en)
Other versions
DE2457312C3 (de
DE2457312A1 (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 vorgegebenen 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 byteweise
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 Verfügung 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 Verfügung 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 Torschaltungen jeder Übertragungssteuerschaltung der Reihe nach an die verschiedenen Ausgänge des Anfangsstellen-Decodierers angeschlossen sind, und daß an die Signaleingänge der Torschaltungen jeder Übertragungssteuerschaltung jeweils eines der zu übertragenden Bits in einer von Übertragungssteuerschaltung zu Übertragungssteuerschaltung zyklischen Vertauschung angelegtsind.
Bei der Anordnung nach der Erfindung werden die Bits des auszuwählenden Bitfeldes durch entsprechend angesteuerte Torschaltungen 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 tiurch den Anfangsstellen-Decodierer und den Feldlangen-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 Übertragungssteuerschaltung 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 Übertragungssteuerschaltungen 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 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 Anfangsstellen-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 Erfindung anhand der Zeichnung näher beschrieben. In der Zeichnung zeigt
Fig. 1 das Blockschaltbild einer Anordnung gemäß einem Ausführungsbeispiel der Erfindung,
Fig. 2 ein Ausführungsbeispiel des Bitfeldwählers in der Anordnung von Fig. 1,
Fig.3 die Einzelheiten eines Teils der ersten Übertragungssteueranordnung im Bitfeldwähler von Fig. 2,
F i g. 4 die Einzelheilen eines Teils der zweiten Übertragungssteueranordnung im Bitfeldwählcr von F i g. 2 und
F i g. 5 ein Ausführungsbeispiel der Verschiebungsund Verkettungsschaltung in der Anordnung von Fig. 1.
Bei dem 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 5 erhaltenen Daten werden über einen Eingang des Datenspeichers MA zu einer Einordnungsadresse zurückgebracht, die in einem Steuerwort angegeben ist, das in einem Register K steht. Das Steuerwort wird aus einem Steuerwortspeicher MK in das Register K eingegeben, und die Einordnungsadresse ist durch den in einem Abschnitt KAR des Registers Anstehenden 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 / 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 i'ß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 3, 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 J und £ bezeichnet sind (vgl. Fig. 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. q»_/) ... Cx 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 B empfä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är/iffcrn .s/ bis sx) der Verschiebungs- und Vcrkcttungsschaltung 7~Sübertragen, oder
— das von dem !iechi-vtwerk Φ3 abgegebene Wort wird .:u vJtm Ausgang S de.· Verschiebungs- und Verkeltungsschaltung 75' mit einer Verschiebung um eine Binärziffer nach links übertragen, oder
κι — das von dem Rechenwerk abgegebene Wort wird zu dem Ausgang 5 der Verschiebungs- und Verkettungsschaltung TS mit einer Verschiebung um eine Binärziffer nach rechts übertragen,
— andere Verschiebungen könnten bei Bedarf vorgesehen werden, und
— in ein Wort, dessen Verschiebung durch irgendeine der drei obengenannten Bedingungen festgelegt ist, wird verkettet ein Teil der Ziffern des Wortes B
2(> (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
2) 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)
in mit jeweils derselben Anzahl von Binärziffern zerlegt angesehen werden. Diese Zerlegung ermöglicht es, den Bitfeldwähler einfach aus zwei in Kaskade angeordneten Übertragungssteueranordnungen 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 1 (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
->(i 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
to 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 Okiaden Φί 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 /C (F ig. 3 und Fig. 4) hat somit ■-, sechzehn Ausgänge 1 bis 16. Die Feldlängen-Befehlscodegruppe / hat ebenfalls vier Binärziffern. Der Feldlängen-Decodierer Ki (F ig. 4) hat somit sechzehn Ausgänge 1 bis 16. Die Verschiebungs-Befehlscodegruppc k hat zwei Zustände, und der Verschiebungs-Deco- κι dierer Kk weist somit nur zwei Ausgänge gnnd i/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 r, Übertragungssteueranordnung M\ mit sechzehn Übertragungssteuerschaltungen G bis C\b, von denen die drei Übertragungssteuerschaltungen Ci, G, Ci6 in F i g. 3 genauer dargestellt sind. Jede Übertragungssteuerschaltung besteht aus zwei Torschaltungen FIa, Fk,. ■ ■ Ft3, G<th ■ ■ ■ F\bu, F\bb, 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 2*·, Eingängen entgegengesetzte Digitalwerte haben. Die Übertragungsschaltung Ci empfängt die Ziffern al und a9 des Wortes A; die Übertragungssteuerschaltung G empfängt die Ziffern al und alO usw.; die Übertragungssteuerschaltung C) empfängt die Ziffern a9 und al; die i<> Übertragungssteuerschaltung Cio empfängt die Ziffern alO und al, usw. Das Ausgangssignal g des Verschiebungs-Decodieren K^ wird jeweils einem Steuereingang aller Torschaltungen F\ä, F\t... F8a, F8;, der acht ersten Übertragungssteuerschaltungen Ci ... C8 züge- j--, führt, und das Ausgangssignal d wird jeweils einem Steuereingang aller Torschaltungen Fq3, F<)b ■■■ F|ba, F|bf, der acht anderen Übertragungssteuerschaltungen G - · ■ Gb zugeführt, wobei diese Ausgangssignale wie gesagt, immer entgegengesetzte Digitalwerte haben. 4(1
Die Ausgänge 1 bis 8 des Anfangsstellen-Decodierers Kr\ sind mit einer ODER-Schaltung OU] verbunden, und das durch die ODER-Verknüpfung erhaltene Signal wird jeweils an einen Steuereingang der linken Torschaltung Fi,, ... F8a in jeder der acht ersten 4-, Übertragungssteuerschaltungen Ci ... C8 und an einen Steuereingang der rechten Torschaltung F91, ... F]bb in jeder der acht anderen Übertragungssteuerschaltungen G) ... Qb angelegt. Die Ausgänge 9 bis 16 des Anfangsstellen-Decodierers Kr\ sind in gleicher Weise -,0 mit einer ODER-Schaltung OU2 verbunden, und das durch die ODER-Verknüpfung erhaltene Signal wird jeweils an einen Steuereingang der rechten Torschaltung Fu,... Fat in jeder der acht ersten Übertragungssteuerschaltungen Ci... Ce und an einen Steuereingang der linken Torschaltung F^ ... F^3 in jeder der acht anderen Übertragungssteuerschaltungen C9 ... C16 angelegt Die Ausgangssignale der beiden ODER-Schaltungen OU] und OU2 haben offensichtlich immer entgegengesetzte Digitalwerte. <,o
Aufgrund der angegebenen Bedingungen für die Steuerung der Torschal tungen:
— Entsperrung für gleiche Digitalwerte,
— Sperrung für verschiedene Digitalwerte,
ergibt die Übertragungssteueranordnung M\ von F i g. 2 und 3 dann 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 Übertragungsstcuerschaltungen Ci bis Ck, abgegeben:
a) bei linksbündiger Ausrichtung (g) und einer Anfangsstellc rvon 1 bis 8;
b) bei rechtsbündiger Ausrichtung (d) und einer Anfangsstelle rvon 9 bis 16;
2. die beiden Oktaden Φί und Φ1 werden in den beiden folgenden Fällen gegenseitig vertauscht an den Ausgängen der Übertragungssteuerschaltungen Ci bis Cibabgegeben:
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 Cib der ersten Übertragungssteueranordnung M] werden zu den Eingängen der sechzehn Übertragungssteuerschaltungen D] bis Di6 einer zweiten Übertragungssteueranordnung M2 übertragen und auf diese Eingänge verteilt. Die Anzahl der Eingänge jeder Übertragungssteuerschaltung D] bis D]b entspricht der Ziffernzahl einer Oktade. Die erste Übertragungssteuerschaltung D] der Übertragungssteueranordnung M2 empfängt die Ausgangssignale der Übertragungssteuerschaltung Ci bis C8 der ersten Übertragungssteueranordnung Mi, die zweite Übertragungssteuerschaltung Di empfängt die Ausgangssignale der Übertragungssteuerschaltungen C2 bis G usw., mit einer regelmäßigen Verschiebung um ein Ausgangssignal der ersten Übertragungssteueranordnung Mi bei jeder weiteren Übertragungssteuerschaltung der zweiten Übertragungssteueranordnung M2 und mit einer Wiederaufnahme der Ausgangssignale der ersten Übertragungssteueranordnung Mi in zyklischer Vertauschung bis zu der sechzehnten Übertragungssteuerschaltung D]b der zweiten Übertragungssteueranordnung M2, welche als Eingangssignale die Ausgangssignale der Übertragungssteuerschaltungen Ci6, G, C2, C3, G, G, G und G in der angegebenen Reihenfolge hat. Zur Veranschaulichung ist in F i g. 4 ein Ausführungsbeispiel der Übertragungssteuerschaltung Di der zweiten Übertragungssteueranordnung M2 dargestellt. Sie besteht aus acht Torschaltungen G13 ... Gjh, deren Ausgänge in einer ODER-Verknüpfung zu einem Ausgang zusammengefaßt sind, der die Ziffer el abgibt und mit einem derselben Stelle zugeordneten Eingang des Rechenwerks ΦB verbunden ist. Die Übertragungssteuerschaltung Di empfängt an ihren acht Eingängen die Ausgangssignale der Übertragiingssteuerschaltungen G bis Cm der Übertragungssteueranordnung Mi, nämlich die Ziffern a7(15), a8(16), a9(l), alO(2), al 1(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 M\ gelten.
Jede Torschaltung G jederpbertragungssteuerschaltung D\ bis Αβ der zweiten Übertragungssteueranordnung M2 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 Κλ vorgesehen, dessen Ausgänge paarweise ODER-verknüpft sind, wodurch Steuersignale für die Torschaltungen G der -, Übertragungssteuerschaltungen D\ bis Die geliefert werden. Die Ausgänge 1 und 9 des Anfangsstellen-Decodierers Κλ 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 Rg, der durch die ODER-Verknüpfung der Ausgänge 8 und 16 gebildet ist. Zur Vereinfachung sollen die an den Ausgängen R\, R2 ... Rs erhaltenen Steuersignale mit den gleichen Bezugszeichen benannt werden.
Das Steuersignal R\ wird an die erste Torschaltung π Ci* G2a,... da... G\ba jeder Übertragungssteuerschaltung D\...Dj... D\b angelegt, das Steuersignal R2 an die zweite Torschaltung Gu,, G2b ■■■ G1t... G\bt>, usw., bis schließlich zum Steuersignal Ra, das an die achte Torschaltung G\h, G2/,... Gn, ... Gk,/, jeder Übertragungssteuerschaltung Di... D7 ■ ■ ■ Du, angelegt wird.
Alle acht Torschaltungen jeder Übertragungssteuerschaltung Di ... Die empfangen ferner gemeinsam ein zugeordnetes Steuersignal /,das von einem Feldlängen-Decodierer Ki aus der Feldlängen-Befehlscodegruppe / 2"> abgeleitet wird. So empfangen die acht Torschaltungen Gi„ ... Ga, der in F i g. 4 dargestellten Übertragungsiteuerschaltung D1 gemeinsam das zugeordnete Steuersignal Ly von dem in gleicher Weise bezeichneten Ausgang des Feldlängen-Decodierers Ki. in
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. r> Der Feldlängen-Decodierer K/ hat sechzehn Ausgänge Li ... Lib, 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 Ausgangs- 4r> signal 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 ^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 Torsdialtungen werden dann paarweise auf die sechzehn Ausgänge L, bis Li6 gegeben, und zwar in folgender Weise: Das Ausgangssignal der Torschaltung (g) am Ausgang 1 des Feldlängen-Decodierers Ki wird mit dem Ausgangssignal der Torschaltung (d) am Ausgang 16 zu dem Steuersignal U ODER-verknüpft, das an alle Torschaltungen der Übertragungssteuerschaltung Di angelegt wird. Umgekehrt wird das bo Ausgangssignal der Torschaltung (d) am Ausgang 1 mit dem Ausgangssignal der Torschaltung (g) am Ausgang 16 zu dem Steuersignal L]6 ODER-verknflpft, das an alle Torschaltungen der Übertragungssteuerschaltung D16 angelegt wird. Die Ausgangssignale der Torschaltungen, b5 die mit den Ausgängen 2 und 15 des Feldlängen-Decodierers Κι verbunden sind, werden in ähnlicher Weise verarbeitet, damit sich die Steuersignale L2 und L15 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 »r« 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ählers SC, und sie erscheint bei rechtsbündiger Ausrichtung (Tabelle 11) am neunten Ausgang (c9), wenn eine ausreichende Feldlänge (acht oder mehr Bits) vorgesehen ist.
Die zweite Spalte »/?«jeder Tabelle gibt den erregten Ausgang des Anfangsstellen-Decodierers Kn (Fig.4) an.
Die sechzehn Ziffern in jeder Zeile wurden für die betreffenden Werte von r(\ bis 16) und k^*oder Qualle in der angegebenen Reihenfolge an den Ausgängen des Bitfeldwählers SCerscheinen, wenn die Feldlängen-Befehlscodegruppe / eine Feldlä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
/c=^(linksbündig); r= 12; /=4.
Nach Tabelle I erscheinen die folgenden Ziffern an den Ausgängen el bis c4:
al2;al3;al4;al5.
Die übrigen Ausgänge c5 bis cl6 sind gesperrt.
Beispiel 2
Jt= J(rechtsbündig); r- 5; /= 6.
Nach Tabelle II erscheinen die folgenden Ziffern an den Ausgängen eil 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 II) die durch die Anfangsstellen der Befehlscodegruppe r angegebene Stelle nicht in allen Fällen unmittelbar die erste Stelle des ausgewählten Bitfeldes angibt, sondern nur in dem Sonderfall, daß die durch die Feldlängen-Befehlscodegruppe / angegebene Länge des Bitfildes acht Bits beträgt; bei größerer Feldlänge befindet sich die angegebene Stelle im Innern 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 c9 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 Übertragungssteuerschaltung D\ bis D\b ebenso viele Torschaltungen enthalten, wie Bitstellen in dem ganzen Wort vorhanden sind, so daß bei 16 Bitstellen 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 Übertragungssteuerpnordnung 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 el bis cl6 des Bitfeldwählers ι -, SC in der gleichen Taktzeit zur Verfugung, 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 ^i 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 <ή& und g\ handelt. Wenn die Verschiebungs-Befehlscodegruppe k eine andere Binärziffer enthielte, die Ausrichtungswerte d]·, >-> und gi 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 ui Ausgangssignalen L ODER-verknüpft, damit Steuersignale für die Übertragungssteuerschaltungen D\ bis D\b 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 r, 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 w aus den Ausgangssignalen der zweiten Übertragungssteueranordnung Μϊ ableitbar, entweder in direkter Konfiguration (Ziffern 1 an den erregten Ausgängen des Bitfeldwählers SC, oder einfach Verwendung der aktivierten Steuersignale L) oder in komplementärer m Konfiguration (Ziffern 0 an den erregten Ausgängen des Bitfeldwählers SCoder Verwendung der nichtaktivierten Steuersignale L mit Umkehrung des Digitalwertes).
Das durch den Bitfeldwähler gebildete Wort wird an die Eingänge c(c; bis c») des binären Rechenwerks ΦB ->o angelegt, das an einer anderen Reihe von Eingängen die Ziffern b (b/ 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 Funktions- v> oder 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 m> 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 ΦΒ dem Vorhandensein b5 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 Beispiel) 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 E\ bis E\b, 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 B, 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 Ei ... Ek, besteht dann beispielsweise aus vier Torschaltungen, de· en Ausgänge in ODER-Verknüpfung zu einem Ausgang Si ... Sib zusammengefaßt sind, der einer Ziffer des endgültigen Wortes zugeordnet ist. In jeder Übertragungssteuerschaltung ist eine der Torschaltungen mit dem Eingang für die Verkettungsziffer b\, bz ... b\b 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 Ei, E?... E|b ist ferner der Informationseingang einer zweiten Torschaltung mit dem der gleichen Stelle zugeordneten Ausgang φ\, ψΐ ... φ16 des Rechenwerks ΦΒ verbunden. Diese Torschaltung ist entsperrt, wenn der Ausgang 0 des Registerabschnitts KTS aktiviert ist. Der Informationseingang einer dritten Torschaltung in den Übertragungssteuerschaltungen Ei bis fi5 ist mit dem der nächsthöheren Stelle zugeordneten Ausgang φ2 ... <pl6 des Rechenwerks Φ Β verbunden. Diese Torschaltung ist entsperrt, wenn der Ausgang +1 des Registerabschnitts KTS aktiviert ist. Der Informationseingang einer vierten Torschaltung in den Übertragungssteuerschaltungen Ei bis Ei6 ist mit dem der nächstniedrigeren Stelle zugeordneten Ausgang φί ... φ15 des Rechenwerks ΦB verbunden. Diese Torschaltung ist entsperrt, wenn der Ausgang —1 des Registerabschnitts KTS aktiviert ist rn der ersten und in der letzten Übertragungssteuerschaltung Ei und Eis kann man Torschaltungen anordnen, die beliebige digitale Ziffern CL empfangen, wobei diese Torschaltung in der ersten Übertragungssteuerschaltung Ei durch die Aktivierung des Ausgangs -1 des Registerabschnitts KTS und in der letzten Übertragungssteuerschaltung Ei6 durch die Aktivierung des Ausgangs +1 des Registerabschnitts KTSgesteuert wird.
Tabelle I
Ausgangssignale des Bitfeldwählen; SC bei linksbündiger Ausrichtung (k = q)
a) r< 9: Oktaden unverändert übertragen
Γ 9 R el c2 c2 c3 c4 c5 c6 cl c8 c9 clO ell cl2 c 13 c 14 c 15 c16
1 10 1 al 32 a 10 a3 a4 a5 36 al a8 a9 a 10 all a 12 a 13 a 14 a 15 a 16
2 11 2 a2 a3 all a4 a5 a6 al aS a9 a 10 all a 12 a 13 a 14 a 15 a 16 al
3 1? 3 a3 a4 a 12 a5 ab al a8 a9 a 10 all a 12 a 13 a 14 a 15 a 16 al a2
4 13 4 a 4 a5 a 13 a6 al a9 a 10 all a 12 a 13 a 14 a 15 a 16 al a2 a3
5 14 5 a5 a6 a 14 al aS a9 a 10 all a 12 a 13 a 14 a 15 a 16 al a2 a3 a4
6 15 6 a6 al a 15 a9 a 10 ail a 12 a 13 a 14 a 15 a 16 al a2 a3 a4 a5
7 16 7 a7 a% a 16 a9 a 10 all a 12 a 13 a 14 a 15 a 16 al a2 a3 a4 a5 ab
8 8 ai a9 al a 10 all a 12 a 13 a 14 a 15 a 16 al a2 a3 a4 a5 ab al
b) r> 8: Oktaden vertauscht
r el c3 c4 c5 c6 cl c8 c9 clO ell c12 c 13 c 14 c 15 c 16
1 a9 all a 12 a 13 a 14 a 15 a 16 al al a3 a4 a5 a6 al
2 a 10 a 12 a 13 a 14 a 15 a 16 al a2 a3 a4 35 a6 al aS a9
3 all a 13 a 14 a 15 a 16 al a2 a3 a4 a5 a6 al aS a9 a 10
4 a 12 a 14 a 15 a 16 al a2 a3 a 4 a5 a6 al aS a9 a 10 all
5 a 13 a 15 a 16 a 1 a2 a3 a4 a5 a6 ?1 aS a9 a 10 all a 12
6 a 14 a 16 al al a3 a4 a5 a6 al a9 a 10 all a 12 a 13
7 a 15 al al al a4 a5 a6 al aS a9 a 10 all a 12 a 13 a 14
8 a 16 a2 a3 a 4 a5 a6 al aS a9 a 10 all a 12 a 13 a 14 a 15
Tabeüe Il Ausgangssignale des Bitfeldwählers SC bei rechtsbündiger Ausrichtung (k — d)
a) r< 9: Oktaden vertauscht
r 9 R el c2 c3 c4 c2 c3 c4 c5 c6 c7 c8 c9 clO ell c12 c 13 c 14 c 15 c 16
1 10 1 39 a 10 all a 12 a2 33 a4 a 13 a 14 a 15 a 16 al al a3 a4 a5 a6 a7 a%
2 11 2 a 10 all a 12 a 13 a3 34 a5 a 14 a 15 a 16 al a2 a3 a4 a5 ab a7 a8 a%
3 12 3 all 3 12 a 13 a 14 a4 a5 ab a 15 a 16 al a 2 33 a4 a5 ab al a8 a9 a 10
4 Π 4 a 12 3 13 a 14 a 15 a5 a6 al a 16 al a 2 a3 34 a5 ab al a8 a9 a 10 all
5 14 5 a 13 a 14 a 15 a 16 36 al 38 al a2 33 a4 a5 a6 al 38 a9 a 10 all al2
6 15 6 a 14 3 15 3 16 al a7 a9 32 33 34 ,35 36 a7 aS 39 a 10 all a 12 a 13
7 16 7 3 15 3 16 al a2 38 a9 a 10 a3 34 a5 a6 a7 a 8 a% 3 10 all a 12 a 13 a 14
8 8 a 16 al 32 33 39 3 10 all a4 a5 a6 al a8 a9 a 10 all a 12 a 13 3 14 a 15
b) r>8: Oktaden unverändert übertragen
r R Cl c5 c6 c7 c8 c9 clO ell cl2 c 13 c 14 c15 c 16
1 al a5 a6 a7 a8 a9 a 10 all a12 a 13 a 14 a 15 a 16
2 a2 a6 al «j 8 a9 a 10 all a 12 a 13 a 14 a 15 a 16 al
3 33 al aS a9 3 10 all a 12 a 13 a 14 a 15 a 16 al a2
4 a4 aS a9 a 10 all a 12 a 13 a 14 a 15 a 16 al al a3
5 35 a9 a 10 all a 12 a 13 a 14 a 15 a 16 al a2 a3 a4
6 a6 a 10 all a 12 a 13 a 14 a 15 a 16 al 32 a3 a4 a5
7 al all a 12 3 13 a 14 a 15 a 16 a I 32 33 a4 a5 a6
8 aS a 12 a 13 a 14 a 15 a 16 al a2 33 a4 a5 a6 a7
1 lici/u 4 Blatt Zeichnungen

Claims (3)

  1. Patentansprüche:
    1, Anordnung zur Durchführung arithmetischer oder logischer Operationen an ausgewählten Grup- s pen 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 i<> 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 i~> Verschiebung den Eingängen des Rechenwerks zuführt, dadurch gekennzeichnet, daß der Bitfeldwähicr (SC) eine Übertragungssteueranordnung (M2) enthält, die für jede Binärstelle des Wortes
    je eine Übertragungssteuerschaltungen (Di,.., Di6) enthält, daß alle Übertragungssteuerschaltungen (D],..., Di6) eine der Anzahl der zu übertragenden Binärziffern entsprechende Anzahl von Torschaltungen (z. B. Gj11, ..., Chh, F i g. 4) mit je einem Signaleingang und zwei Steuereingängen enthalten, 2 > daß ein Anfangsstellen-Decodierer (Ka) vorgesehen ist, der für jede Anfangsstellen-Befehlscodegruppe (r) an einem zugeordneten Ausgang (Ri,..., R») ein Signal abgibt, daß ein Feldlängen-Docodierer (Ki) vorgesehen ist, der an einer durch die Feldlängen- »1 Befehlscodegruppe (I) festgelegten Anzahl von aufeinanderfolgenden Ausgängen (Li,..., Li6), deren Lage durch die Verschiebungs-Befehlscodegruppe (k) bestimmt ist. Signale abgibt, daß die ersten Steuereingänge der Torschaliungen (z. B. Gja, ..., r> Gjh) jeder Übertragungssteuerschaltung (Di,..., Di6) gemeinsam jeweils mit einem der Ausgänge (Li,..., Li6) des Feldlängen-Decodierers (K\) verbunden sind, daß die zweiten Steuereingänge der Torschaltungen (z. B. G73,..., G?h) jeder Übertragungssteuerschaltung (Di, ..., D7) der Reihe nach an die verschiedenen Ausgänge (Ri, ..., Rg) des Anfangsstellen-Decodierers (Ka) angeschlossen sind, und daß an die Signaleingänge der Torschaltungen (z. B. da, ■ ■ ·, Gjh) jeder Übertragungssteuerschaltung (D,, v, ■ ■., Dib) jeweils eines der zu übertragenden Bits in einer von Übertragungssteuerschaltung zu Übertragungssteuerschaltung zyklischen Vertauschung angelegtsind.
  2. 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 v>
    eine Übertragungssteuerschaltung (Ci Ci6)
    enthält, daß jede Übertragungssteuerschaltung (Q, ..., Qb) so viele Signaleingänge 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 hr> 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 (Di, ..., Die) der nachgeschalteten Übertragungssteueranordnung (Afe) eine der Stellenzahl jedes Zeichens entsprechende Anzahl von Torschaltungen (z. B. G7* .., Gh) enthält, deren Signaleingänge mit der gicichen Anzahl von aufeinanderfolgenden Ausgängen der vorgeschalteten Übertragungssteueranordnung (Mj) verbunden sind.
  3. 3. Anordnung nach Anspruch 2, dadurch gekennzeichnet, daß jede Übertragungssteuerschaltung (Ci, .., G6) der vorgeschalteten Übertragungssteueranordnung (Mi) eine der Anzahl der Zeichen im Wort entsprechende Anzahl von Torschaltungen (F)a, Fu,; ..„ Fi6* Fi66) enthält, von denen jede einen Signaleingang und zwei Steuereingänge hat, daß ein weiterer Anfangsstellen-Decodierer (Kri) 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 (AT*) 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 (Fu, F16; ..., F16* F,b6) jeder
    Übertragungssteuerschaltung (Ci Ci6) mit
    jeweils einem der Ausgänge des weiteren Anfangsstellen-Decodierers (Kr\) verbunden sind, und daß jeder Ausgang (g, d)des Verschiebungs-Decodierers (Kk) mit den zweiten Steuereingängen aller Torschaltungen (F|j, Fu,; ..., F|6i,, Fi66) einer Gruppe von
    Übertragungssteuerschaltungen (Ci, ..., Cg; C)
    Ci6) 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 true DE2457312B2 (de) 1978-11-30
DE2457312C3 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
DE2457312C3 (de) 1979-08-02
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
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
DE1499722C2 (de) Einrichtung zur Modifizierung von Informationswörtern
DE2905675C2 (de)
EP0097725B1 (de) Einrichtung im Befehlswerk eines mikroprogrammgesteuerten Prozessors zur direkten hardwaregesteuerten Ausführung bestimmter Instruktionen
DE1269393B (de) Mikroprogramm-Steuerwerk
DE1499175B2 (de) Steuereinrichtung in einem mehrspezies rechner
DE1193996B (de) Schiebespeicher mit Steuervorrichtung
DE1499203B1 (de) Schaltungsanordnung zum Speicherschutz bei Datenverarbeitungsanlagen mit Simultanbetrieb
DE1275800B (de) Steuerwerk fuer datenverarbeitende Maschinen
DE1262641B (de) Mikroprogrammsteuerwerk
DE2656086C2 (de) Rechenanlage
DE2951040C2 (de)
DE2944757A1 (de) Prozessrechner
DE3501903A1 (de) Im pipelinebetrieb arbeitende datenverarbeitungseinrichtung
DE2900586A1 (de) Anordnung zum decodieren von codewoertern variabler laenge
DE1239124B (de) Vorrichtung zum Einspeichern einer Dezimalzahl in ein Register
DE2235883C3 (de) Datenverarbeitungseinrichtung
DE2306679A1 (de) Einrichtung zum bearbeiten digitaler daten
DE1288824B (de) Ferritkernmatrix zum seriellen Auslesen und Wiedereinschreiben von binaeren Informationen
DE2233164B2 (de) Schaltungsanordnung zur uebertragung von aufeinanderfolgenden bitstellen zwischen zwei registern
DE3341339C2 (de) Befehlsfolgegenerator
DE1298318B (de) Steuerwerk fuer eine digitale Rechenanlage
DE1107432B (de) Elektronische Rechenmaschine
DE2936801C2 (de) Steuereinrichtung zur Ausführung von Instruktionen

Legal Events

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