DE10137457B4 - Procedure for polynomial calculation with 1-bit coefficients - Google Patents
Procedure for polynomial calculation with 1-bit coefficients Download PDFInfo
- Publication number
- DE10137457B4 DE10137457B4 DE2001137457 DE10137457A DE10137457B4 DE 10137457 B4 DE10137457 B4 DE 10137457B4 DE 2001137457 DE2001137457 DE 2001137457 DE 10137457 A DE10137457 A DE 10137457A DE 10137457 B4 DE10137457 B4 DE 10137457B4
- Authority
- DE
- Germany
- Prior art keywords
- input
- bit
- multiplier
- slice
- calculation
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Operations Research (AREA)
- Complex Calculations (AREA)
Abstract
Verfahren zur Polynomberechnung mit 1-Bit-Koffizienten, wobei die Berechnung in einem Multiplizier-Accumulator (MAC) eines Prozessors mit einem Rechenwerk, welches in Slices fraktioniert ist, mit darin implementierten Datenpfaden, in denen eine schaltbare 1-Bit-Schiebe-Funktion vorhanden ist, vorgenommen wird, dadurch ge kennzeichnet, dass die Polynomberechnung zusammen mit den zugehörigen 1-Bit Koeffizienten in sliceübergreifender Datenwortbreite parallel in den Datenpfaden erfolgt, wobei diese Berechnung innerhalb einer ersten Verarbeitungsstufe, in welcher eine 1-Bit-Verschiebung des gesamten Datenwortes in Richtung höherwertige Bits des Datenwortes ausgeführt wird, und einer zweiten Verarbeitungsstufe, welche eine bitweise Multiplikation des Datenwortes mit den vorliegenden 1-Bit-Koeffizienten und nachfolgend die Akkumulation des Produkts zum vorangespeicherten Wert im Accumulator umfasst, vorgenommen wird.Method for polynomial calculation with 1-bit coefficients, the calculation in a multiplier (MAC) of a processor with an arithmetic unit, which is fractionated into slices, with data paths implemented therein in which a switchable 1-bit shift function is present is carried out, characterized in that the polynomial calculation is carried out together with the associated 1-bit coefficients in cross-slice data word width in parallel in the data paths, this calculation within a first processing stage in which a 1-bit shift of the entire data word in the direction high-order bits of the data word is executed, and a second processing stage, which comprises a bit-wise multiplication of the data word with the present 1-bit coefficients and subsequently the accumulation of the product to the previously stored value in the accumulator.
Description
Die Erfindung betrifft ein Verfahren zur Polynomberechnung mit 1-Bit-Koffizienten, wobei die Berechnung in einem Multiziplier-Accumulator (MAC) eines Prozessors mit einem Rechenwerk, welches in Slices fraktioniert ist, mit darin implementierten Datenpfaden, in denen eine schaltbare 1-Bit-Schiebe-Funktion vorhanden ist, vorgenommen wird.The invention relates to a method for polynomial calculation with 1-bit coefficients, the calculation in a multiziplier accumulator (MAC) of a processor with an arithmetic unit which fractionates into slices is, with data paths implemented therein, in which a switchable 1-bit shift function is available.
Die Polynomberechnungen mit 1-Bit-Koffizienten werden vorzugsweise bei der Realisierung der Algorithmen von Finite-Impulse-Response-Filtern (FIR) angewandt.The polynomial calculations with 1-bit coefficients are preferred when implementing the algorithms of finite impulse response filters (FIR) applied.
Solch ein Filter-Algorithmus findet am häufigsten in Hardware-Encodern mit polynomer Division Verwendung. Dieser Anwendungsfall ist beim Stand der Technik am meisten bekannt. Der Algorithmus erzeugt einen systematischen Code durch Hinzufügen von n-k Paritäts-Prüfsymbolen zur Folge der Datensymbole.Such a filter algorithm finds most frequently in hardware encoders with polynomeric division use. This use case is with Most well known in the art. The algorithm creates one systematic code by adding n-k parity check symbols to the sequence of data symbols.
Die polynome Schreibweise des Code-Wortes
c(x) ist daher:
p(x) ist dadurch vorberechnet, indem ein generiertes Polynom g(x) das Code-Wort c(x) so dividiert, dass kein Rest bleibt (Rest-Klasse 0): p (x) is precalculated in that a generated polynomial g (x) divides the code word c (x) so that no remainder remains (remainder class 0):
Die Polynomberechnungen nach dem Stand der Technik erfolgen in den Prozessoren, welche dafür Datenpfade bestimmter Wortbreite bereithalten und die als Multiziplierer-Accumulator (MAC) in Slices konfiguriert sind. Es enthalten diese Slices mit den implementierten Datenpfaden logische Schieberegister (Shifter), Addierer und Multiplizierer, wobei letztere entweder in Integer Betriebsart oder einer Betriebsart mit abtrennbaren Übertrag arbeiten.The polynomial calculations after State of the art takes place in the processors, which are data paths have a certain word width and that as a multi-multiplier accumulator (MAC) are configured in slices. It contains these slices with the implemented data paths logical shift registers (shifters), Adders and multipliers, the latter either in integers Operating mode or an operating mode with detachable carry work.
Die Betriebsart mit abtrennbarem Übertrag wird beim Stand der Technik bei den in den Datenpfaden enthaltenen Multiplizierern bevorzugt angewendet, um die Berechnungsvorgänge zu beschleunigen und Einsparungen bei der Hardware zu erreichen. Dies bedeutet, dass bei der in den Datenpfaden eingestellten Betriebsart mit abtrennbarem Übertrag der Multiplizierer und Addierer im Rechenweg die anfallenden Übertragsinformationen der einzelnen Datenpfade nicht ausgewertet werden müssen.The operating mode with detachable carry is in the prior art for the multipliers contained in the data paths preferred applied to speed up the calculation processes and savings to achieve in hardware. This means that in the Data paths set operating mode with detachable transfer the multiplier and adder in the computing path the carry information of the individual data paths need not be evaluated.
Sollen zur schnellen Polynomberechnung Datenworte mit großen Bitbreiten verarbeitet werden, muss bei der Verwendung solcher Slices, in denen die Datenpfade in bestimmten festen Verarbeitungsbreiten konfiguriert sind, eine in sequenzielle Rechenschritte aufgeteilte Polynomberechnung vorgenommen werden. Dieses erweist sich als unbedingt notwendig, wenn die Größe der zu verarbeitenden Bitbreite des Datenwortes die Verarbeitungsbreite der Slices übersteigt.Data words for fast polynomial calculation with big Bit widths must be processed when using such slices, in which the data paths in certain fixed processing widths are configured, one divided into sequential arithmetic steps Polynomial calculation can be made. This proves to be absolutely necessary if the size of the too processing bit width of the data word the processing width of the Slices exceeds.
Diese parallel in unabhängigen Slices organisierte, jeweils innerhalb der Slices durchgeführte sequentielle Teilverarbeitung der Datenworte, verlangt vom Prozessor viel Steuerleistung beim Verwalten und Zuordnen der je Slice einzeln verarbeiteten und nachfolgend zusammengefügten Wortteile ab.These parallel in independent slices organized sequential, each within the slices Part processing of the data words requires a lot of control power from the processor when managing and assigning each slice processed and merged below Parts of the word.
Dies erweist sich als beim Stand der Technik vorherrschender grundsätzlicher Nachteil, welcher für die Ausführung der Polynomberechnung im Prozessor mittels Koeffizienten mit geringer Bit-Breite, z.B. 1-Bit-Koeffizienten, schwerwiegend ist. Daraus resultiert, dass die Verarbeitungsgeschwindigkeit eingeschränkt und begrenzt, der Aufwand an Hard- und Software groß ist.This turns out to be the case at the stand the fundamental disadvantage of technology, which is essential for the implementation of the Polynomial calculation in the processor using coefficients with lower Bit width, e.g. 1-bit coefficient is severe. This results, that the processing speed is limited and limited, the effort of hardware and software.
Zwar ist beim Stand der Technik durch
die US-Patentschrift
Auf diese Weise können rechen-intensive Hardwarebereiche auf Schaltkreisen innerhalb dieses Technologiebereiches relativ flächeneffizient realisiert werden.This allows computing-intensive hardware areas relative to circuits within this technology area area efficient will be realized.
Diese spezielle Lösung ist aber nicht verallgemeinerbar und sie ist den vielfach höheren Anforderungen an Bauelementedichte und Verarbeitungsgeschwindigkeit z.B. beim VLSI-Design von Prozessorschaltkreisen nicht gewachsen.However, this special solution cannot be generalized and it is the many times higher Requirements for component density and processing speed e.g. not growing in VLSI design of processor circuits.
Eine andere Lösung, wie sie in der Patentschrift WO 01/39378 A1 offenbart ist, kann unabhängig von der Schaltkreistechnologie Hard- und Softwareressourcen sparend realisiert werden.Another solution, as in the patent WO 01/39378 A1 is disclosed, can be independent of the circuit technology Hardware and software resources can be saved.
Diese in der Druckschrift offenbarte Schaltungsanordnung betrifft aber nur die Gattung der Decoder für block-basierende Fehler-Korrektur Codes und hier speziell der Reed-Solomon Fehler-Korrekturtechnik. Die dargelegte spezielle Anordnung ist für allgemeine Polynomberechnung nicht nutzbar.This disclosed in the publication Circuit arrangement only affects the type of decoder for block-based Error correction codes and here in particular the Reed-Solomon error correction technology. The particular arrangement presented is for general polynomial computation not usable.
Somit besteht nunmehr die Aufgabenstellung, bei der Polynomberechnung mittels 1-Bit-Koeffizienten von Datenworten mit großer Bit-Breite die Verarbeitungsgeschwindigkeit im Prozessor zu erhöhen und den dabei notwendigen Aufwand an Hard- und Software zu vermindern.So now there is the task at the polynomial calculation using 1-bit coefficients of data words with great Bit width to increase the processing speed in the processor and to reduce the necessary hardware and software effort.
Die verfahrensmäßige Lösung dieser Aufgabenstellung sieht vor, dass die Polynomberechnung zusammen mit den zugehörigen 1-Bit Koeffizienten in slice-übergreifender Datenwortbreite parallel in den Datenpfaden erfolgt. Diese Berechnung wird innerhalb einer ersten Verarbeitungsstufe, in welcher eine 1-Bit-Verschiebung des gesamten Datenwortes in Richtung höherwertige Bits des Datenwortes ausgeführt wird, eingeleitet. Dem schließt sich eine zweite Verarbeitungsstufe an, welche eine bitweise Multiplikation des Datenwortes mit dem vorliegenden 1-Bit-Koeffizienten und nachfolgend die Akkumulation des Produkts zum vorangespeicherten Wert im Accumulator umfasst.The procedural solution to this task provides that the polynomial calculation together with the associated 1-bit coefficients in parallel slice-wide data word width in the Data paths are done. This calculation is initiated within a first processing stage, in which a 1-bit shift of the entire data word in the direction of the most significant bits of the data word is carried out. This is followed by a second processing stage, which comprises a bit-wise multiplication of the data word with the present 1-bit coefficient and subsequently the accumulation of the product to the previously stored value in the accumulator.
Bei dieser Lösung wird deutlich, dass, abweichend vom Stand der Technik, die Datenworte durch slice-übergreifende und somit eine gleichzeitige, parallele Verarbeitung in den MAC repräsentierenden Datenpfaden vorgenommen wird.With this solution it becomes clear that, deviating from the prior art, the data words by slice-spanning and thus simultaneous, parallel processing in the MAC representing data paths is made.
Eine Erweiterung der verfahrensmäßigen Lösung der Aufgabenstellung sieht vor, dass die Datenpfade, welche jeweils zu einem Slice gehören, wahlweise in einer Betriebsart mit abtrennbarem Übertrag, ohne Auswertung von Überträgen des Multiplizierers/Addierers, oder in einer Integer-Betriebsart mit Übertragsauswertung des Multiplizierers/Addierers konfiguriert werden.An extension of the procedural solution to the Task provides that the data paths, which each belong to a slice, optionally in an operating mode with detachable carry, without evaluation of carry Multipliers / Adders, or in an integer mode with carry evaluation of the multiplier / adder can be configured.
Hierbei führt diese Erweiterung zu einer Programmierbarkeit der Datenpfade. Somit kann die Hardware optimal ausgenutzt und an die zu lösende Berechnungsaufgabe angepasst werden.This extension leads to a Programmability of the data paths. So the hardware can be optimal exploited and to solve the calculation task be adjusted.
Eine vorteilhafte verfahrensmäßige Lösung dieser Aufgabenstellung sieht vor, dass die in den Datenpfaden vorhandene schaltbare 1-Bit-Schiebe-Funktion durch zusätzliche slice übergreifende schaltbare Zwischenverbindungen erweitert werden. von den Ausgängen der Slices, die durch den zughörigen jeweils höherwertigsten Datenpfad realisiert werden, zu den Eingängen der jeweils vereinbarten niederwertigsten Datenpfade der zumindest mittelbar benachbarten höherwertigen Slices werden diese schaltbaren Zusatzverbindungen eingeführt.An advantageous procedural solution to this Task provides that the existing in the data paths Switchable 1-bit shift function thanks to additional switchable cross-slice Interconnections are expanded. from the exits of the Slices by the associated each of the highest order Data path to be realized, to the inputs of the respectively agreed least significant Data paths of the at least indirectly neighboring higher-order ones These switchable additional connections are introduced into slices.
Die Lösung der Aufgabestellung zielt darauf ab, dass die jeweils innerhalb der Slices vorhandene 1-Bit-Schiebefunktion zwischen benachbarten Datenpfaden durch zusätzliche schaltbare Verbindungen zwischen den Slices in Form von Multiplexern zur Gewährleistung der slice-übergreifenden 1-Bit-Schiebefunktion von den niederwertigen Slices zu den zumindest mittelbar benachbarten höherwertigen Slices erweitert wird.The solution to the task is aimed depends on the fact that the 1-bit shift function available within the slices between adjacent data paths through additional switchable connections between the slices in the form of multiplexers to ensure the cross-slice 1-bit shift function from the low-order slices to the at least indirectly neighboring ones high-order Slices is expanded.
Die Ausnutzung der innerhalb der Slices vorhandenen 1-Bit-Schiebefunktion trägt zu der angestrebten Hardware-Aufwandsminimierung und außerdem zur Zyklenminimierung in der Software bei.Exploitation of within the Slice's existing 1-bit shift function contributes the desired hardware effort minimization and also for Cycle minimization in the software.
Eine Variante der verfahrensmäßigen Lösung der
Aufgabenstellung sieht vor, dass die zweistufige Polynomberechnung
mit 1-Bit-Koffizienten
in den Datenpfaden eines Slices damit begonnen wird, dass die erste
Verarbeitungsstufe mit einer Grundstellung des ersten und zweiten
Multiplexers korrespondiert. Es wird hierbei jeweils ein erster Tor1MUX1-
und Tor1MUX2-Eingang des ersten sowie eines zweiten Multiplexers
durchgeschaltet (
Außerdem wird mit dem durchgeschalteten ersten Tor2MUX2-Eingang des zweiten Multiplexers am zweiten Eingang des Addieres eine arithmetische NULL angelegt. Es wird weiterhin realisiert, dass die zweiten Tor1MUX1- und Tor1MUX2-Eingänge sowie zweiten Tor2MUX1 und Tor2MUX2-Eingänge des ersten und zweiten Multiplexers antivalent gesperrt sind.In addition, with the first switched through Tor2MUX2 input of the second multiplexer at the second input of the Add an arithmetic zero. It will continue to be realized that the second Tor1MUX1 and Tor1MUX2 inputs as well as the second Tor2MUX1 and Tor2MUX2 inputs of the first and second multiplexers are blocked antivalent.
Der ersten Verarbeitungsstufe schließt sich eine zweite Verarbeitungsstufe an. Dabei korrespondieren die Einstellungen des jeweils ersten und zweiten Multiplexers mit einer Folgestellung. Die bitweise Multiplikation wird begonnen, indem einerseits der bereitgestellte 1-Bit-Koeffizient über den zweiten Tor1MUX1-Eingang an den ersten Eingang des Multiplizierers angelegt wird und anderseits das über den CBUS anliegende Datenwort-Bit über den zweiten Tor2MUX1-Eingang an den zweiten Eingang des Multiplizierers gelangt. Im Multiplizierer wird eine Multiplikation des 1-Bit Koeffizienten mit dem eingegebenen Datenwort-Bits ausgeführt.The first processing stage is followed by a second processing stage. The settings correspond of the first and second multiplexers with a subsequent position. The bit-wise multiplication is started by the one provided 1-bit coefficient over the second Tor1MUX1 input to the first input of the multiplier is created and on the other hand the data word bit applied via the CBUS via the second Tor2MUX1 input to the second input of the multiplier arrives. The multiplier is a multiplication of the 1-bit coefficient executed with the entered data word bits.
Nachfolgend wird das hierbei am Ausgang des Multiplizierers erzeugte Produkt durch den durchgeschalteten zweiten Tor2MUX2-Eingang des sich ebenfalls in Folgestellung befindlichen zweiten Multiplexers an den zweiten Eingang des zum MAC gehörenden Addierers angelegt. Weiterhin wird durch den in Folgestellung befindlichen zweiten Tor1MUX2-Eingang der am Ausgang des Accumulators bereitgestellte Rechenwert einer vorhergehenden Polynomberechnung an den ersten Eingang des Addierers angelegt und es wird nunmehr, nach der Addition im Addierer, über den Eingang des Accumulators der neue Rechenwert im Accumulator eingespeichert.This will be shown at the exit of the Multiplier generated product by the second connected Tor2MUX2 input of the second multiplexer also in the following position applied to the second input of the adder belonging to the MAC. Furthermore, the second Tor1MUX2 input is in the following position the arithmetic value provided at the output of the accumulator previous polynomial calculation to the first input of the adder created and it is now, after the addition in the adder, over the Input of the accumulator, the new calculated value is stored in the accumulator.
Außerdem wird realisiert, dass der jeweils erste Tor1MUX1- und Tor1MUX2-Eingang sowie der erste Tor2MUX1- und Tor2MUX2-Eingang in der Folgestellung antivalent zu den Schaltzuständen der Grundstellung gesperrt sind.It is also realized that the first Tor1MUX1 and Tor1MUX2 inputs and the first Tor2MUX1 and Tor2MUX2 input in the following position are equivalent to the switching states the basic position are locked.
Eine weitere verfahrensmäßige Lösung der Aufgabenstellung sieht vor, dass die Polynomberechnung nur mit einem Teil der verfügbaren Slices ausgeführt wird.Another procedural solution to the problem stipulates that the polynomial calculation only with a part of the available slices accomplished becomes.
Eine besondere weitere verfahrensmäßige Lösung der Aufgabenstellung sieht vor, dass die Polynomberechnung nur mit einem Teil der Verarbeitungsbreite des Slices mit einer bestimmten Anzahl von Datenpfaden ausgeführt wird.A special further procedural solution to the task provides that the polynomial calculation only with a part of the processing width of the slice with a certain number of data paths.
Eine Ausführung der weiteren verfahrensmäßigen Lösung der Aufgabenstellung sieht vor, dass eine Teil-Verarbeitungsbreiten-Logik bei der Polynomberechnung auftretende Überläufe über die vorgesehene Verarbeitungsbreite erkennt und die Weiterverarbeitung bei der Polynomberechnung in den zulässigen Slices in den vorgesehenen Verarbeitungs-Bereichen gewährleistet.An execution of the further procedural solution of the The task envisages a partial processing width logic Overflows occurring during the polynomial calculation over the intended processing range recognizes and further processing in the polynomial calculation in the permissible Guaranteed slices in the intended processing areas.
Die Erfindung soll nachfolgend anhand eines Ausführungsbeispieles näher erläutert werden. In den zugehörigen Zeichnungen zeigtThe invention is based on the following of an embodiment are explained in more detail. In the associated Shows drawings
In
Diese Slices sind wiederum in Datenpfaden, die
durch die dargestellten niederwertigsten Bitstreifen des Slice m
Die wahlweise Einstellung der Betriebsart mit abtrennbaren Übertrag oder der Integer-Betriebsart der Multiplizierer/Addierer wird durch die jeweilige Verarbeitung ihrer Übertragsausgänge zur Eingabe in die Übertragseingänge der Multiplizierer/Addierer des nächsthöherwertigen Datenpfades des Slices voreingestellt. Bei vorliegender Integer-Betriebsart sind die Übertragsausgangs-Multiplexer für die Übertragsausgangssignale durchgeschaltet.The optional setting of the operating mode with detachable carry or the integer mode of the multiplier / adder is by the respective processing of their carry outputs for Entry in the carry inputs of Multiplier / adder of the next higher order Data path of the slice preset. In the present integer mode the carry output multiplexers for the carry output signals connected through.
Bei vorgewählter Betriebsart mit abtrennbarem Übertrag sind anstatt der Durchschaltungen die Übertragsausgangs-Multiplexer für die Übertragsausgangssignale der Multiplizierer/Addierer gesperrt und es wird statt dessen jeweils ein Nullsignal durchgeschaltet, d.h. eine weitere Verarbeitung der Übertragsausgänge der Multiplizierer/Addierer wird vermieden.With pre-selected operating mode with detachable carry are the carry output multiplexers instead of the interconnections for the carry output signals the multiplier / adder is locked and it is instead instead switched through a zero signal, i.e. further processing of the carry outputs of the Multiplier / adder is avoided.
Bei der in
Die zu verarbeitenden einzelnen Bitstellen des
1-Bit-Koeffizienten und des Datenwortes werden an den Eingängen der
ersten Multiplexer der Bitstreifen bereitgestellt. So wird im Slice
m-1
Hierbei wird jeweils ein erster Tor1MUX1- und
Tor1MUX2-Eingang
Es wird weiterhin jeweils ein erster Tor2MUX1-
und Tor2MUX2-Eingang
Weiterhin wird im ersten Verarbeitungszustand
durch den hierfür
eingestellten Grundzustand des ersten und zweiten Multiplexer
In einer sich an die erste Verarbeitungsstufe anschließenden zweiten
Verarbeitungsstufe, welche mit einer zum Grundzustand antivalenten
Folgestellung des jeweils ersten und zweiten Multiplexers
Dies geschieht einerseits durch Eingabe
der bereitgestellten 215-Bit-Stelle des
1-Bit-Koeffizienten für
Slice m-1
Nachfolgend wird das am Ausgang des
Multiplizierers
Nach der Addition im Addierer
Weiterhin wird hierbei in dem ersten
und zweiten Multiplexer
In dem in
Die Belegungswerte der einzelnen
Bitstellen der jeweiligen 1-Bit-Koeffizienten
sind sliceweise in den zugehörigen
Koeffizienten-Registern gespeichert und liegen, zusammen mit den
vom CBUS
Die Verarbeitung mit der Polynomberechnung wird in den Slices so vorgenommen, dass sie in einer solchen Verarbeitungsbreite erfolgt, bei der nicht alle zu den Slices zugehörigen Datenpfade zur Berechnung herangezogen werden.Processing with the polynomial calculation is made in the slices so that they have such a processing range in which not all of the data paths associated with the slices are used for the calculation be used.
Auch werden nicht alle Slices bei
der Verarbeitung dadurch eingesetzt, in dem die Zwischenverbindung
- 11
- Multiplizierermultipliers
- 22
- Addiereradder
- 33
- AccumulatorAccumulator
- 44
- niederwertigster Bitstreifen des Slice mof lowest Bit strips of the slice m
- 55
- vereinbarter höchstwertiger Bitstreifen des Slice m-1agreed most significant Bit strips of the slice m-1
- 66
- erster Multiplexerfirst multiplexer
- 77
- zweiter Multiplexersecond multiplexer
- 88th
- erstes MUX1-Torfirst MUX1 Gate
- 99
- zweites MUx1-Torsecond Mux1 Gate
- 1010
- erster Tor1MUX1-Eingangfirst Tor1MUX1 input
- 1111
- erster Tor2MUX1-Eingangfirst Tor2MUX1 input
- 1212
- erster Tor1MUX2-Eingangfirst Tor1MUX2 input
- 1313
- erster Tor2MUX2-Eingangfirst Tor2MUX2 input
- 1414
- zweiter Tor1MUX1-Eingangsecond Tor1MUX1 input
- 1515
- zweiter Tor2MUX1-Eingangsecond Tor2MUX1 input
- 1616
- zweiter Tor1MUX2-Eingangsecond Tor1MUX2 input
- 1717
- zweiter Tor2MUX2-Eingangsecond Tor2MUX2 input
- 1818
- 20-Bit-Stelle des 1-Bit-Koeffizienten für Slice m2 0- bit position of the 1-bit coefficient for slice m
- 1919
- 215-Bit-Stelle des 1-Bit-Koeffizient für Slice m-12 15- bit digit of the 1-bit coefficient for slice m-1
- 2020
- Datenwert der 20-Bitstelle des Datenwortes für Slice mData value of the 2 0 bit position of the data word for slice m
- 2121
- Datenwert der 215-Bitstelle des Datenwortes für Slice m-1Data value of the 2 15 bit position of the data word for slice m-1
- 2222
- CBUSCBUS
- 2323
- Slice mSlice m
- 2424
- Slice m-1Slice m-1
- 2525
- Multiplizier-Übertragsausgangs-MUXMultiply the carry output MUX
- 2626
- Addierer-Übertragsausgangs-MUXAdder carry output MUX
- 2727
- Zwischenverbindungintercommunication
- 2828
- erstes MUX2-TORfirst MUX2-TOR
- 2929
- zweites MUX2-TORsecond MUX2-TOR
- 3030
- Slice kSlice k
- 3131
- Slice k-1Slice k-1
- 3232
- Slice 0Slice 0
- 3333
- Koeffizienten Register kcoefficients Register k
- 3434
- Koeffizienten Register k-1coefficients Register k-1
- 3535
- Koeffizienten Register 0coefficients Register 0
- 3636
- Teil-Verarbeitungsbreiten-LogikPart processing widths logic
- 3737
- Bus-SteuersignalBus control signal
Claims (7)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2001137457 DE10137457B4 (en) | 2001-08-02 | 2001-08-02 | Procedure for polynomial calculation with 1-bit coefficients |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2001137457 DE10137457B4 (en) | 2001-08-02 | 2001-08-02 | Procedure for polynomial calculation with 1-bit coefficients |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10137457A1 DE10137457A1 (en) | 2003-02-20 |
DE10137457B4 true DE10137457B4 (en) | 2004-09-23 |
Family
ID=7693839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2001137457 Expired - Fee Related DE10137457B4 (en) | 2001-08-02 | 2001-08-02 | Procedure for polynomial calculation with 1-bit coefficients |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE10137457B4 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6140839A (en) * | 1998-05-13 | 2000-10-31 | Kaviani; Alireza S. | Computational field programmable architecture |
WO2001039378A1 (en) * | 1999-11-24 | 2001-05-31 | Koninklijke Philips Electronics N.V. | Accelerated reed-solomon error correction |
-
2001
- 2001-08-02 DE DE2001137457 patent/DE10137457B4/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6140839A (en) * | 1998-05-13 | 2000-10-31 | Kaviani; Alireza S. | Computational field programmable architecture |
WO2001039378A1 (en) * | 1999-11-24 | 2001-05-31 | Koninklijke Philips Electronics N.V. | Accelerated reed-solomon error correction |
Also Published As
Publication number | Publication date |
---|---|
DE10137457A1 (en) | 2003-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60210494T2 (en) | HIGH-SPEED CALCULATION IN ARITHMETIC AND LOGIC CIRCUITS | |
DE102020120371A1 (en) | INTEGRATED CIRCUITS WITH MODULAR MULTIPLICATION CIRCUITS | |
DE102020113922A1 (en) | MULTIPLE CIRCUIT ARRANGEMENT WITH REDUCED LATENCY FOR VERY LARGE NUMBERS | |
DE102018108431A1 (en) | MIXING ACCURACY COMPROMISE METHOD CIRCUIT ARRANGEMENT IN SPECIALIZED PROCESSING BLOCKS | |
DE4403917C2 (en) | Device for calculating a bit occupation count | |
US5161119A (en) | Weighted-delay column adder and method of organizing same | |
DE10152213B4 (en) | Method for verifying digital arithmetic circuits by means of an equivalence comparison | |
DE19653565A1 (en) | Recursively divided adder with carry select | |
DE10137457B4 (en) | Procedure for polynomial calculation with 1-bit coefficients | |
EP0130397B1 (en) | Digital computing apparatus | |
DE10250555A1 (en) | Method for determining filter coefficients of a digital filter and digital filter | |
DE10106085B4 (en) | Method and arrangement for finite field multiplication | |
DE10117041C1 (en) | Carry-ripple adder has inputs for input bits of same value and carry-over inputs and sum output and carry-over outputs | |
DE10305849B3 (en) | Carry-ripple adder for addition of bits of similar value has 3 inputs for input bits to be summated, carry inputs for carry bits, output for calculated sum bit and carry outputs for carry bits | |
DE19644688B4 (en) | Circuit arrangement of a digital multiplier module for processing binary numbers and elements made of GF (2m) | |
EP0489952B1 (en) | Circuit device for digital bit-serial signal processing | |
DE10206830B4 (en) | Method and arrangement for merging data from parallel data paths | |
EP0752130B1 (en) | Multiplier with reduced run time | |
DE19541853C1 (en) | Multiple utilisation circuit for transversal digital filter | |
DE19935820B4 (en) | Systolic calculation element for multiplication-accumulation operations | |
EP0825523B1 (en) | Method and circuit for multiplying a multiplicand and a multiplier by the Booth-method in iterative steps | |
DE10130484B4 (en) | 7-to-3 bit carry-save adder and adder with it | |
DE69821144T2 (en) | AREA EFFICIENT MANUFACTURE OF COEFFICIENT ARCHITECTURE FOR BIT SERIAL FIR, IIR FILTERS AND COMBINATORIAL / SEQUENTIAL LOGICAL STRUCTURE WITHOUT LATENCY | |
DE102005033812B3 (en) | Parallel scalable and configurable adder for microelectronics calculates carry signals for each bit signal and for each bit location to produce composite signals | |
DE4223999C1 (en) | Digital multiplication circuit using canonically signed digit code - has multiplexer converted and added to two's-complement value to generate reduced partial products that are added |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: NXP SEMICONDUCTORS GERMANY GMBH, 22529 HAMBURG, DE |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: NXP B.V., EINDHOVEN, NL |
|
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |
Effective date: 20110301 |