DE3132225A1 - Einrichtung fuer eine schnelle hadamard-transformation - Google Patents

Einrichtung fuer eine schnelle hadamard-transformation

Info

Publication number
DE3132225A1
DE3132225A1 DE19813132225 DE3132225A DE3132225A1 DE 3132225 A1 DE3132225 A1 DE 3132225A1 DE 19813132225 DE19813132225 DE 19813132225 DE 3132225 A DE3132225 A DE 3132225A DE 3132225 A1 DE3132225 A1 DE 3132225A1
Authority
DE
Germany
Prior art keywords
address
bits
bit
transformation
random memory
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
DE19813132225
Other languages
English (en)
Other versions
DE3132225C2 (de
Inventor
Eiichi Neyagawa Osaka Tsuboka
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of DE3132225A1 publication Critical patent/DE3132225A1/de
Application granted granted Critical
Publication of DE3132225C2 publication Critical patent/DE3132225C2/de
Expired 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
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/145Square transforms, e.g. Hadamard, Walsh, Haar, Hough, Slant transforms

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Algebra (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Complex Calculations (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)

Description

- 3 Anwaltsakte; 31 739
Beschreibung
Die Erfindung betrifft eine Einrichtung für eine schnelle Hadamardtransformation nach dem Oberbegriff des Anspruchs 1 .
Zum Verarbeiten von analogen Signalen, wie Video- oder akustischen Signalen,sind sehr oft orthogonale Transformationen, wie eine schnelle Fourier-Transformation (FFT) oder eine schnelle Walsh Hadamardtransformation (FWHT) verwendet worden, und es sind auch bereits verschiedene Algorithmen zur Durchführung derartiger Transformationen erdacht und mit zufriedenstellenden Ergebnisssen vorgeführt worden. Jedoch vertragen sich in der Praxis eine hohe Rechengeschwindigkeit und eine hohe Wirtschaftlichkeit nicht mit-.
einander; d.h. das eine muß dem anderen geopfert werden.
Spracherkennungseinrichtungen, welche die Verarbeitung von analogen Signalen erfordern, weisen beispielsweise eine Kennmuster-Aufnahmestufe oder eine Stufe zum Analysieren 2^ eines Eingangs-Sprachsignals, einer Standardmuster-Speicherung oder einer Formenkla^se (class of templates), eine Anpassungsoder Vergleichsstufe und eine Entscheidungsstufe auf. Die Kennmuster-Aufnahmestufe oder die einen Eingangsklang analysierende Stufe setzt den Eingangsklang oder -ton in zeitserielle Kennvektoren um» Die Standardmuster-Speicherung weist zeitserielle Kennvektoren der einzuordnenden oder zu klassifizierenden Klänge oder Töne auf. Die Anpassungs- oder Vergleichsstufe vergleicht das zeitseriell umgesetzte oder umgeformte Eingangsklangmuster mit den Standardmustern, um eine Ähnlichkeit herauszufinden oder den Abstand dasifischen zu berechnen. Die Entscheidungsstufe nimmt die Form (template) auf, welche die höchste Jüinlich-
keit mit dem Eingangsklang oder den geringsten Abstand zu dem Eingangsklang hat, wodurch der Eingangsklang oder -ton eingestuft bzw. klassifiziert wird.
Um das Merkmal eines Eingangsklangs oder -tons zu analysieren oder aufzunehmen, sind in großem Umfang das sogenannte Filtergruppen- (filter-bank) Verfahren, die orthogonale Transformation, wie eine schnelle Fourier-Transformation (FFT), die lineare voraussagende Analysis oder eine autoregressive Analysis angewendet worden. Die Hadamard-Transformation kann für die Eingangsklang-Analyse angewendet werden, da sie keine hohe Rechengeschwindigkeit erfordert, und Einrichtungen:.zur Durchführung von schnellen Hadamard-Transformationen könnten ohne weiteres in Form von LSI-Schaltungen, d.h. Schaltungen mit einem hohen Integrationsgrad; geschaffen werden.
Ein Beispiel für eine schnelle Walsh Hadamardtransformation der Ordnung n= 2 , wobei m = 1, 2 , .... ist, läßt sich folgendermaßen ausdrücken:
m-k) , 2ffl-k+1Ki<2m-k+1l+2m"k-1
X, .(D-X, i(i+2mk), 2m
w Κ—Ι Κ—ι
i = 0, 1, 2, ...., n-1
k=1,2, . . . ., Ri
1=0, 1, 2, , 2k~1-1
' Eines der Merkmale oder Kennzeichen dieses Algorithmus beruht auf der Tatsache, daß Werte der k-ten Transformationen X,(i) und Xfc(j) aus dem vorhergehenden Transformationsschritt durch die nachstehend aufgeführten Formeln abge- leitet werden können:
Xk(i) = Xk-1 (i) + Xj^1(J) und
ι xk(j) = X^1(I) - xk_1(j)
Nachdem die Werte Xj, (i) und X^(J) erhalten worden sind, werden die Werte X, , (i) und X, ,(j) nicht mehr verwendet. sie können abgelegt werden. Folglich kann der Inhalt an der Speicherstelle, an welcher der Wert X, ,(i) oder X, _-(j) gespeichert worden ist, in den Wert X,(i) oder X (j) abge-
wandelt und modifiziert werden. Um einen anderen Weg einzuschlagen, kann eine Speicherstelle benutzt werden, um entweder Xk-1(i) oder Xj^1(J) oder Xk(i) oder Xk_.j (j) zu speichern. Hieraus folgt, daß es ausreicht, nur die Anzahl von η Speicherstellen zur Durchführung von Walsh Hadamard-Transformationen vorzusehen.
Ein weiterer Algorithmus mit einem ähnlichen Merkmal ist
Xk(i) =jxk_1 (I)+Xj^-1 (i+2k"1), 2kl<i<2kl+2k"1-i
ixk-1 (I)^-1 (1 + 21^"1), 2kl+2k"1<i<(l+1)2k-1 20
X = ο. 1, 2, . .., η-1
k = 1, 2, 3, . .., m
1 = 0, 1, 2, . 2m~k..1
Eine der Schwierigkeiten, auf welche man bei der Auslegung der Einrichtungen stößt, mit welchen Algorithmen wie die vorbeschriebenen durchgeführt werden können, ist die, daß zur Durchführung von Lese- und Schreibzyklen für die ent-
ori sprechenden Transformationsschritte ein wirksames und ge-
naues Adressierverfahren geschaffen werden muß.
Die Erfindung soll daher eine Einrichtung zur Durchführung einer schnellen Hadamard-Transformation schaffen, mit wel-OC eher die Walsh Hadamard-Transformation mit einer hohen Geschwindigkeit durchgeführt werden kann ,und die bei niedrigeren Kosten mit herkömmlichen Bauelementen ausgeführt wer
den kann. Ferner soll eine Einrichtung zur Durchführung einer schnellen Hadamard-Transformation geschaffen werden, mit welcher ein sehr wirksames und optimales Adressierverfahren vorgesehen werden kann, um umzuformende bzw. zu transformierende Eingangsdaten oder teilweise transformierte Daten zu übertragen und um die teilweise oder vollständig transformierten Daten in einen und aus einem Speicher mit direktem Zugriff bzw. einem Randomspeicher (RAM) zu lesen.
Ferner soll gemäß der Erfindung eine Einrichtung zur Durchführung einer schnellen Hadamard-Transformation geschaffen werden, in welcher eine Adresse in dem Randomspeicher (RAM) im einzelnen benannt bzw. spezifiziert werden kann, indem der Ausgang eines Zählers zum Spezifizieren einer Adresse in dem Randomspeicher (RAM) aufgrund einer regelmäßigen Änderung in einem Adressen-Bitmuster bei der Durchführung eines Hadamard-Transformationsalgorithmus abgewandelt bzw. modifiziert wird.
" ·
Gemäß der Erfindung ist dies bei einer Einrichtung für eine schnelle Hadamard-Transformation nach dem Oberbegriff des Anspruchs 1 durch die Merkmale im kennzeichnenden Teil des Anspruchs 1 erreicht. Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben.
Bei einer schnellen Hadamard-Transformation, bei welcher
das i-te Element X, (i) und das j-te Element X^(J) bei dem k-ten Transformationsschritt durch Lesen der Werte X^-1(i) und X^i(j) erhalten werden, welche die Ergebnisse des (k-1)-ten TransformationsSchritts sind und in einem Randomspeicher (RAM) gespeichert sind, wobei die folgenden Operationen durchgeführt werden:
Xk(i) = Xj^1U) + X]^1(Jl und
xk(j) = V
und wobei die Ergebnisse an die Speicherstellen in dem Randomspeicher (RAM) übertragen werden, an welchen die Werte X, , (i) bzw. Xj._-i(j) gespeichert worden sind, beruht die Erfindung auf der festgestellten Tatsache, daß ein Bit an einer eimreinei* angegebenen Bitstelle an genau einer Adresse in einem Randomspeicher (RAM) bei jedem Transformationsschritt in einem vorbestimmten logischen Zustand S (0 oder 1) oder S verbleibt, welcher der Addition von X, .. (i) + X, ..(j) oder der Subtraktion von Xk-1 (i) - X, _.(j) entspricht, während sich die Bitmuster an den übrigen Bitstellen ändern. Folglich ist eine erfindungsgemäße Einrichtung für eine schnelle Hadamardtransformation mit einer Adressiereinrichtung geschaffen, um die Adressen in einem Randomspeicher (RAM) genau zu benennen und festzulegen, aus welchen bzw. in welche die teilweise umgeformten bzw. transformierten Ergebnisse gelesen oder übertragen werden. Die Adressiereinrichtung weist einen Binärzähler mit mindestens (m-1) Bits und eine Einrichtung auf, welche, wenn die Ergebnisse des k-ten Transformationsschrittes die des vorhergehenden oder (k-1)-ten Schritts bilden, das Bit an der im einzelnen benannten Bitstelle einer Adresse in dem logischen Zustand S, wenn der Wert Xfc-1 (i) ausgelesen oder der Wert Xfc(i) eingelesen wird, oder in dem logischen Zustand S hält, wenn der Wert X, ..(j) ausgelesen oder der Wert . Xj-(J) eingeschrieben wird, während die Bits an den restlichen Bitstellen in einem Muster, das dem Bitmuster in dem Binärzähler entspricht, gehalten werden.
Nachfolgend wird die Erfindung anhand von bevorzugten Ausführungsformen unter Bezugnahme auf die anliegenden Zeichnungen isn einzelnen erläutert. Es zeigen:
Fig<.1 ein Algorithmus-Ablaufdiagramm zur Durchführung von schnellen Walsh-Hadamard-Transfor- ^5 mationen der Ordnung 1S1
Fig.2 eine Tabelle, anhand welcher ein Adressier-
verfahren erläutert wird, das bei dem in Fig.1 dargestellten Algorithmus.verwendet wird.
Fig.3A bis 3D und 4 bis 7 Ansichten zur Erläuterung einer Schaltung zur Durchführung des in Fig.2 dargestellten Adressierverfahrens,
Fig.8 ein Blockschaltbild einer ersten Ausführungsform gemäß der Erfindung.
Fig.9 ein Zeitdiagramm zur Erläuterung deren Arbeitsweise.
Fig.10 eine Adressenbestimmungsschaltung zur Durchführung von schnellen Hadamard-Transformationen der Ordnung 2m ;
Fig.11 das Ablaufdiagramm eines Algorithmus zur 20
Durchführung von Walsh-Hadamard-Transforma-
tionen der Ordnung 16, und
Fig.12 eine Darstellung zur Erläuterung der in Fig.1 und 11 verwendeten Schreibweisen.
Ein Algorithmus, welcher mittels einer Einrichtung für eine schnelle Hadamard-Transformation gemäß der Erfindung or. durchgeführt wird, wird zuerst beschrieben. In Fig.1 ist
ein Ablaufdiagramm eines ersten Algorithmus gemäß der Erfindung zur Durchführung der schnellen Walsh-Hadamard-Transformation der Ordnung 16 dargestellt. Mit Xn(O) bis XQ (15) sind zu transformierende Eingänge und mit X4(O) bis gg X.(15) sind transformierte Ausgänge bezeichnet. Die Werte X. und Xk-1 sind durch die in Fig.12 dargestellten Formeln in Beziehung zueinander gesetzt. Die Werte X, (i) und X, (j)
bezeichnen die Werte der i-ten bzw. j-ten Elemente in dem k-ten Transformationsschritt. Der k-te Transformationsschritt kann aus den Ergebnissen deöik-1) -ten Schritts durch die folgenden Formeln erhalten werden:
X, (i) = Χ,* (i) + Xv_.i (j) und xv'DJ = Xv-I*1' ~ xv_i*3'
JV JV I JV I
jQ Jedoch sind die Komponenten in den transformierten Ausgängen nicht in der Ordnung ihrer Reihenfolge (d.h. in der richtigen Reihenfolge)angeordnet. Folglich wird gemäß der Erfindung, um die Werte X4(O) bis X4(IS) in der richtigen Reihenfolge anzuordnen, das folgende Verfahren angewandt.
Zuerst wird i von X4(D in eine Binärzahl umgewandelt; die Bitfolge oder -reihenfolge wird dann umgekehrt, und das Ergebnis wird in einen Grey-Kode umgesetzt, wodurch ein neuer transformierter Wert erhalten werden kann. Beispielsweise soll in binärer Schreibweise i = 0 0 1 1 sein. Die Umkehrung der binären Folge ergibt dann 1100, was in dieser Reihenfolge im . Grey-Kode 8 ist.
Andererseits wird vor der Transformation die Folge von Eingängen Xq(O) bis Χ«(15) so umgruppiert, daß die Ausgänge X4(O) bis X4(15) in ihrer richtigen Reihenfolge erscheinen. Das heißt, ein Eingang wird wie folgt umgruppiert. Zuerst wird i von Xn(i) in binärer Schreibweise ausgedrückt, und die Bitfolge wird umgekehrt. Die umgekehrte Folge wird dann in einen Grey-Kode umgesetzt. Wenn das Ergebnis j ist, wird der Wert Xq(J) an der i-ten Stelle untergebracht. Folglich werden die Ausgänge X4(Oi bis X4(15) in ihrer richtigen Reihenfolge erhalten. Beispielsweise wird i = 0011, wenn XqO) ist. Ferner wird j dann 8, so daß Xn.O) durch Xn (8) ersetzt wird.
Transformationen können in einer Weise durchgeführt werden? welche im wesentlichen der vorbeschriebenen Art entspricht,
-ιοί wenn die allgemeine Ordnung η Das heißt,
= 2 (m = 1, 2,
) ist.
Xk(i) =
1 = ο, 1, 2, . . . , n-1
k = 1, 2, • · . , m
1 = 0, 1, 2, • . · , 2k~1-1
Wie aus Fig.1 zu ersehen ist, beruht eines der Merkmale dieses Algorithmus auf der Tatsache, daß die k-ten Transformationen X, (i) und X, (j) aus den (k-1)-ten Transformationen X, _, (i) und X, ..(j) abgeleitet werden können, und danach werden die Werte X,.. (i) und Xj-(j) nicht wieder verwendet, so daß X, (i) an einer Stelle gespeichert werden kann, an welcher X^-1(i) gespeichert worden ist. Das heißt, der Inhalt, d.h. X1 . (i) an einer im einzelnen benannten Speicherstelle kann abgewandelt werden in X, (i). Folglich reicht es aus, nur eine Anzahl von η Speicherstellen zur Durchführung von Walsh Hadamard-Transformationen der Ordnung η vorzusehen.
Ein zweiter Algorithmus mit Merkmalen, die den vorbeschriebenen ähnlich sind, ist in Fig.11 dargestellt. Das heißt,
Xk(i) =
iC~ I
(i+2
iC I
i = 0, 1, 2, , n-1
k=1,2, 3, .··, m
1 = 0, 1, 2, ..., 2m"k-1
Eine der Schwierigkeiten, auf die man bei Einrichtungen
- 11
-πι stößt, mit welchen derartige Algorithmen, wie sie vorstehend beschrieben sind, durchgeführt werden können, besteht darin ,wie umzuwandelnde bzw. zu transformierende Daten bei jedem Transformationsschritt durch eine genaue Benennung von Speicherstellen, d.h. der Adressen in einem Randomspeicher {RAM) in angemessener Weise zu speichern und auszulesen.
Eine Adressenmodifizierung bei der Durchführung des ersten Algorithmus, wie er in Fig.1 dargestellt ist, wird nunmehr anhand der Fig.2 beschrieben. Mit "a^a-a.aJ' ist in binärer Schreibweise eine Adresse in einem Randomspeicher (RAM) bezeichnet. Eine positive Adresse weist auf die Adresse von i hin, während eine negative Adresse auf die Adresse von j hinweist, wenn die Werte Xj,(i) und X, (j)ywie vorher beschrieben, durch die folgenden Formeln erhalten werden:
Xk(i) = Xj^1(D + Xfc-i^l und
Xk(j). = X1^1 (i) - Xj5-1 (j)
Die Adressen sind in der steigenden Reihenfolge von i und j angeordnet.
Bei einer Transformation von Χ^,-ι in X, sind die Bits a, . an den positiven Adressen immer "O'en"? während die Bits an den negativen Adressen immer "1'er" sind, wie durch mit gestrichelten Linien eingefaßte Blöcke in.Fig.2 dargestellt ist. Die restlichen drei Bits ändern sich in binärer Schreibweise von 000 in 111. Dasselbe gilt für die generelle Ordnung bzw» Reihenfolge η = 2m. In diesem Fall wird i durch a, „-ι^τ._2· · ° · · »aian ausgedrückt. Folglich sind bei Transformationen von X1 Λ in X1 die Bits a , immer
JfC=" I K Hl-K.
"0fen" an den positiven Adressen und 05I "er" an den negativen Adressen. Die verbleibenden (m-1) Bits ändern sich in binärer Schreibweise.
Der Grundgedanke bzw. das zugrundeliegende Prinzip bei der Adressenspezifikation oder -modifizierung gemäß der Erfindung wird nunmehr anhand der Fig.3 beschrieben, wenn die Ordnung η = 16 ist. Die Inhalte in entsprechenden Stufen eines Binärspeichers 1 sind Q9, Q1 bzw. Q . Q. stellt den Inhalt an einer 2 -ten Ziffernstelle dar. In den Fig.3A bis 3D sind die Adressenspezifikations- oder -modifizierungsschritte dargestellt, wenn X_ in X1, X1 in X-, X„ in X und X- in X. umgewandelt bzw. transformiert wird. Im
IQ Falle von positiven Adressen sind a^ in Fig.3A, a„ in Fig.3B, a1 in Fig.3C und a. in Fig.3D alle "O'en", aber im Falle negativer Adressen sind sie alle "1'er". Der Binärzähler 1 weist eine herkömmliche Ausführung auf und ist so ausgelegt und bemessen, daß der Ausgang entsprechend den vorstehend angeführten Formeln abgeleitet werden kann. Der Binärzähler 1 kann in einfacher Weise aus Verknüpfungs- oder Torschaltungen hergestellt werden, wie nachstehend im einzelnen beschrieben wird.
In Fig.4 sind dargestellt UND-Glieder 41, ODER-Glieder 42, Inverter 43, Ausgänge C0 bis C, von entsprechenden Stufen eines C-Registers 3, und Ausgänge RQ bis R- von entsprechenden Stufen eines R-Registers 2. In Fig.5 und 6 ist die Änderung des Inhaltes an entsprechenden Stufen dieser Register zu bestimmten Zeitpunkten dargestellt. Die Inhalte ändern sich von dem Ausgangs- oder Anfangsinhalt zum Zeitpunkt t0, wie dargestellt, an den Zeitpunkten t1 bis t_, wenn Taktimpulse an die Register angelegt werden. In Fig.7 ist die Wahrheits- oder Funktionstabelle der in Fig.4 dargestellten Schaltung wiedergegeben.
Wenn η = 2 ist, kann eine Schaltung verwendet werden, wie in Fig.10 dargestellt ist. In Abhängigkeit von η wird die Anzahl von Blöcken 44 ,die durch gestrichelte Linien eingerahmt sind, erhöht oder erniedrigt. Die C- und die R-Register haben (n-1) bzw. η Bits, und der Zähler 1 hat (n-1) Bits.
- 13 -
Eine Ausführungsform einer Einrichtung für eine schnelle Hadamardtransformation gemäß der Erfindung wird nunmehr anhand der Fig.8 beschrieben- Im allgemeinen führt die Einrichtung vier Schritteaus, d.h. den ersten Schritt (1), Einlesen von umzuwandelnden bzw. zu transformierenden Daten, den zweitenSchritt (2); Löschen der Register, Zähler, Flip-Flops usw.; den dritten Schritt (3), Durchführen von Hadamard-Transformationen, und den viertenSchritt (4) Auslesen transformierter Daten aus einem Randomspeicher (RAM) entsprechend einem extern erzeugten Steuersignal. Von diesen Schritten kann die in Fig.8 dargestellte Schaltung den Schritt (3) automatisch ausführen. In Fig.8 sind vorgesehen der Zähler 1 und R- und C-Register 2 und 3, die vorher bereits beschrieben sind, eine Adressenspezifizierüngsschaltung 4 der vorher anhand von Fig.4 oder 10 beschriebenen Art, eine Adressenwählschaltung 5, die nicht nur auf den Ausgang der Adressenspezifizierungsschaltung 4, sondern auch auf andere externe Signal anspricht, um eine Adresse auszuwählen, wie nachstehend noch im einzelnen beschrieben wird, und ein Randomspeicher (RAM) 6, um zu transformierende Daten einzulesen und die transformierte. Daten vorübergehend zu speichern. Entsprechend dem Einlese- oder Speicherbetrieb zum Einlesen von zu transformierender Daten und in Abhängigkeit von dem Auslese- oder Ausspeicherungsbetrieb zum Auslesen der transformierten Daten oder der Transformationsart t spezifiziert bzw. benennt der Ausgang von der Adressenwählschaltung 5 im einzelnen vorbestimmte Adressen in dem Randomspeicher (RAM). Eine Eingangsdaten-Wählschaltung 7 wird zwischen der ersten Betriebsart, um zu transformierende Daten an den Randomspeicher zu übertragen, und der zweiten Betriebsart, um transformierte Daten an den Randomspeicher zu übertragen, umgeschaltet. Ein erstes Verriegelungsglied 8 hält vorübergehend Xk-1(i)ι während ein zweites Verriegelungs-
glied 9 Xk_-j (j) hält. Entsprechend einem {+) Signal liest ein Addierer-Subtrahierer 10 die Inhalte aus den beiden Verriegelungsgliedern 8 und 9 aus und führt folgenden Re-
chenVorgang durch:
Xj^1U) +Xk_-,ij) oder X^1(I)- X^1(J)
Eine Lese-Schreibschaltung (R/W-Umschaltschaltung) 11 wählt ein extern angelegtes R/W'-oder R/W-Signal in Abhängigkeit von einer gewählten Betriebsart aus, wie nachstehend noch im einzelnen beschrieben wird. Das R/W-Signal wird während des Transformationsbetriebs automatisch erzeugt. Eine Chipfreigabe-Wähl- oder-Umschaltschaltung 12 wählt zwi-
IQ sehen einem CE'-Signal, welches als ein Chip-Freigabesignal an den Randomspeicher angelegt wird, wenn Daten in ihn eingelesen oder aus ihm ausgelesen werden, und einem CE-Signal, welches automatisch bei dem Transformationsbetrieb erzeugt wird, wie nachstehend im einzelnen beschrieben wird. Eine Adressenänderungsschaltung 13 ändert Adressen, die in dem Randomspeicher (RAM) genau zu benennen bzw. zu spezifizieren sind, so daß die Inhalte in dem Randomspeicher in.der Ordnung ihrer Reihenfolge (d.h., in der richtigen Reihenfolge) entsprechend den vorstehend angeführten Formeln nach der Durchführung von Transformationen ausgelesen werden können. Wenn Adressen in der richtigen Reihenfolge spezifiziert werden können, kann die Schaltung 13 entfallen. Eine Flip-Flop 14 erzeugt ein Gate-Signal ,das an ein UND-Glied 15 anzulegen ist. Während des Transformationsbetriebs werden Chip-Freigabesignale über das UND-Glied 15 und die CE-Wähl- oder -Umschaltschaltung 12 an den Randomspeicher (RAM) 6 angelegt. Ein Steuersignalgenerator 16 erzeugt verschiedene Steuersignale, um die in Fig.8 dargestellte Einrichtung zu steuern.
Als nächstes wird die Arbeitsweise der ersten Ausführungs- · form mit der vorstehend beschriebenen Ausführung erläutert.
(I) Betriebsart oder Zyklus zum Schreiben zu transformierender Daten in den Randomspeicher (RAM):
Das Schreibmodesignal liegt an dem Anschluß 17 an, so daß die Eingangsdaten-Wählschaltung 7 den Anschluß 21 wählt,
- 15 -
während die R/W-ümschaltschaltung 11 R/W1 wählt. Die CE-Umschaltschaltung 12 wählt CE' und die Adressenwählschaltung 5 wählt den Anschluß 18. Folglich werden die zu
transformierenden Daten an den Randomspeicher 6 übertragen. 5
(II) Transformationsbetrieb oder -zyklus: Das Transformationsbetriebssignal liegt am Anschluß 17an. Die Eingangsdaten-Wählschaltung 7 wählt dann den Anschluß oder die Dateneingabeleitung 22. Die R/W-ümschaltschaltung 11 wählt das Signal R/W und die CE-Umschaltschaltung 12 wählt das Signal CE. Die Adressenwählschaltung 5 erhält den Ausgang von der Adressenspezifizierungsschaltung 4. Entsprechend einem Löschsignaldas am Anschluß 19 anliegt,
werden der Zähler 1, die Register 2 und 3 und das Flip-15
Flop 14 gelöscht. Folglich werden Transformationen entsprechend Taktimpulsen CK und anderen Steuerimpulsen durchgeführt, wie in Fig.9 dargestellt ist. Jedesmal wenn der Inhalt in dem Zähler 1 um eins inkrementiert bzw. weitergesc.haltet wird, ändern die Register 2 und 3 ihre Zustände entsprechend einem Taktimpuls CK,- welcher über UND-Glieder 25 bzw. 26 entsprechend einem Trägersignal 27 von dem Zähler 1 durchgelassen wird.
Der Ausgang des UND-Gliedes 28, an welches das Trägersignal 27 von dem Zähler 1 und der Ausgang von der letzten Stufe des Registers 2 angelegt werden, wird an den D-Anschluß des Flip-Flops 14 angelegt. Bei dem ersten Halbzyklus des Taktimpulses werden X, _.j (i) und X^ _Ί (j) aus dem Randomspei-
QQ eher (RAM) 6 ausgelesen und bei dem zweiten Halbzyklus werden IL(I) und X1Jj), welche entsprechend dem Algorithmus abgeleitet werden, wie in Fig.12 dargestellt ist, an den Randomspeicher (RAM) 6 übertragen. Wenn in Fig=9 der Impuls R/W niedrig oder null wird, werden die Daten ausgelesen, und wenn der Impuls R/W hoch oder 1 wird? werden die Daten an den Randomspeicher (RAM) 6 übertragen. Wenn der Zähler 1 und die Register 2 und 3 jeweils in den gleichen Zustän-
den verbleiben, schaltet bei Auslesebetrieb das Signal (+-) die Adressen in dem Randomspeicher (RAM) 6, in welchem X, Λ (i) und X, -(j) gespeichert sind; dagegen schaltet es bei Schreibbetrieb die Adressen, an welche X, (i) und X^-(J) übertragen werden. Insbesondere wenn das Signal (+-) niedrig oder 0 wird, wird X, _.. (i) ausgelesen oder Χι_(ΐ) wird an eine Speicherstelle übertragen- Wenn dagegen das Signal {+-) hoch oder 1 wird, wird X^-1(j) ausgelesen oder X, «(j) wird an eine einzeln benannte Speicherstelle in dem Randomspeicher (RAM) 6 übertragen. In der Praxis wird der Auslese- oder Schreibbetrieb entsprechend dem Signal CE=1 durchgeführt.
Entsprechend dem Verriegelungssignal (+) wird Xr-1Ci) und entsprechend dem Verriegelungssignal (-) wird Xi0-1 (j) an die Verriegelungsschaltungen 8 bzw. 9 übertragen und in diesen gehalten. Wenn das Signal (+-) niedrig oder 0 wird, arbeitet der Addierer-Subtrahierer 10 als Addierer, und wenn das Signal (+-) hoch oder 1 wird, arbeitet er als Subtrahierer. Solange R/W 1 oder hoch ist und das Signal (+-) 0 oder niedrig ist, wird Xk(i) = X. .. (i)+X. .. (j) an die Speicherstelle übertragen, an welcher Xk-1(i) gespeichert worden ist. Wenn das Signal (+-) 1 oder hoch wird, wird Xt-(j) - X]C-I (i) ~ χν-ι ^ an ^ie Speicherstelle übertragen, an welcher Xfc_-j (J) gespeichert worden ist.
Wenn Transformationen in der vorbeschriebenen Weise weitergehen, wird der Inhalt in der letzten Stufe des R-Registers 2 "1", so daß der Ausgang des Flip-Flops 14 "0" wird. Folglich wird der CE-Impuls nicht von dem UND-Glied 15 erhalten, so daß der Betrieb bzw. die Operation des Randomspeichers (RAM) 6 beendet ist, bis der nächste Anfangslöschimpuls an dem Anschluß 19 anliegt.
(III) Betrieb zum Auslesen transformierter Daten aus dem
Randomspeicher (RAM) 6:
Das Auslesebetriebssignal liegt am Anschluß 17 an, so daß
die R/W-Umschaltschaltung 11 das Signal R/W« und die CE-Umschaltschaltung 12 das Signal CE1 auswählt. Die Adressenwählschaltung 5 erhält das Adressensignal, welches am Anschluß 18 anliegt, oder das Adressensignal, welches durch Modifizieren oder Ändern der Adresse erhalten wird, die auf der Leitung 18 über die Adressenänderungsschaltung.13 anliegt. Insbesondere wenn die Adressensignale, welche an dem Anschluß 18 anliegen, solche sind, daß der Inhalt in dem Randomspeicher (RAM) 6 in der richtigen Reihenfolge aus-
IQ gelesen werden kann, erhält die Adressenwählschaltung 5 die Adressensignale, welche am Anschluß 18 anliegen. Wenn jedoch die Adressensignale, die am Anschluß 18 anliegen, in binärer Schreibweise vorliegen, werden sie an die Adres~ senänderungsschaltung 13 übertragen, so daß sie geändert werden, wodurch die Daten in dem Randomspeicher 6 in der richtigen Reihenfolge ausgelesen werden können. Der Ausgang der Adressenänderungsschaltung 13 wird dann an die Adressenwählschaltung 5 angelegt. Folglich werden die transformierten Daten an eine Datenausgabeleitung 24 übertragen.
"
Bei einer Transformation entsprechend dem zweiten in Fig.11 dargestellten Algorithmus und bei der Ausführung von Befeh-
k—1 len, wie sie in Fig.12 dargestellt sind, ist die 2 -te Ziffer an der positiven Adresse immer eine logische "0", aber an der negativen Adresse ist sie eine logische "1". In diesem Fall sind die R- und C-Register 2 und 3 so ausgelegt und bemessen, daß ihre Zustände oder Inhalte sich in umgekehrter Reihenfolge bezüglich der ersten vorbeschriebenen Ausführungsform ändern. 30
Die 2 -te Ziffer in der ersten Ausführungsforra oder die
k-1
2 -te Ziffer in der zweiten Ausführungsform wird eine logische "0" beim Lesen von Xk_i(i) oder beim Schreiben von X,(i) , wird aber eine logische "0" beim Lesen von χ (j) oder beim Schreiben von Xk(j). Dies kann jedoch auch umgekehrt werden. Das heißt, sie wird eine logische "1" im Falle des Lesens von X. _, (i) oder des Schreibens von
- 18 -
X (i); sie kann aber eine logische "0" werden im Falle des Lesens von X^-1(J) oder des Schreibens von X. (j). Das wesentliche Merkmal der Erfindung bleibt jedoch unverändert, selbst wenn sich die Adressen in dem Randomspeicher (RAM) 6 ändern, in welchem diese Daten gespeichert sind.
Wenn somit bei der erfindungsgemäßen Einrichtung für eine schnelle Hadamardtransformation zu transformierende Eingangsdaten und das Signal zum Einleiten von Transformationen erhalten werden, können Hadamard-Transformationen mit hoher Geschwindigkeit durchgeführt werden. Außerdem kann die Einrichtung ohne weiteres mit herkömmlichen IC-Elementen ausgeführt und aufgebaut werden, so daß sie mit verhältnismäßig geringen Kosten hergestellt werden kann.
Ende der Beschreibung
Leerseite

Claims (3)

  1. Patentansprüche
    Einrichtung für eine schnelle Hadamardtransformation
    der Ordnung 2 , wobei m = 1, 2, .... ist, bei welcher xk(i) = X^-1 t±). + X^1(J) und Xk(J) = x k_-i (i) - xk-1(j)' wobei i und j = 0, 1, ...., 2^-1 sind, und X, (i) und Xk(j) die i-ten und j-ten Elemente in der k-ten Transformation sind, gekennzeichnet durch eine Adressiereinrichtung zum Lesen von transformierten Zwischenwerten in einen oder aus einem Randomspeicher mit
    (a) einem Binärzähler (1) mit mindestens (m-1) Bits und
    (b) einer Einrichtung, welche, wenn die Werte des k-ten Tran sf ormat ions Schrittes aus den Ergebnissen des (k-1)-ten Transformationsschrittes anhand der angeführten Formeln abgeleitet werden, ein Bit an einer genau benannten Bitstelle einer Adresse in dem Randomspeicher in dem logischen Zustand S (0 oder 1) beim Auslesen von X1 -(i) oder ^
    κ— ι
    beim Schreiben von x k(i) hält, welche aber ein Bit in dem
    VII/XX/Ha - 2 -
    £? (039) 98 82 72 Telegramme: . Bankkonten Hypo-Bank München 4410122850
    logischen Zustand S, der Negation des logischen Zustandes S/ im Falle des Auslesens von X^-1(j) oder des Schreibens von Xk(j) hält und welche die Bits an den verbleibenden Bitstellen in demselben Muster hält, wie das der Inhalte in dem Binärzähler (1).
  2. 2. Einrichtung nach Anspruch 1, gekennze. ichn e t durch eine Einrichtung, welche die Bits an den 2 -ten bis 2 -ten Bitstellen einer Adresse in dem Randomspeicher in einem eins-zu-eins-Verhältnis entsprechend den Bits an den 2m~k+1-ten bis 2m-ten Stellen in dem Binärzähler hält, und die Bits an den 2 -ten bis 2 -ten Bitstellen der Adresse in einem eins-zu-eins-Verhältnis entsprechend den Bits an den 2 -ten bis 2 -ten Bitstellen in dem Binärspeicher hält und ferner das Bit an der 2 -ten Bitstelle der Adresse in dem logischen Zustand S im Falle des Auslesens von X^-1(i) oder des Schreibens von X, (i) oder in dem logischen Zustand S im Falle des Auslesens von X^-1(J) oder des Schreibens von Xk(j) hält.
  3. 3. Einrichtung nach Anspruch 1, gekennzeichnet durch eine Einrichtung, welche die Bits an den
    0 k—2
    2 -ten bis 2 -ten Bitstellen einer Adresse in dem Randomspeicher in einem eins-zu-eins-Verhältnis entspre-
    0 k-2
    chend den Bits an den 2 -ten bis 2 -ten Bitstellen
    k des Binärspeichers hält, die Bits an der 2 -ten bis 2 -ten Bitstellen der Adresse in einem eins-zu-eins-
    k—1 Verhältnis entsprechend den Bits an den 2 -ten bis 2 -ten Bitstellen des Binärspeichers hält und das
    k-1
    Bit an der 2 -ten Bitstelle der Adresse in dem logischen Zustand S im Falle des Auslesens von Xk_-j (i) oder des Schreibens von X, (i) oder in dem logischen Zustand S im Falle des Auslesens von Xk_<(j) oder des Lesens von Xk(j) hält.
DE3132225A 1980-08-14 1981-08-14 Einrichtung für die Adressierung gespeicherter Ergebniswerte bei einer schnellen Hadamard-Transformation Expired DE3132225C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11104680A JPS5737925A (en) 1980-08-14 1980-08-14 High-speed hadamard converter

Publications (2)

Publication Number Publication Date
DE3132225A1 true DE3132225A1 (de) 1982-05-19
DE3132225C2 DE3132225C2 (de) 1983-08-18

Family

ID=14551030

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3132225A Expired DE3132225C2 (de) 1980-08-14 1981-08-14 Einrichtung für die Adressierung gespeicherter Ergebniswerte bei einer schnellen Hadamard-Transformation

Country Status (3)

Country Link
US (1) US4446530A (de)
JP (1) JPS5737925A (de)
DE (1) DE3132225C2 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0388043A1 (de) * 1989-02-28 1990-09-19 Canon Kabushiki Kaisha System zur Verarbeitung eines quantisierten Vektors
US9323654B2 (en) 2013-07-17 2016-04-26 Infineon Technologies Ag Memory access using address bit permutation

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0128298B1 (de) * 1983-04-11 1990-07-04 Nec Corporation Orthogonale Transformation und Gerät zu ihrer Durchführung
JPS6216639A (ja) * 1985-07-16 1987-01-24 Kokusai Denshin Denwa Co Ltd <Kdd> 秘話音声信号送出装置
US4959776A (en) * 1987-12-21 1990-09-25 Raytheon Company Method and apparatus for addressing a memory by array transformations
JP2666411B2 (ja) * 1988-10-04 1997-10-22 三菱電機株式会社 二次元離散データ直交変換用集積回路装置
US5333118A (en) * 1992-01-27 1994-07-26 Sony Electronics, Inc. Flexible computer controlled non-linear transform generator
US5561618A (en) * 1993-12-22 1996-10-01 Qualcomm Incorporated Method and apparatus for performing a fast Hadamard transform
US5530716A (en) * 1994-06-30 1996-06-25 Motorola, Inc. Method and apparatus for identifying a coded communication signal
US5784293A (en) * 1994-11-03 1998-07-21 Motorola, Inc. Apparatus and method for determining transmitted modulation symbols
FR2746243B1 (fr) * 1996-03-15 1998-06-05 Procede pour fournir une representation d'une scene optique par transformation de walsh-hadamard et capteur d'image mettant en oeuvre ce procede
US5856935A (en) * 1996-05-08 1999-01-05 Motorola, Inc. Fast hadamard transform within a code division, multiple access communication system
US5938787A (en) * 1997-03-27 1999-08-17 Ericsson Inc. Communications systems and methods employing code rate partitioning with nonorthogonal modulation
DE19901228A1 (de) * 1999-01-14 2000-07-27 Uwe Ras Verfahren und Gerät zur adaptiven Merkmalsänderung bei eindimensionalen Signalen
JP3716695B2 (ja) 1999-12-24 2005-11-16 日本電気株式会社 高速アダマール変換器
US6304196B1 (en) * 2000-10-19 2001-10-16 Integrated Device Technology, Inc. Disparity and transition density control system and method
US7003536B2 (en) * 2002-08-15 2006-02-21 Comsys Communications & Signal Processing Ltd. Reduced complexity fast hadamard transform
US7649994B1 (en) * 2002-11-01 2010-01-19 Nortel Networks Limited System and method for decoding CDMA quality channel
US6996163B2 (en) * 2003-03-27 2006-02-07 Arraycomm, Inc. Walsh-Hadamard decoder
US8345887B1 (en) * 2007-02-23 2013-01-01 Sony Computer Entertainment America Inc. Computationally efficient synthetic reverberation
US20080288568A1 (en) * 2007-05-14 2008-11-20 Hou Hsieh S Low power Fast Hadamard transform
KR20120106145A (ko) * 2011-03-17 2012-09-26 삼성전자주식회사 어드레스 변환 회로 및 이를 포함하는 반도체 메모리 장치
US20140064366A1 (en) * 2012-09-03 2014-03-06 Texas Instruments Incorporated Intra-Prediction Estimation Using Approximate Reconstructed Samples
US10841595B2 (en) * 2018-11-27 2020-11-17 Semiconductor Components Industries, Llc Methods and apparatus for transform coefficient encoding and decoding
US10904049B1 (en) 2019-07-11 2021-01-26 Stmicroelectronics (Research & Development) Limited Time domain discrete transform computation

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3792355A (en) * 1970-12-11 1974-02-12 Hitachi Ltd Orthogonal transformation circuit using hadamard matrices
US3795864A (en) * 1972-12-21 1974-03-05 Western Electric Co Methods and apparatus for generating walsh functions
US3956619A (en) * 1975-03-31 1976-05-11 General Electric Company Pipeline walsh-hadamard transformations

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
IEEE Transactions on Industrial Electronics and Control Instrumentation, Vol. IECI-25, Nr. 4, Nov. 1978, S. 322-326 *
Philips Technische Rundschau 38, Nr. 4/5, 1979, S. 124-137 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0388043A1 (de) * 1989-02-28 1990-09-19 Canon Kabushiki Kaisha System zur Verarbeitung eines quantisierten Vektors
US5751856A (en) * 1989-02-28 1998-05-12 Canon Kabushiki Kaisha System for processing a quantized vector using spatial frequency correlations
US9323654B2 (en) 2013-07-17 2016-04-26 Infineon Technologies Ag Memory access using address bit permutation

Also Published As

Publication number Publication date
JPS5737925A (en) 1982-03-02
DE3132225C2 (de) 1983-08-18
US4446530A (en) 1984-05-01
JPS6214133B2 (de) 1987-03-31

Similar Documents

Publication Publication Date Title
DE3132225A1 (de) Einrichtung fuer eine schnelle hadamard-transformation
DE3686436T2 (de) Speichersystem mit hoher leistung.
DE3724317C2 (de)
DE1901343C3 (de) Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen
DE2725395B2 (de) Einrichtung zur Echtzeittransformation von m in Zeilen angeordneten Wörtern der Bitlänge n in n in Spalten angeordnete Wörter der Bitlänge n
DE2311220A1 (de) Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung
DE2637054C3 (de) Steuervorrichtung für einen Pufferspeicher
DE2457612A1 (de) Mikroprogrammier-steuersystem
DE2854782C2 (de) Datenverarbeitungssystem und Verfahren zum Ersetzen eines Datenblocks in einem Schnellspeicher
DE1197650B (de) Parallel-Addierer
DE3689356T2 (de) Verfahren und Schaltung zum Generieren von binären Signalen und modifizierter Bitfolge.
DE2111642A1 (de) Vorrichtung zum Informationsaustausch zwischen einem schnellen und einem langsamen Speicher
DE3789471T2 (de) Mikrocomputer.
DE2743575A1 (de) Verfahren und einrichtung zur multiplikation einer ersten zahl mit einer zweiten zahl
DE1499191B2 (de) Elektronische einrichtung fuer eine datenverarbeitungsanlage
DE2451235A1 (de) Schaltungsanordnung fuer ein digitales filter
EP0694843B1 (de) Verfahren und Anordnung zur Steuerung einer Sequenz von Zugriffen eines Prozessors zu einem zugeordneten Speicher
DE2121490A1 (de) Orthogonaler Datenspeicher
DE69024576T2 (de) Betriebsartenwählerschaltung
DE2004436A1 (de) Adressenwandler in einer Datenverarbeitungsanlage
DE3341339C2 (de) Befehlsfolgegenerator
DE1276375B (de) Speichereinrichtung
DE69428417T2 (de) Verbesserungen an Befehlszählern
DE3609056A1 (de) Zaehlerschaltkreis
DE2637346C2 (de) Steuerschaltung für Daten

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8126 Change of the secondary classification

Ipc: ENTFAELLT

D2 Grant after examination
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Free format text: SCHWABE, H., DIPL.-ING. SANDMAIR, K., DIPL.-CHEM. DR.JUR. DR.RER.NAT., PAT.-ANW., 8000 MUENCHEN

8339 Ceased/non-payment of the annual fee