DE69026363T2 - Multipositionsverschieber mit Paritätsbitgenerator - Google Patents

Multipositionsverschieber mit Paritätsbitgenerator

Info

Publication number
DE69026363T2
DE69026363T2 DE69026363T DE69026363T DE69026363T2 DE 69026363 T2 DE69026363 T2 DE 69026363T2 DE 69026363 T DE69026363 T DE 69026363T DE 69026363 T DE69026363 T DE 69026363T DE 69026363 T2 DE69026363 T2 DE 69026363T2
Authority
DE
Germany
Prior art keywords
parity
output
word
line
lines
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 - Fee Related
Application number
DE69026363T
Other languages
English (en)
Other versions
DE69026363D1 (de
Inventor
Alain Greiner
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 SAS
Original Assignee
Bull SAS
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 SAS filed Critical Bull SAS
Publication of DE69026363D1 publication Critical patent/DE69026363D1/de
Application granted granted Critical
Publication of DE69026363T2 publication Critical patent/DE69026363T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/01Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
    • G06F5/015Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising having at least two separately controlled shifting levels, e.g. using shifting matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Description

  • Die Erfindung betrifft eine Funktionseinheit, die Verschiebungsschaltung (im Englischen: "Barrel Shifter") genannt wird und verwendet werden kann, um in Arithmetik- und Logikeinheiten von Rechnern Verschiebungen auszuführen.
  • Insbesondere betrifft die Erfindung Verschiebungsschaltungen des Typs, der versehen ist mit Mitteln, die in Abhängigkeit von von einer Decodierungsschaltung ausgegebenen Wählsignalen ein Ausgangswort liefern, das aus M aufeinanderfolgenden Bits zusammengesetzt ist, die aus einem Basiswort aus N1 Bits entnommen sind, das beispielsweise anhand zweier Eingangswörter mit jeweils N Bits gebildet ist.
  • Die Verschiebungsschaltungen werden üblicherweise verwendet, um Verschiebungen nach rechts, nach links oder kreisförmig auszuführen, die sich je nach Lademodus auf Wörter aus N Bits stützen. Die Verschiebungen nach rechts werden dadurch verwirklicht, daß das linke Eingangswort auf Null gesetzt wird, die Verschiebungen nach links dadurch, daß das rechte Eingangswort auf Null gesetzt wird, und die kreisförmigen Verschiebungen mit zwei Eingangswörtern, die mit dem zu verschiebenden Wort völlig übereinstimmen.
  • Im allgemeinen versuchen die Rechnerkonstrukteure, die Integrität ihrer Systeme dadurch sicherzustellen, daß sie die binären Signale und/oder die Gültigkeitsinformationen, die aufgrund von logischen Fehlern oder aufgrund eines schlechten physikalischen Betriebs des Systems zweifelhaft sind, erfassen und beseitigen.
  • Hierfür ist die Verwendung von den Daten zugeordneten Paritätsbits ein bequemes Mittel für die Fehlererfassung auf der Ebene der Verarbeitung der Daten, die entweder während logischer Operationen oder während einfacher Verschiebungen von Daten erfolgt. Hierzu wird jedes Datenwort im allgemeinen in mehrere Felder oder Gruppen von Bits unterteilt, wobei "Exklusiv-ODER"-Logischaltungen verwendet werden, die die Berechnung des jeder Gruppe zugeordneten Paritätsbits ermöglichen. Diese Operation erfordert indessen eine gewisse Verzögerung, um die zu kontrollierende Parität zu erzeugen, insbesondere dann, wenn die Breite der Gruppe mehrere Stufen von in Kaskade geschalteten "Exklusiv-ODER"-Gattern erfordert.
  • Insbesondere dann, wenn die Daten von einer Funktionseinheit wie etwa einer Verschiebungsschaltung verarbeitet werden, kann es nützlich sein, die Paritätsbits zu berechnen, die jedem von der Funktionseinheit stammenden Ergebnis zugeordnet sind. Die Druckschrift US 3 045 209 beschreibt eine Vorrichtung, die Mittel enthält, um in Abhängigkeit von von einer Decodierungsschaltung ausgegebenen Wählsignalen ein Ausgangswort zu liefern, das aus acht aufeinanderfolgenden Bits zusammengesetzt ist, die aus einem Basiswort aus 16 Bits entnommen sind, das anhand zweier Eingangswörter mit jeweils 8 Bits gebildet ist. Das Paritätsbit des Worts aus 16 Bits wird für eine Fehlererfassung verwendet, indem es zur Parität der verbleibenden Bits hinzugefügt wird. Die Berechnung des Paritätsbits des entnommenen Worts wird gemäß dem üblichen Verfahren anhand des Ergebnisses selbst ausgeführt, jedoch mit einer Verzögerung gegenüber dem Zeitpunkt, in dem das Ergebnis für die folgende Verarbeitung wirklich verfügbar ist.
  • Die Erfindung hat zum Ziel, die Integrität eines Systems, das eine Verschiebungsschaltung des obigen Typs verwendet, durch die Erzeugung von Paritätsbits ohne Verschlechterung der Leistungseigenschaften dieser Schaltung zu verbessern. Hierzu enthält gemäß der Erfindung die Verschiebungsschaltung Mittel zum Bilden eines Paritätsworts, das aus den Paritätsbits sämtlicher Gruppen von n aufeinanderfolgenden Bits zusammengesetzt ist, die aus dem Basiswort entnommen werden können, und Wählmittel, die durch die Wählsignale gesteuert werden, um die Paritätsbits der Gruppen von n aufeinanderfolgenden Bits auszuwählen, die das Ausgangswort bilden, wobei n ein Teiler von M kleiner als M ist, wobei die Mittel für die Bildung des Paritätsworts zur Decodierungsschaltung parallelgeschaltet sind, so daß das Paritätswort und die Wählsignale gleichzeitig erzeugt werden.
  • Daher wird die Maschinenzeit, die für die Decodierung des Verschiebungswertes erforderlich ist, für die Vorausberechnung der Werte der Paritäten sämtlicher Gruppen von Bits, die aus dem Basiswort entnommen werden können, verwendet, um sie bereit zu machen, mit dem Ausgangswort ausgegeben zu werden.
  • Gemäß einer ersten Ausführungsform der Erfindung enthält die Verschiebungsschaltung eine Verschiebungsmatrix mit N1 Dateneingangsleitungen und M Ausgangsleitungen, eine Decodierungsschaltung, die in Abhängigkeit von einem Steuersignal, das den Wert der auszuführenden Verschiebung repräsentiert und zwischen 0 und N1-M liegt, eine entsprechende Wählleitung aktivieren kann, um auf die Ausgangsleitungen das Datenausgangswort zu liefern, wobei die Verschiebungsschaltung mehrere Paritätserzeugungsschaltungen, die den Gruppen von n Bits zu sind, welche aus den Eingangsleitungen entnommen werden können (um ein Paritätswort der Länge N1 - n + 1 Bits zu bilden), sowie eine Paritätsbit-Wählschaltung enthält, die durch die Decodierungsschaltung gesteuert wird, um auf die Paritätsausgangsleitungen die Paritäten der Gruppen von n Bits des Ausgangsworts auszugeben.
  • Diese Anordnung ermöglicht die Verwendung einer Decodierungsschaltung, die der gesamten Verschiebungsmatrix und den Pantätsbit-Wählmitteln gemeinsam ist.
  • Vorteilhaft ist die Paritätsbit-Wählschaltung durch eine Wählmatrix mit N1 - n + 1 Paritätseingangsleitungen und k Paritätsausgangsleitungen (wobei k = M/n) gebildet, die anhand der Decodierungsschaltung durch die Wählleitungen in Abhängigkeit vom Wert der auszuführenden Verschiebung gesteuert wird.
  • Gemäß einer besonderen Anordnung der Verschiebungsschaltung gemäß der Erfindung ist die Paritätswählmatrix mit der Verschiebungsmatrix verschachtelt, wobei die Paritätseingangsleitungen (pi) zu den Dateneingangsleitungen (di) in der Weise parallel sind, daß eine Paritätsleitung (pi) zu einer (di + 2) der n Dateneingangsleitungen jeder Gruppe von n aufeinanderfolgenden Bits gehört, die aus dem Basiswort entnommen werden können (z. B. für n 4, di, di + 1, di + 2 und di + 3), wobei die Paritätsausgangsleitungen (qi') zu den Datenausgangsleitungen (si) in der Weise parallel sind, daß eine Paritätsausgangsleitung (qi') zu einer (s(ni' + 2)) der Ausgangsleitungen gehört, die eine Gruppe von n aufeinanderfolgenden Bits bilden, die zum Ausgangswort (z. B. für n = 4, s4i', s4i' + 1, s4i' + 2 und s4i'+ 3) gehören, wobei jede Wählleitung (lj) den Zustand einer Ausgangsleitung (si) anhand des Zustands der Dateneingangsleitung d(i + j) und den Zustand einer Ausgangsleitung q(i') anhand des Zustands der Paritätseingangsleitung p(ni' + j) steuert.
  • Diese besondere Anordnung weist gegenüber der Verwendung zweier verschiedener Matrizen einen deutlich spürbaren Flächengewinn auf. Wenn beispielsweise die verschachtelten Matrizen Schalttransistoren in einem Chip enthalten, der in Vorladungs-CMOS-Technologie ausgeführt ist, liegt die Flächenzunahme der Matrix gegenüber derjenigen der Umschalt-Verschiebungsmatrix einer einfachen Verschiebungsschaltung ohne Erzeugung von Paritätsbits in der Größenordnung von 15 %.
  • Weitere Merkmale und Vorteile der vorliegenden Erfindung, insbesondere Einzelheiten der Ausführung in CMOS-Technologie werden deutlicher beim Lesen der folgenden Beschreibung mit Bezug auf die beigefügten Zeichnungen, in denen:
  • - Fig. 1 eine schematische Darstellung einer Verschiebungsschaltung gemäß der Erfindung ist,
  • - Fig. 2 eine schematische Darstellung einer Paritätsbit- Erzeugungsschaltung ist, die in der in Fig. 1 gezeigten Schaltung verwendet wird,
  • - Fig. 3 ein funktionales Schema ist, das die Bildung des Paritätsworts im Rahmen der vorliegenden Erfindung erläutert,
  • - Fig. 4 eine schematische Darstellung der verschachtelten Wählmatrizen ist, die in der Verschiebungsschaltung gemäß der Erfindung verwendet werden,
  • - und Fig. 5 eine schematische Darstellung einer Schaltzelle ist, die CMOS-Technologie ausgeführt ist und in den in Fig. 4 gezeigten Wählmatrizen verwendet wird.
  • Gemäß der hier anhand eines nicht beschränkenden Beispiels beschriebenen Ausführungsform der Erfindung ist die Verschiebungsschaltung 100 von Fig. 1 im wesentlichen aus einer doppelten Wählmatrix 112 (die eine Wählmatrix für das verschobene Wort 113 und eine Paritäts-Wählmatrix 115 enthält), einer Decodierungsschaltung 114 sowie einer Paritätswort-Erzeugungsschaltung 116 aufgebaut. Die Verschiebungsschaltung 100 enthält zwei Gruppen oder zwei Busse von N Dateneingangsleitungen 118 und 120 (die mit do bis d(N - 1) für den Bus 118 und mit dN bis d(2N - 1) für den Bus 120 bezeichnet sind), Verschiebungs-Steuerleitungen 122, eine Gesamtheit von M Ausgangsleitungen 124 für Daten nach der Verschiebung (die mit s0 bis s(M - 1) bezeichnet sind, und eine Gesamtheit von k Paritätsausgangsleitungen (die mit q0 bis q(k - 1) bezeichnet sind).
  • Daher ist die gezeigte Verschiebungsschaltung für die Erzeugung der Paritäten von k Gruppen (oder Bytes) der Dimension n Bits, die nach der Verschiebung das Ausgangswort der Dimension M Bits bilden. In der laufenden Anwendung ist die Dimension M des Ausgangworts gleich der Dimension N jedes Eingangsworts, d. h. M = N, wobei die Dimension des Basisworts N1 dann gleich 2N ist. In einem nicht beschränkenden Beispiel sind in der hier beschriebenen Variante der Ausführungsform der Erfindung, die in Fig. 1 gezeigt ist, die Dimensionen der Eingangs- und Ausgangswörter 32 Bits (M = N = 32), während die Dimension n des Bytes 4 Bits (n = 4) ist, wobei der Paritätsausgang dann eine Dimension 8 Bits (k = 8) besitzt. Das in den Fig. 3 und 4 gezeigte und mit dem Ziel der Erläuterung angegebene Beispiel ist jedoch mit M = N = 8 Bits und n = 4 Bits (k = 2) gewählt worden, um die Zeichnungen nicht zu überladen.
  • Wenn Fig. 1 betrachtet wird, ergibt die Verknüpfung der zwei Eingangswörter der Dimension N (32) die Möglichkeit, durch Verschiebung eine Anzahl L = N1 - M + 1 (33) verschiedener Gruppen aus N (32) aufeinanderfolgenden Bits zu entnehmen, die das Augangswort bilden können, wobei die Verschiebung Null darin enthalten ist. Hierzu wird die Verschiebungs-Wählmatrix 113 durch L Wähileitungen 128 gesteuert (die mit lo bis l(N1 - M) bezeichnet sind), die von den Ausgangsanschlüssen der Decodierungsschaltung 114 ausgehen. Die Decodierungsschaltung SEL 114 kann von einem herkömmlichen Typ sein, z. B. mit einem binären codierten Eingangswert. In diesem Fall ist eine Anzahl C von Verschiebungs-Steuerleitungen 122 vorhanden, derart, daß 2c ≥ N1 - M + 1, wobei diese Leitungen zu einem Eingangsregister D des Verschiebungswertes gehören.
  • Wie in Fig. 1 gezeigt, gehören die Eingangsleitungen 118 und 120 zu zwei Datenregistern A und B, während die Ausgangsleitungen 124 und 126 zu zwei Registern gehören, einem Datenausgangsregister 5 und einem Paritätsausgangsregister Q.
  • Die Datenleitungen 118 und 120 sind außerdem mit den Eingangsanschlüssen der Paritätswort-Erzeugungsschaltung PAR 116 verbunden. Die Schaltung PAR ist aus einer Gruppe von elementaren Erzeugungsschaltungen GP gebildet, wovon jede ein Pantätsbit erzeugt.
  • Jede elementare Schaltung GP ist vom Typ mit "Exklusiv-ODER" Gattern (bezeichnet mit ) mit mehreren Eingängen, was durch eine Schaltung mehrerer "exklusiv-ODER"-Gatter mit zwei Eingängen in Kaskade erhalten wird, wie in Fig. 2 gezeigt ist, die den besonderen Fall einer Schaltung mit vier Eingängen veranschaulicht, die für die Erzeugung eines Paritätsbits pro Viererbyte vorgesehen ist. Es wird daran erinnert, daß das Paritätsbit (mit pi bezeichnet) den Wert 1 annimmt, wenn die Anzahl von Bits mit Wert 1 des betrachteten Bytes ungerade ist, und im entgegengesetzten Fall den Wert Null annimmt.
  • Die Erzeugung des Paritätsworts in der Schaltung 116 wird auf die folgende Weise ausgeführt, die in Fig. 3 schematisch dargestellt ist. Nach der Verknüpfung von Eingangswörtern A und B (in der gleichen Reihenfolge, die für die Verschiebung verwendet wird) in einem geeigneten Register erfolgt die Erzeugung jedes Paritätsbits pi sämtlicher Bytes von aufeinanderfolgenden Bits (hier Viererbytes) , die entnommen werden können. Die Anzahl von Bytes ist gleich 2N - n + 1 (für N1 = 2N), d. h. 61 in dem in Fig. 1 gezeigten Beispiel und 13 in dem in Fig. 3 und 4 gezeigten Beispiel. Die Erzeugung der Paritätsbits wird in einem Register P durch die Schaltungen GP (GPo bis GP(2N - n)) parallel und nahezu gleichzeitig mit den Operationen der Decodierung des Verschiebungsbefehls, der auf der Leitung 122 gesendet wird, ausgeführt. Die Paritätssignale werden an N1 - n + 1 Eingangsleitungen 130 (bezeichnet mit po bis p(2N - n)) der Paritäts-Wählmatrix 115 vor der Validierung durch ein Taktsignal CK des Wählsignals, das von der Decodierungsschaltung 114 erzeugt wird, geliefert.
  • Die doppelte Wählmatrix 112, die in Fig. 4 schematisch dargestellt ist, zeigt die Verschachtelung der Verschiebungsmatrix 113 mit der Paritätsmatrix 115. Die Verschiebungsmatrix 113 besitzt ihre Eingangsleitungen (d0 bis d7 und d8 bis d15) für die Wörter A bzw. B, ihre Ausgangsleitungen 5 (s0 bis 57) und ihre Wählleitungen (10 bis 18) auf. Die Paritätsmatrix 115 besitzt ihre Eingangsleitungen (po bis p12), ihre Ausgangslei tungen (q0 bis q1) sowie ihre Wähileitungen (10 bis 18) auf, wobei diese letzteren beiden gemeinsam sind und deswegen mit denen der Verschiebungsmatrix 113 zusammenfallen.
  • Vom topologischen Gesichtspunkt aus befinden sich in einer besonderen Ausführungsform in CMOS-Technologie die Wähileitungen L (die in Fig. 4 vertikal orientiert sind) auf der Metallschicht 1, während sich die Ausgangsleitungen S und Q, die in Fig. 4 horizontal orientiert sind) auf der Metallschicht 2 befinden und die Datenleitungen A, B und P in treppenförmig zwei Lagen angeordnet sind, um die Überkreuzungen in einer allgemeinen Anordnung von schrägen, parallelen Bahnen zu ermöglichen (Metallschicht 1 für den vertikalen Weg und Metallschicht 2 für den horizontalen Weg über den Wählleitungen mit einem Metall-Zwischenschicht-Anschluß bei jeder Änderung der Orientierung). Außerdem liegen die Leitungen A und B nebeneinander, um die Verknüpfung der Wörter A und B zu gewährleisten, weiterhin sind die Leitungen P mit den Leitungen A und B gemäß der in Fig. 4 gezeigten Anordnung verschachtelt. Ebenso sind die Ausgangsleitungen S und Q in verschachtelten, parallelen Bahnen angeordnet, die einerseits die Eingangsleitungen A, B und P und andererseits die vertikal angeordneten Wählleitungen L bedecken. Eine Eingangsleitung, eine Ausgangsleitung und eine Wählleitung treffen in einer Schaltzelle CC aufeinander, deren Prinzipschaltbild, das in Fig. 5 angegeben ist, weiter unten dargelegt wird.
  • Vom funktionalen Gesichtspunkt aus gibt eine Schaitzelle CC dann, wenn sie durch die zugehörige Wählleitung validiert ist, auf die zugehörige Ausgangsleitung den logischen Wert der zugehörigen Eingangsleitung (schräge Leitung) wieder. Wenn sie nicht validiert ist, wird die Zelle CC im Zustand hoher Impedanz gehalten.
  • Die besondere topologische Anordnung von Fig. 4 (Ausgangsleitungen 5 und Wählleitungen L sind zueinander senkrecht, Eingangsleitungen sind treppenförmig schräg orientiert, vorzugs weise in einem Winkel von 45º) weist den Vorteil auf, daß die belegte Fläche optimiert ist. Daher weist die Verschiebungsmatrix 113 M Zeilen und 2N - M + 1 Spalten (d. h. in Fig. 4 eine 8 x 9-Matrix) auf, während die Paritätsmatrix 115 k Zeilen und 2N - M + 1 Spalten (d. h. in Fig. 4 eine 2 x 9- Matrix) aufweist. Diese Topologie wird in der praktischen Ausführung der doppelten Wählmatrix 112 in Form einer LSI- Mikroschaltung in CMOS-Technologie verwendet.
  • Genauer weisen die Paritätseingangsleitungen (pi) eine treppenförmige Anordnung auf, die zu derjenigen der Dateneingangsleitungen (di) parallel ist, derart, daß eine Paritätsleitung (pi) zu einer (in dem in Fig. 4 gezeigten besonderen Fall z. B. die Leitung (di + 2)) der n = 4 Dateneingangsleitungen jeder Gruppe aus n aufeinanderfolgenden Bits, die aus dem Basiswort entnommen werden können (di, di + 1, di + 2 und di + 3) gehört.
  • Ebenso sind die Paritätsausgangsleitungen (qi') zu den Ausgangsleitungen (si) parallel, derart, daß eine Paritätsausgansleitung (qi') zu einer Leitung (in dem in Fig. 4 gezeigten besonderen Fall, in dem (pi) zu (di + 2) gehört, die Leitung (s(ni' + 2)), um die Entsprechung zwischen der Parität und der Gruppe aufeinanderfolgender Bits zu berücksichtigen) der n = 4 Ausgangsleitungen (sni', sni' + 1, sni' + 2, sni' + 3) gehört, welche eine Gruppe von n aufeinanderfolgenden Bits bilden, die zum Ausgangswort gehören. Somit sind die Paritätsausgangsleitungen (qi') von den n Ausgangsleitungen (si) regelmäßig beabstandet.
  • Schließlich steuert jede Wählleitung (lj) über die Schaltzelle CCij den Zustand der Ausgangsleitung (si) anhand der Dateneingangsleitung d(i + j) und über die Schaltzelle CC*i'j den Zustand der Ausgangsleitung (qi') anhand der Paritätseingangsleitung p(ni'+ j).
  • Fig. 5 zeigt eine Schaltzelle CCij, die zu einer Eingangslei tung d (i + j) einer Ausgangsleitung (si) und zur Wählleitung (lj) gehört. Diese Ausführung verwendet die sogenannte "Vorladungs-CMOS"-Technologie, bei der jede horizontale Leitung (in Fig. 5) der Matrix einer Leitung (s'i) entspricht, die während der sogenannten Vorladungsphase des Taktsignals (Signal CK = 0 während der Vorladungsphase) auf eine positive Spannung Vdd vorgeladen wird. Während der sogenannten Auswertungsphase des Taktsignals CK (Signal CK = 1 während der Auswertungsphase) nimmt diese Leitung (s'i) einen logischen Zustand an, der zum Wert des Ausgangs (si) komplementär ist. Hierzu ist jede vorgeladene Leitung (s'i) mit dem Eingang 154 eines Inverters 156 verbunden, dessen Ausgang der Ausgangsleitung (si) entspricht. Jede Schaltzelle CC ist hauptsächlich aus zwei NMOS-Transistoren 150 und 152, die in Serie geschaltet sind, gebildet. Der Drain des Transistors 150 ist am Eingang 154 des Inverters 156 direkt an die Vorladungsleitung (s'i) angeschlossen, während die Source des Transistors 152 an die Masse (Potential mit niedrigem Pegel) der Schaltung angeschlossen ist. Das Gate 158 des Transistors 150 ist an die Wählleitung (lj) angeschlossen, genauer an den Ausgang 160 eines Validierungs-UND-Gatters 162, das in die Decodierungsschaltung 114 eingebaut ist. Das UND-Gatter 162 empfängt am Eingang das entsprechende Signal (l'j), das in der Decodierungsschaltung 114 erzeugt wird, und das Taktsignal CK (wobei die Validierung während der Auswertungsphase erfolgt, wo CK = 1 ist). Das Gate 164 des Transistors 152 ist an die Dateneingangsleitung d(i + j) angeschlossen (z. B. ist für eine Verschiebung um 5 Einheiten, d. h. j = 5, der Wert des Bits 4 des Ausgangsworts, d. h. 54, gleich demjenigen des Datenbits d9).
  • Außerdem ist ein Vorladungs-PMOS-Transistor 166 über seine Source an eine Spannungsquelle Vdd und über seinen Drain an die Leitung (s'i) angeschlossen. Dieser PMOS-Transistor 166 empfängt an seinem Gate 168 des Taktsignal CK.
  • In dem Fall, in dem die Schaltzelle CC* zur Paritätsmatrix 115 gehört, bleibt ihr grundlegendes elektrisches Schaltbild unverändert. Die Wählleitung (lj) gehört jedoch über eine Vorladungsleitung (q'i') zu einer Ausgangsleitung (qi') und zu einer Paritäts-Datenleitung p(ni' + j) (z. B. ist für eine Verschiebung um 5 Einheiten (j = 5) der Wert der Parität des Viererbytes 1 (n = 4, i' = 1) des Ausgangsworts derjenige des Paritätsbits der Leitung p9).
  • Die Schaitzellen arbeiten auf die folgende Weise: In jedem (nicht gezeigten) Taktzyklus der Verschiebungsschaltung nimmt das Signal CK nacheinander einen niedrigen Wert (CK = 0 während der Vorladungsphase) dann einen hohen Wert (CK = 1) während der Auswertungsphase) an. Während der sogenannten Vorladungsphase bei CK = 0 ist der PMOS-Transistor 166 im Durchlaßzustand, wobei der Eingang des Inverters 156 auf dem Potential Vdd gehalten wird. Außerdem wird der Ausgang 160 des UND-Gatters 162 während dieser gesamten Vorladungsphase auf niedrigem Pegel gehalten. Daraus ergibt sich eine Sperrung des NMOS-Transistors 150. Während der sogenannten Auswertungsphase, in der CK = 1 ist, wird der PMOS-Transistor 166 erneut gesperrt, während das Signal CK = 1 zum Eingang sämtlicher UND-Gatter geschickt wird, die die Wählleitungen am Ausgang der Decodierungsschaltung 114 steuern. Entsprechend dem Verschiebungswert, der durch die Steuerleitung 122 übertragen wird, wird eine einzige Vorwählleitung, z. B. (l'j) aktiviert und auf hohem Wert gehalten (l'j = 1). Daher wird der Ausgang 160 des entsprechenden UND-Gatters 162 sowie die gesamte entsprechende Wählleitung (lj), zu der die Spalte (j) der Verschiebungs- und Paritätsmatrizen, die diegates 158 der NMOS-Transistoren 150 steuert, auf einem hohen Potential gehalten, was die Wirkung hat, daß diese Transistoren 150 in den Durchlaßzustand versetzt werden, wodurch das Lesen des Wertes der Signale d (i + j) und p (ni' + j) ermöglicht wird.
  • In dem Fall, in dem d(i + j) = 0 ist, bleibt das Gate 164 des Transistors 152 auf einem niedrigen Spannungspegel, der diesen letzteren im gesperrten Zustand hält. Die Leitung (s'i) bleibt auf hohem Pegel, was am Ausgang des Inverters 156 ein Ausgangssignal mit niedrigem Pegel (si = 0) ergibt. Umgekehrt wird in dem Fall, in dem d(i + j) = 1 ist, das Gate 164 auf hohem Pegel gehalten, wodurch der Transistor 152 in den leitenden Zustand versetzt wird. Die Sperrung des Transistors 166 und die Versetzung der zwei Transistoren 150 und 152 in den Durchlaßzustand bewirkt einen Spannungsabfall der Leitung (s'i), die zum niedrigen Pegel übergeht. Der Ausgang des Inverters 156 kippt dann zum hohen Pegel (si = 1).
  • Daher repräsentieren während dieser Bewertungsphase sämtliche Ausgangsleitungen (si) und (qi'), die durch dieselbe Wählleitung (lj) aktiviert werden, binäre Werte, die auf den zugehörigen Daten- und Paritätsleitungen vorhanden sind. Es ist festzustellen, daß die für die Decodierung des Verschiebungswertes durch die Schaltung SEL 114 erforderliche Zeit und die für die Erzeugung des Paritätsworts durch die Schaltung PAR 116 erforderliche Zeit in der gleichen Größenordnung liegen; dadurch ist es möglich, die Synchronizität auf Höhe der Verfügbarkeit der Ausgangswörter und der Paritäten der Gruppen von aufeinanderfolgenden Bits dieser Wörter sicherzustellen. Sämtliche Operationen der Verschiebung und der Erzeugung der Paritätsbits der aufeinanderfolgenden Bytes des Ausgangsworts werden nämlich während desselben Taktzyklus ausgeführt.
  • Außerdem ermöglicht die Verschachtelung der Verschiebungs- und Paritätsmatrizen einen erheblichen Platzgewinn bei der Integration der Bauelemente in einem Chip. In der Praxis ist die physikalische Grenze durch den minimalen Abstand gegeben, der zwischen zwei parallelen Verbindungsleitungen der Transistoren auf Höhe einer der Metallisierungsschichten des Chips zu berücksichtigen ist (in dem beschriebenen besonderen Fall auf Höhe der Metallschicht 1, wobei die Positionierung der Leitungen der Metallschicht 2 vorgegeben ist). In bezug auf einen Chip, der auf einer einzigen Verschiebungsmatrix für zwei Eingangswörter von 32 Bits und ein Ausgangswort von ebenfalls 32 Bits basiert (2 x 32 Eingänge, 32 Ausgänge und 33 Wählleitungen), weist ein Chip gemäß der Erfindung mit Paritätsbiterzeugung jedes Quartetts des Ausgangsworts (der zusätzlich 61 Paritätseingänge und acht Paritätsausgänge aufweist) eine Erhöhung der aktiven Fläche der Matrix in der Größenordnung von 15 % auf. Ohne jedoch den Rahmen der Erfindung zu verlassen, weist eine andere Ausführungsform derselben (nicht gezeigt) die Verschiebungs-Schaltmatrix und die Paritätsschaltmatrix auf, die physikalisch verschieden jeweils um einen spezifischen Chip (oder eine Mikroschaltung) strukturiert sind.

Claims (6)

1. Verschiebungsschaltung des Typs, der versehen ist mit Mitteln (113), die in Abhängigkeit von von einer Decodierungsschaltung (114) ausgegebenen Wähisignalen ein Ausgangswort liefern, das aus M aufeinanderfolgenden Bits zusammengesetzt ist, die aus einem Basiswort aus N1 Bits entnommen sind, das beispielsweise anhand zweier Eingangswörter mit jeweils N Bits gebildet ist, Mitteln (116), die ein Paritätswort bilden, das aus den Paritätsbits sämtlicher Gruppen von n aufeinanderfolgenden Bits zusammengesetzt ist, die aus dem Basiswort entnommen werden können, und Wählmitteln (115), die durch die Wählsignale gesteuert werden, um die Paritätsbits der Gruppen von n aufeinanderfolgenden Bits auszuwählen, die das Ausgangswort bilden, wobei n ein Teiler von M kleiner als M ist, dadurch gekennzeichnet, daß die Mittel (116) für die Bildung des Paritätsworts zur Decodierungsschaltung (114) parallelgeschaltet sind, so daß das Paritätswort und die Wähisignale gleichzeitig erzeugt werden.
2. Verschiebungsschaltung nach dem vorangehenden Anspruch, dadurch gekennzeichnet, daß sie eine Verschiebungsmatrix (113) mit N1 Dateneingangsleitungen (118, 120) und M Ausgangsleitungen (124) und eine Decodierungsschaltung (114), die in Abhängigkeit von einem Steuersignal, das den Wert der auszuführenden Verschiebung repräsentiert, der zwischen 0 und N1-M liegt, eine entsprechende Wählleitung (128) aktivieren kann, um auf die Ausgangsleitungen das Datenausgangswort zu liefern, und daß die Verschiebungsschaltung mehrere (116) Paritätserzeugungsschaltungen, die zu den Gruppen von n Bits gehören, welche aus den Eingangsleitungen (118, 120) entnommen werden können (um ein Paritätswort mit einer Länge von N1-n+1 Bits zu bilden), sowie eine Wählschaltung (115) für Paritätsbits enthält, die von der Decodierungsschaltung gesteuert wird, um auf den Paritätsausgangsleitungen (126) die Paritäten der Gruppen von n Bits des Ausgangsworts zu liefern.
3. Verschiebungsschaltung nach Anspruch 2, dadurch gekennzeichnet, daß die Wählschaltung (115) für Paritätsbits durch eine Wählmatrix mit N1-n+1 Paritätseingangsleitungen (130) und k Paritätsausgangsleitungen (126) (wobei M = kn) gebildet ist und ausgehend von der Decodierungsschaltung (114) durch die Wählleitungen (lj) in Abhängigkeit vom Wert der auszuführenden Verschiebung gesteuert wird.
4. Verschiebungsschaltung nach Anspruch 3, dadurch gekennzeichnet, daß die Paritätswählmatrix (115) mit der Verschiebungsmatrix (113) verschachtelt ist, mit Paritätseingangsleitungen (pi), die zu den Dateneingangsleitungen (di) gemäß einer Anordnung parallel sind, in der eine Paritätsleitung (pi) zu einer (z. B. di+2) von n Dateneingangsleitungen jeder Gruppe aus n aufeinanderfolgenden Bits, die aus dem Basiswort entnommen werden können, gehört (z. B. für n=4, di, di+1, di+2 und di+3), und mit Paritätsausgangsleitungen (qi'), die zu den Datenausgangsleitungen (si) gemäß einer Anordnung parallel sind, in der eine Paritätsausgangsleitung (qi') zu einer (der Leitung s(ni'+2)) der Ausgangsleitungen gehört, die eine Gruppe n von aufeinanderfolgenden Bits bilden, die zum Ausgangswort gehören (z. B. für n = 4, s4i', s4i'+1, s4i'+2 und s4i'+3), wobei jede Wählleitung (lj) den Zustand einer Ausgangsleitung (si) ausgehend vom Zustand der Dateneingangsleitung d(i+j) und den Zustand einer Ausgangsleitung (qi') ausgehend vom Zustand der Paritätseingangsleitung p(ni'+j) steuert.
5. Verschiebungsschaltung nach Anspruch 4, dadurch gekennzeichnet, daß jede Ausgangsleitung (si) oder (qi') eine Gruppe von L=N1-M+1 Kommutatorzellen CC oder CC* umgruppiert, die in Serie in einer Leitung (s'i) oder (q'i') angeordnet sind, die durch eine Vorladungsschaltung (166) vorgeladen ist, beispielsweise eine Serienschaltung aus zwei NMOS-Transistoren (150, 152), die durch eine zugehörige Eingangsleitung d(i+j) oder p(ni'+j) bzw. eine zugehörige Wähileitung (lj) gesteuert werden.
6. Verschiebungsschaltung nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß das Basiswort aus zwei Eingangswörtern mit der jeweiligen Dimension N gebildet ist, daß die Eingangs- und Ausgangswörter die gleiche Dimension 32 besitzen und daß die Dimension n der Gruppen des Ausgangsworts, für die die Paritäten erzeugt werden, gleich 4 ist.
DE69026363T 1989-12-07 1990-12-07 Multipositionsverschieber mit Paritätsbitgenerator Expired - Fee Related DE69026363T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR8916174A FR2655748B1 (fr) 1989-12-07 1989-12-07 Circuit decaleur avec generateur de bits de parite.

Publications (2)

Publication Number Publication Date
DE69026363D1 DE69026363D1 (de) 1996-05-09
DE69026363T2 true DE69026363T2 (de) 1996-08-14

Family

ID=9388247

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69026363T Expired - Fee Related DE69026363T2 (de) 1989-12-07 1990-12-07 Multipositionsverschieber mit Paritätsbitgenerator

Country Status (5)

Country Link
US (1) US5144573A (de)
EP (1) EP0437127B1 (de)
JP (1) JP3128074B2 (de)
DE (1) DE69026363T2 (de)
FR (1) FR2655748B1 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5867727A (en) * 1992-06-24 1999-02-02 Fujitsu Limited System for judging read out transfer word is correct by comparing flag of transfer word and lower bit portion of read destination selection address
US5978822A (en) * 1995-12-29 1999-11-02 Atmel Corporation Circuit for rotating, left shifting, or right shifting bits
US5948050A (en) * 1996-12-19 1999-09-07 Lucent Technologies Inc. Fast conversion two's complement encoded shift value for a barrel shifter
FR2770661B1 (fr) * 1997-11-03 2001-08-10 Inside Technologies Microprocesseur comprenant des moyens de concatenation de bits
US8281214B2 (en) * 2008-10-17 2012-10-02 Lsi Corporation Programmable quasi-cyclic low-density parity check (QC LDPC) encoder for read channel

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3045209A (en) * 1959-04-15 1962-07-17 Ibm Checking system for data selection network
DE2140858C3 (de) * 1971-08-14 1974-03-14 Ibm Deutschland Gmbh, 7000 Stuttgart Paritätsbit- Vorhersage schaltung für eine Stellenverschiebeeinrichtung
JPS4912258A (de) * 1972-05-18 1974-02-02
JPS5829054A (ja) * 1981-08-14 1983-02-21 Hitachi Ltd 論理演算パリテイ予測回路
US4462102A (en) * 1981-11-13 1984-07-24 International Business Machines Corporation Method and apparatus for checking the parity of disassociated bit groups
US4533992A (en) * 1982-02-22 1985-08-06 Texas Instruments Incorporated Microcomputer having shifter in ALU input
US4483424A (en) * 1983-02-28 1984-11-20 The Firestone Tire & Rubber Company Automatic slack adjuster
JPS59201149A (ja) * 1983-04-30 1984-11-14 Toshiba Corp パリテイ処理方式
US4556978A (en) * 1983-07-20 1985-12-03 Sperry Corporation Error checked high speed shift matrix
JPH0736150B2 (ja) * 1985-01-31 1995-04-19 株式会社日立製作所 バレルシフト回路
JPS61187038A (ja) * 1985-02-15 1986-08-20 Agency Of Ind Science & Technol 加算回路
JPS62184531A (ja) * 1986-02-10 1987-08-12 Hitachi Ltd バレルシフタ
JPS6386024A (ja) * 1986-09-30 1988-04-16 Toshiba Corp バレルシフタ
JPS63197221A (ja) * 1987-02-12 1988-08-16 Mitsubishi Electric Corp バレル・シフタ
JPH01209539A (ja) * 1988-02-17 1989-08-23 Nec Corp シフタ
US4901263A (en) * 1988-09-12 1990-02-13 General Electric Company Versatile data shifter with sticky bit generation capability
US4999796A (en) * 1989-12-14 1991-03-12 Motorola, Inc. Sticky bit detection and shifting logic

Also Published As

Publication number Publication date
EP0437127B1 (de) 1996-04-03
US5144573A (en) 1992-09-01
DE69026363D1 (de) 1996-05-09
EP0437127A1 (de) 1991-07-17
FR2655748A1 (fr) 1991-06-14
JPH04218829A (ja) 1992-08-10
FR2655748B1 (fr) 1992-01-24
JP3128074B2 (ja) 2001-01-29

Similar Documents

Publication Publication Date Title
DE69407588T2 (de) Programmierbare digitale Verzögerungsschaltungseinheit
DE3645221C2 (de)
DE1237363B (de) Arithmetisch-Logische-Einheit
DE2224389A1 (de) Speichersystem
DE69130640T2 (de) Arithmetische Operationseinheit mit Bit-Invertierungsfunktion
DE3854212T2 (de) Signalgenerator für die Umlaufadressierung.
DE2361512C2 (de) Schaltungsanordnung zur Prüfung eines Additionsresultates
EP0176981B1 (de) D/A-Wandler
DE2734361A1 (de) Adressenwaehlschaltung fuer halbleiterspeichereinrichtungen
DE2401334A1 (de) Synchronisationsstufe
DE2707451A1 (de) Einrichtung und verfahren zum addieren von wenigstens zwei aus mehreren bits bestehenden binaerzahlen
DE2165445C3 (de) Logikschaltung
DE69026363T2 (de) Multipositionsverschieber mit Paritätsbitgenerator
DE3586718T2 (de) Festwertspeicher mit interdigitalen bitzeilen.
DE3524797A1 (de) Anordnung zur bitparallelen addition von binaerzahlen
DE2833211C2 (de) Asynchroner binärer Vorwärts-Rückwärtszähler
DE68924479T2 (de) Gerät um festzustellen, ob während einer Verschiebungsoperation Daten in Verlust geraten.
DE1241159B (de) UEbertragschaltung fuer ein Schnelladdierwerk
DE2017132A1 (de) Binarer Parallel Addierer
DE1499227C3 (de) Schaltungsanordnung für arithmetische und logische Grundoperationen
DE3587401T2 (de) Maskensignalgenerator.
DE2003832A1 (de) Binaeres Universalregister,insbesondere Zaehl- und Komplementierregister
DE69222054T2 (de) Einzelbitaddierer
DE2257622A1 (de) Elektrische zaehlschaltung
DE3221819A1 (de) Vorrichtung zur simulation eines schaltwerks mit hilfe eines rechners

Legal Events

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

Owner name: BULL S.A., LES CLAYES SOUS BOIS, FR

8339 Ceased/non-payment of the annual fee