DE102007037363A1 - Standardzelle für Arithmetiklogikeinheit und Chipkartensteuerung - Google Patents

Standardzelle für Arithmetiklogikeinheit und Chipkartensteuerung Download PDF

Info

Publication number
DE102007037363A1
DE102007037363A1 DE102007037363A DE102007037363A DE102007037363A1 DE 102007037363 A1 DE102007037363 A1 DE 102007037363A1 DE 102007037363 A DE102007037363 A DE 102007037363A DE 102007037363 A DE102007037363 A DE 102007037363A DE 102007037363 A1 DE102007037363 A1 DE 102007037363A1
Authority
DE
Germany
Prior art keywords
input
control
carry
bit
masked
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
DE102007037363A
Other languages
English (en)
Other versions
DE102007037363B4 (de
Inventor
Thomas KÜNEMUND
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
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 Infineon Technologies AG filed Critical Infineon Technologies AG
Publication of DE102007037363A1 publication Critical patent/DE102007037363A1/de
Application granted granted Critical
Publication of DE102007037363B4 publication Critical patent/DE102007037363B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/501Half or full adders, i.e. basic adder cells for one denomination
    • G06F7/5016Half or full adders, i.e. basic adder cells for one denomination forming at least one of the output signals directly from the minterms of the input signals, i.e. with a minimum number of gate levels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/76Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
    • G06F7/764Masking

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • Logic Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

Eine Zelle für eine Arithmetiklogikeinheit umfasst einen ersten Eingang; einen zweiten Eingang; einen Stellenübertragsnachlaufeingang; einen ersten Steuereingang und einen zweiten Steuereingang; und eine Schaltung, die mit dem ersten Eingang, dem zweiten Eingang, dem Stellenübertragsnachlaufeingang, dem ersten Steuereingang und dem zweiten Steuereingang verbunden ist. Die Schaltung weist einen ersten Ausgang und einen zweiten Ausgang auf, wobei der zweite Ausgang einen ersten Wert als eine Funktion des ersten Eingangs und des zweiten Eingangs aufweist, wenn dem ersten Steuereingang und dem zweiten Steuereingang Werte gleich einem Wert an dem Stellenübertragsnachlaufeingang zugeführt werden, und einen zweiten Wert als eine Funktion des ersten Eingangs und des zweiten Eingangs aufweist, wenn die Werte an dem ersten Steuereingang und dem zweiten Steuereingang unabhängig von dem Wert an dem Stellenübertragsnachlaufeingang sind.

Description

  • Die vorliegende Erfindung bezieht sich allgemein auf Prozessoren und Steuerungen und Standardzellen für Arithmetiklogikeinheiten (ALUs; ALU = Arithmetic Logic Unit) bei derartigen Prozessoren und Steuerungen.
  • Eine Standardzelle für ALUs in Mikrosteuerungen kann unter Verwendung eines halb kundenspezifischen Entwurfsstils implementiert sein. Chipkartensteuerungen müssen hohen Anforderungen hinsichtlich eines Widerstands gegenüber einer invasiven Sondierung und/oder einer nichtinvasiven Differenzleistungsanalyse (DPA; DPA = Differential Power Analysis) von sicherheitskritischen Informationen genügen. Eine Vorrichtung des Stands der Technik verwendet eine bitweise XOR-Maskierung aller Daten unter Verwendung zeitvariabler Masken, so genannter „Einmalauffüll"-Masken (OTP-Masken; OTP = One-Time Pad".
  • 1 zeigt einen so genannten „Spiegeladdierer", eine herkömmliche Volladdiererzelle 10, die die Gleichungen co_n= a·b + b·ci + ci·a (1) s_n = a⊕b⊕ci (2)implementiert.
  • Der Spiegeladdierer verknüpft bzw. kombiniert somit die zwei Operandenbits a und b und das Stellenübertragsnachlaufbit ci (ci = carry-in) logisch, um das invertierte Stellenübertragsvorlaufbit co_n (co = carry-out) und das invertierte Summenbit s_n zu erhalten. Bei einer Standardzellenimplementierung des Spiegeladdierers werden co_n und s_n gewöhnlich zusätzlich durch zwei jeweilige Invertierer, einen pro Ausgang, invertiert, derart, dass die Ausgänge der Spiegeladdiererzelle für gewöhnlich das Übertragsbit co und das Summenbit s sind.
  • Wenn Ausgangssignale, die durch einen herkömmlichen Volladdierer erzeugt werden, mit maskierten Eingangsdaten versehen werden, werden die Gleichungen y = a·b + b·c + c·a (3) z = a⊕b⊕c (4)unter der „Maskierungsoperation", d. h. der XOR-Verknüpfung x ^ = x⊕k (5)von x = a, b und c mit einem OTP-Bit k umgewandelt bzw. transformiert.
  • Dann erhält man â·b ^ + b ^·ĉ + ĉ·â = (a·b + b·c + c·a)⊕k= y⊕k = ŷ und â⊕b ^⊕ĉ = a⊕b⊕c⊕k = z⊕k = ẑ. Die „Volladdierergleichungen" sind forminvariabel (kovariabel) unter der „Maskierungsoperation": aus Eingangsdaten, die mit k maskiert sind, berechnet der Volladdierer Ausgangsdaten, die ebenfalls erhalten werden, wenn Ausgangsdaten aus unmaskierten Eingangsdaten mit k maskiert sind.
  • Es ist die Aufgabe der vorliegenden Erfindung, eine Zelle für eine Arithmetiklogikeinheit, eine Steuerschaltungsanordnung für eine ALU-Zelle, eine maskierte ALU-Zelle und ein Verfahren zum logischen Verknüpfen von zwei Eingängen bei einer maskierten ALU-Zelle mit verbesserten Charakteristika zu schaffen.
  • Diese Aufgabe wird durch eine Zelle gemäß Anspruch 1 und Anspruch 13, eine Schaltungsanordnung gemäß Anspruch 9 und gemäß Anspruch 11 und ein Verfahren gemäß Anspruch 15 gelöst.
  • Die vorliegende Erfindung wird mit Bezug auf ein bevorzugtes Ausführungsbeispiel beschrieben.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beiliegenden Zeichnungen näher erläutert. Es zeigen:
  • 1 einen Spiegeladdierer des Stands der Technik;
  • 2 einen maskierten Spiegeladdierer gemäß der vorliegenden Erfindung;
  • 3 eine ALU-Steuerschaltungsanordnung für den maskierten Spiegeladdierer von 2;
  • 4 die gesteuerte Zelle und die Wechselwirkung der Steuerschaltungsanordnung von 3 mit dem Addierer von 2;
  • 5 eine mögliche Implementierung für das XNOR3-Gatter von 3; und
  • 6 eine ALU-Steuerlogikschaltungsanordnung ohne Maskierung.
  • Versuche, OTP-maskierte ALUs unter Verwendung herkömmlicher Standardzellen zu implementieren, haben zu unannehmbaren Werten für die Rechengeschwindigkeit und den Energieaufwand geführt. Aufgrund dessen war eine kommerzielle Implementierung einer OTP-maskierten Berechnung schwierig.
  • Ein Ausführungsbeispiel der vorliegenden Erfindung sieht eine Zelle für eine Arithmetiklogikeinheit vor, die folgende Merkmale aufweist:
    • – einen ersten Eingang;
    • – einen zweiten Eingang;
    • – einen Übertragsbiteingang;
    • – einen ersten Steuereingang und einen zweiten Steuereingang; und
    • – eine Schaltung, die mit dem ersten Eingang, dem zweiten Eingang, dem Übertragsbiteingang, dem ersten Steuereingang und dem zweiten Steuereingang verbunden ist, wobei die Schaltung einen ersten Ausgang und einen zweiten Ausgang aufweist;
    • – wobei der zweite Ausgang einen ersten Wert als eine Funktion des ersten Eingangs und des zweiten Eingangs aufweist, wenn dem ersten Steuereingang und dem zweiten Steuereingang Werte gleich einem Wert an dem Übertragsbiteingang zugeführt werden, und einen zweiten Wert als eine Funktion des ersten Eingangs und des zweiten Eingangs aufweist, wenn die Werte an dem ersten Steuereingang und dem zweiten Steuereingang unabhängig von dem Wert an dem Stellenübertragsnachlaufeingang sind.
  • Ein weiteres Ausführungsbeispiel der vorliegenden Erfindung sieht eine Steuerschaltungsanordnung für eine ALU-Zelle vor, die folgende Merkmale aufweist:
    • – einen Maskenbiteingang;
    • – einen Übertragsbiteingang;
    • – zwei Steuerbiteingänge; und
    • – eine Schaltung, die ein maskiertes Übertragsbit ausgibt und zwei Steuerausgänge aufweist.
  • Ein weiteres Ausführungsbeispiel der vorliegenden Erfindung sieht ebenfalls eine Steuerschaltungsanordnung für eine ALU-Zelle vor, die folgende Merkmale aufweist:
    • – einen Aktuell-Maskenbit-Eingang;
    • – einen Vorhergehend-Maskenbit-Eingang, der das Maskenbit von einer unmittelbar vorgeschalteten ALU-Zelle eingibt;
    • – einen Übertragsbiteingang;
    • – zwei Steuerbiteingänge; und
    • – eine Schaltung, die ein maskiertes Übertragsbit ausgibt und zwei Steuerausgänge als eine Funktion des Aktuell-Maskenbit-Eingangs und des Vorhergehend-Maskenbit-Eingangs aufweist.
  • Bei einem weiteren Ausführungsbeispiel sieht die vorliegende Erfindung eine maskierte ALU-Zelle vor, die folgende Merkmale aufweist:
    • – einen Übertragsbiteingang;
    • – einen Maskenbiteingang;
    • – eine Steuerschaltung, die den Übertragsbiteingang und den Maskenbiteingang empfängt und ein maskiertes Übertragsbit ausgibt, wobei die Steuerschaltung zumindest einen Steuerzustand aufweist; und
    • – eine Basisschaltung, die einen ersten Eingang, einen zweiten Eingang und den maskierten Übertragseingang logisch verknüpft, um den ersten Eingang, den zweiten Eingang und das maskierte Übertragsbit logisch zu addieren, wenn sich die Steuerschaltung in einem ersten Steuerzustand befindet.
  • Bei noch einem anderen Ausführungsbeispiel sieht die vorliegende Erfindung eine maskierte ALU-Zelle vor, die folgende Merkmale aufweist:
    • – einen Übertragsbiteingang;
    • – einen Maskenbiteingang;
    • – eine Steuerschaltung, die den Übertragsbiteingang und den Maskenbiteingang empfängt und ein maskiertes Übertragsbit ausgibt, wobei die Steuerschaltung zumindest vier Steuerzustände aufweist; und
    • – eine Basisschaltung, die einen ersten Eingang, einen zweiten Eingang und das maskierte Übertragsbit logisch verknüpft, um: (a) den ersten Eingang, den zweiten Eingang und das maskierte Übertragsbit logisch zu addieren, wenn die Steuerschaltung sich in einem ersten Zustand der vier Steuerzustände befindet, (b) den ersten Eingang und den zweiten Eingang einer logischen XNOR-Verknüpfung zu unterziehen, wenn sich die Steuerschaltung in einem zweiten Zustand der vier Steuerzustände befindet; (c) den ersten Eingang und den zweiten Eingang einer logischen NAND-Verknüpfung zu unterziehen, wenn sich die Steuerschaltung in einem dritten Zustand der vier Steuerzustände befindet, und den ersten Eingang und den zweiten Eingang einer logischen NOR-Verknüpfung zu unterziehen, wenn sich die Steuerschaltung in einem vierten Zustand der vier Steuerzustände befindet.
  • Die vorliegende Erfindung sieht ferner ein Verfahren zum logischen Verknüpfen von zwei Eingängen bei einer maskierten ALU-Zelle vor, das folgende Schritte aufweist:
    • – Empfangen eines Übertragsbits von einer benachbarten vorgeschalteten ALU-Zelle;
    • – Maskieren des Übertragsbits durch ein Durchführen einer ausschließlichen ODER-Verknüpfung an dem Übertragsbit mit einem Maskenbit; und
    • – Steuern einer ALU-Zelle, um ein logisches Addieren von zwei Eingängen und dem maskierten Übertragsbit in der ALU-Zelle durchzuführen oder eine bitweise NAND- oder NOR-Verknüpfung an den zwei Eingängen durchzuführen.
  • Die vorliegende Erfindung sieht einen Spiegeladdierer, eine Steuerschaltungsanordnung und Verfahren vor, die besonders gut für eine Standardzellimplementierung geeignet sind. Die ALU-Zelle der vorliegenden Erfindung liefert nicht nur die Arithmetikfunktion einer (Ein-Bit-)Addition von zwei Binärzahlen (den zwei Operanden), sondern ist auch durch geeignete Steuersignale programmierbar, um an den zwei Operanden logische Operationen durchzuführen, nämlich bitweise XNOR← oder NAND- oder NOR-Operationen. Wenn man die Operanden oder das Ergebnis in geeigneter Weise invertiert, ist es dann möglich, irgendwelche möglichen bitweisen logischen Operationen sowie arithmetische Operationen zu implementieren. Zudem ist beabsichtigt, dass alle diese Operationen durchgeführt werden, derart, dass alle Daten (Operanden, Überträge Stellenübertragsnachläufe/Stellenübertragsvorläufe) und Ergebnisse) unter Verwendung zeitvariabler OTP-Masken XOR-maskiert werden.
  • Verglichen mit einer OTP-Implementierung unter Verwendung herkömmlicher Standardzellen bedeutet dies erheblich höhere Rechengeschwindigkeiten (um mehr als 100 %) und einen erheblich geringeren Energieaufwand.
  • 2 zeigt eine mögliche Implementierung eines Spiegeladdierers 20 in CMOS gemäß der vorliegenden Erfindung mit Transistoren TP1 bis TP12 und TN1 bis TN12. Gemäß einem Merkmal der vorliegenden Erfindung sind die Transistoren TN9 und TN12, anstatt mit dem Stellenübertragsnachlaufbit ci verbunden zu sein, wie bei dem Stand der Technik, mit einem Eingangssteuersignal xe1 verbunden; und sind die Transistoren TN12 und TP9 mit einem Eingangssteuersignal xe0 verbunden.
  • Daraus folgt, dass die Beziehung zwischen co*_n und a*, b* und ci* in 2 die gleiche wie diese zwischen co_n und a, b und ci in 1 ist: co*_n = a*·b* + b*·ci* + ci*·a* (6)und zweitens, dass die Gleichung für s*_n in 2 wie folgt lautet: s*_n = a*⊕b*⊕ci* (7)wenn xe1 = xe0 = ci*,
    beziehungsweise s*_n = co*_n = a*·b* + b*·ci* + ci*·a* (8)für xe1 = 1, xe0 = 0
  • Andere Werte für xe1 und xe0 werden bei diesem Ausführungsbeispiel nicht benötigt.
  • Bei der Definition y* = y⊕kp (9)(wobei kp das Maskenbit für eine Bitposition p bezeichnet) für maskierte Daten, folgt aus der Kovarianz der Volladdierergleichungen unter der Maskierungsoperation erstens, dass die in 2 spezifizierte Schaltung die Eigenschaften aufweist, die zum Berechnen (6) des maskierten Stellenübertragsvorlaufs co*_n aus den maskierten Eingängen a*, b* und ci* erforderlich sind.
  • Hinsichtlich des invertierten Summenbits s*_n, d. h. der Gleichungen (7) und (8) stellt (7) die herkömmliche (kovariable) Volladdierergleichung für das invertierte Summenbit dar, wenn ci* das Übertragsbit, das mit kp maskiert ist, einer Bitposition p-1 bezeichnet.
  • Falls jedoch vorgesehen ist, dass das Stellenübertragsnachlaufbit ci* für eine Bitposition p auf die Inverse zu dem Maskenbit kp (
    Figure 00090001
    ) gesetzt ist, folgt daraus, dass (7) die kp-maskierten XNOR-Operationen an a* und b* implementiert:
    Figure 00090002
    für ci* =
    Figure 00090003
    .
  • Alternativ zu Gleichung (7) oder zu den ADD- und XNOR-Operationen, die oben beschrieben sind, können durch (8) die Operationen NAND und NOR implementiert werden. Zusätzlich zu den Bedingungen xe1 = 1, xe0 = 0 für die Gültigkeit von (8) sollte dazu erneut vorgesehen sein, dass das Stellenübertragsnachlaufbit ci* für die Bitposition p gleich dem Maskenbit kp bzw. der Inversen
    Figure 00090004
    desselben ist. Falls dem so ist, folgt daraus, dass (8) die kp-maskierten NAND← und NOR-Operationen an a* bzw. b* implementiert:
    Figure 00090005
    für ci* = kp, beziehungsweise
    Figure 00090006
    für ci* =
    Figure 00090007
    .
  • 3 zeigt eine Steuerschaltung 30, durch die die Wertekombinationen für xe1, xe0 und ci*, die oben für die Implementierung der verschiedenen Operationen spezifiziert sind, als eine Funktion der Maskenbits kp (der Bitposition p, die der aktuell betrachteten ALU-Zelle zugeordnet ist) und kp-1 (der Bitposition p-1, deren Stellenübertragsvorlaufbit cop-1 das Stellenübertragsnachlaufbit der Bitposition p darstellt), des Stellenübertragsnachlaufbits ci und der Steuersignale n1 und n0 erzeugt werden können.
  • Die folgende Tabelle fasst die Erzeugung von xe1, xe0 und ci* zusammen:
    Figure 00100001
  • 4 zeigt die Erzeugung von
    Figure 00100002
    mittels eines Invertierers (INVC 40) sowie die Verbindung der Teilschaltungen 20, 30, die in 2 und 3 der maskierten Spiegel-ALU-Zelle der vorliegenden Erfindung gezeigt sind. Der Wert co*_n wird zu einem Invertierer 40 eingegeben, um das Übertragsbit für die nächste nachgeschaltete Zelle zu erzeugen, so dass co*p für die nächste Zelle zu ci' wird. s*_n kann einen Invertierer 50 durchlaufen, um s* zu bilden.
  • Alle Schaltungselemente, die in 4 oder den Teilfiguren derselben enthalten sind, können bei einer Erweiterung herkömmlicher Standardzellenbibliotheken physisch (in dem Layout) zu einer Einheit integriert werden. Zusammen mit der minimalen Anzahl von Transistoren und der geringen Anzahl und geringen elektrischen Kapazität der Schaltknoten ist dies der Grund für die hohe Rechengeschwindigkeit und den geringen Energieaufwand dieser Zelle.
  • 5 stellt eine vorteilhafte Implementierung der XNOR3-Schaltung, die in 3 symbolisch gezeigt ist, unter Verwendung des so genannten „Transmissionsgatter"-Entwurfsstils dar. Aus der „Maskiert-Spiegel-ALU"-Zelle gemäß der Erfindung, die in 2 bis 4 gezeigt ist, kann man leicht die Variante einer „Maskiert-Spiegel-ALU"-Zelle ohne Maskierung ableiten, d. h. für kp ∀ 0∀p. Die Steuerlogik, die verglichen mit 3 vereinfacht ist, ist in 6 gezeigt.

Claims (15)

  1. Zelle für eine Arithmetiklogikeinheit, die folgende Merkmale aufweist: einen ersten Eingang; einen zweiten Eingang; einen Übertragsbiteingang; einen ersten Steuereingang und einen zweiten Steuereingang; und eine Schaltung, die mit dem ersten Eingang, dem zweiten Eingang, dem Übertragsbiteingang, dem ersten Steuereingang und dem zweiten Steuereingang verbunden ist, wobei die Schaltung einen ersten Ausgang und einen zweiten Ausgang aufweist; wobei der zweite Ausgang einen ersten Wert als eine Funktion des ersten Eingangs und des zweiten Eingangs aufweist, wenn dem ersten Steuereingang und dem zweiten Steuereingang Werte gleich einem Wert an dem Übertragsbiteingang zugeführt werden, und einen zweiten Wert als eine Funktion des ersten Eingangs und des zweiten Eingangs aufweist, wenn die Werte an dem ersten Steuereingang und dem zweiten Steuereingang unabhängig von dem Wert an dem Stellenübertragsnachlaufeingang sind.
  2. Zelle gemäß Anspruch 1, bei der der erste Ausgang ein invertiertes Stellenübertragsvorlaufbit ist.
  3. Zelle gemäß Anspruch 1 oder 2, bei dem der erste Wert eine logische Addition des ersten Eingangs, des zweiten Eingangs und des Stellenübertragsnachlaufeingangs oder eine XNOR-Verknüpfung des ersten Eingangs und des zweiten Eingangs ist.
  4. Zelle gemäß einem der Ansprüche 1 bis 3, bei der der zweite Wert ein logischer NAND- oder NOR-Ausgang des ersten und des zweiten Eingangs ist.
  5. Zelle gemäß einem der Ansprüche 1 bis 4, bei dem der erste Steuereingang eine logische Null ist und der zweite Steuereingang eine logische Eins ist.
  6. Zelle gemäß einem der Ansprüche 1 bis 5, bei der der Stellenübertragsnachlaufeingang ein maskierter Eingang ist.
  7. Zelle gemäß einem der Ansprüche 1 bis 6, die ferner eine Steuerung zum Ändern von Werten des ersten und des zweiten Steuereingangs aufweist.
  8. Prozessor, der eine Mehrzahl von Zellen gemäß einem der Ansprüche 1 bis 7 aufweist.
  9. Steuerschaltungsanordnung für eine ALU-Zelle, die folgende Merkmale aufweist: einen Maskenbiteingang; einen Übertragsbiteingang; zwei Steuerbiteingänge; und eine Schaltung, die ein maskiertes Übertragsbit ausgibt und zwei Steuerausgänge aufweist.
  10. Steuerschaltungsanordnung gemäß Anspruch 9, die ferner einen zweiten Maskenbiteingang aufweist.
  11. Steuerschaltungsanordnung für eine ALU-Zelle, die folgende Merkmale aufweist: einen Aktuell-Maskenbit-Eingang; einen Vorhergehend-Maskenbit-Eingang, der das Maskenbit von einer unmittelbar vorgeschalteten ALU-Zelle eingibt; einen Übertragsbiteingang; und eine Schaltung, die ein maskiertes Übertragsbit ausgibt und zwei Steuerausgänge als eine Funktion des Aktuell-Maskenbit-Eingangs und des Vorhergehend-Maskenbit-Eingangs aufweist.
  12. Steuerschaltungsanordnung gemäß Anspruch 11, die ferner zwei Steuerbiteingänge aufweist.
  13. Maskierte ALU-Zelle, die folgende Merkmale aufweist: einen Übertragsbiteingang; einen Maskenbiteingang; eine Steuerschaltung, die den Übertragsbiteingang und den Maskenbiteingang empfängt und ein maskiertes Übertragsbit ausgibt, wobei die Steuerschaltung zumindest einen Steuerzustand aufweist; und eine Basisschaltung, die einen ersten Eingang, einen zweiten Eingang und den maskierten Übertragseingang logisch verknüpft, um den ersten Eingang, den zweiten Eingang und das maskierte Übertragsbit logisch zu addieren, wenn sich die Steuerschaltung in einem ersten Steuerzustand befindet.
  14. Maskierte ALU-Zelle gemäß Anspruch 13, bei der die Steuerschaltung vier Steuerzustände aufweist, derart, dass die Basisschaltung wirksam ist, um den ersten Eingang und den zweiten Eingang einer logischen XNOR-Verknüpfung zu unterziehen, wenn sich die Steuerschaltung in einem zweiten Steuerzustand befindet, den ersten Eingang und den zweiten Eingang einer logischen NAND-Verknüpfung zu unterziehen, wenn sich die Steuerschaltung in einem dritten Steuerzustand befindet, und den ersten Eingang und den zweiten Eingang einer logischen NOR-Verknüpfung zu unterziehen, wenn sich die Steuerschaltung in einem vierten Steuerzustand befindet.
  15. Verfahren zum logischen Verknüpfen von zwei Eingängen bei einer maskierten ALU-Zelle, das folgende Schritte aufweist: Empfangen eines Übertragsbits von einer benachbarten vorgeschalteten ALU-Zelle; Maskieren des Übertragsbits durch ein Durchführen einer ausschließlichen ODER-Verknüpfung an dem Übertragsbit mit einem Maskenbit; und Steuern einer ALU-Zelle, um ein logisches Addieren von zwei Eingängen und dem maskierten Übertragsbit in der ALU-Zelle durchzuführen oder eine bitweise NAND- oder NOR-Verknüpfung an den zwei Eingängen durchzuführen.
DE102007037363.7A 2006-08-09 2007-08-08 Standardzelle für Arithmetiklogikeinheit und Chipkartensteuerung Active DE102007037363B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/501,305 2006-08-09
US11/501,305 US7921148B2 (en) 2006-08-09 2006-08-09 Standard cell for arithmetic logic unit and chip card controller

Publications (2)

Publication Number Publication Date
DE102007037363A1 true DE102007037363A1 (de) 2008-02-14
DE102007037363B4 DE102007037363B4 (de) 2016-09-22

Family

ID=38922360

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102007037363.7A Active DE102007037363B4 (de) 2006-08-09 2007-08-08 Standardzelle für Arithmetiklogikeinheit und Chipkartensteuerung

Country Status (3)

Country Link
US (2) US7921148B2 (de)
KR (1) KR100977963B1 (de)
DE (1) DE102007037363B4 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100281092A1 (en) * 2006-08-09 2010-11-04 Thomas Kuenemund Standard cell for arithmetic logic unit and chip card controller
US7921148B2 (en) * 2006-08-09 2011-04-05 Infineon Technologies Ag Standard cell for arithmetic logic unit and chip card controller
DE102014001647A1 (de) * 2014-02-06 2015-08-06 Infineon Technologies Ag Operation basierend auf zwei Operanden
US10620915B2 (en) * 2018-08-24 2020-04-14 Mediatek Inc. Full adder circuits with reduced delay
FR3101980B1 (fr) 2019-10-11 2021-12-10 St Microelectronics Grenoble 2 Processeur
FR3101983B1 (fr) * 2019-10-11 2021-11-12 St Microelectronics Grenoble 2 Détermination d'un bit indicateur
FR3101982B1 (fr) * 2019-10-11 2024-03-08 St Microelectronics Grenoble 2 Détermination d'un bit indicateur

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1008033B (de) 1955-03-30 1957-05-09 Hans Diersch Dipl Ing Verbindung zwischen Vorderwagen und Grindel bei Gespannpfluegen
US4893267A (en) * 1988-11-01 1990-01-09 Motorola, Inc. Method and apparatus for a data processor to support multi-mode, multi-precision integer arithmetic
GB2273377A (en) * 1992-12-11 1994-06-15 Hughes Aircraft Co Multiple masks for array processors
FR2718866B1 (fr) * 1994-04-19 1996-05-15 Sgs Thomson Microelectronics Dispositif de calcul arithmétique et logique et procédé de commande.
US5764550A (en) 1996-07-22 1998-06-09 Sun Microsystems, Inc. Arithmetic logic unit with improved critical path performance
GB2317971B (en) * 1996-10-02 2000-12-06 Advanced Risc Mach Ltd Digital adder circuit
US6295606B1 (en) * 1999-07-26 2001-09-25 Motorola, Inc. Method and apparatus for preventing information leakage attacks on a microelectronic assembly
US7020673B2 (en) * 2001-01-19 2006-03-28 Sony Corporation Reconfigurable arithmetic device and arithmetic system including that arithmetic device and address generation device and interleave device applicable to arithmetic system
KR100465371B1 (ko) * 2001-01-26 2005-01-13 학교법인연세대학교 덧셈 및 반올림 연산을 동시에 수행하는 부동 소수점alu 연산 장치
DE10120524B4 (de) 2001-04-26 2015-08-20 Infineon Technologies Ag Vorrichtung zur Ermittlung des Stromes durch ein Leistungs-Halbleiterbauelement
DE10201449C1 (de) 2002-01-16 2003-08-14 Infineon Technologies Ag Rechenwerk, Verfahren zum Ausführen einer Operation mit einem verschlüsselten Operanden, Carry-Select-Addierer und Kryptographieprozessor
DE10201444A1 (de) * 2002-01-16 2003-07-31 Infineon Technologies Ag Rechenwerk und Verfahren zum Kombinieren eines ersten Operanden mit einem zweiten Operanden
US6476634B1 (en) * 2002-02-01 2002-11-05 Xilinx, Inc. ALU implementation in single PLD logic cell
US6973551B1 (en) * 2002-12-30 2005-12-06 Emc Corporation Data storage system having atomic memory operation
DE10306620B4 (de) 2003-02-18 2007-04-19 Infineon Technologies Ag Integrierte Testschaltung in einer integrierten Schaltung
US7921148B2 (en) * 2006-08-09 2011-04-05 Infineon Technologies Ag Standard cell for arithmetic logic unit and chip card controller

Also Published As

Publication number Publication date
US20080040414A1 (en) 2008-02-14
US7921148B2 (en) 2011-04-05
KR20080013816A (ko) 2008-02-13
KR100977963B1 (ko) 2010-08-24
US20080126456A1 (en) 2008-05-29
US8135767B2 (en) 2012-03-13
DE102007037363B4 (de) 2016-09-22

Similar Documents

Publication Publication Date Title
DE102007037363A1 (de) Standardzelle für Arithmetiklogikeinheit und Chipkartensteuerung
DE10105945B4 (de) Multiplizierer mit Linearsummierungsarray sowohl zur vorzeichenbehafteten als auch zur vorzeichenlosen Multiplikation
DE69832985T2 (de) Multiplizier-Akkumulatorschaltungen
DE69731700T2 (de) Arithmetischer Schaltkreis und arithmetisches Verfahren
DE102020113922A1 (de) Multipliziererschaltungsanordnung mit reduzierter latenz für sehr grosse zahlen
DE102005009170B4 (de) Logikschaltung und zugehöriges Verfahren
DE102006004557A1 (de) Kryptografische Logikschaltung und Kryptografieverfahren
DE3700991A1 (de) Digitaler uebertragsvorgriffsaddierer
DE69434806T2 (de) Verfahren, System und Vorrichtung zum automatischen Entwurf einer Multiplikatorschaltung und durch die Durchführung dieses Verfahrens entworfene Multiplikatorschaltung
DE112005001906B4 (de) Mehrbit-Addierer und Verfahren zum Propagieren, Generieren oder Killen von Carry-In-Bits entlang einer Carry-Kette
DE4101004C2 (de) Paralleler Multiplizierer mit Sprungfeld und modifiziertem Wallac-Baum
DE1549508A1 (de) Logistische Anordnung zum Durchfuehren von arithmetischen Rechenoperationen,die zu einem positiven oder negativen UEbertrag fuehren
EP0257362A1 (de) Addierer
EP0620519B1 (de) Vorrichtung zur Inferenzbildung und Defuzzifikation und ihre Verwendung in einem hochauflösenden Fuzzy-Logik-Coprozessor
EP0224656A2 (de) Mehrstelliger Carry-Ripple-Addierer in CMOS-Technik mit zwei Typen von Addiererzellen
DE10050589B4 (de) Vorrichtung und Verfahren zur Verwendung beim Durchführen einer Gleitkomma-Multiplizier-Akkumulier-Operation
DE102009035022B4 (de) Makrozelle zum Addieren
DE10217375B4 (de) Schaltungsanordnung und Verfahren zur Erzeugung eines Dual-Rail-Signals
DE102015107509A1 (de) Chip und Verfahren zum Betreiben einer Verarbeitungsschaltung
DE19711005C2 (de) Baumschaltung zur Addition von Teilprodukten im Booth-Algorithmus
DE60016527T2 (de) Ein Inkrementierer / Dekrementierer mit verringerter Ausgangsbelastungsarchitektur
EP0218071B1 (de) Addierzelle für Carry-Ripple-Addierer in CMOS-Technik
EP0193711B1 (de) Schaltungsanordnung zur Funktionsüberwachung eines arithmetische Operationen ausführenden Rechenwerkes anhand von Paritätsbits
EP0433315A1 (de) Schaltungsanordnung zur addition oder subtraktion von im bcd-code oder dual-code codierten operanden
EP0424410B1 (de) Multiplizierer

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R082 Change of representative

Representative=s name: VIERING, JENTSCHURA & PARTNER MBB PATENT- UND , DE

Representative=s name: VIERING, JENTSCHURA & PARTNER, DE

R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R082 Change of representative