DE4345029A1 - Schaltkreis für diskrete Kosinustransformation - Google Patents

Schaltkreis für diskrete Kosinustransformation

Info

Publication number
DE4345029A1
DE4345029A1 DE4345029A DE4345029A DE4345029A1 DE 4345029 A1 DE4345029 A1 DE 4345029A1 DE 4345029 A DE4345029 A DE 4345029A DE 4345029 A DE4345029 A DE 4345029A DE 4345029 A1 DE4345029 A1 DE 4345029A1
Authority
DE
Germany
Prior art keywords
discrete
cosine transform
circuit
input
rac
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
DE4345029A
Other languages
English (en)
Other versions
DE4345029C2 (de
Inventor
Ki Chul Kim
Byung Ki Min
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.)
Electronics and Telecommunications Research Institute ETRI
Original Assignee
Electronics and Telecommunications Research Institute ETRI
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 Electronics and Telecommunications Research Institute ETRI filed Critical Electronics and Telecommunications Research Institute ETRI
Publication of DE4345029A1 publication Critical patent/DE4345029A1/de
Application granted granted Critical
Publication of DE4345029C2 publication Critical patent/DE4345029C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Discrete Mathematics (AREA)
  • Complex Calculations (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

Die vorliegende Erfindung bezieht sich auf einen Schalt­ kreis für eine diskrete Vorwärts-/inverse Kosinustransforma­ tion (hiernach als DCT bezeichnet), die einen verteilten arithmetischen Prozeß verwendet.
Ein verteilter arithmetischer Prozeß wird hauptsächlich in Signalverarbeitungssystemen verwendet. Ein solcher ver­ teilter arithmetischer Prozeß ist in einem Artikel mit dem Titel "A New Hardware Realization of Digital Filters" in IEEE Transactions on Acoustic, Speech and Signal Processing, Band ASSP-22, Seiten 456-462, Dezember 1974 von A. Peled und B. Lin beschrieben. Hier wird angenommen, daß eine Variable X auf der Basis von Variablen Y0 . . . Y3 entsprechend der folgenden Gleichung (1) erhalten werden kann:
X = C0Y0+C1Y1+C2Y2+C3Y3 (1).
Es wird außerdem angenommen, daß jede Variable X und die Va­ riablen Y0 . . . Y3 wie folgt als ein n-Bit Zweierkompliment ausgedrückt werden können:
Y0 = -2n-1y0 n-1+2n-2y0 n-2+ . . . +2y0 1+y0 (2)
dann,
X = -2n-1y0 n-1C0+2n-2y0 n-2C0+ . . . +2y0 1C0+y0 0C0
    -2n-1y1 n-1C1+2n-2y1 n-2C1+ . . . +2y1 1C1+y1 0C1
    -2n-1y2 n-1C2+2n-2y2 n-2C2+ . . . +2y2 1C2+y2 0C2
    -2n-1y3 n-1C3+2n-2y3 n-2C3+ . . . +2y3 1C3+y3 0C3 (3)
  = y0 0C0+y1 0C1+y2 0C2+y3 0C3
    +2y0 1C0+2y1 1C1+2y1 0C2+2y3 1C3
    ·
    ·
    ·
    +2n-2y0 n-2C0+2n-2y1 n-2C1+2n-2y2 n-2C2+2n-2y3 n-2C3
    -2n-1y0 n-1C0-2n-1y1 n-1C1-2n-1y2 n-1C2-2n-1y3 n-1C3 (4).
In den obigen Gleichungen können die Werte Σk=0 32iyk 1Ck sofort aus der vorherigen Berechnung von Σk=0 3yk 1 Ck in allen möglichen Fällen von yk i und durch Speichern der berechneten Werte in einem Nurlesespeicher (hiernach als ROM bezeichnet) erhalten werden. Der gewünschte Wert X kann schließlich durch kontinuierliche Addition der Teilsummen erhalten wer­ den.
Fig. 6 zeigt ein Beispiel von Schaltkreisen, die den oben erwähnten, verteilten arithmetischen Prozeß durchfüh­ ren. Der Schaltkreis der Fig. 6 umfaßt einen ROM 10 und einen Akkumulator 20 in Kaskade und wird als RAC bezeichnet.
Dieses RAC ist ein Basiselement bei der Durchführung des verteilten arithmetischen Prozesses. Der Akkumulator 20 ist mit einem Addierer 20a und einem Parallelregister 20b verse­ hen.
Eindimensionale Vorwärts- und inverse DCTs mit N Eingän­ gen können jeweils durch die folgenden Gleichungen (5) und (6) definiert werden:
where,
n,k = 0,1, . . . , N-1
e0 = 1/√
e1, . . . , eN-1 = 1
Die DCT wurde zuerst auf der Basis eines verteilten arithmetischen Prozesses von M-T Sun von Bellcore implemen­ tiert. M-T Sun implementierte eine 16-Punkt-DCT auf der Ba­ sis des verteilten arithmetischen Prozesses. Fig. 7 zeigt einen herkömmlichen 16-Punkt-DCT-Schaltkreis, der basierend auf dem verteilten arithmetischen Prozeß von M-T Sun imple­ mentiert wurde (siehe M-T Sun, T-C Chen und A.M. Cottieb, "VLSI Implementation of a 16 × 16 Discrete Cosine Trans­ form", IEEE Transactions on Circuits and Systems, Band 36, Nr. 4, Seiten 610-617, April 1989, und M-L Lios und M-T Sun, "Two-dimensional Discrete Cosine Transform Processor", US- Patent Nr. 4 791 598).
In Fig. 7 ist jedes der RACs 1-16 ein RAC-Modul, das mit einem ROM und einem Akkumulator versehen ist. Die RACs sind Basiselemente des DCT-Schaltkreises, der den verteilten arithmetischen Prozeß verwendet, und erfordern eine große Anzahl von Schaltkreiskomponenten. Aus diesem Grund kann bei der Implementation des DCT-Schaltkreises unter Verwendung des verteilten arithmetischen Prozesses die Anzahl der Kom­ ponenten und die Komplexität durch Verringerung der Anzahl der RACs und der Größe der ROMs darin verringert werden.
Der DCT-Schaltkreis der Fig. 7 wird bevorzugt zum Erhal­ ten der Vorwärts-DCT, kann aber nicht die inverse DCT durch­ führen, da die Inhalte der ROMs in RACs in den Vorwärts- und inversen DCTs aufgrund verschiedener Algorithmen verschieden sind. Aber der DCT-Schaltkreis der Fig. 7 kann für die Im­ plementierung der inversen DCT modifiziert werden. Um sowohl die Vorwärts- als auch die inverse DCT zu implementieren, müssen in dem Aufbau der Fig. 7 weitere 8 RAC-Module vorge­ sehen sein. Es müssen nämlich 24 RAC-Module verwendet wer­ den, um sowohl die Vorwärts- als auch die inverse DCT zu im­ plementieren. Entsprechend dem Stand der Technik ist die An­ zahl der allgemein notwendigen RAC-Module das Anderthalbfa­ che der Anzahl der RAC-Module für nur die Vorwärts-DTC oder für nur die inverse DTC.
In dem Fall, in dem der DCT-Schaltkreis der Fig. 7 als Echtzeit-8-Punkt-DCT-Schaltkreis verwendet werden soll, der das Ergebnis für jeden Block ergibt, müssen 12 RAC-Module verwendet werden, um sowohl die Vorwärts- als auch die in­ verse DCT unter der Annahme zu implementieren, daß Eingabe-, Ausgabe- und interne Werte 16 Bit lang sind. Da nämlich in dem DCT-Schaltkreis 8 Datentransferpfade vorhanden sind, er­ fordert jeder von ihnen 2 RACs, um zwei Bits pro Takt zu verarbeiten. In diesem Fall sind 8 der 12 RACs zum Durchfüh­ ren der Vorwärts-DCT und die übrigen RACs zum Durchführen der inversen DCT erforderlich.
Jedoch besitzt der oben erwähnte, herkömmliche DCT- Schaltkreis insofern einen Nachteil, als die Anzahl der Kom­ ponenten entsprechend einer Funktionserweiterung beträcht­ lich zunimmt und der Aufbau sehr komplex wird.
Daher wurde die vorliegende Erfindung im Hinblick auf die obige Problematik durchgeführt, und es ist eine Aufgabe der vorliegenden Erfindung, einen Schaltkreis für eine dis­ krete Kosinustransformation für eine Echtzeitumwandlung von Signalen aus dem Raumbereich, z. B. Videosignalen, in Signale des Frequenzbereichs unter Verwendung eines verteilten arithmetischen Prozesses zur Verfügung zu stellen, bei dem die Anzahl der RACs und die Größe der ROMs darin verglichen mit dem Schaltkreis nach dem Stand der Technik beträchtlich reduziert wird, was zu einer Vereinfachung der Konstruktion und einer Reduktion der Kosten führt.
Diese und weitere Aufgaben werden durch den in den bei­ gefügten Patentansprüchen definierten Schaltkreis gelöst.
Insbesondere können die obige und weitere Aufgaben durch einen Schaltkreis für eine diskrete Kosinustransformation gelöst werden, der einen Umordnungsschaltkreis mit n (n ist eine ganze Zahl) Umordnungsstufen umfaßt, wobei die n Umord­ nungsstufen der Reihe nach 2n, 2n-1, . . . , 21 Ein­ gabe/Ausgabestufen auf solche Weise besitzen, daß eine erste der n Umordnungsstufen 2n Eingabe/Ausgabestufen besitzt und daß eine n-te der n Umordnungsstufen 21 Ein­ gabe/Ausgabestufen besitzt, wobei die n-te Umordnungsstufe erste und zweite RACs zum Durchführen einer diskreten Kosi­ nustransformation unter Verwendung eines verteilten arithme­ tischen Prozesses umfaßt, wobei das erste RAC 2n-2 Ein­ gabe/Ausgabestufen und das zweite RAC 2n-1 Ein­ gabe/Ausgabestufen besitzt, wobei die Verbesserung umfaßt: eine Pfadschaltvorrichtung, die mit den Eingangsstufen des Umordnungsschaltkreises verbunden ist, um einen Übertra­ gungspfad für Ausgangsinformation von den Ausgangsstufen des Umordnungsschaltkreises je nachdem, ob die durchzuführende diskrete Kosinustransformation eine diskrete Vorwärts-Kosi­ nustransformation oder eine diskrete, inverse Kosinustrans­ formation ist, zu ändern; eine erste Auswahlvorrichtung, die mit den Eingangsstufen des ersten RAC verbunden ist, um In­ formation je nachdem, ob die durchzuführende diskrete Kosi­ nustransformation eine diskrete Vorwärts-Kosinustransforma­ tion oder eine diskrete, inverse Kosinustransformation ist, auszuwählen und die ausgewählte Information an das erste RAC anzulegen; eine zweite Auswahlvorrichtung, die mit den Ein­ gangsstufen des zweiten RAC verbunden ist, um Information je nachdem, ob die durchzuführende diskrete Kosinustransforma­ tion eine diskrete Vorwärts-Kosinustransformation oder eine diskrete, inverse Kosinustransformation ist, auszuwählen und die ausgewählte Information an das zweite RAC anzulegen.
Die obige und weitere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden besser verstanden aus der nachfolgenden, detaillierten Beschreibung in Verbindung mit den beigefügten Zeichnungen.
Fig. 1 ist ein Blockdiagramm eines Ausführungsbeispiels eines 8-Punkt-Vorwärts-DCT-Schaltkreises nach der vorliegen­ den Erfindung.
Fig. 2 ist ein Blockdiagramm eines Ausführungsbeispiels eines inversen 8-Punkt-DCT-Schaltkreises nach der vorliegen­ den Erfindung.
Fig. 3 ist ein detailliertes Blockdiagramm eines 2-Ein­ gangs-RAC in den Fig. 1 und 2.
Fig. 4 ist ein detailliertes Blockdiagramm eines 4-Ein­ gangs-RAC in den Fig. 1 und 2.
Fig. 5 ist ein Blockdiagramm eines Ausführungsbeispiels eines 8-Punkt-Vorwärts/inversen-DCT-Schaltkreises nach der vorliegenden Erfindung.
Fig. 6 ist ein Blockdiagramm eines RAC.
Fig. 7 ist ein Blockdiagramm eines herkömmlichen 16- Punkt-DCT-Schaltkreises, der basierend auf einem verteilten arithmetischen Prozeß von M-T Sun implementiert ist.
Entsprechend dem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung wird nun eine Beschreibung eines Schaltkreises für eine Echtzeit-Vorwärts/inverse-8-Punkt-DCT gegeben, die für jeden Takt Ergebnisse auf der Basis von Eingängen und Ausgängen ergibt, die durch 16-Bit-Zweierkom­ plemente ausgedrückt werden können.
Eine Vorwärts-DCT mit 8 Eingängen kann durch die folgen­ den beiden Gleichungen ausgedrückt werden:
wobei R = π/16.
Die obige Gleichung (7) kann in die folgende Gleichung (9) transformiert werden:
Die Vorwärts-DCT kann durch die folgenden drei Gleichun­ gen ausgedrückt werden:
In Fig. 1 ist ein Blockdiagramm eines Ausführungsbei­ spiels eines 8-Punkt-Vorwärts-DCT-Schaltkreises nach der vorliegenden Erfindung gezeigt. Die obigen Gleichungen (10), (11) und (12) können durch den Vorwärts-DCT-Schaltkreis der Fig. 1 implementiert werden. Jede der Eingaben X und der Ausgaben Y des Vorwärts-DCT-Schaltkreises der Fig. 1 kann durch 16-Bit im Zweierkomplement ausgedrückt werden.
In Fig. 1 erhält jeder der Eingänge des Vorwärts-DCT- Schaltkreises 2-Bit-Information. Der Vorwärts-DCT-Schalt­ kreis umfaßt, wie gezeigt, drei Stufen. Die drei Stufen um­ fassen eine Mehrzahl von 2-Bit-Addierern U1 und eine Mehr­ zahl von Subtrahierern U2. Jeder der Addierer U1 addiert zwei 2-Bit-Eingaben und ergibt eine 2-Bit-Ausgabe. Jeder der Subtrahierer U1 subtrahiert zwei 2-Bit-Eingaben vonein­ ander und ergibt eine 2-Bit-Ausgabe. Die Addierer U1 und Subtrahierer U2, die in den ersten bis dritten Stufen ver­ teilt sind, sind geeignet, Additionen und Subtraktionen hin­ sichtlich der Eingaben auf den rechten Seiten der obigen Gleichungen (10), (11) und (12) durchzuführen.
Wie in den ersten bis dritten Stufen in Fig. 3 gezeigt, ist jeder der Eingänge mit einem entsprechenden der Addierer U1 und einem entsprechenden der Subtrahierer U2 verbunden. Diese Art von Schaltkreis wird Umordnungsschaltkreis ge­ nannt. Der Umordnungsschaltkreis der ersten Stufe besitzt 8 Eingänge und 8 Ausgänge. Der Umordnungsschaltkreis der zwei­ ten Stufe besitzt 4 Eingänge und 4 Ausgänge. Der Umordnungs­ schaltkreis der zweiten Stufe besitzt 2 Eingänge und 2 Aus­ gänge.
Ein Multiplizierer U3 in der dritten Stufe führt eine cos4R-Multikation in der obigen Gleichung (10) durch. Der Multiplizierer U3 kann in der Ausführung des Schaltkreises durch Multiplikation oder Division aller Eingänge und Aus­ gänge mit 1/√2 weggelassen werden. Daher wird der Multipli­ zierer bei einer tatsächlichen Ausführung des DCT-Schalt­ kreises kaum verwendet.
Das Bezugszeichen U4 bezeichnet ein RAC, der die beiden 2-Bit-Eingaben erhält und zwei 2-Bit-Ausgaben erzeugt. Das RAC U4 führt eine Matrixmultiplikation in der obigen Glei­ chung (11) durch.
Das Bezugszeichen U5 bezeichnet ein RAC, das vier 2-Bit- Eingaben erhält und vier 2-Bit-Ausgaben erzeugt. Das RAC U5 führt eine Matrixmultiplikation in der obigen Gleichung (12) durch. Die RACs U4 und U5 werden hiernach als 2RAC bezie­ hungsweise als 4RAC bezeichnet.
In Fig. 3 ist ein detailliertes Blockdiagramm des 2RAC U4 gezeigt. Wie in dieser Zeichnung gezeigt, umfaßt das 2RAC U4 eine Mehrzahl von ROMs U6. Jeder der ROMs U6 besitzt zwei Eingangsadressen, in denen jeweils 16-Bit-Daten gespeichert sind. Die Inhalte der ROMs U6 werden entsprechend den Matri­ zen der obigen Gleichung (11) bestimmt.
Außerdem umfaßt das 2RAC U4 einen Parallel-Addie­ rer/Subtrahierer U7 mit zwei Eingängen. Der Parallel-Addie­ rer/Subtrahierer U7 arbeitet üblicherweise als Addierer, bei jedem 8-ten Takt aber als Subtrahierer.
Das 2RAC U4 umfaßt außerdem einen Addierer U8, ein Par­ allelregister U9 und einen Parallel/Seriell-Wandler U10. Der Parallel/Seriell-Wandler U10 dient zum Umwandeln von Paral­ leleingaben in serielle 2-Bit-Eingaben.
In Fig. 4 ist ein detailliertes Blockdiagramm des 4RAC U5 gezeigt. Der Aufbau und die Arbeitsweise des 4RAC U5 sind im wesentlichen dieselben wie die des 2RAC U4 mit der Aus­ nahme, daß die Anzahl der Eingänge und Ausgänge von der in dem 2RAC U4 verschieden ist. Auf ähnliche Weise werden die Inhalte der ROMs U6 in dem 4RAC U5 entsprechend den Matrizen der obigen Gleichungen (11) bestimmt.
Eine inverse DCT mit 8 Eingaben kann durch die folgenden beiden Gleichungen ausgedrückt werden:
wobei R = π/16.
Die obige Gleichung (13) kann in die folgende Gleichung (15) transformiert werden:
Die inverse DCT kann durch die folgenden drei Gleichun­ gen ausgedrückt werden:
In Fig. 2 ist ein Blockdiagramm eines Ausführungsbei­ spiels eines inversen 8-Punkt-DCT-Schaltkreises entsprechend der vorliegenden Erfindung gezeigt. Die obigen Gleichungen (16), (17) und (18) können durch den inversen DCT-Schalt­ kreis der Fig. 2 implementiert werden. Auf die gleiche Weise wie in dem Vorwärts-DCT-Schaltkreis der Fig. 1 kann jede der Eingaben X und der Ausgaben Y des inversen DCT-Schaltkreises der Fig. 2 durch eine 16-Bit-Zahl im Zweierkomplement ausge­ drückt werden. Außerdem erhält jeder der Eingänge des inver­ sen DCT-Schaltkreises 2-Bit-Information.
Ähnlich dem Vorwärts-DCT-Schaltkreis der Fig. 1 umfaßt der inverse DCT-Schaltkreis drei Stufen. Die Komponenten U1-U5 in dem inversen DCT-Schaltkreis der Fig. 2 besitzen den­ selben Aufbau und dieselbe Arbeitsweise wie diejenigen in dem Vorwärts-DCT-Schaltkreis der Fig. 1. Hier werden die In­ halte der RAMs des RAC U4 entsprechend den Matrizen der obi­ gen Gleichung (17) bestimmt, und die Inhalte der ROMs des RAC US werden entsprechend den Matrizen der obigen Gleichung (18) bestimmt.
Die Multiplikationsmatrizen der obigen Gleichungen (16), (17) und (18) sind dieselben wie diejenigen der vorhergehen­ den Gleichungen (10), (11) und (12). Dies bedeutet, daß die Inhalte der ROMs in den Vorwärts- und inversen DCT-Schalt­ kreises der Fig. 1 und 2 dieselben sind zusätzlich zum selben Aufbau und zur selben Arbeitsweise der Komponenten U1-U5. In diesem Zusammenhang kann ein DCT-Prozessor imple­ mentiert sein, um sowohl die Vorwärts- als auch die inverse DCT auszuführen. Dies wird ermöglicht, indem Multiplexer an den Eingängen und Ausgängen der ersten bis dritten Stufen in Fig. 1 zur Verfügung gestellt werden.
In Fig. 5 ist ein Blockdiagramm eines Ausführungsbei­ spiels eines 8-Punkt-Vorwärts/inversen-DCT-Schaltkreises entsprechen der vorliegenden Erfindung gezeigt. Entsprechend dem bevorzugten Ausführungsbeispiel der vorliegenden Erfin­ dung können sowohl die Vorwärts- als auch die inverse DCT durch das Vorhandensein von Multiplexern bei dem Vorwärts- DCT der Fig. 1 durchgeführt werden. Auch können sowohl die Vorwärts- als auch die inverse DCT durch das Vorhandensein von Multiplexern bei der inversen DCT der Fig. 2 durchge­ führt werden. Die Komponenten U1-U5 in dem Vorwärts-/inversen DCT-Schaltkreis in Fig. 5 besitzen denselben Auf­ bau und dieselbe Arbeitsweise wie diejenigen in den Vor­ wärts- und inversen DCT-Schaltkreisen in den Fig. 1 und 2. Außerdem sind die Inhalte der ROMs in den Komponenten U4 und U5 dieselben wie in den Fig. 1 und 2.
Wie in Fig. 5 gezeigt, umfaßt der Vorwärts-/inverse DCT- Schaltkreis eine Mehrzahl von Multiplexern U11, von denen jeder zwei Eingänge erhält und einen Ausgang zur Verfügung stellt. Jeder der Multiplexer U11 dient dazu, in der Vor­ wärts-DCT-Ausführung den anderen Eingang als seinen Ausgang zur Verfügung zu stellen, während in der inversen DCT-Aus­ führung der untere Eingang als Ausgang zur Verfügung ge­ stellt wird.
Der Signalfluß in Fig. 5 ist folgender:
1. Vorwärts-DCT-Implementation
a) Die erste Stufe erhält Videosignale x0-x7 und er­ zeugt Ausgaben S1OUT0-S1OUT7.
  • b) Die zweite Stufe erhält die Ausgaben S1OUT0-S1OUT3 von der ersten Stufe und erzeugt Ausgaben S2OUT0-S2OUT3.
  • c) Die dritte Stufe erhält die Ausgaben S2OUT0-S2OUT3 von der zweiten Stufe und erzeugt die Ausgaben S3OUT0-S3OUT3. Außerdem erhält die dritte Stufe die Ausgaben S1OUT4-S1OUT7 von der ersten Stufe und erzeugt die Ausgaben S3OUT4-S3OUT7. Die Ausgaben S3OUT0-S3OUT7 von der dritten Stufe sind Frequenzsignale y0-y7, die die Ausgänge des Vor­ wärts-DCT-Schaltkreises sind.
2. Inverse DCT-Implementierung
  • a) Die dritte Stufe erhält die Frequenzsignale y0-y7 und erzeugt die Ausgaben S3OUT0-S3OUT7.
  • b) Die zweite Stufe erhält die Ausgaben S3OUTO-S3OUT3 von der dritten Stufe und erzeugt die Ausgaben S2OUT0-S2OUT3.
  • c) Die erste Stufe erhält die Ausgaben S2OUT0-S2OUT3 von der zweiten Stufe und erzeugt die Ausgaben S1OUT0-S2OUT3. Außerdem erhält die erste Stufe die Ausgaben S3OUT4-S3OUT7 von der dritten Stufe und erzeugt die Ausgaben S1OUT4-S1OUT7. Die Ausgaben S1OUT0-S1OUT7 von der ersten Stufe sind die Videosignale x0-x7, die die Ausgänge des in­ versen DCT-Schaltkreises sind.
Wie aus der obigen Beschreibung ersichtlich, kann der DCT-Schaltkreis erweiterbar auf alle Vorwärts- und inverse DCT mit 2n Eingängen angewandt werden. Außerdem kann bei der Implementierung der Vorwärts-/inversen DCT, der Vorwärts-DCT und der inversen DCT die Anzahl der RACs auf 2/3 oder weni­ ger verglichen mit dem herkömmlichen, verteilten arithmeti­ schen Prozeß, der nur eine Umordnungsstufe verwendet, ver­ ringert werden. Es werden nämlich bei der Implementierung der 8-Punkt-Echtzeit-Vorwärts/inversen-DCT entsprechend der vorliegenden Erfindung 6 RAC-Module verwendet, wohingegen im Stand der Technik 12 RAC-Module verwendet werden. Weiterhin kann bei der Implementierung der Vorwärts-/inversen DCT, der Vorwärts-DCT und der inversen DCT die Größe der ROMs in den RACs im Vergleich mit dem herkömmlichen, verteilten arithme­ tischen Prozeß, der nur eine Umordnungsstufe verwendet, re­ duziert werden. Bei der Implementierung der 8-Punkt-Echt­ zeit-Vorwärts/inversen-DCT entsprechend der vorliegenden Er­ findung erfordert jeder der vier ROMs zwei Eingangsadressen, wohingegen im Stand der Technik jeder der ROMs vier Ein­ gangsadressen erfordert.
Auch wenn die bevorzugten Ausführungsbeispiele der vor­ liegenden Erfindung zu illustrativen Zwecken offenbart wur­ den, wird der Fachmann erkennen, daß mannigfaltige Modifika­ tionen, Hinzufügungen und Ersetzungen möglich sind, ohne vom Umfang und Wesen der Erfindung, wie sie in den beigefügten Patentansprüchen definiert ist, abzuweichen.

Claims (5)

1. Schaltkreis für eine diskrete Kosinustransformation, der einen Umordnungsschaltkreis mit n (n ist eine ganze Zahl) Umordnungsstufen umfaßt, wobei die n Umordnungsstufen der Reihe nach 2n, 2n-1, . . . , 21 Eingabe/Ausgabestufen auf solche Weise besitzen, daß eine erste der n Umordnungsstufen 2n Eingabe/Ausgabestufen besitzt und daß eine n-te der n Um­ ordnungsstufen 2¹ Eingabe/Ausgabestufen besitzt, wobei die n-te Umordnungsstufe erste und zweite RACs (U4, U5) zum Durchführen einer diskreten Kosinustransformation unter Ver­ wendung eines verteilten arithmetischen Prozesses umfaßt, wobei das erste RAC (U4) 2n-2 Eingabe/Ausgabestufen und das zweite RAC (U5) 2n-1 Eingabe/Ausgabestufen besitzt, dadurch gekennzeichnet, daß der Schaltkreis umfaßt:
eine Pfadschaltvorrichtung (U11), die mit den Eingangs­ stufen des Umordnungsschaltkreises verbunden ist, um einen Übertragungspfad für Ausgangsinformation von den Ausgangs­ stufen des Umordnungsschaltkreises je nachdem, ob die durch­ zuführende diskrete Kosinustransformation eine diskrete Vor­ wärts-Kosinustransformation oder eine diskrete, inverse Ko­ sinustransformation ist, zu ändern;
eine erste Auswahlvorrichtung, die mit den Eingangsstu­ fen des ersten RAC verbunden ist, um Information je nachdem, ob die durchzuführende diskrete Kosinustransformation eine diskrete Vorwärts-Kosinustransformation oder eine diskrete, inverse Kosinustransformation ist, auszuwählen und die aus­ gewählte Information an das erste RAC anzulegen; und
eine zweite Auswahlvorrichtung, die mit den Eingangsstu­ fen des zweiten RAC verbunden ist, um Information je nach­ dem, ob die durchzuführende diskrete Kosinustransformation eine diskrete Vorwärts-Kosinustransformation oder eine dis­ krete, inverse Kosinustransformation ist, auszuwählen und die ausgewählte Information an das zweite RAC anzulegen.
2. Schaltkreis für eine diskrete Kosinustransformation, nach Anspruch 1, dadurch gekennzeichnet, daß die Pfadschalt­ vorrichtung umfaßt:
eine Mehrzahl von 2-zu-1-Multiplexern (U11), wobei die Anzahl der 2-zu-1-Multiplexer dieselbe ist wie die der Ein­ gangsstufen des Umordnungsschaltkreises, wobei jeder der 2- zu-1-Multiplexer zwei Eingänge und einen Ausgang besitzt, der mit einen entsprechenden der Eingangsstufen des Umord­ nungsschaltkreises verbunden ist, wobei einer der Eingänge jedes der 2-zu-1-Multiplexer mit einer entsprechenden, vor­ hergehenden Ausgangsstufe des Umordnungsschaltkreises ver­ bunden ist, wobei der andere Eingang mit einem entsprechen­ den folgenden, Ausgangsstufe des Umordnungsschaltkreises verbunden ist.
3. Schaltkreis für eine diskrete Kosinustransformation, nach Anspruch 1, dadurch gekennzeichnet, daß die erste Aus­ wahlvorrichtung umfaßt:
2n-1 2-zu-1-Multiplexer, wobei jeder der 2-zu-1-Multi­ plexer Ausgangsinformation von einer entsprechenden vorher­ gehenden Stufe des Umordnungsschaltkreises auswählt, wenn die durchzuführende diskrete Kosinustransformation die dis­ krete Vorwärts-Kosinustransformation ist, inverse Ein­ gangsinformation auswählt, wenn die durchzuführende diskrete Kosinustransformation die diskrete inverse Kosinustransfor­ mation ist, und die ausgewählte Information an das erste RAC anlegt.
4. Schaltkreis für eine diskrete Kosinustransformation, nach Anspruch 1, dadurch gekennzeichnet, daß die zweite Aus­ wahlvorrichtung umfaßt:
2n-1 2-zu-1-Multiplexer, wobei jeder der 2-zu-1-Multi­ plexer Ausgangsinformation von einer entsprechenden vorher­ gehenden Stufe des Umordnungsschaltkreises auswählt, wenn die durchzuführende diskrete Kosinustransformation die dis­ krete Vorwärts-Kosinustransformation ist, inverse Ein­ gangsinformation auswählt, wenn die durchzuführende diskrete Kosinustransformation die diskrete inverse Kosinustransfor­ mation ist, und die ausgewählte Information an das zweite RAC anlegt.
5. Schaltkreis für eine diskrete Kosinustransformation, nach Anspruch 1, dadurch gekennzeichnet, daß 1/√ als eine Konstante zum Multiplizieren oder Dividieren von Eingangs-/ Ausgangsinformation in den Vorwärts- und inversen diskreten Kosinustransformationen verwendet wird.
DE4345029A 1992-12-30 1993-12-30 Schaltkreis für diskrete Kosinustransformation Expired - Fee Related DE4345029C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019920026634A KR950000386B1 (ko) 1992-12-30 1992-12-30 이산여현 변환회로

Publications (2)

Publication Number Publication Date
DE4345029A1 true DE4345029A1 (de) 1994-07-07
DE4345029C2 DE4345029C2 (de) 1999-10-28

Family

ID=19347781

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4345029A Expired - Fee Related DE4345029C2 (de) 1992-12-30 1993-12-30 Schaltkreis für diskrete Kosinustransformation

Country Status (4)

Country Link
US (1) US5357453A (de)
JP (1) JP2645213B2 (de)
KR (1) KR950000386B1 (de)
DE (1) DE4345029C2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0720103A1 (de) * 1994-12-29 1996-07-03 Daewoo Electronics Co., Ltd Vorrichtung für die zweidimensionale, inverse, diskrete Cosinus-Transformation

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2725544B2 (ja) * 1992-11-12 1998-03-11 日本電気株式会社 Dct及び逆dct演算装置並びにその演算方法
JP2997613B2 (ja) * 1993-10-26 2000-01-11 株式会社東芝 離散コサイン変換装置
TW284869B (de) 1994-05-27 1996-09-01 Hitachi Ltd
DE4442956C2 (de) * 1994-12-02 2001-04-26 Sican Gmbh Schaltungsanordnung zur wahlweisen Berechnung sowohl einer DCT als auch einer IDCT
US5831881A (en) * 1994-12-02 1998-11-03 Sican Gmbh Method and circuit for forward/inverse discrete cosine transform (DCT/IDCT)
US5623423A (en) * 1994-12-12 1997-04-22 Univ. Of Texas Apparatus and method for video decoding
US5801979A (en) * 1995-10-20 1998-09-01 Matsushita Electric Corporation Of America Carry logic that produces a carry value from NLSBs for a ROM accumulator in an inverse discrete cosine transform processor
US5805482A (en) * 1995-10-20 1998-09-08 Matsushita Electric Corporation Of America Inverse discrete cosine transform processor having optimum input structure
US5867601A (en) * 1995-10-20 1999-02-02 Matsushita Electric Corporation Of America Inverse discrete cosine transform processor using parallel processing
US5999958A (en) * 1996-04-24 1999-12-07 National Science Council Device for computing discrete cosine transform and inverse discrete cosine transform
JP3547567B2 (ja) * 1996-08-08 2004-07-28 シャープ株式会社 離散コサイン変換器
JP3586427B2 (ja) * 1998-12-14 2004-11-10 松下電器産業株式会社 Dct演算装置
KR100465156B1 (ko) * 2001-08-31 2005-01-13 (주)씨앤에스 테크놀로지 분산산술처리방식의 dct/idct 연산기에 있어서연산오차 및 연산시간 감소방법
KR100481067B1 (ko) * 2001-09-28 2005-04-07 브이케이 주식회사 분산 산술 처리장치 및 그를 이용한 이차원 이산여현변환 처리장치
US20040001106A1 (en) * 2002-06-26 2004-01-01 John Deutscher System and process for creating an interactive presentation employing multi-media components

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4791598A (en) * 1987-03-24 1988-12-13 Bell Communications Research, Inc. Two-dimensional discrete cosine transform processor

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4829465A (en) * 1986-06-19 1989-05-09 American Telephone And Telegraph Company, At&T Bell Laboratories High speed cosine transform
US4760543A (en) * 1986-11-10 1988-07-26 American Telephone And Telegraph Company, At&T Bell Laboratories Orthogonal transform processor
US5268853A (en) * 1989-12-01 1993-12-07 Ricoh Company, Ltd. Orthogonal transformation processor for compressing information
JP2646778B2 (ja) * 1990-01-17 1997-08-27 日本電気株式会社 ディジタル信号処理装置
JP2866754B2 (ja) * 1991-03-27 1999-03-08 三菱電機株式会社 演算処理装置
US5285402A (en) * 1991-11-22 1994-02-08 Intel Corporation Multiplyless discrete cosine transform

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4791598A (en) * 1987-03-24 1988-12-13 Bell Communications Research, Inc. Two-dimensional discrete cosine transform processor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0720103A1 (de) * 1994-12-29 1996-07-03 Daewoo Electronics Co., Ltd Vorrichtung für die zweidimensionale, inverse, diskrete Cosinus-Transformation

Also Published As

Publication number Publication date
KR940015787A (ko) 1994-07-21
US5357453A (en) 1994-10-18
JP2645213B2 (ja) 1997-08-25
JPH06243161A (ja) 1994-09-02
KR950000386B1 (ko) 1995-01-16
DE4345029C2 (de) 1999-10-28

Similar Documents

Publication Publication Date Title
DE4345029C2 (de) Schaltkreis für diskrete Kosinustransformation
DE3789116T2 (de) Prozessor zur zweidimensionalen diskreten cosinustransformation.
DE69230897T2 (de) Diskreter/invers-diskreter Cosinus-Transformationsprozessor und Datenverarbeitungsverfahren
DE69435034T2 (de) Verfahren ind vorrichtung zur durchfuehrung einer schnellen hadamard transform
DE69407588T2 (de) Programmierbare digitale Verzögerungsschaltungseinheit
DE69031674T2 (de) Verfahren und Schaltungsanordnung zur zweidimensionalen diskreten Transformation
DE3586201T2 (de) Digitaler datenprozessor fuer matrix-vektor-multiplikation.
DE3750017T2 (de) Prozessor für orthogonale Transformation.
DE3854818T2 (de) Transformationsverarbeitungsschaltung
DE3917059A1 (de) Cordic-anordnung zum multiplizieren von komplexen zahlen
DE68927611T2 (de) Digitales neuronales Netwerk
DE69329962T2 (de) System und Verfahren für die diskrete Cosinus-Transformation und für die inverse diskrete Cosinus-Transformation mit einfacher Struktur und mit hoher Betriebsgeschwindigkeit
DE3700323C2 (de)
DE69229840T2 (de) Ein-Chip-Digitalprozessor und Verfahren zu seinem Betrieb
DE4403917A1 (de) Vorrichtung zum Berechnen einer Besetzungszählung
DE69425565T2 (de) Verfahren und vorrichtung in einem transponierten digitalen fir-filter zur multiplikation eines binären eingangssignals mit filterkoeffizienten und verfahren zum entwurf eines digitalen transponierten filters
DE4036455C1 (de)
DE69715309T2 (de) Arithmetische Schaltung für die Berechnung der Quadratwurzel einer Summe von Quadraten
DE19718224A1 (de) Digitaler Neuroprozessor
DE10357661A1 (de) Modularer Montgomery-Multiplizierer und zugehöriges Multiplikationsverfahren
DE69228150T2 (de) Neuronal Prozessorgerät
DE60316342T2 (de) Multiplizierer mit nachschlagetabellen
DE2746355A1 (de) Einrichtung und verfahren zur wahlweisen multiplikation oder division zweier als binaerzahlen vorliegender operanden
DE10204647A1 (de) Matrizenrechner des Zeitteilungstyps
DE2848096A1 (de) Digitale addieranordnung

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee