NL1000763C2 - Two=dimensional inverse discrete cosine transformation circuit - Google Patents

Two=dimensional inverse discrete cosine transformation circuit Download PDF

Info

Publication number
NL1000763C2
NL1000763C2 NL1000763A NL1000763A NL1000763C2 NL 1000763 C2 NL1000763 C2 NL 1000763C2 NL 1000763 A NL1000763 A NL 1000763A NL 1000763 A NL1000763 A NL 1000763A NL 1000763 C2 NL1000763 C2 NL 1000763C2
Authority
NL
Netherlands
Prior art keywords
data
idct
registers
rate
input
Prior art date
Application number
NL1000763A
Other languages
Dutch (nl)
Inventor
Po-Chuan Huang
Original Assignee
United Microelectronics Corp
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 United Microelectronics Corp filed Critical United Microelectronics Corp
Priority to NL1000763A priority Critical patent/NL1000763C2/en
Application granted granted Critical
Publication of NL1000763C2 publication Critical patent/NL1000763C2/en

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/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)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Abstract

The circuit includes a buffer with double output/input speed for facilitating the data input to the transformation device. N registers are connected in series, the first register is coupled with output end of a first selector by one input end, operating by adopting serial input one bit and parallel output N bits; one second selector with one first input end, one second input end and one output end. The first input end accepts the first bit of N bits output from the first register, and either the first or the second input end for input; N second registers, each of which has one input end, one first output end and one second output end, that is coupled with output end of the second selector by one input end, and coupled with output end of each first register without supplying the second selector input by the rest input ends in order to get one N bit input. Each first input end of the front N/2 registers is coupled to generate one first bus, each second input end coupled to generate one second bus, each first input end of the back N/2 registers is coupled to generate one third bus, each second input end coupled to generate one fourth bus to make the bus with N/2 bit capacity.

Description

Apparaat voor tweedimensionele inverse discrete cosinustransformatie ACHTERGROND VAN DE UITVINDING Veld van de uitvindingBACKGROUND OF THE INVENTION Field of the Invention

De huidige uitvinding heeft betrekking op een apparaat voor digitale signaalverwerking en meer specifiek op een 5 apparaat voor real time tweedimensionele inverse discrete cosinustransformatie (IDCT) geschikt voor uitvoering in een zeer grote geïntegreerde schakeling (VLSI).The present invention relates to a digital signal processing apparatus and more specifically to a real time two-dimensional inverse discrete cosine transform (IDCT) apparatus suitable for implementation in a very large integrated circuit (VLSI).

Beschrijving van verwante technologieDescription of related technology

Een aantal internationale videostandaarden, zoals 10 Joint Photographic Experts Group (JPEG), Motion PictureA number of international video standards, such as 10 Joint Photographic Experts Group (JPEG), Motion Picture

Experts Group (MPEG) en H.261, vereisen een schakeling voor snelle videodatacodering of -compressie. Vergrote datatrans-formatie-efficiency gedurende het coderen van de data of het comprimeren daarvan is de belangrijkste doelstelling geworden. 15 Aangezien het IDCT-proces een orthogonale transformatietechniek is welke een hoge omzettingsefficiency heeft, is deze algemeen in gebruik in videosystemen voor datacodering.Experts Group (MPEG) and H.261, require a circuit for fast video data encoding or compression. Increased data transformation efficiency during data encoding or compression has become the primary objective. Since the IDCT process is an orthogonal transformation technique that has high conversion efficiency, it is widely used in video coding systems.

Alhoewel enige inspanning erop is gericht geweest om het IDCT-algoritme te vereenvoudigen, is een bekende IDCT-20 schakeling, zoals getoond is in fig. 1 (prior art), nog steeds zeer gecompliceerd. Daarenboven voldoet de operationele efficiency van de in fig. 1 (prior art) getoonde schakeling niet aan de eisen voor real time-verwerking volgens de bovengenoemde standaarden. Bijvoorbeeld teneinde de afmetingen van de 25 schakeling te verminderen, kunnen methoden zoals datafeedback in de schakeling toegepast worden, daarmede de verwerkingstijd van de datatransformatie verhogend. Zonder vakkundige afstemming van de dataflow of tijdverhoudingen zijn de bedrijfssnel-heden van de IDCT-schakeling te laag om aan de eisen van de 30 bovengenoemde internationale standaarden te voldoen. Deze nadelen zullen duidelijker worden aan de hand van de volgende verklaring van de schakeling uit de bekende stand van de techniek.Although some effort has been directed towards simplifying the IDCT algorithm, a known IDCT-20 circuit, as shown in Fig. 1 (prior art), is still very complicated. In addition, the operational efficiency of the circuit shown in Fig. 1 (prior art) does not meet the requirements for real time processing according to the above standards. For example, in order to reduce the size of the circuit, methods such as data feedback can be used in the circuit, thereby increasing the processing time of the data transformation. Without proper tuning of the data flow or time ratios, the operating speeds of the IDCT circuit are too low to meet the requirements of the above international standards. These drawbacks will become more apparent from the following explanation of the prior art circuitry.

10007651000765

De schakeling van fig. 1 (prior art), welke een l-DThe circuit of FIG. 1 (prior art), which is an 1-D

35 IDCT-schakeling toont, omvat een ontvangstschakeling 10 voor het ontvangen van inputdata, een aantal omzettingsschakelingen 2 12 tot 19 voor het verwerken van de inputdata en een aantal nabewerkingselementen voor het genereren van outputdata. Ieder van genoemde omzettingsschakelingen 12 tot 19 omvat een geheu-genelement 22, een multiplier 24, een register 26, een optel-5 Ier 28, een accumulator 30 en een ander register 32. Met betrekking tot de nabewerkingselementen zijn twee multiplexers 34 en 36, een opteller 37, een aftrekker 38 en een permutatie-schakeling 40 voorzien. Deze schakeling kan het 2-D IDCT-algoritme uitvoeren door toepassing van twee achtereenvolgende 10 1-D-transformaties. Dat wil zeggen 2-D IDCT-resultaten kunnen verkregen worden door koppeling van twee schakelingen volgens fig. 1 (prior art) in serie of door toepassing van feedback vanaf permutatieschakeling 40 naar ontvangstschakeling 10 van de IDCT-schakeling.35 shows IDCT circuit, includes a receive circuit 10 for receiving input data, a number of conversion circuits 2 12 to 19 for processing the input data and a number of post-processing elements for generating output data. Each of said conversion circuits 12 to 19 includes a memory element 22, a multiplier 24, a register 26, an adder 28, an accumulator 30 and another register 32. With regard to the post-processing elements, two multiplexers 34 and 36, an adder 37, a subtractor 38 and a permutation circuit 40 are provided. This circuit can execute the 2-D IDCT algorithm using two consecutive 10 1-D transforms. That is, 2-D IDCT results can be obtained by coupling two circuits of Figure 1 (prior art) in series or by applying feedback from permutation circuit 40 to receive circuit 10 of the IDCT circuit.

15 Echter, aangezien de multiplier en iedere omzettings- schakeling 12 tot 19 een zeer lage bedrijfssnelheid heeft, is de transformatie-efficiency van de IDCT-schakeling aangetast. Bovendien, omdat de fig. 1 (prior art) schakeling tweemaal de 1-D IDCT-bewerking uitvoert teneinde 2-D-resultaten te ver-20 krijgen, is real time-bedrijf moeilijk te verwerkelijken. Alhoewel read-only-memory (ROM) schakelingen in de plaats gesteld kunnen worden van de multipliers van de IDCT-schakeling teneinde de operationele efficiency te verbeteren, zijn daarvoor ROM-schakelingen met zeer grote capaciteit vereist voor 25 de 2-D-transformatie. Deswege zullen de schakelafmetingen te groot zijn om in een VLSI-schakeling op te nemen.However, since the multiplier and each conversion circuit 12 to 19 has a very slow operating speed, the transformation efficiency of the IDCT circuit is compromised. In addition, since the Fig. 1 (prior art) circuit performs the 1-D IDCT operation twice to obtain 2-D results, real time operation is difficult to realize. Although read-only memory (ROM) circuits can be substituted for the multipliers of the IDCT circuit in order to improve operational efficiency, they require very large capacity ROM circuits for the 2-D transformation. Therefore, the switching dimensions will be too large to include in a VLSI circuit.

SAMENVATTING VAN DE UITVINDING In overeenstemming daarmee verschaft de huidige uitvinding een 2-D IDCT-schakeling met een verdeelde aritmetische 30 structuur, teneinde de complexiteit van de schakeling te verminderen en de transformatie-efficiency te verhogen.SUMMARY OF THE INVENTION Accordingly, the present invention provides a 2-D IDCT circuit with a divided arithmetic structure, in order to reduce circuit complexity and increase transformation efficiency.

De huidige uitvinding verschaft ook een 2-D IDCT-schakeling met elementen welke op verschillende snelheden werken voor omzetting van data op hoge snelheid, daarmede 35 voldoend aan de real time-eis.The present invention also provides a 2-D IDCT circuit with elements operating at different rates for high speed data conversion, thereby meeting the real time requirement.

De huidige uitvinding verschaft verder een 2-D IDCT-schakeling met specifieke data flow en timing, zodoende de schakelingafmetingen verminderend waardoor de uitvoering in een VLSI-schakeling mogelijk wordt.The present invention further provides a 2-D IDCT circuit with specific data flow and timing, thus reducing circuit size allowing execution in a VLSI circuit.

40 Een apparaat voor real time 2-D IDCT volgens de hui- 1000763 340 A device for real time 2-D IDCT according to the house 1000763 3

dige uitvinding omvat een rate buffer, een tweetal multiplexers, een meertal registers, een meertal parameterextrac-tors, een meertal accumulators, een meertal sommatie-elemen-ten, een tweetal truncators, een transpositiebuffer en een 5 inverse rate buffer. Data wordt ingevoerd naar het rate buffer en uitgevoerd van het inverse rate buffer op een eerste frequentie. Echter, het omzettingsproces uitgevoerd tussen de rate buffer en de inverse rate buffer wordt uitgevoerd op een tweede snelheid. Bovendien wordt een verdeelde aritmetische 10 structuur toegepast in de uitvinding, teneinde de schakelcom-plexiteit te verminderen en de operationele efficiency te verhogen. Zodoende is de schakelinguitvoering volgens de huidige uitvinding geschikt om op real time basis 2-D IDCT uit te voeren, waarbij deze opgenomen kan worden in een VLSI-schakeling. 15 KORTE BESCHRIJVING VAN DE TEKENINGENThe present invention includes a rate buffer, two multiplexers, a plurality of registers, a plurality of parameter extractors, a plurality of accumulators, a plurality of summation elements, a pair of truncators, a transposition buffer and an inverse rate buffer. Data is input to the rate buffer and outputted from the inverse rate buffer at a first frequency. However, the conversion process performed between the rate buffer and the inverse rate buffer is performed at a second rate. In addition, a distributed arithmetic structure is used in the invention in order to reduce switching complexity and increase operational efficiency. Thus, the circuit embodiment of the present invention is capable of performing 2-D IDCT on a real time basis, which may be included in a VLSI circuit. 15 BRIEF DESCRIPTION OF THE DRAWINGS

Voor een vollediger begrip van de huidige uitvinding en de voordelen daarvan wordt verwezen naar de volgende beschrijving in samenhang met de begeleidende tekeningen, waarin gelijke verwijzingscijfers voor gelijke delen staan en waarin: 20 fig. 1 (prior art) een blokschema toont van een IDCT- schakeling volgens de bekende stand van de techniek; fig. 2 een blokschema toont van een 2-D IDCT-schake-ling volgens de huidige uitvinding; fig. 3 een gedetailleerd blokschema van register 14 25 getoond in fig. 2 voorstelt; fig. 4 een gedetailleerd blokschema van een parame-terextractor 15 getoond in fig. 2 voorstelt; fig. 5 een gedetailleerd blokschema van een accumulator 16 getoond in fig. 2 voorstelt; 30 fig. 6 een gedetailleerd blokschema van een sommatie- element 17 getoond in fig. 2 voorstelt; en fig. 7 een timing-diagram voorstelt welke het bedrijf van de schakeling volgens fig. 2 toont.For a more complete understanding of the present invention and its advantages, reference is made to the following description in conjunction with the accompanying drawings, in which like reference numerals represent like parts and in which: Fig. 1 (prior art) shows a block diagram of an IDCT- prior art circuit; Figure 2 shows a block diagram of a 2-D IDCT circuit according to the present invention; FIG. 3 is a detailed block diagram of register 14 shown in FIG. 2; FIG. 4 is a detailed block diagram of a parameter extractor 15 shown in FIG. 2; FIG. 5 represents a detailed block diagram of an accumulator 16 shown in FIG. 2; Fig. 6 represents a detailed block diagram of a summation element 17 shown in Fig. 2; and FIG. 7 represents a timing diagram showing operation of the circuit of FIG. 2.

GEDETAILLEERDE BESCHRIJVING VAN DE VOORKEURSUITVOERINGSVORM 35 Voor het beschrijven van de IDCT-schakeling volgens een voorkeursuitvoeringsvorm van de uitvinding zal het IDCT-algoritme toegelicht worden. Teneinde de volgende beschrijving te vereenvoudigen, zal een datamatrix met een dimensie van 8x8 als voorbeeld genomen worden. Uiteraard is de huidige uitvin-40 ding niet beperkt tot een 8x8 afmeting. Indien een inputdata- 1000763 4 matrix χ van de IDCT-schakeling elementen Yuv heeft welke worden omgezet in Χΰ zodoende een originele matrix X verschaffend, kan de omzettingsvergelijking worden uitgedrukt als vergelijking (1) .DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT To describe the IDCT circuit according to a preferred embodiment of the invention, the IDCT algorithm will be explained. In order to simplify the following description, an 8x8 dimension data matrix will be taken as an example. Of course, the present invention is not limited to an 8x8 size. If an input data 1000763 4 matrix χ of the IDCT circuit has elements Yuv which are converted into Χΰ thus providing an original matrix X, the conversion equation can be expressed as equation (1).

xü=tZZc(u)C(v>C0S—n—cos—rz—Yu»^ U) 4'js0v*0 ^ ® waarbij parameters C(u) en C(v) achtereenvolgens zijn " 1 10 C(U),C(V) = \j2' {u'v"0) ; 2} 1, (U,V*0)xü = tZZc (u) C (v> C0S — n — cos — rz — Yu »^ U) 4'js0v * 0 ^ ® where parameters C (u) and C (v) are successively" 1 10 C (U) , C (V) = \ j2 '{u'v "0); 2} 1, (U, V * 0)

In het algemeen kan de uitdrukking van vergelijking (1) herschreven worden in vergelijking (3) teneinde de berekening te vereenvoudigen.In general, the expression of equation (1) can be rewritten in equation (3) to simplify the calculation.

15 V \ (2 j+1) νπΓ 1^ , . (2i+1) uu ] X;. =-> C (v) cos— -->C(u)cos-Y „ (3) 2“ 16 L2^ 1615 V \ (2 j + 1) νπΓ 1 ^,. (2i + 1) hh] X ;. = -> C (v) cos— -> C (u) cos-Y „(3) 2“ 16 L2 ^ 16

Dat wil zeggen, het directe 2-D-algoritme van vergelijking (1) is gereduceerd in dubbele 1-D-bewerkingen volgens vergelijking 20 (3).That is, the direct 2-D algorithm of equation (1) is reduced in double 1-D operations according to equation 20 (3).

Zodoende kan de IDCT-vergelijking uitgebreid worden in een matrixvergelijking, zoals getoond in vergelijking (4), waarmee meer afdoend de rij- en kolomberekening in een IDCT-proces kan worden beschreven.Thus, the IDCT equation can be extended in a matrix equation, as shown in equation (4), which can more adequately describe the row and column calculation in an IDCT process.

25 ΓχοΊ [A B A C D E F G Ty0" x, A C -A -B E -G -D -F y1 x. A -C -A B F -D G E y2 x, A-B A -C G -F E -Dy, 3 = 3 , (4)25 ΓχοΊ [A B A C D E F G Ty0 "x, A C -A -B E -G -D -F y1 x. A -C -A B F -D G E y2 x, A-B A -C G -F E -Dy, 3 = 3, (4)

x, A -B A -C -G F -E D yAx, A -B A -C -G F -E D yA

30 x^ | A -C -A B -F D -G D y530 x ^ | A -C -A B -F D -G D y5

Xj A C -A -B -E G D F y6 |_x.j [a B A C -D -E -F -GJ_y, met de volgende elementen: 35 a _ 1 * D1 π 1 . t 1 π „ 1 3π A--COS—, Β = —cos , C = -sin—, D=— cos—, n = —cos—, 24 28 28 2 16 2 16 1 . 3π 1 . π F=-sm— , G=-sin— 2 16 2 16 40 Vanwege haar symmetrische eigenschappen kan de afme- 1000763 5 ting van de 8x8 matrix van vergelijking (4) verder verminderd worden. Zeer vereenvoudigde uitdrukkingen van het IDCT-proces welke berekening van 4x4 matrices omvatten, zijn getoond in vergelijking (5) en (6).Xj A C -A -B -E G D F y6 | _x.j [a B A C -D -E -F -GJ_y, with the following elements: 35 a _ 1 * D1 π 1. t 1 π „1 3π A - COS -, Β = —cos, C = -sin—, D = - cos—, n = —cos—, 24 28 28 2 16 2 16 1. 3π 1. π F = -sm—, G = -sin— 2 16 2 16 40 Due to its symmetrical properties, the size of the 8x8 matrix of equation (4) can be further reduced. Highly simplified expressions of the IDCT process that include calculation of 4x4 matrices are shown in equation (5) and (6).

5 r n r x0 AB A C|y0 DE F Gjy! X, A C -A -B y, E -G -D -F y, = ï + (5) x2 A -C -A B I y4 F -D G E ys x3 A -B A -Cj[y6 G -F E -D y, ίο Γχ.Ί Γα b a cTy0l Γο e f GÏy.' x5 _ A C -A -B y, E -G -D -F y} x. A -C -A B y 4| F -D G E y5 [A -B A -C_[yJ [g -F E ~DJ_y:_ 15 Duidelijk is dat er slechts twee verschillende vermenigvuldi- gingsbewerkingen van de matrices in vergelijking (5) en (6) zijn. Indien twee matrices M en N gedefinieerd worden als5 r n r x0 AB A C | y0 DE F Gjy! X, AC -A -B y, E -G -D -F y, = ï + (5) x2 A -C -ABI y4 F -DGE ys x3 A -BA -Cj [y6 G -FE -D y, ίο Γχ.Ί Γα ba cTy0l Γο ef GÏy. ' x5 _ A C -A -B y, E -G -D -F y} x. A -C -A B y 4 | F -D G E y5 [A -B A -C_ [yJ [g -F E ~ DJ_y: _ 15 It is clear that there are only two different multiplication operations of the matrices in equations (5) and (6). If two matrices M and N are defined as

"mJ γΑ B A C TV J Γν,1 [D e F G T y, "I"mJ γΑ B A C TV J Γν, 1 [D e F G T y," I

M. A C -A -B y. N. E -G -D -F v. ! 20 M= = ' and N= * = | '' i, (7) Μ, A -C -a B y4 - Nj F -D G E yf ; _M3J [a -B A -cj_y6j [g -F E -Dj_y.j kunnen de vergelijkingen (5) en (6), dat wil zeggen de vergelijkingen van het IDCT-proces uitgedrukt worden als 25 xo |X" X" "x,‘ [ΧΊ X' X1 I M1 Νχ X6 Μ. N, =i + and '8) x2 Μ, N2 x5 ! μ. N. ' *M. A C -A -B y. N. E -G -D -F v.! 20 M = = 'and N = * = | i, (7) Μ, A -C -a B y4 - Nj F -D G E yf; _M3J [a -BA -cj_y6j [g -FE -Dj_y.j, equations (5) and (6), i.e. the equations of the IDCT process can be expressed as 25 xo | X "X" "x," [ΧΊ X 'X1 I M1 Νχ X6 Μ. N, = i + and' 8) x2 Μ, N2 x5! Μ. N. '*

_X3 J U3J LNïj _X4. LM3. X_X3 J U3J LNïj _X4. LM3. X

30 Met andere woorden, het IDCT-resultaat, matrix X, kan verkregen worden door het optellen en aftrekken van 4x4 matrices M en N.In other words, the IDCT result, matrix X, can be obtained by adding and subtracting 4x4 matrices M and N.

Aangezien de bedrijfssnelheid van multipliers te laag is voor de matrixberekening, worden de ROM-elementen gebruikt 35 volgens de huidige uitvinding voor IDCT-parameterextractie daarmee matrixberekening mogelijk makend. De huidige uitvinding past een verdeelde aritmetische structuur toe om bovengenoemde berekening te realiseren. De verdeelde aritmetische structuur kan de capaciteitsbehoefte van de ROM-elementen ver- 40 minderen. Vergelijking (9) is een vermenigvuldiging van 4x4 1 0 0 0 7 ö 3 6 matrices.Since the operating speed of multipliers is too slow for the matrix calculation, the ROM elements used in the present invention for IDCT parameter extraction thereby allow matrix calculation. The present invention applies a distributed arithmetic structure to accomplish the above calculation. The distributed arithmetic structure can reduce the capacity requirement of the ROM elements. Equation (9) is a multiplication of 4x4 1 0 0 0 7 ö 3 6 matrices.

00 ^00 C0l C02 C03 I0 01 _ ^10 Cu Cl2 C13 I, 5 02 C20 C21 C22 C23 I2 _®3. ^31 ^32 ^33..^3.00 ^ 00 C0l C02 C03 I0 01 _ ^ 10 Cu Cl2 C13 I, 5 02 C20 C21 C22 C23 I2 _®3. ^ 31 ^ 32 ^ 33 .. ^ 3.

waarbij de parameters c, I en O m, n en m+n bits hebben. Daarmee kan vergelijking (9) herschreven worden als 3 10 °i =ZCüIi ' for i=0/ ---- 3 (10)where the parameters c, I and O have m, n and m + n bits. Thus equation (9) can be rewritten as 3 10 ° i = ZCüIi 'for i = 0 / ---- 3 (10)

Verder, als Ij als 2's complement wordt geschreven, dat wil zeggenFurthermore, if Ij is written as 2's complement, that is

+Σ1-*2'" (US+ Σ1- * 2 '"(US

15 waarbij Ij0 het tekenbit is en bit 0 het meest significante bit is (MSB), kan vergelijking (10) geschreven worden als o. =T'-,/-1:0+1-.2-1 = 1-. 112' ^ K=l J !*ü < = 1 (_ ]-0 20 De laatste term van vergelijking (12) wordt berekend door het selecteren van de waarden van Ci0 tot Ci3, gebaseerd op een weging van parameters I„ tot I,. Bijvoorbeeld, indien k=4 en 1^1,41,4134=1011, is de waarde van de laatste term van vergelijking (12) Ci0+Ci2+Ci3. Indien de waarden van ΙΛΙ1λΙ2ϊΙ3ΐ£ zijn 25 vastgesteld, kan daarom de waarde van de laatste term van vergelijking (12) verkregen worden van een 16-woord ROM-element waarin voorafbepaalde waarden van Cj0IOk+CLuIlk+Ci2I2k+Ci3I3k zijn opgeslagen. Volgens de huidige uitvinding bestaat ieder woord van het ROM-element uit m+n bits. Zodoende kan de berekening 30 van vergelijking (12) uitgevoerd worden door n-voudige accumulatie van resultaten van het 16-woord ROM-element en een (m+n)-bit opteller/aftrekker.15 where Ij0 is the sign bit and bit 0 is the most significant bit (MSB), equation (10) can be written as o. = T '-, / - 1: 0 + 1-.2-1 = 1-. 112 '^ K = 1 J! * Ü <= 1 (_] -0 20 The last term of equation (12) is calculated by selecting the values from Ci0 to Ci3, based on a weighting of parameters I „to I For example, if k = 4 and 1 ^ 1,41,4134 = 1011, the value of the last term of equation (12) is Ci0 + Ci2 + Ci3, so if the values of ΙΛΙ1λΙ2ϊΙ3ΐ £ are determined, the value of the last term of equation (12) can be obtained from a 16-word ROM element in which predetermined values of Cj0IOk + CLuIlk + Ci2I2k + Ci3I3k are stored According to the present invention, each word of the ROM element consists of m + n Thus, the calculation of equation (12) can be performed by n-fold accumulation of results of the 16-word ROM element and an (m + n) -bit adder / subtractor.

In overeenstemming daarmee zal een voorkeursuitvoeringsvorm volgens de huidige uitvinding beschreven worden aan 35 de hand van het begeleidende schakelschema van fig. 2. Indien inputmatrix Y dimensie NxN heeft, omvat de 2-D IDCT-schakeling volgens de huidige uitvinding een rate buffer 10, twee multiplexers 11 en 12, N eerste registers 13, N tweede registers 14, N parameterextractors 15, N accumulators 16, N/2 optelele-40 menten 17, een tweetal truncators 18 en 19, een transpositie- 1 o o o 7 e 3 7 buffer 20 en een inverse rate buffer 21. De werking van de onderscheide elementen van de 2-D IDCT-schakeling zullen nu toegelicht worden.Accordingly, a preferred embodiment of the present invention will be described with reference to the accompanying circuit diagram of Figure 2. If input matrix Y has dimension NxN, the 2-D IDCT circuit of the present invention includes a rate buffer 10, two multiplexers 11 and 12, N first registers 13, N second registers 14, N parameter extractors 15, N accumulators 16, N / 2 adders 40, 17, two truncators 18 and 19, a transposition 1, 7, 7, 3, 7 buffer 20 and an inverse rate buffer 21. The operation of the distinguished elements of the 2-D IDCT circuit will now be explained.

Rate buffer 10 ontvangt data-invoer op een eerste 5 snelheid en voert data uit op een tweede snelheid. Dat wil zeggen, elementen van inputmatrix Y vormen input voor rate buffer 10 op de eerste snelheid. Daarna wordt een geherschikte datarij uitgevoerd naar multiplexer 11 vanaf rate buffer 10 op de tweede snelheid. De tweede snelheid bedraagt bij voorkeur 10 tweemaal de eerste snelheid. De verscheidene data-input/out-putsnelheden kunnen verkregen worden door stuursignalen op verschillende frequenties te voorzien aan de inputterminal en outputterminal van rate buffer 10. Zodoende kan een twee-snel-heden-omzettingsbedrijf verkregen worden in de 2-D IDCT-scha-15 keling.Rate buffer 10 receives data input at a first rate and outputs data at a second rate. That is, elements of input matrix Y form input for rate buffer 10 at the first rate. Then, a rearranged data row is performed to multiplexer 11 from rate buffer 10 at the second rate. The second speed is preferably 10 times the first speed. The various data input / output rates can be obtained by providing control signals at different frequencies to the input terminal and output terminal of rate buffer 10. Thus, a two-speed conversion operation can be obtained in the 2-D IDCT switches. 15 keling.

Multiplexer 11 en 12 verschaffen ieder twee datapaden voor datatransmissie. Een eerste datapad 11a is voorzien door multiplexer 11 voor de geherschikte inputdatarij van rate buffer 10. Dit datapad is actief gedurende een eerste 1-D IDCT-20 bewerking. Wanneer de eerste 1-D IDCT-bewerking is afgelopen, vangt een tweede 1-D IDCT-bewerking aan en een tweede datapad 11b is voorzien in de plaats van het eerste datapad door de multiplexer 11 voor het overdragen van een andere datarij afkomstig van transpositiebuffer 20.Multiplexer 11 and 12 each provide two data paths for data transmission. A first data path 11a is provided by multiplexer 11 for the rearranged input data row of rate buffer 10. This data path is active during a first 1-D IDCT-20 operation. When the first 1-D IDCT operation has ended, a second 1-D IDCT operation begins and a second data path 11b is provided in place of the first data path by the multiplexer 11 for transferring another data row from transposition buffer 20.

25 Eerste registers 13 zijn in serie geschakeld. Een van de eerste registers 13 is verbonden met de eerste multiplexer 11 voor het verzamelen van data en het sequentieel schrijven van de data naar een volgend eerste register 13. Deze eerste registers 13 zijn 1-woord registers waarvan de woordlengte 30 afhangt van de nauwkeurigheidseisen van de communicatiestan-daard waarop de IDCT-schakeling is gebaseerd.First registers 13 are connected in series. One of the first registers 13 is connected to the first multiplexer 11 for collecting data and writing the data sequentially to a next first register 13. These first registers 13 are 1-word registers whose word length 30 depends on the accuracy requirements of the communication standard on which the IDCT circuit is based.

De tweede registers 14 zijn eveneens 1-woord registers. De tweede registers 14 hebben 1-woord inputdata, terwijl twee 1-bit data per klokcyclus uitgevoerd worden van achter-35 eenvolgens terminal 15a en 15b. De structuur van registers 14 is getoond in fig. 3, waarin acht 1-bit registers 141 in serie geschakeld zijn voor het verschaffen van een datapad voor terminal 15a met een oneven aantal bits, terwijl een additionele acht registers in serie geschakeld zijn voor het verschaffen 40 van een datapad voor terminal 15b met een even aantal bits.The second registers 14 are also 1-word registers. The second registers 14 have 1-word input data, while two 1-bit data per clock cycle is output from sequentially terminals 15a and 15b. The structure of registers 14 is shown in Figure 3, in which eight 1-bit registers 141 are connected in series to provide a data path for terminal 15a with an odd number of bits, while an additional eight registers are connected in series to provide 40 of a data path for terminal 15b with an even number of bits.

1000763 81000763 8

Iedere parameterextractor 15 omvat twee 16-woord ROM-elementen 151 en een opteller/aftrekker 152, zoals getoond in fig. 4. De woordlengte in parameterextractor 15 bedraagt m+n bits. Zoals bepaald in vergelijking (9) hangen m en n af van 5 de communicatiestandaard waar de IDCT-schakeling op is gebaseerd. Aangezien de inputdata van terminal 15a één orde lager is dan van terminal 15b, moet de parameter verkregen van ROM-element 151 op terminal 152a l-bit naar rechts verschoven zijn voordat deze wordt opgeteld of afgetrokken van die op terminal 10 152b. Slechts wanneer een tekenbit verschijnt op terminal 15b, is de aftrekberekening uitgevoerd ofwel opteller/aftrekker 152 voert de optelberekening uit.Each parameter extractor 15 includes two 16-word ROM elements 151 and an adder / subtractor 152, as shown in Figure 4. The word length in parameter extractor 15 is m + n bits. As determined in equation (9), m and n depend on the communication standard on which the IDCT circuit is based. Since the input data from terminal 15a is one order lower than from terminal 15b, the parameter obtained from ROM element 151 on terminal 152a must be shifted 1 bit to the right before it is added or subtracted from that on terminal 10 152b. Only when a sign bit appears on terminal 15b, the subtraction calculation is performed, or adder / subtractor 152 performs the addition calculation.

Iedere accumulator 16, zoals getoond in fig. 5, omvat een opteller 161 en een register 162. Accumulatie van parame-15 ters afkomstig van parameterextractor 15 wordt uitgevoerd met de opteller 161 welke iedere inputdata van terminal 16a optelt bij de data opgeslagen in register 162, waarmee de data wordt geaccumuleerd.Each accumulator 16, as shown in Fig. 5, includes an adder 161 and a register 162. Accumulation of parameters from parameter extractor 15 is performed with the adder 161 which adds each input data from terminal 16a to the data stored in register 162 , which accumulates the data.

Ieder sommatie-element 17 omvat een opteller 171 en 20 een aftrekker 172, zoals getoond in fig. 6. Optelelementen 17 zijn voorzien voor het uitvoeren van de optel- en aftrekberekening van vergelijking (8), waarmee de eerste en tweede 1-D IDCT-resultaten verkregen worden bij de terminals 18a0 tot 18a7.Each summation element 17 includes an adder 171 and 20 a subtractor 172, as shown in Fig. 6. Adding elements 17 are provided for performing the addition and subtraction calculation of equation (8), with which the first and second 1-D IDCT results are obtained at terminals 18a0 to 18a7.

25 Truncator 18 is voorzien voor het afbreken van de eerste 1-D IDCT-resultaten om m-bit waarden te verkrijgen, teneinde de tweede 1-D IDCT-bewerking te vereenvoudigen. Truncator 19 is voorzien voor het afbreken van de tweede 1-D IDCT-resultaten in 9-bit data, teneinde te voldoen aan de eisen van 30 de communicatiestandaarden.Truncator 18 is provided to abort the first 1-D IDCT results to obtain m-bit values, in order to simplify the second 1-D IDCT operation. Truncator 19 is provided for truncating the second 1-D IDCT results into 9-bit data to meet the requirements of the communication standards.

Transpositiebuffer 20 heeft afmetingen NxN (8x8 in de voorkeursuitvoeringsvorm). De eerste 1-D IDCT-resultaten worden opgeslagen in transpositiebuffer 20 gedurende de eerste 1-D IDCT-bewerking. De opgeslagen data, welke aangegeven wor-35 den als matrix Z, worden getransponeerd in een andere datamatrix Z'. Matrices Z en Z' hebben een 1-D-formaat zoals dat van de rij afkomstig van matrix Y, zoals boven aangeduid. Gedurende de tweede 1-D IDCT-bewerking wordt de matrix Zl gezonden naar multiplexer 11.Transposition buffer 20 has dimensions NxN (8x8 in the preferred embodiment). The first 1-D IDCT results are stored in transposition buffer 20 during the first 1-D IDCT operation. The stored data, referred to as matrix Z, is transposed into another data matrix Z '. Matrices Z and Z 'have a 1-D format like that of the row from matrix Y, as indicated above. During the second 1-D IDCT operation, the matrix Z1 is sent to multiplexer 11.

40 Voor de inverse rate buffer 21 is een data-inputsnel- 1000763 9 heid op de tweede snelheid en een data-outputsnelheid op de eerste snelheid vereist teneinde afgestemd te zijn op de rate buffer 10. Gedurende de tweede 1-D IDCT-bewerking worden de tweede 1-D IDCT-resultaten opgeslagen in inverse rate buffer 5 21 en dan uitgevoerd als datamatrix X op de eerste snelheid.40 The inverse rate buffer 21 requires a second rate data input rate 1000763 9 and a first rate data output rate to match the rate buffer 10. During the second 1-D IDCT operation, the second 1-D IDCT results stored in inverse rate buffer 5 21 and then output as data matrix X at the first rate.

De onderscheiden data-input/outputsnelheden kunnen verkregen worden door het verschaffen van stuursignalen op verschillende frequenties aan de inputterminal en outputterminal van inverse rate buffer 21.The distinct data input / output rates can be obtained by providing control signals at different frequencies to the input terminal and output terminal of inverse rate buffer 21.

10 Het bedrijf van de 2-D IDCT-schakeling volgens de huidige uitvinding zal beschreven worden met verwijzing naar het timing-diagram van fig. 7. Verwijzend naar fig. 2 en fig.The operation of the 2-D IDCT circuit according to the present invention will be described with reference to the timing diagram of Fig. 7. Referring to Fig. 2 and Fig.

7 worden elementen van de inputdatamatrix Y achtereenvolgens geschreven in rate buffer 10 en opgeslagen daarin via terminal 15 10a, op rij voor rij-basis, bekend als de "raster scan"-metho de. Wanneer het eerste element van de laatste rij van matrix Y, dat wil zeggen element Y70 in de voorkeursuitvoeringsvorm, op het punt staat geschreven te worden in rate buffer 10, wordt de daarin opgeslagen data uitgelezen via terminal 11a.7, elements of the input data matrix Y are successively written into rate buffer 10 and stored therein via terminal 15 10a, row by row basis, known as the "raster scan" method. When the first element of the last row of matrix Y, i.e. element Y70 in the preferred embodiment, is about to be written in rate buffer 10, the data stored therein is read out via terminal 11a.

2 0 De outputdata van rate buffer 10 is een rij Yok, Y2k, Y4k, ΥΛ,2 0 The output data of rate buffer 10 is a row Yok, Y2k, Y4k, ΥΛ,

Ylk, Yjk en Y7k waarbij k varieert van 0 tot 7 en welke ver schillend zijn van de inputrij. Deze datarijen kunnen beschouwd worden op de eerste en tweede regels van fig. 7.Ylk, Yjk and Y7k where k varies from 0 to 7 and which are different from the input row. These data rows can be seen on the first and second lines of fig. 7.

Gedurende de eerste 1-D IDCT-bewerking, dat wil zeg-25 gen de eerste 1-D IDCT-bewerking, verschaft multiplexer 11 haar eerste datapad voor inputdata Yuv. Zodoende kan ieder element van matrix Y achtereenvolgens geschreven worden in register 13 via rate buffer 10 en multiplexer 11. Iedere keer wanneer acht datawoorden geschreven zijn in register 13, wordt de 30 data gelijktijdig gestuurd naar register 14. Ieder woord opgeslagen in register 15 wordt eenmaal uitgelezen twee bits door terminals 15a0:3 en 15b0:3, verwijzend naar fig. 3. Aangezien het gewicht van terminals 15a0, 15a2 en 15a3 hetzelfde is en die van 15b0, 15bl, 15b2 en 15b3 eveneens hetzelfde zijn, kun-35 nen er twee 4-bit bussen 15a en 15b gevormd worden door de twee sets van de data-outputterminals. Zoals boven opgemerkt, is de data in bus 15b één orde hoger dan die in bus 15a.During the first 1-D IDCT operation, ie, the first 1-D IDCT operation, multiplexer 11 provides its first data path for input data Yuv. Thus, each element of matrix Y can be successively written in register 13 via rate buffer 10 and multiplexer 11. Every time eight data words are written in register 13, the data is simultaneously sent to register 14. Each word stored in register 15 is once two bits read out by terminals 15a0: 3 and 15b0: 3, referring to Fig. 3. Since the weight of terminals 15a0, 15a2 and 15a3 is the same and that of 15b0, 15bl, 15b2 and 15b3 are also the same, there may be two 4-bit buses 15a and 15b are formed by the two sets of the data output terminals. As noted above, the data in bus 15b is one order higher than that in bus 15a.

Data in bussen 15a en 15b worden geschreven in de parameterextractor 15 voor het selecteren van de overeenkom-40 stige parameters in ROM-elementen 151. Deze parameters worden 1000763 10 zoals de deelsommen van vergelijking (12) opgeteld in opteller 152 en dan uitgevoerd bij de terminals 16a.Data in buses 15a and 15b is written into the parameter extractor 15 to select the corresponding 40 parameters in ROM elements 151. These parameters are added as the subsums of equation (12) in adder 152 and then output to the terminals 16a.

Na accumulatie van de data van terminals 16a door de accumulators 16 worden omgezette resultaten van de 4x4-5 matrices, zoals getoond in vergelijkingen (7) en (8), verkregen. Zodoende worden de eerste 1-D IDCT-resultaten verkregen door een optel- of aftrekbewerking van de getransformeerde resultaten door sommatie-elementen 17. Aangezien de 1-D IDCT-resultaten een hogere woordlengte kunnen hebben dan vereist 10 voor de gewenste datanauwkeurigheid, is een truncator 18 voorzien voor het afbreken van de 1-D IDCT-resultaten, waarmee eliminatieschakelingen voor het bewerken van de overvloedige bits worden voorkomen. Aangezien alleen de eerste m-bits van de 1-D IDCT-resultaten worden behouden, kan de schakeling meer 15 compact zijn en is de timing eenvoudig in de hand te houden.After accumulation of the data from terminals 16a by the accumulators 16, converted results of the 4x4-5 matrices, as shown in equations (7) and (8), are obtained. Thus, the first 1-D IDCT results are obtained by adding or subtracting the transformed results by summation elements 17. Since the 1-D IDCT results may have a longer word length than required for the desired data accuracy, a truncator 18 provided to abort the 1-D IDCT results, avoiding elimination circuits for processing the abundant bits. Since only the first m-bits of the 1-D IDCT results are retained, the circuit can be more compact and the timing easy to control.

De getransformeerde data van truncator 18, dat wil zeggen de elementen van matrix Z, zijn opgeslagen en getransponeerd in transpositiebuffer 20. Wanneer de tweede 1-D IDCT-bewerking aanvangt, worden de elementen van matrix Z gezonden 20 naar de eerste multiplexer 11 voor de tweede 1-D IDCT-bewer-king. In de voorkeursuitvoeringsvorm vangt de tweede 1-D IDCT-bewerking aan wanneer het eerste element van de zesde kolom van matrix Z, dat wil zeggen Zt)6, is geschreven in transpositiebuf f er 20. De outputrij van transpositiebuffer 20 is een 25 rij bestaande uit Zk0, Zkl, Zk2, Zk3, Zk4, ZkS, Zk6 en Zk7 met rijnum-mer k. Op het moment dat element Zu7 in de tweede 1-D IDCT-be-werking omgezet zal worden, getoond als de linker gestreepte lijn van fig. 7, is deze nog niet klaar om door de transposi-tiebuffer 20 uitgezonden te worden. Te dien einde is een feed-30 back voorzien van truncator 18, teneinde direct element Zu7 naar de tweede multiplexer 12 te zenden voor de tweede 1-D IDCT-bewerking. In het algemeen verschaft derhalve de tweede multiplexer 12 een derde datapad voor de data van het eerste register 13 naar het tweede register 14, terwijl gedurende het 35 moment dat element Z07 vereist is, een vierde datapad als verkorte weg verschaft wordt door de tweede multiplexer 12.The transformed data from truncator 18, i.e. the elements of matrix Z, are stored and transposed into transposition buffer 20. When the second 1-D IDCT operation begins, the elements of matrix Z are sent 20 to the first multiplexer 11 for the second 1-D IDCT operation. In the preferred embodiment, the second 1-D IDCT operation commences when the first element of the sixth column of matrix Z, i.e. Zt) 6 is written in transposition buffer f er 20. The output row of transposition buffer 20 is a row existing from Zk0, Zkl, Zk2, Zk3, Zk4, ZkS, Zk6 and Zk7 with row number k. When element Zu7 will be converted to the second 1-D IDCT operation, shown as the left dashed line of Fig. 7, it is not yet ready to be transmitted by the transposition buffer 20. To this end, a feed-back 30 is provided with truncator 18, in order to send direct element Zu7 to the second multiplexer 12 for the second 1-D IDCT operation. Generally, therefore, the second multiplexer 12 provides a third data path for the data from the first register 13 to the second register 14, while during the moment element Z07 is required, a fourth data path is provided as a shortcut by the second multiplexer 12 .

De werking van de tweede 1-D IDCT-bewerking is vergelijkbaar met die van de eerste 1-D IDCT-bewerking afgezien van de voorziening van het tweede datapad door de eerste multi-40 plexer 11 voor getransponeerde data, dat wil zeggen de ele- 1000763 11 inenten van matrix Z. Wanneer de tweede 1-D IDCT-bewerking vervolgens is uitgevoerd, wordt outputdata van de 2-D IDCT-scha-keling, dat wil zeggen elementen van matrix X, gegenereerd en afgekapt door truncator 19, en vervolgens geschreven in inver-5 se rate buffer 21. Tenslotte wordt matrix X uitgevoerd op de eerste snelheid van de eerste inverse rate buffer 21, zoals getoond in de laatste regel van fig. 7.The operation of the second 1-D IDCT operation is similar to that of the first 1-D IDCT operation except for the provision of the second data path by the first multi-40 plexer 11 for transposed data, i.e., the element 1000763 11 inoculation of matrix Z. When the second 1-D IDCT operation is then performed, output data of the 2-D IDCT circuit, i.e. elements of matrix X, is generated and truncated by truncator 19, and then written in inverse rate buffer 21. Finally, matrix X is executed at the first rate of the first inverse rate buffer 21, as shown in the last line of Fig. 7.

Door het tweesnelheidsbedrijf van de 2-D IDCT-schake-ling kan een real time omzetting gerealiseerd worden. Verder, 10 vergeleken met de bekende schakeling van fig. 1 (prior art), is voorzien in een verdeeld aritmetische structuur, omvattende de eerste en tweede registers, de parameterextractors, de accumulators en de sommatie-elementen ter vervanging van de functie- of transformatieschakeling volgens de bekende stand van 15 de techniek. Aangezien de verdeelde aritmetische structuur gebruik maakt van ROM-elementen voor de matrixberekening is de operationele efficiency verbeterd. Bovendien is door de verschillende aanstuurmodes welke verschaft zijn door de rate buffer en de inverse rate buffer, de bedrading tussen ieder 20 element vereenvoudigd en de schakelafmetingen volgens de huidige uitvinding in overwegende mate teruggebracht, waarbij het hardware-ontwerp veel eenvoudiger is. Zodoende is de huidige uitvinding meer geschikt voor VLSI-uitvoering.Real-time conversion can be realized by the two-speed operation of the 2-D IDCT circuit. Furthermore, compared to the prior art circuit of Fig. 1 (prior art), a divided arithmetic structure is provided, comprising the first and second registers, the parameter extractors, the accumulators and the summing elements to replace the function or transformation circuit. according to the known prior art. Since the distributed arithmetic structure uses ROM elements for the matrix calculation, operational efficiency is improved. In addition, due to the different driving modes provided by the rate buffer and the inverse rate buffer, the wiring between each element is simplified and the switching dimensions of the present invention have been substantially reduced, the hardware design being much simpler. Thus, the present invention is more suitable for VLSI implementation.

10007631000763

Claims (11)

1-D IDCT-bewerking en het tweede datapad dienende voor ge-10 transponeerde data gedurende een tweede 1-D IDCT-bewerking; N eerste registers welke in serie geschakeld zijn, waarbij een van de eerste registers gekoppeld is met de eerste multiplexer voor het achtereenvolgens schrijven van data verschaft door de eerste multiplexer naar een volgende van de 15 eerste registers; een tweede multiplexer voor het verschaffen van derde en vierde datapaden, het derde datapad dienende voor data van het eerste register welke gekoppeld is met de eerste multiplexer en het vierde datapad dienende voor feedback-data; 20. tweede registers voor opslag van data van de eerste registers en de feedback-data; N parameterextractors voor het genereren van parameters uit de data opgeslagen in de tweede registers; N accumulators voor het opzamelen van parameters ver-25 kregen door de parameterextractors; N/2 sommatie-elementen geschakeld met de accumulators voor het genereren van omgezette resultaten en feedback-data; een transpositiebuffer voor het transponeren van de omgezette resultaten van de sommatie-elementen, waarbij de 30 omgezette data gegenereerd wordt door de transpositiebuffer en daarin is opgeslagen gedurende de eerste 1-D IDCT-bewerking; en een inverse rate buffer voor het verkrijgen van data van de sommatie-elementen gedurende de tweede 1-D iDCT-bewer-35 king op de tweede snelheid, en het uitvoeren van NxN-data op de eerste snelheid.1-D IDCT operation and the second data path serving transposed data during a second 1-D IDCT operation; N first registers connected in series, one of the first registers being coupled to the first multiplexer for successively writing data provided by the first multiplexer to a subsequent one of the first 15 registers; a second multiplexer for providing third and fourth data paths, the third data path serving data from the first register coupled to the first multiplexer and the fourth data path serving feedback data; 20. second registers for storing data from the first registers and the feedback data; N parameter extractors for generating parameters from the data stored in the second registers; N accumulators for collecting parameters obtained by the parameter extractors; N / 2 summation elements connected with the accumulators to generate converted results and feedback data; a transposition buffer for transposing the converted results of the summation elements, the converted data being generated by the transposition buffer and stored therein during the first 1-D IDCT operation; and an inverse rate buffer for obtaining data from the summation elements during the second 1-D iDCT operation at the second rate, and outputting NxN data at the first rate. 1. Een apparaat voor real time tweedimensionele inverse discrete cosinustransformatie (IDCT) omvattende: een rate buffer voor het invoeren van NxN-data op een eerste snelheid en het uitvoeren van de data op een tweede 5 snelheid; een eerste multiplexer voor het verschaffen van eerste en tweede datapaden voor datatransmissie, het eerste data-pad dienende voor data van de rate buffer gedurende een eersteA real time two-dimensional inverse discrete cosine transform (IDCT) apparatus comprising: a rate buffer for inputting NxN data at a first rate and outputting the data at a second rate; a first multiplexer for providing first and second data paths for data transmission, serving the first data path for rate buffer data during a first 2. Het apparaat voor 2-D IDCT volgens conclusie 1 1000763 verder omvattende een truncator gekoppeld tussen de sommatie-elementen en de transpositiebuffer voor het afkappen van de omgezette data.The 2-D IDCT apparatus according to claim 1 1000763 further comprising a truncator coupled between the summation elements and the transposition buffer for truncating the converted data. 3. Het apparaat voor 2-D IDCT volgens conclusie 1 5 verder omvattende een truncator gekoppeld tussen de sommatie-elementen en de inverse rate buffer voor het afkappen van de getransformeerde data.The 2-D IDCT apparatus of claim 1 further comprising a truncator coupled between the summation elements and the inverse rate buffer for truncating the transformed data. 4. Het apparaat voor 2-D IDCT volgens conclusie 1, waarbij de eerste registers 1-woord registers zijn.The 2-D IDCT apparatus according to claim 1, wherein the first registers are 1-word registers. 5. Het apparaat voor 2-D IDCT volgens conclusie 1, waarbij de tweede registers 1-woord registers zijn.The 2-D IDCT apparatus according to claim 1, wherein the second registers are 1-word registers. 6. Het apparaat voor 2-D IDCT volgens conclusie 1, waarbij de tweede registers twee verzamelingen van serie-geschakelde N/2 1-bit registers omvatten.The 2-D IDCT apparatus according to claim 1, wherein the second registers comprise two sets of series-connected N / 2 1-bit registers. 7. Het apparaat voor 2-D IDCT volgens conclusie 1, waarin elke parameterextractor twee ROM-elementen omvat en een optelIer/aftrekker.The 2-D IDCT apparatus according to claim 1, wherein each parameter extractor comprises two ROM elements and an adder / subtractor. 8. Het apparaat voor 2-D IDCT volgens conclusie 1, waarbij iedere accumulator een opteller en een register omvat.The 2-D IDCT apparatus according to claim 1, wherein each accumulator comprises an adder and a register. 9. Het apparaat voor 2-D IDCT volgens conclusie 1, waarbij ieder sommatie-element een opteller en een aftrekker omvat.The 2-D IDCT apparatus according to claim 1, wherein each summation element comprises an adder and a subtractor. 10. Het apparaat voor 2-D IDCT volgens conclusie 1, waarbij de rate buffer middelen omvat voor bedrijf in ver- 25 schillende aanstuurmodes voor data-input en -output.The device for 2-D IDCT according to claim 1, wherein the rate buffer comprises means for operating in different control modes for data input and output. 11. Het apparaat voor 2-D IDCT volgens conclusie 1, waarbij de inverse rate buffer middelen omvat voor bedrijf in verschillende aanstuurmodes voor data-input en -output. 1000763The 2-D IDCT apparatus according to claim 1, wherein the inverse rate buffer comprises means for operating in different driving modes for data input and output. 1000763
NL1000763A 1995-07-10 1995-07-10 Two=dimensional inverse discrete cosine transformation circuit NL1000763C2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
NL1000763A NL1000763C2 (en) 1995-07-10 1995-07-10 Two=dimensional inverse discrete cosine transformation circuit

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
NL1000763 1995-07-10
NL1000763A NL1000763C2 (en) 1995-07-10 1995-07-10 Two=dimensional inverse discrete cosine transformation circuit

Publications (1)

Publication Number Publication Date
NL1000763C2 true NL1000763C2 (en) 1997-01-13

Family

ID=19761289

Family Applications (1)

Application Number Title Priority Date Filing Date
NL1000763A NL1000763C2 (en) 1995-07-10 1995-07-10 Two=dimensional inverse discrete cosine transformation circuit

Country Status (1)

Country Link
NL (1) NL1000763C2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4833648A (en) * 1987-07-02 1989-05-23 Texas Instruments Incorporated Multiport ram hybrid memory cell with fast write
FR2645985A1 (en) * 1989-04-18 1990-10-19 Labo Electronique Physique Circuit for carrying out linear conversion of digital data
EP0506111A2 (en) * 1991-03-27 1992-09-30 Mitsubishi Denki Kabushiki Kaisha DCT/IDCT processor and data processing method
EP0621543A2 (en) * 1993-04-19 1994-10-26 General Instrument Corporation Of Delaware Inverse discrete cosine transform processor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4833648A (en) * 1987-07-02 1989-05-23 Texas Instruments Incorporated Multiport ram hybrid memory cell with fast write
FR2645985A1 (en) * 1989-04-18 1990-10-19 Labo Electronique Physique Circuit for carrying out linear conversion of digital data
EP0506111A2 (en) * 1991-03-27 1992-09-30 Mitsubishi Denki Kabushiki Kaisha DCT/IDCT processor and data processing method
EP0621543A2 (en) * 1993-04-19 1994-10-26 General Instrument Corporation Of Delaware Inverse discrete cosine transform processor

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
B.SIKSTRÖM ET AL: "A high-speed 2-d Discrete Cosine Transform chip", INTEGRATION, THE VLSI JOURNAL, vol. 5, no. 2, AMSTERDAM NL, pages 159 - 169 *
GAEDKE K ET AL: "A FAULT-TOLERANT DCT-ARCHITECTURE BASED ON DISTRIBUTED ARTIHMETIC", PROCEEDINGS OF THE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS (ISCS), CHICAGO, MAY 3 - 6, 1993, vol. 3 OF 4, 3 May 1993 (1993-05-03), INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS, pages 1583 - 1586, XP000389985 *
RUETZ P A ET AL: "A 160 MPIXEL/SEC IDCT PROCESSOR FOR HDTV", PROCEEDINGS OF THE CUSTOM INTEGRATED CIRCUITS CONFERENCE, BOSTON, MAY 3 - 6, 1992, no. CONF. 14, 3 May 1992 (1992-05-03), INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS, pages 26.04.01 - 26.04.04, XP000340964 *

Similar Documents

Publication Publication Date Title
US4791598A (en) Two-dimensional discrete cosine transform processor
US5506797A (en) Nonlinear function generator having efficient nonlinear conversion table and format converter
KR100714358B1 (en) Method and system for performing calculation operations and a device
JP2662000B2 (en) Neural network and circuit used for the network
JPH0622033B2 (en) Circuit that computes the discrete cosine transform of the sample vector
US6052703A (en) Method and apparatus for determining discrete cosine transforms using matrix multiplication and modified booth encoding
WO2020160608A1 (en) Highly parallel convolutional neural network
US7236997B2 (en) Filter processing apparatus and method
US4853887A (en) Binary adder having a fixed operand and parallel-serial binary multiplier incorporating such an adder
NL1001663C2 (en) Device for two-dimensional discrete cosine transformation.
AU9030298A (en) Variable block size 2-dimensional inverse discrete cosine transform engine
NL1000763C2 (en) Two=dimensional inverse discrete cosine transformation circuit
RU2318238C1 (en) Neuron network for transformation of residual code to binary positional code
US5671169A (en) Apparatus for two-dimensional inverse discrete cosine transform
US5999958A (en) Device for computing discrete cosine transform and inverse discrete cosine transform
KR960014197B1 (en) Distributed arithmetic unit
JP3895031B2 (en) Matrix vector multiplier
KR100575285B1 (en) Low power, high speed DCT device and method thereof
GB2302421A (en) Real-time two-dimensional inverse discrete cosine transform generator
JP2012022363A (en) Inner product calculation device and inner product calculation method
JPH0298777A (en) Parallel sum of product arithmetic circuit and vector matrix product arithmetic method
KR0130441B1 (en) Two-dimensional discrete cosine transformer
KR100265944B1 (en) Method of full searched vector quatization and circuit for performing the same
KR0154919B1 (en) Two-dimensional idct circuit
JPH02100577A (en) Discrete cosine converting device

Legal Events

Date Code Title Description
PD2B A search report has been drawn up
VD1 Lapsed due to non-payment of the annual fee

Effective date: 20100201