KR0126109B1 - Vlsi processor for dct/idct - Google Patents

Vlsi processor for dct/idct

Info

Publication number
KR0126109B1
KR0126109B1 KR1019940010391A KR19940010391A KR0126109B1 KR 0126109 B1 KR0126109 B1 KR 0126109B1 KR 1019940010391 A KR1019940010391 A KR 1019940010391A KR 19940010391 A KR19940010391 A KR 19940010391A KR 0126109 B1 KR0126109 B1 KR 0126109B1
Authority
KR
South Korea
Prior art keywords
data
butterfly
multiplication
output
multiplication operation
Prior art date
Application number
KR1019940010391A
Other languages
Korean (ko)
Other versions
KR950035402A (en
Inventor
쉬룽푸
Original Assignee
아더 와이.씨. 치아오
원본드 일렉트로닉 코오포레이션
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 아더 와이.씨. 치아오, 원본드 일렉트로닉 코오포레이션 filed Critical 아더 와이.씨. 치아오
Priority to KR1019940010391A priority Critical patent/KR0126109B1/en
Publication of KR950035402A publication Critical patent/KR950035402A/en
Application granted granted Critical
Publication of KR0126109B1 publication Critical patent/KR0126109B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/1733Controllable logic circuits
    • H03K19/1737Controllable logic circuits using multiplexers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Complex Calculations (AREA)

Abstract

뇌상처리에 있어서의 이산적 코사인 변환/역변환용의 집적회로의 프로세서에 관한 것으로, 간단한 구조이면서도 정역순의 연산이 가능하며, 집적회로의 점유 공간을 축소할 수 있음과 동시에 그 처리속도를 향상시킬 수 있는 프로세서의 제공을 목적으로 한다.The present invention relates to a processor of an integrated circuit for discrete cosine transform / inverse transform in brain processing, which is simple in structure and can be operated in reverse order, and can reduce the occupied space of the integrated circuit and improve its processing speed. To provide a processor that can.

버터플라이 연상을 실행하는 버터플라이 연산수단(2)과, 단순승법연산을 실행하는 승법연산수단(3)과, 승법연산수단(3)을 결합하여 전치가산 승법연산 또는 사후 감산 승법연산을 실행하는 보조가감산수단(32)과, 기압 독출 포트에 의해 연산과정의 중간 결과를 억세스하는 데이타 레지스터(4)를 조합하여 각회의 1차원 DCT/IDCT 연산을 3스텝의 버터플라이연산과, 1스텝의 단순한 승법연산과, 2스텝의 보조가감을 거친 승법연산을 포합하는 순회 연산이 가능한 6스텝을 형성하여 버터플라이 연산수단(2)과 승법연산수단(3)에 의해 파이프라인 작업방법의 병렬처리를 실행한다.Performing a pre-addition multiplication operation or a post-subtraction multiplication operation by combining the butterfly calculation means 2 for performing butterfly association, the multiplication operation means 3 for performing simple multiplication operation, and the multiplication operation means 3; The auxiliary additive subtraction unit 32 and the data register 4 which access the intermediate result of the calculation process by the pressure reading port are combined to perform three steps of butterfly operation and one step of one-dimensional DCT / IDCT operation. Forming six steps that can perform simple multiplicative operations and multiplicative operations involving two steps of subtraction and multiplicative operations, the parallel calculation of the pipeline work method is performed by the butterfly calculation means 2 and the multiplication operation means 3. Run

Description

이산적 코사인변환 및 역변환을 위한 집적회로 프로세서Integrated Circuit Processor for Discrete Cosine and Inverse Transforms

제1도는 본 발명에 따른 이산적(離算的) 코사인변환/역변환용 집적회로 프로세서의 하나의 구성형태를 나타낸 블럭도이다.1 is a block diagram showing one configuration of an integrated circuit processor for discrete cosine transform / inverse transform according to the present invention.

제2도는 제1도의 프로세서에 의해 실행되는 DCT 연산의 흐름을 나타낸 타임차트이다.2 is a time chart illustrating the flow of DCT operations executed by the processor of FIG.

제3도는 제1도의 프로세서에 의해 실행되는 IDCT 연산의 흐름을 나타낸 타임차트이다.3 is a time chart showing the flow of IDCT operations executed by the processor of FIG.

제4도는 본 발명에 따른 이산적 코사인변환/역변환용 집적회로 프로세서의 다른 구성형태를 나타낸 블럭도이다.4 is a block diagram showing another configuration of an integrated circuit processor for discrete cosine transform / inverse transform according to the present invention.

제5도는 제4도의 프로세서에 의해 실행되는 DCT/IDCT 연산의 흐름을 나타낸 타임차트이다.5 is a time chart illustrating the flow of DCT / IDCT operations executed by the processor of FIG.

제6도는 이산적 코산인 변환의 흐름을 나타낸 설명도이다.6 is an explanatory diagram showing a flow of a discrete cosine transform.

제7도는 이산적 코사인 변환/역변환에 이용하는 각 연산의 정의를 나타낸 설명도로서, 각각 (a)는 버터플라이연산, (b)단순승법연산, (3)는 전치가산승법연산, (4)는 사후감산 승법연산의 정의를 나타낸 것이다.7 is an explanatory diagram showing the definition of each operation used for the discrete cosine transform / inverse transform, where (a) is a butterfly operation, (b) a simple multiplication operation, (3) a preaddition multiplication operation, and (4) It shows the definition of post-subtraction multiplication operation.

제8도는 이산적 코사인 역변환을 나타낸 설명도이다.8 is an explanatory diagram showing a discrete cosine inverse transform.

*도면의 주요부분에 대한 부호의 설명** Description of the symbols for the main parts of the drawings *

1 : 입력수단2 : 버터플라이연산 수단1: input means 2: butterfly operation means

3 : 승법연산 수단4 : 데이타 레지스터3: multiplication operation means 4: data register

5 : 출력 수단6 : 제어 수단5: output means 6: control means

31 : 제2전치 멀티플렉서32 : 보조 가감산기31: second premultiplexer 32: auxiliary adder and subtractor

33 : 곱셈기34 : 계수 ROM33: multiplier 34: coefficient ROM

35 : 출력선택기35: output selector

본 발명은 직접회로 프로세서에 관한 것으로, 특히 정역순(正逆順) 연산가능한 이산적 코사인 변환용의 직접회로 프로세서에 관한 것이다.The present invention relates to an integrated circuit processor, and more particularly to an integrated circuit processor for discrete cosine transform capable of inverse order calculation.

이산적 코사인 변환(Discrete Cosine Transform, 이하 DCT라 한다) 및 그 역변환(Inverse Discrete Cosine Transform, 이하 IDCT라 한다)은 각각 디지탈 화상의 압축과정이나 복원과정에서 이용된다. 디지탈 화상의 압축과정에 있어서, 통상 화상은 다수의 8×8화소의 블럭으로 세분된 후, 각 블럭마다 차례로 DCT 변환이 행해져 주파수영역의 데이타로 변환된다. 또한 복원과정에 있어서는 주파수영역의 데이타가 IDCT를 거쳐 화상데이타로 복원된다.Discrete Cosine Transform (hereinafter referred to as DCT) and its Inverse Discrete Cosine Transform (hereinafter referred to as IDCT) are each used in the compression or reconstruction process of a digital image. In the process of compressing a digital image, a normal image is subdivided into a plurality of blocks of 8x8 pixels, and then DCT conversion is performed for each block in turn to convert the data into frequency domain data. In the restoration process, the frequency domain data is restored to the image data via IDCT.

따라서, 이차원 DCT/IDCT를 실행하는 경우, 우선 1회의 1차원의 행(또는 열)의 변환이 행해지며, 그후 또 한차례의 1차원 열(또는 행)의 변환이 행해진다. 예를들어 8×8의 블럭의 임의의 행 또 열의 1차원 DCT는 다음식과 같이 표현할 수 있다.Therefore, when two-dimensional DCT / IDCT is executed, first one-dimensional row (or column) conversion is performed, and then another one-dimensional column (or row) is converted. For example, the one-dimensional DCT of any row or column of an 8 × 8 block can be expressed as the following equation.

[식 1][Equation 1]

F(k)=1/2-C(k)S(m)cos[(2m+1)k16]F (k) = 1 / 2-C (k) S (m) cos [(2m + 1) k 16]

k=0,1,.....7k = 0,1, ..... 7

C(k)=1/21/2(k=0일때)C (k) = 1/2 1/2 (when k = 0)

C(k)=1 (K=1,2,...7일때)C (k) = 1 (when K = 1,2, ... 7)

상기 관게식은 일련의 승법과 누계로 구성되어 있으며, 그 중 S(m)은 공간영역의 화상데이타이고, F(k)는 변환후의 영역의 데이타이다. 이 관계식으로부터 일련의 고속 알고리즘을 도출할 수 있으며, 1차원 DCT를 13회의 승법과 29회의 가감법으로 실행할 수 있고, 그 프로세서는 제6도와 같다.The relational expression is composed of a series of multiplications and cumulative numbers, where S (m) is image data of a spatial region, and F (k) is data of the region after conversion. A series of high-speed algorithms can be derived from this relation, and one-dimensional DCT can be executed by 13 multiplications and 29 additions and subtractions, and the processor is as shown in FIG.

이 프로세서에는 특히 3종류의 연산이 정의되고 있으며 제7(a)도 내지 (d)도에 나타낸 바와 같이, 단순승법연산(Instrinsic Multiplication), 버터플라이 연산(Butterfly Operation), 전치가산승법(Pre-added Multiplication)이 포함된다. 제7도에 도시한 또하나의 조합연산은 사후감산승법(Post-subtracted Multiplication)이라 불리우며, IDCT측의 처리 프로세서에 이용된다. 따라서, 1차원의 DCT의 프로세스로부터 12회의 버터플라이연산, 5회의 전치가산승법 및 8회의 단순승법이 실행되었다고 귀납할 수 있으며, 이들 연산은 다시 여섯의 조작 스템으로 나뉘어 순서대로 행해진다. 그 순서는,In particular, three types of operations are defined in the processor. As shown in Figs. 7 (a) to (d), Instrinsic Multiplication, Butterfly Operation, and Pre-Addition Method are used. added Multiplication). Another combination operation shown in FIG. 7 is called post-subtracted multiplication and is used for the processing processor on the IDCT side. Therefore, it can be inferred that 12 butterfly operations, 5 pre-addition methods, and 8 simple multiplication methods have been executed from the process of the one-dimensional DCT, and these operations are further divided into six operating systems and performed in order. The order is

제1의 조작스텝 : 4회의 버터플라이연산의 실행,1st operation step: 4 times of butterfly operation

제2의 조작스텝 : 2회의 전치가산승법연산의 실행,Second operation step: execution of two transposition addition operations;

제3의 조작스텝 : 재차 4회의 버터플라이연산의 실행,Third operation step: execute the butterfly operation again 4 times,

제4의 조작스텝 : 3회의 전치가산승법연산의 실행,Fourth operation step: execution of three transposition addition method,

제5의 조작스텝 : 다시 4회의 버터플라이연산의 실행,Fifth Operation Step: Perform Four More Butterfly Operations,

제6의 조작스텝 : 8회의 단순승법연산의 실행,6th operation step: execution of 8 simple multiplication operations,

이며, 이와같이 하여 1차원의 DCT가 완성된다. 만약, 이 1차원의 조작스텝을 역순으로 하면, 제8도에 도시한 바와같은 1차원 IDCT를 얻을 수 있다. 이 1차원 IDCT는 마찬가지로 여섯가지의 조작 스템의 순번으로 연산이 행해지지만, 제1의 조작스템에서는 단순승법연산, 제2, 제4 및 제6의 조작스템에서는 버터플라이연산, 제3 및 제5의 조작 스템에서는 사후감산승법의 연산이 실행된다.In this way, the one-dimensional DCT is completed. If this one-dimensional operation step is reversed, one-dimensional IDCT as shown in Fig. 8 can be obtained. Similarly, this one-dimensional IDCT is performed in the order of six operating systems, but the simple multiplication operation is performed in the first operating system, the butterfly operation is performed in the second, fourth and sixth operating systems, and the third and fifth operations are performed. The operation of post-subtraction multiplication is performed in the operating system of.

본 발명은 상기 고속연산법의 기초로서 설계된 DCT/IDCT 직접회로 프로세서에 관한 것으로, 그 특유한 하드웨어 구성에 의해 예를들어 8×8 블럭데이타를 상기 6의 조작스텝으로 순차로 연산할 수 있으며, 1차원의 DCT/IDCT를 완성한 후, 재차 순서를 바꾸어(transpose) 한번 더 1차원의 DCT/IDCT를 행하여 2차원변환을 완성시킬 수 있는 것이다. 한편, 종래의 DCT/IDCT 프로세서는 거의 방대한 하드와이어드논리(Hardwired Logic)를 이용함으로써 긴밀한 파이프라인 작업을 달성시키도록 처리 속도를 향상시키고 있으며, 이로 인해 원가가 극히 높지만 사실상 일반의 응용환경에 있어서는 이러한 긴밀하고도 고속의 타이밍을 필요로 하지 않아도 즉시 응답의 변환처리를 달성할 수 있다.The present invention relates to a DCT / IDCT integrated circuit processor designed as the basis of the high-speed calculation method, and according to the unique hardware configuration, for example, 8 × 8 block data can be sequentially calculated in the six operation steps, 1 After completing the DCT / IDCT of the dimension, it is possible to complete the two-dimensional transformation by transposing again one-dimensional DCT / IDCT. Conventional DCT / IDCT processors, on the other hand, use nearly massive hardwired logic to increase processing speeds to achieve tight pipeline operations, resulting in extremely high cost but virtually no ordinary application. The response conversion process can be achieved immediately without requiring close and high speed timing.

따라서, 본 발명은 상기 종래의 DCT/IDCT 프로세서의 결점을 감안하여, 하드웨어의 구조가 간단하면서도 정역순 연산 가능하고, 동시에 대폭 직접회의 점유 공간을 축소하여 원가를 낮출 수 있으며, 또한 일반의 사용환경에 부합되는 실시간처리의 요구에 대응할 수 있고 처리 속도를 증배할 수 있어 보다 높은 비트율에도 적용되는 정역순 연산가능한 DCT/IDCT용 직접회로 프로세서 및 그 처리방법의 제공을 목적으로 한다.Accordingly, the present invention, in view of the shortcomings of the conventional DCT / IDCT processor, the hardware structure is simple, but can be reverse-order operation, and at the same time it can reduce the cost by greatly reducing the occupied space of the direct meeting, and also the general use environment The purpose of the present invention is to provide a DCT / IDCT integrated circuit processor capable of addressing real-time processing and increasing the processing speed, which can be applied to higher bit rates, and a processing method thereof.

상기 목적을 달성하기 위하여 본 발명은, 외부로부터의 데이타가 입력되는 입력순단과, 버터플라이 연산을 실행하는 버터플라이 연산수단과, 단순승법연상을 실행하는 승법연산수단과, 이 승법연산수단과 결합하여 전치가산승법연산 또는 사후감산승법연산을 실행하는 보조 가감산수단과, 4개의 핀에 의해 기입/독출포트를 구성하여 연산과정의 중간 결과를 억세스하는 데이타 레지스터를 조합함으로써 정역 2회의 1차원DCT/IDCT 연산을 가능케 함과 동시에, 각회의 1차원 DCT/IDCT 연산을 3스텝의 버터플라이 연산과 1스텝의 단순한 승법연산 및 2스텝의 보조 가감을 거친 승법연산을 포합하는 6가지 연산스텝에 의해 구성된다.In order to achieve the above object, the present invention provides an input sequence for inputting data from the outside, a butterfly calculation means for executing a butterfly operation, a multiplication operation means for performing a simple multiplication association, and the multiplication operation means. Two-dimensional one-dimensional DCT / A by combining auxiliary registers for performing pre-addition multiplication or post-subtraction multiplication, and data registers for writing and reading ports by four pins to access intermediate results of the calculation process. In addition to enabling IDCT operations, each one-dimensional DCT / IDCT operation consists of six operation steps including three steps of butterfly operation, one step of simple multiplication operation, and two steps of multiplication operation. do.

본 발명은 상기 각 연산구성에 의해 정역 2회의 1차원 DCT/IDCT 연산을 실행할 수 있음과 동시에, 각각 버터플라이 연산수단과 승법연산수단에 의해 파이프 라인 작업방법의 병렬처리를 할 수 있으므로, 정역순 연산 가능한 프로세서의 집적회로의 용적을 대폭 축소할 수 있음과 동시에 일반의실시간 처리의 요구에 부응할 수 있다. 또한, 이 프로세서두개의 서로 두 직렬로 하면 양자의 파이프 라인 작업방식으로부터 각각이 블럭 데이타의 제1 및 제2의 1차원 DCT/IDCT 연산을 행할 수 있으므로, 처리속도를 한층 향상시킬 수 있어 보다 높은 비트율의 응용에 적합하다.According to the present invention, the two-dimensional one-dimensional DCT / IDCT operation can be executed by each of the above-described calculation configurations, and the parallel operation of the pipeline work method can be performed by the butterfly calculation means and the multiplication operation means, respectively. The volume of the integrated circuit of the arithmetic processor can be greatly reduced, and at the same time, it can meet the needs of general real-time processing. In addition, when the two processors are serialized to each other, the first and second one-dimensional DCT / IDCT operations of the block data can be respectively performed from both pipeline working methods, thereby further improving the processing speed. Suitable for bit rate applications.

제1도는 본 발명에 따른 직접회로 프로세서의 실시예이다.1 is an embodiment of an integrated circuit processor according to the present invention.

본 직접회로 프로세서는 입력수단(1), 버터플라이 연산수단(2), 승법연산수단(3), 데이타 레지스터(4), 출력수단(5) 및 제어수단(6)을 구비하고 있다. 그 중 입력수단(1)은 디멀티플렉서로 구성되어 있으며, 외부로부터의 데이타(Din)를 DCT 연산 또는 IDCT 연산에 따라 선택하여 버터플라이 연산수단(2) 또는 승법연산수단(3)으로 보낸다.The integrated circuit processor includes an input means 1, a butterfly calculation means 2, a multiplication operation means 3, a data register 4, an output means 5 and a control means 6. Among them, the input means 1 is composed of a demultiplexer, and selects data Din from the outside according to a DCT operation or an IDCT operation and sends it to the butterfly calculation means 2 or the multiplication operation means 3.

버터플라이 연산수단(2)은 제1의 전치 멀티플렉서(21) 및 버터플라이 연산기(22)를 포함하고 있다. 버터플라이 연산기(22)는 1쌍의 가산기 및 감산기에 의해 구성된다. 버터플라이 연산수단(2)은 전치 멀티플렉서(21)에 의해 입력수단(1) 또는 데이타 레지스터(4)로부터의 출력데이타를 선택하여 버터플라이 연산기(22)로 버터플라이 연산을 행하며, 그 연산 결과를 데이타 레지스터(4)에 기입하거나 출력수단(5)으로부터 외부로 출력한다.The butterfly calculating means 2 comprises a first premultiplexer 21 and a butterfly calculator 22. The butterfly operator 22 is composed of a pair of adders and subtractors. The butterfly calculating means 2 selects the output data from the input means 1 or the data register 4 by the premultiplexer 21, and performs the butterfly calculation with the butterfly calculator 22, and the result of the calculation is calculated. It writes to the data register 4 or outputs it externally from the output means 5.

승법연산수단(3)의 제2의 전치 멀티플렉서(31), 보조 가감산기(32), 곱셈(33), 계수 ROM(34) 및 출력선택기(35)를 구비하고 있다. 계수 ROM(34)는 승법연산의 계수 부분을 저장하는 것이며, 여기서 저장되어 있는 데이타는 곱셈기(33)의 오퍼랜드(operand)로서 이용된다. 승법연산수단(3)은 단순승법, 전치가산승법 및 사후감산승법의 연산을 담당하며, 그 입력데이타는 입력수단(1) 또는 데이타 레지스터(4)로부터 송출되어 각 연산에 따라 제2의 전치 멀티플렉서(31) 또는 보호 가감산기(32)에 보내지며, 연산결과는 출력선택기(35)를 개재시켜 데이터 레지스터(4)에 재기입된다. 곱셈기(33)의 출력이 출력수단(5)을 경유하여 외부로 보내진다. 또한 승법연산수단(3)이 단순승법연산을 실행하고 있는 경우, 입력데이타가 전치 멀티플렉서(31)의 선택에 의해 곱셈기(33)에 주어지며, 여기에 계수 ROM(34)로부터의 대응 어드레스 계수가 서로 승산됨으로써 단순승법연산이 완성된다. 또한 전치가산승법연산의 경우, 데이타 레지스터(4)로부터 출력되는 양 데이타 보조가감산기(32)로 보내져 양자가 가산된 후 그 결과가 곱셈기(33)로 보내져 계수 ROM(34)으로부터의 대응어드레스의 계수와 서로 승산됨으로써 전치가산 승법연산이 완료된다. 또한, 사후감산 승법연산의 경우에는 마찬가지로 데이타 레지스터(4)로부터 출력되는 양데이타가 하나는 제2의 전치 멀티플렉서(31), 다른 하나는 보조 가감산기(32)에 각각 보내져 전치 멀티플렉서(31)로 보내진 데이타는 곱셈기(33)에 입력되어 단순승법연산이 실행되며, 그 연산결과가 보조 가감산기(32)로 보내지며, 이전에 입력되어 있는 다른 하나의 데이타와 감산됨으로써 양자의 차가 사후감산 승법연산의 결과가 된다.A second premultiplexer 31, an auxiliary adder and subtractor 32, a multiplication 33, a coefficient ROM 34, and an output selector 35 of the multiplication operation means 3 are provided. The coefficient ROM 34 stores the coefficient portion of the multiplication operation, where the stored data is used as an operand of the multiplier 33. The multiplication operation means (3) is responsible for the calculation of the simple multiplication method, the pre-addition multiplication method, and the post-subtraction multiplication method. (31) or the protection adder / subtractor 32, and the operation result is rewritten into the data register 4 via the output selector 35. The output of the multiplier 33 is sent to the outside via the output means 5. In addition, when the multiplication operation means 3 performs the simple multiplication operation, input data is given to the multiplier 33 by selection of the premultiplexer 31, and the corresponding address coefficient from the coefficient ROM 34 is By multiplication, the simple multiplication operation is completed. In addition, in the preaddition multiplicative operation, both data auxiliary subtractors 32 output from the data register 4 are added, both are added, and the result is sent to the multiplier 33 so that the corresponding address from the coefficient ROM 34 can be obtained. The multiplication with the coefficients completes the pre-add multiplication operation. In addition, in the case of post-subtraction multiplication, similarly, both data output from the data register 4 are sent to the second premultiplexer 31 and the other to the auxiliary adder 32 to the premultiplexer 31, respectively. The sent data is input to the multiplier 33, and a simple multiplication operation is performed, and the result of the operation is sent to the auxiliary adder and subtractor 32, and the difference between them is subtracted by another subtracted previously input data. Results in:

데이타 레지스터(4)는 4포트의 레지스터 수단으로 구성되어있으며, RAM등에 의해 연산과정의 중간결과 데이타를 저장한다. 그 4포트의 구조는 2쌍의 기입/독출(WP1-RP1, WP2-RP2)로 나눌 수 있으며, 각각 버터플라이 연산수단(2) 및 승법연산수단(3)의 데이타 억세스경로로 한다.The data register 4 is constituted by four port register means, and stores intermediate result data of the calculation process by RAM or the like. The four-port structure can be divided into two pairs of write / read (WP1-RP1 and WP2-RP2), respectively, which are data access paths of the butterfly calculating means 2 and the multiplication operation means 3, respectively.

출력수단(5)은 멀티플렉서를 구비하여 구성되어 있으며, IDCT 연산 또는 DCT 연산인가에 따라 버터플라이 연산기(22) 또는 곱셈기(33)로부터의 출력을 선택하여 외부로의 출력데이타로 한다. 또한, 제어수단(6)은 제어시퀀스를 발생시키기 위해 이용디며, 상기 각 수단의 조작순서를 제어하는 것이다.The output means 5 is provided with a multiplexer, and selects the output from the butterfly operator 22 or the multiplier 33 according to application of IDCT operation or DCT operation to output data to the outside. In addition, the control means 6 is used to generate a control sequence, and controls the operation procedure of each said means.

제2도 및 제3도는 상기 구성에 입각하여 본 프로세서가 DCT/IDCT 연산을 행하는 순서에 대해 나타내고 있다. 도면에 있어서, 블럭(N)에 대해 전후 2회의 1차원 변환 제1 1-D DCT/IDCT 및 제2 1-D DCT/IDCT가 실행됨과 동시에, 각회의 1차원 변환에 있어서, 6가지 조작스텝에 있어서의 버터플라이연산과 승법연산이 순서대로 행해지며, 각각 버터플라이 연산수단(2)과 승법연산수단(3)에 의해 파이프라인 작업방직으로 병렬 처리된다. 제2도에 도시되는 DCT에 있어서, 제1,제3,제5스텝에서는 버터플라이 연산이 행해지며, 제2 및 제4의 스텝에서는 전치가산 승법연산, 제6의 스텝에서는 단순승법연산이 행해진다. 또한, 제3도에 도시되는 IDCT에 있어서, 제1의 스텝에서는 단순승법연산이 행해지며, 제3,제5스텝에서는 사후감산 승법연산, 그리고, 제2,제4,제6의 스텝에서는 버터플라이 연산이 행해진다. 또한, 제1의 1차원 변환(즉, 제1 1-D DCT/IDCT)의 제1스텝연산과 동시에 Din으로부터 데이타가 입력되고, 제2의 1차원 변환(즉, 2 1-D DCT/IDCT)의 제6스텝의 연산이 실행되고 있을 때에 그 결과가 외부(Dout)로부터 출력된다.2 and 3 show the order in which the present processor performs a DCT / IDCT operation based on the above configuration. In the figure, two front and rear one-dimensional transformed first 1-D DCT / IDCT and second 1-D DCT / IDCT are executed for the block N, and six operation steps in each one-dimensional transform are performed. The butterfly operation and the multiplication operation in s are performed in order, and the butterfly operation means 2 and the multiplication operation means 3 each perform parallel processing in a pipeline working weave. In the DCT shown in FIG. 2, the butterfly operation is performed in the first, third, and fifth steps, the pre-addition multiplication operation is performed in the second and fourth steps, and the simple multiplication operation is performed in the sixth step. All. In the IDCT shown in FIG. 3, the simple multiplication operation is performed in the first step, the post-subtraction multiplication operation in the third and fifth steps, and the butter in the second, fourth and sixth steps. The fly operation is performed. Further, data is input from Din at the same time as the first step operation of the first one-dimensional transform (i.e., the first 1-D DCT / IDCT), and the second one-dimensional transform (i.e., 2 1-D DCT / IDCT). When the sixth step is executed, the result is output from the outside (Dout).

그리고, 각 스텝의 연산데이타는 외부와의 입력 및 출력을 제거하여 모든 데이타 레지스터(4)를 소스 또는 목적지(데스티네이션)로 되어 있으며, 전회의 스텝을 경과한 결과가 후속되는 순회의 스텝에 유래되어 있으며, 데이타 레지스터(4)의 억세스 방식은 동일 블럭에 있어서의 2회의 1차원 변환이 서로 순서를 바꾸는 것을 필요로 하며, 예를들어 제1의 차원 변환이 행 순서로 억세스되었다고 하면, 제2의 1차원 변환은 반드시 열 순서로 억세스된다. 또한, 그 반대의 경우는 그렇다. 그러나, 서로 인접하는 양블럭간, 즉 이전블럭의 제2의 1차원 변환과 다음 블럭의 제1의 1차원 변환과의 억세스 순서는 불변이다. 또한 버터플라이승법 연산수단(2) 및 승법연산수단(3)은 데이타(4)의 개벌의 기입/독출포트로부터 동시에 데이타 레지스터(4)에 대해 데이타 억세스를 행할 수 있으며, 따라서 상기 양 연산수단(2),(3)을 이용하여 파이프라인 작업방식으로 병렬 처리를 시킬 수 있음과 동시에, 같은 종류의 연산 스텝이 차례로 동일 연산수단 속에서 잇따라 실행되는 것이다.The operation data of each step removes inputs and outputs from the outside, and all data registers 4 are source or destination (destination). The access method of the data register 4 requires two one-dimensional transforms in the same block to be reversed. For example, if the first dimensional transform is accessed in the row order, the second method is used. The one-dimensional transform of is necessarily accessed in column order. And vice versa. However, the order of access between the adjacent two blocks, that is, the second one-dimensional transform of the previous block and the first one-dimensional transform of the next block is unchanged. In addition, the butterfly multiplication operation means 2 and the multiplication operation means 3 can perform data access to the data register 4 simultaneously from the individual write / read ports of the data 4, so that both calculation means ( Using 2) and (3), parallel processing can be performed by the pipeline work method, and the same kind of operation steps are executed in sequence in the same operation means.

이하, 이를 실시예와 함께 설명하면, (1) DCT를 실행하는 경우, 예를 들어 8×8의 화소 블럭이 64개의 화소 데이타로서 행(또는 열)의 순서로 Din으로부터 입력되며, 입력수단(1)의 선택을 거쳐 버터플라이 승법연산수단(2)으로 보내져 제1스텝의 연산이 실행된다. 이는 버터플라이연산이며, 그결과는 기입포트(WP1)로부터 데이타 레지스터(4)에 기입되며, 이어서 독출포트(RP1)로부터 데이타 레지스터(4)에 기입되며, 이어서 독출포트(RP1)로부터 독출되어 승법연산수단(3)으로 보내져 제2스텝의 연산이 진행된다. 이것이 전치가산승법연산이다. 이어서, 전치가산승법연산의 결과가 또 하나의 기입포트(WP2)로부터 데이타 레지스터(4)에 재기입됨과 동시에 제1스텝의 연산이 완성되는 것을 기다린 후 다른 하나의 옥출포트(RP2)로부터 앞의 2회 스텝연산의 결과가 독취되어 버터플라이승법 연산수단(2)으로 보내져 제3의 스텝 연산이 지행된다. 그 연산결과는 기입포트(WP1)에 의해 데이타 레지스터(4)에 재기입된다. 마찬가지의 견지에서 제4스텝의 연산이 제2스텝의 연산후에 이어 승법연산수단(3)으로 행해지며, 제5스텝의 연산이 제3스텝의 연산후에 이어서 버터플라이승법 연산수단(2)으로 행해진다. 제6스텝연산은 제4스텝 연산후에 승법연산수단(3)에 있어서 단순승법연산이 실행되며, 이들 결과가 함께 데이타 레지스터(4)에 재기입된다. 그리고 제6의 스텝연산이 종료하면 제1의 1차원 DCT가 완성된다.The following description will be given with examples. (1) When DCT is executed, for example, 8 × 8 pixel blocks are input from Din in the order of rows (or columns) as 64 pixel data, and input means ( After selection 1), it is sent to the butterfly multiplication operation means 2 to perform the calculation of the first step. This is a butterfly operation, the result of which is written to the data register 4 from the write port WP1, and then to the data register 4 from the read port RP1, which is then read from the read port RP1 and multiplied. It is sent to the calculating means 3, and calculation of a 2nd step progresses. This is the transpositional multiplication operation. Subsequently, the result of the preaddition multiplication operation is rewritten from another write port WP2 to the data register 4 and waits for the completion of the operation of the first step, and then from the other exit port RP2. The result of the two step operations is read and sent to the butterfly multiplication method 2 to perform the third step operation. The result of the calculation is written back to the data register 4 by the write port WP1. In the same manner, the operation of the fourth step is performed by the multiplication operation means 3 after the operation of the second step, and the operation of the fifth step is performed by the butterfly multiplication operation means 2 after the operation of the third step. All. In the sixth step operation, after the fourth step operation, the simple multiplication operation is performed by the multiplication operation means 3, and these results are rewritten together in the data register 4 together. When the sixth step operation is completed, the first one-dimensional DCT is completed.

그후, 순서를 반대로 하여, 즉 열(또는 행)의 순서로 RP1에 의해 데이타 레지스터(4)로부터 데이타를 독취하여 버터플라이승법 연산수단(2)으로 보내 제2의 1차원 DCT의 제1의 스텝 연산을 개시한다. 그후의 각스텝의 연산방식은 제1의 1차원 DCT와 동일하지만, 상이한 것은 최후에 있어서의 제6스텝의 연산결과가 데이타 레지스터(4)에 재기입되 않고 직접 승법연산수단(3)의 곱셈기(33)로부터 출력되어, 출력수단(5)을 개재시켜 외부(Dout)로 출력되는 점에 있다. 이 최종 출력은 블럭화소에 관한 DCT 연산된 주파수 영역 데이타이다.Then, the order is reversed, that is, the data is read from the data register 4 by RP1 in the order of the columns (or rows) and sent to the butterfly multiplication operation means 2, the first step of the second one-dimensional DCT. Start the operation. The operation method of each step thereafter is the same as that of the first one-dimensional DCT, but the difference is that the operation result of the sixth step at the end is not rewritten in the data register 4, but the multiplier of the multiplication operation means 3 directly ( 33 is outputted to the outside Dout via the output means 5. This final output is the DCT computed frequency domain data for the block pixel.

(2) IDCT를 실행하는 경우에는 64개의 주파수영역 데이타가 행(또는 열)의 순서로 Din으로부터 입력수단(1)으로 입력되고, 그 선택에 따라 승법연산수단(3)으로 보내져 제1의 스텝연산이 행해진다. 이는 단순승법연산으로, 그 결과는 기입포트(WP2)에 의해 데이타 레지스터(4)에 기입되며, 다음에 독취포트(RP1)으로부터 독취되어 버터플라이승법 연산수단(2)으로 보내지며, 이로써 제2의 스텝연산이 행해진다. 이는 버터플라이연산에 속하며, 그 결과는 다른 하나의 기입포트(WP1)에 의해 데이타 레지스터(4)에 재기입된다. 제3스템은 사후감산 승법연산으로서, 이는 독출포트(RP2)에 의해 제2스텝연산의 결과가 독취되어 승법연산수단(3)으로 보내져, 제1의 스텝연산 후에 이어서 실행된다. 그 연산결과는 WP2에 의해 데이타 레지스터(4)에 재기입된다. 마찬가지의 견지에서 제4스텝의 연산은 제2의 스텝의 연산후에 버터플라이승법 연산수단(2)에 의해 실행되며, 제5스텝의 연산은 제3의 스텝의 연산후에 승법연산수단(3)에서 실행된다. 그리고, 제6스텝의 연산은 제4스텝연산후에 이어서 버터플라이 승법연산수단(2)으로 실행되며, 이에 따른 연산결과는 데이타 레지스터(4)에 재기입되며, 이와같이 제6스텝연산이 종료됨으로써 제1의 1차원 IDCT가 완성된다.(2) In the case of executing IDCT, 64 frequency domain data are input from the Din to the input means 1 in the order of rows (or columns), and are sent to the multiplication operation means 3 according to the selection, and the first step. The operation is performed. This is a simple multiplication operation, the result of which is written to the data register 4 by the write port WP2, which is then read from the read port RP1 and sent to the butterfly multiplication operation means 2, whereby the second Step operation is performed. It belongs to the butterfly operation, and the result is written back to the data register 4 by the other write port WP1. The third system is a post subtraction multiplication operation, which reads the result of the second step operation by the read port RP2 and sends it to the multiplication operation means 3, which is subsequently executed after the first step operation. The result of the calculation is written back to the data register 4 by the WP2. In the same sense, the calculation of the fourth step is performed by the butterfly multiplication operation means 2 after the calculation of the second step, and the calculation of the fifth step is performed by the multiplication operation means 3 after the calculation of the third step. Is executed. The operation of the sixth step is executed by the butterfly multiplication operation means 2 after the fourth step operation, and the result of the operation is rewritten in the data register 4, and thus the sixth step operation is completed. One-dimensional IDCT of 1 is completed.

이러서, RP2에서는 열(또는 행)의 순서로 데이타 레지스터(4)로부터 데이타를 독취하여, 승법연산수단(3)에 보내고, 이로써 제2의 1차원 IDCT에 있어서의 제1스텝의 연산이 개시된다. 그후의 각 스텝의 연산은 모두 제1의 1차원 IDCT와 마찬가지이지만, 다른 것은 최종적인 6스텝의 연산결과가 데이타 레지스터(4)에 재기입되지 않고 출력수단(5)을 개재시켜 외부(Dout)로 출력되는 점에 있다. 이 최종적인 출력은 IDCT 복원을 거친 화소데이타이다.Thus, in RP2, data is read from the data register 4 in the order of columns (or rows) and sent to the multiplication operation means 3, whereby the operation of the first step in the second one-dimensional IDCT is started. do. The operation of each subsequent step is the same as that of the first one-dimensional IDCT, but the other is that the final six-step operation result is not rewritten into the data register 4, but is outputted through the output means 5 to the outside (Dout). Is in the output point. This final output is pixel data after IDCT reconstruction.

제4도는 본 발명에 따른 프로세서의 다른 실시예를 나타낸 것으로, 이는 제1도에 도시한 양 기본 모듈을 직렬한 것으로, 파이프라인 작업에 의해 블럭데이타의 2회의 1차원 DCT/IDCT를 처리하여, 즉 양 모듈이 각각 1회의 1차원 변환의 6스텝의 연산을 순서대로 순회 실행하는 것이다.Figure 4 shows another embodiment of a processor according to the present invention, which is a series of both basic modules shown in Figure 1, by processing two one-dimensional DCT / IDCT of block data by a pipeline operation, In other words, the two modules each execute one step six operations of one-dimensional transformation in order.

이 프로세서는 주로 제1의 1차원 처리수단(7), 제2의 1차원 처리수단(8) 및 제어수단(9)을 구비하고 있다. 제1의 1차원 처리수단(7)은 입력수단(71)과 전치 멀티플렉서(721) 및 버터플라이 연산기(722)를 가지는 제1의 버터플라이 연산수단(72)과 전치 멀티플렉서(731), 보조 가감산기(732), 곱셈기(733), 계수ROM(734) 및 출력선택기(735)를 가지는 제1의 승법연산수단(73)과, 블럭데이타의 입력이나 제1의 1차원 변환을 실행하는 제1의 데이타 레지스터(74)를 구비하고 있다. 제1의 데이타 레지스터(74)는 전치 메모리(transpose memory)를 겸하고 있으며, 제2의 1차원 처리수단(8)의 입력데이타의 출처가 된다.The processor is mainly provided with a first one-dimensional processing means 7, a second one-dimensional processing means 8 and a control means 9. The first one-dimensional processing means 7 is the first butterfly calculating means 72 and the premultiplexer 731 having the input means 71, the premultiplexer 721, and the butterfly operator 722, the auxiliary addition and subtraction. A first multiplication operation means (73) having a calculator (732), a multiplier (733), a coefficient ROM (734), and an output selector (735), and a first for performing block data input or first one-dimensional conversion. Data register 74 is provided. The first data register 74 also serves as a transpose memory and serves as a source of input data of the second one-dimensional processing means 8.

한편, 제2의 1차원 처리수단(8)은 전치 멀티플렉서(811) 및 버터플라이 연산기(812)를 가지는 제2의 버터플라이 연산수단(81)과, 전치 멀티플렉서(821), 보조 가감산기(822), 곱셈기(823) 및 출력선택기(824)를 가지는 제2의 승법연산수단(82)과, 제2의 데이타 레지스터(83)와, 출력수단(84)를 구비하고 있다. 제2의 승법연산수단(82)의 곱셈기(823)의 연산입력단은 제1의 승법연산수단(73)에 연접되어 있으며, 제1의 승법연산수단(73)의 계수ROM(734)과 공용할 수 있도록 되어 있다. 제2의 1차원 처리수단(8)은 블럭데이타의 제2의 1차원변환 및 최종 결과의 출력을 행한다. 제어수단(9)은 이들 제1 및 제2의 1차원 처리수단(7),(8)의 실행 프로세스를 제어하기 위해 이용된다.On the other hand, the second one-dimensional processing means 8 includes the second butterfly computing means 81 having a premultiplexer 811 and a butterfly operator 812, a premultiplexer 821, and an auxiliary adder and subtractor 822. Second multiplication operation means 82 having a multiplier 823 and an output selector 824, a second data register 83, and an output means 84. The operation input terminal of the multiplier 823 of the second multiplication operation means 82 is connected to the first multiplication operation means 73, and can be shared with the coefficient ROM 734 of the first multiplication operation means 73. It is supposed to be. The second one-dimensional processing means 8 performs a second one-dimensional transform of the block data and outputs the final result. The control means 9 are used to control the execution process of these first and second one-dimensional processing means 7, 8.

상기 구성에 따르면, DCT/IDCT 연산의 실행 순서는 제5도에 도시한 바와 같이, 1차원 처리수단(7),(8)의 파이프라인 작업에 의해 블럭 데이타의 DCT/IDCT 연산이 실행되며, 블럭(N)의 입력데이타가 Din으로부터 제1의 1차원 처리수단(7)에 들어옴과 동시에 이전블럭(N-1)의 제1의 1차원 변환을 거친 결과가 제1의 데이타 레지스터(74)의 독출포트(RP1A)(DCT 실행시) 또는 RP2A(IDCT 실행시)로부터 제2의 1차원 처리수단(8)으로 보내지며, 1차원 처리수단(7),(8)이 각각 1회의 1차원변환의 6스텝 연산을 순서대로 순회실행하고, 이전 블럭(N-1)의 최후의 결과가 출력수단(84)의 출력단으로부터 외부(Dout)로 송출된다. 블럭(N)의 제1의 1차원 변환된 결과는 제1의 데이타 레지스터(74)에 저장되면 제1의 데이타 레지스터(74)는 연속 블럭사이드에서 반드시 열 또는 행의 호환 순서에 따라 데이타 억세스를 행한다. 이러한 구조에 의해 처리 속도를 향상시킬 수 있으며, 높은 바이트율의 응용 환경에 적용될 수 있는 것이다.According to the above arrangement, the execution order of the DCT / IDCT operation is as shown in FIG. 5, in which the DCT / IDCT operation of the block data is executed by the pipeline work of the one-dimensional processing means 7 and 8, As the input data of the block N enters the first one-dimensional processing means 7 from Din and the first one-dimensional conversion of the previous block N-1 is performed, the first data register 74 results. Is sent to the second one-dimensional processing means 8 from the read port RP1A (when executing the CTCT) or the RP2A (when executing the IDCT), and the one-dimensional processing means 7 and 8 are each one-time. The six step operations of the conversion are executed in order, and the last result of the previous block N-1 is sent from the output end of the output means 84 to the outside Dout. When the first one-dimensional transformed result of the block N is stored in the first data register 74, the first data register 74 always performs data access in a row or row compatibility order on the continuous block side. Do it. Such a structure can improve the processing speed and can be applied to a high byte rate application environment.

상기 형태에 있어서의 기본적 사상에는 3가지가 있는데, 그 하나는 순회 실행이며, 다른 하나가 병렬처리, 그리고 하나는 처리속도의 배속 향상이다.There are three basic ideas in this form, one for cyclic execution, the other for parallel processing, and one for speedup of processing speed.

그중 순회 실행은 동일 하드웨어를 이용하여 순회 실행을 수회행하여 어느 작업을 달성하는 것을 의미하며, 즉 시간으로 바꾸어 공간을 얻을 것으로서, 하드웨어를 줄여 원가 절감을 꾀하여 실질적인 작업시간을 중간시키는 것을 의미한다.Among them, the circuit execution means to accomplish a task by performing the circuit execution several times using the same hardware, that is, to convert the space to time to obtain space, and to mean the actual work time by reducing the hardware to reduce the cost.

또한, 병렬처리는 순회 실행과는 반대로 공간으로 바꾸어 시간을 얻는 것으로서, 즉 순회 실행의 구성하에서 실시간의 속도를 달성하기 위해 2개의 독립수단을 이용하여 병렬처리를 행하여, 작업시간을 그다지 지연시키지 않도록 하는 것을 의미한다. 또한, 상기 실시예중의 병렬처리의 구성은 이에 해당하며, 하기의 처리속도의 배속 향상의 직렬구성과 상대되는 것이다.In addition, parallel processing takes time by switching to space as opposed to circular execution, that is, parallel processing is performed using two independent means to achieve real-time speed under the configuration of the circular execution, so as not to delay the working time so much. I mean. Incidentally, the configuration of parallel processing in the above embodiment corresponds to this, and corresponds to the serial configuration of double speed improvement of the following processing speed.

또한, 처리속도의 배속 향상은 상기 순회 실행 및 병렬처리의 구성하에서 더 빠른 비트율로 처리하는 경우, 처리 속도상 실시간으로 처리를 실현하기 위해 더 한층 공간을 바꾸어 시간을 얻는 것이 필요해지기 때문인 것으로 직렬방식에 속한다.In addition, the improvement of the processing speed is due to the fact that when processing at a higher bit rate under the configuration of the above-mentioned execution and parallel processing, it is necessary to obtain more time by changing the space in order to realize the processing in real time on the processing speed. Belongs to.

본 발명에 따른 연산수법은 상기 3가지의 사상을 포함하고 있으며, 따라서 DCT 또는 IDCT에 관계없이 모두 2회의 동일한 순서의 연산수법을 포함함과 동시에 각 회의 연산이 여섯의 연산스텝을 포함하며, 각각 여섯의 연산스텝을 2종류의 연산(버터플라이연산과 승법연산)으로 분별할 수 있으며, 이들 연산이 교호로 행해진다. 즉, 이 특징이 본 발명에 따른 구성 및 실행방법을 형성하고 있다.The arithmetic method according to the present invention includes the above three ideas, and thus includes two arithmetic operations in the same order, regardless of DCT or IDCT, and each arithmetic operation includes six arithmetic steps, respectively. The six operation steps can be classified into two types of operations (butterfly operation and multiplication operation), and these operations are performed alternately. In other words, this feature forms a configuration and an implementation method according to the present invention.

예를 들어 제1도에 있어서는 순회 실행 및 병렬처리의 양 특징이 이용되고 있으며, 이 구성으로 DCT/IDCT를 행하면 12스텝(2회의 10D DCT/IDCT)의 순회 실행이 필요하지만, 이 12스텝은 다시 양 독립연산수단(버터플라이 연산수단과 승법 연산수단)에 의해 각각 6스텝으로 병렬처리를 분담시키고 있으므로, 이에 따라 제2도 및 제3도에 나타난 바와 같이 하나의 블럭을 처리하는데 12스텝분의 시간이 아니라 거의 6스텝의 시간만으로 충분하며, 또한 어느 시점에서 보아도 양 연산이 거의 완전히 작동되고 있다.For example, in Fig. 1, both characteristics of the traversal execution and the parallel processing are used. When DCT / IDCT is performed in this configuration, 12 steps (2 times of 10D DCT / IDCT) need to be executed. In addition, since the parallel processing is divided into six steps by two independent calculation means (butterfly calculation means and multiplication operation means), 12 steps are required to process one block as shown in FIGS. Only six steps are sufficient, not a time, and both operations are almost completely operational at any point in time.

또한, 실행순서로 보면 각 스텝은 64개의 데이타(열 또는 행의 순서로 실행되며, 각 열 또는 행이 각각 8개의 데이타를 포함하여 모두 8열 또는 8행이 있다)를 처리해야 하며, 제1의 스텝에서 복수개의 데이타를 처리해야 하며, 제1의 스텝에서 복수개의 데이타를 처리한 후(여기서 말하는 복수개의 데이타는 DCT와 IDCT에서는 약간 다르지만), 제2의 스텝이 제1의 스텝의 결과에 대해 계속적으로 처리함과 동시에 이전 블럭에 있어서의 최후의 스텝(즉, 두번째 1-D의 제6스텝)이 어느 만큼 길어졌는가에 따라 결정하며, 만약 처음부터 제1개의 블럭을 처리한다고 하며 복수개의 데이타는 가장 많아 8개(1열 또는 1행)이며, DCT, IDCT 모두 그렇다. 그리고, 제3의 스텝이 제1의 스텝과 동일 종류의 연산에 속하고 있으므로, 제1의 스텝이 64개의 데이타를 완전히 처리한 후 접속하고 있으며, 이때 제2의 스텝은 반드시 이미 다수의 데이타를 처리 완료했다고 보증할 수 있으며, 적어도 8개 이상(1열 또는 1행)의 데이타를 제3의 스텝으로 처리시킬 수 있어 대기시킬 필요가 없다.In addition, in order of execution, each step must process 64 data (in the order of columns or rows, each column or row contains 8 data or 8 columns or 8 rows each). A plurality of data must be processed in the step of, and after processing a plurality of data in the first step (although the plurality of data referred to here are slightly different in the DCT and IDCT), the second step is the result of the first step. The last step in the previous block (i.e., the sixth step in the second 1-D) is determined depending on how long it is, and the first block is processed from the beginning. The largest number of data is 8 (1 column or 1 row), DCT and IDCT. In addition, since the third step belongs to the same kind of operation as the first step, the first step is connected after the 64 data have been completely processed. It can be guaranteed that the processing is completed, and at least eight or more (one column or one row) of data can be processed in the third step and there is no need to wait.

또한, 제4,제5 및 제6의 스텝도 마찬가지며, 이러한 연산방식은 하나의 데이타에 이어 하나의 데이타, 하나의 스텝에 이어 하나의 스텝, 1순에 이어 1순(즉, 제1 1-D, 제2 1-D, 제1 1-D,...)과 같이 실행되므로 파이프라인 작업이라 불리운다. 이 파이프라인 작업은 1블럭의 양 순서 연산의 사이(즉 제1 1-D, 와 제2 1-D의 사이)에 약간 중단하지만, 이는 데이타 레지스터수단이 이 임계사이에서 억세스순서를 바꿀 필요가 있기 때문이며(열로부터 행, 행으로부터 열), 그로 인해제2 1-D의 제1스텝은 반드시 제6의스텝이 완전히 종료한 후 시작하는 것으로, 직접 제1 1-D의 제5스텝후에 계속될 수 없으며, 따라서 이때에는 제2 1-D의 제1스텝이 필요로 하는 데이타가 아직 완전히 준비되어 있지 않기 때문이다. 따라서, 개시하고자 해도 개시할 방도가 없는 것이다. 그리고 제2 1-D의 제1스템이 개시되면 그 실행 순서 및 시간은 제1 1-D과 마찬가지이다.The same applies to the fourth, fifth and sixth steps, and the operation method is one data followed by one data, one step followed by one step, and then one after one (i.e., the first one). -D, the second 1-D, the first 1-D, ...) is called a pipeline operation. This pipeline operation stops slightly between one block of both ordered operations (ie between the first 1-D and the second 1-D), but this does not require the data register means to change the access order between these thresholds. This is because the first step of the second 1-D always starts after the sixth step is completely completed, and continues directly after the fifth step of the first 1-D. This is because the data required by the first step of the second 1-D is not yet fully prepared at this time. Therefore, there is no way to start even if it intends to start. When the first system of the second 1-D is started, the execution order and time are the same as those of the first 1-D.

또한 인접하는 양 블럭간의 파이프라인 작업의 중단되는 일이 없고, 따라서 다음 블럭의 데이타가 Din으로부터 들어오기 때문에 제1의 스텝이 대기될 필요가 없어 직접 이전 블럭의 제2 1-D에 있어서의 제5의 스텝후에 이어서 실행할 수 있음과 동시에, 이전 블럭 데이타도 계속 제2 1-D의 제6스텝에 있어서 완성되어 Dout로 보내지므로 데이타 레지스터 수단의 억세스 순서도 열 및 행의 호환을 할 필요가 없다.In addition, pipeline work between two adjacent blocks is not interrupted. Therefore, since the data of the next block comes in from Din, the first step does not need to be waited. After the step 5 is executed, the previous block data is also completed and sent to Dout in the sixth step of the second 1-D, so that the access order of the data register means does not need to be compatible with the columns and rows.

이상, 본 발명에 따르면 구성이 단순화되므로 직접회로의 점유공간을 대폭 축소할 수 있고, 이로 인해 원가가 저감됨과 동시에 처리속도가 향상되므로 실시간 처리의 요구에 부합하여 높은 비트율의 응용 환경에 적용될 수 있다.As described above, according to the present invention, since the configuration is simplified, the space occupied by the integrated circuit can be greatly reduced. As a result, the cost is reduced and the processing speed is improved. Therefore, the present invention can be applied to a high bit rate application environment in accordance with the requirements of real-time processing. .

Claims (8)

이산적 코사인변환(DCT)를 행할 때, 6스텝의 DCT 고속연산법에 의해 일련의 화소 데이타 블럭의 입력 데이타를 처리하여 일련의 변환 데이타를 생성하고, 또한 이 DCT 고속연산법이 각각 복수의 버터플라이 연산을 포함하는 제1,제3 및 제5의 스텝과, 각각 복수의 전치가상승법연산을 포함하는 제2 및 제4의 스텝과, 복수개의 단순승법연산을 포함하는 제6의 스텝을 구비하여 구성되는 이산적 코사인 변환용 집적회로 프로세서에 있어서, (a) 상기 입력데이타를 입력수단(1)로부터 취출하는 단계와, (b) 상기 입력수단(1)을 제어하여 이 입력데이타를 버터플라이 연산수단(2)으로 보냄과 동시에 이 버터플라이 연산수단을 기동하여 상기 제1스텝의 DCT 고속연산을 실행하는 단계와, (c) 상기 버터플라이 연산수단(2)의 제1스템의 출력데이타를 데이타 레지스터(4)에 저장하는 단계와, (d) 상기 데이타 레지스터를 제어하여 상기 제1스텝의 출력데이타를 승법연산수단(3)으로 보냄과 동시에 이 승법연산수단을 기동하여 상기 제2스텝의 DCT 고속연산을 실행시키는 단계와, (e) 상기 데이타 레지스터를 제어하여 상기 승법연산수단(3)의 제2스텝의 출력데이타를 저장하는 단계와, (f) 상기 데이타 레지스터를 제어하여 상기 제1 및 제2스텝의 출력데이타를 상기 버터플라이 연산수단(2)으로 제공하며, 이 버터플라이 연산수단으로 제1스텝의 DCT 고속연산을 실행 완료한 후, 이 버터플라이 연산수단에 의해 제3스텝의 DCT 고속연산을 실행시키는 단계와, (g) 상기 데이타 레지스터를 제어하여 상기 버터플라이 연산수단의 제3스텝의 출력데이타를 저장하는 단계와, (h) 상기 데이타 레지스터를 제어하여 상기 제3스텝의 출력 데이타를 상기 승법연산수단(3)으로 제공하며, 상기 승법연산수단을 기동하여 상기 젠4의 스텝의 DCT 고속연산을 실행시키는 단계와, (i) 상기 데이타 레지스터를 제어하여 상기 승법연산수단(3)의 제4스텝의 출력 데이타를 저장하는 단계와, (j) 상기 데이타 레지스터를 제어하여 상기 제3 및 제4스텝의 출력데이타를 상기 버터플라이 연산수단(2)에 제공하고, 이 버터플라이연산수단으로 제3스텝의 DCT 고속연산을 실행시킨 후 이 버터플라이 연산수단을 기동하여 상기 제5스텝의 DCT 고속연산을 실행시키는 단계와, (k) 상기 데이타 레지스터를 제어하여 상기 버터플라이 연산수단(2)의 출력데이타를 저장하는 단계와, (l) 상기 데이타 레지스터를 제어하여 상기 제5의 출력데이타를 상기 승법연산수단(3)에 제공하고, 상기 승법연산수단을 기동하여 상기 제6스텝의 DCT 고속연산을 실행시키는 단계와, (m) 상기 승법연산수단(3)의 젠6스텝의 출력데이타를 출력수단(5)로부터 취출하는 단계를 구비함과 동시에 상기 (a) 내지 (m)의 단계 순서로 데이타 처리를 행하는 이산적 코산인 변환용의 직접회로 프로세서.When performing discrete cosine transform (DCT), the input data of a series of pixel data blocks is processed by a 6-step DCT fast computation method to generate a series of transform data. The first, third and fifth steps including the ply operation, the second and fourth steps including the plurality of preliminary multiplication operations, and the sixth step including a plurality of simple multiplication operations. An integrated circuit processor for discrete cosine conversion, comprising: (a) extracting the input data from an input means (1), and (b) controlling the input means (1) to butter the input data. Sending to the fly calculating means 2 and activating the butterfly calculating means to perform DCT high-speed calculation of the first step; and (c) output data of the first stem of the butterfly calculating means 2; To the data register (4) (D) controlling the data register to send the output data of the first step to the multiplication operation means 3, and starting the multiplication operation means to execute the DCT fast operation of the second step. (E) controlling the data register to store output data of the second step of the multiplication operation means 3, and (f) controlling the data register to output the first and second steps The data is provided to the butterfly calculating means 2, and the butterfly calculating means executes the DCT high speed calculation in the third step after completion of the first step of the DCT fast calculation. (G) controlling the data register to store output data of the third step of the butterfly calculating means; and (h) controlling the data register to store the output data of the third step. Providing the multiplication operation means (3), starting the multiplication operation means to execute DCT high-speed operation of the step of the gen 4; (i) controlling the data register to control the multiplication operation means (3). Storing output data of the fourth step; and (j) controlling the data register to provide the output data of the third and fourth steps to the butterfly calculating means 2, and to the butterfly calculating means. Executing the butterfly calculating means by executing the DCT high speed operation of the third step and executing the DCT high speed operation of the fifth step; and (k) controlling the data register to control the butterfly calculating means (2). (1) controlling the data register to provide the fifth output data to the multiplication operation means (3), starting the multiplication operation means, and increasing the DCT of the sixth step. Performing the operation; and (m) taking out the output data of the Zen 6 step of the multiplication operation means 3 from the output means 5, and at the same time, the steps of (a) to (m). An integrated circuit processor for discrete cosine transform that performs data processing with 제1항에 있어서, 상기 단계 (l)과 (m)의 사이에 상기 데이타 레지스터(4)를 제어하여 상기 6스텝의 출력 데이타를 저장하는 단계와, 상기 데이타 레지스터를 제어하여 상기 6스텝의 출력데이타를 상기 버터플라이 연산수단(2)으로 제공하고, 또한 상기 버터플라이 연산수단에 의해 제1스텝의 DCT 고속연산을 실행시키는 단계와, 상기 (c) 내지 (l)의 단계의 순서로 중복시키는 단계를 더 구비하는 것을 특징으로 하는 직접회로 프로세서.2. The method according to claim 1, wherein the data register 4 is controlled to store the output data of the six steps between the steps (l) and (m), and the data register is controlled to output the six steps. Providing data to the butterfly calculating means (2), and performing the DCT high-speed operation of the first step by the butterfly calculating means; and duplicating the data in the order of steps (c) to (l). Integrated circuit processor further comprising the step. 이산적 코사인 역변환(IDCT)를 행할 때, 6스텝의 IDCT 고속연산법에 의해 일련의 화소 데이타 블럭의 입력 데이타를 처리하여 1일련의 변환 데이타를 생성하고, 또한 이 IDCT 고속연산이 복수의 단순승법연산을 포함하는 제1의 스텝과, 복수의 버터플라이 연산을 포함하는 각각 제2,제4 및 제6의 스텝과, 복수의 사후 감산 승법연산을 포함하는 각각 제3 및 제5의 스텝을 구비하여 구성되는 이산적 코사인 역변환용의 직접회로 프로세서에 있어서, (a) 상기 입력데이타를 입력수단(1)으로부터 취출하는 단계와, (b) 상기 입력수단을 제어하여 이 입력데이타를 승법연산수단(3)으로 보냄과 동시에, 이 승법연산수단을 기동하여 상기 제1스텝의 IDCT 고속연산을 실행시키는 단계와, (c) 상기 승법연산수단(3)의 제1스텝의 처리데이타를 데이타 레지스터(4)에 저장하는 단계와, (d) 상기 데이타 레지스터(4)를 제어하여 상기 제1스템의 출력데이타를 버터플라이 연산수단(2)으로 보냄과 동시에, 이 버터플라이 연산수단을 기동하여 상기 제2스텝의 IDCT 고속연산을 실시행시키는 단계와, (e) 상기 데이타 레지스터를 제어하여 상기 버터플라이 연산수단(2)의 제2스텝의 출력데이타를 저장하는 단계와, (f) 상기 데이타 레지스터를 제어하여 상기 제2스텝의 출력데이타를 상기 승법연산수단(3)으로 제공하며, 이 승법연산수단을 기동하여 상기 제3스텝의 IDCT 고속연산을 실행시키는 단계와, (g) 상기 데이타 레지스터를 제어하여 상기 승법연산수단(3)의 제3스텝의 출력 데이타를 저장하는 단계와, (h) 상기 데이타 레지스터를 제어하여 상기 제2 및 제3의 출력 데이타를 상기 버터플라이 연산수단(2)으로 제공하며, 상기 버터플라이 연산수단이 제2스텝의 IDCT 고속연산을 실행한 후, 이 버터플라이 연산수단에 의해 상기 제4스텝의 IDCT 고속연산을 실행시키는 단계와, (i) 상기 데이타 레지스터를 제어하여 상기 버터플라이 연산수단(2)의 제4스텝의 출력 데이타를 저장하는 단계와, (j) 상기 데이타 레지스터를 제어하여 상기 제4스텝의 출력데이타를 상기 승법연산수단(3)에 제공하고, 이 승법연산수단을 기동하여 상기 제5스텝의 IDCT 고속연산을 실행시키는 단계와, (k) 상기 데이타 레지스터를 제어하여 상기 승법연산수단(3)의 제5스텝의 출력 데이타를 저장하는 단계와, (l) 상기 데이타 레지스터를 제어하여 상기 제4 및 제5의 출력데이타를 상기 버터플라이 연산수단(2)에 제공하고, 상기 버터플라이 연산수단이 제4의 스텝의 IDCT 고속연산을 시행한 후, 상기 버터플라이 연산수단에 의해 상기 제6스텝의 IDCT 고속연산을 실행시키는 단계와, (m) 상기 버터플라이 연산수단(2)의 제6스텝의 출력데이타를 출력수단(5)으로부터 취출하는 단계와, 를 구비함과 동시에 상기 (a) 내지 (m)의 단계 순서로 행하는 이산적 코사인 변환용의 직접회로 프로세서.When performing discrete cosine inverse transform (IDCT), a series of pixel data blocks are processed by a six-step IDCT fast operation method to generate a series of transform data, and this IDCT fast operation is performed by a plurality of simple multiplication methods. A first step comprising operations, second, fourth and sixth steps each comprising a plurality of butterfly operations, and third and fifth steps each comprising a plurality of post subtraction multiplication operations. An integrated circuit processor for inverse cosine inverse transformation, comprising: (a) extracting the input data from an input means (1), and (b) controlling the input means to multiply the input data by a multiplication operation means ( 3) and simultaneously executing the multiplication operation means to execute the IDCT fast operation of the first step; and (c) processing data of the first step of the multiplication operation means 3; Saving to) And (d) controlling the data register 4 to send the output data of the first system to the butterfly calculating means 2, and simultaneously starting the butterfly calculating means to perform IDCT high-speed operation of the second step. (E) controlling the data register to store output data of the second step of the butterfly calculating means 2, and (f) controlling the data register to perform the second step. Outputting the data to the multiplication operation means (3), starting the multiplication operation means to execute IDCT high-speed operation of the third step; (g) controlling the data register to control the multiplication operation means ( Storing the output data of the third step of 3); and (h) controlling the data register to provide the second and third output data to the butterfly calculating means 2, wherein the butterfly operation is performed. Number After the step executes the IDCT high speed operation of the second step, the butterfly calculating means executes the IDCT high speed operation of the fourth step; (i) controlling the data register to control the data register; Storing output data of the fourth step of 2), (j) controlling the data register to provide the output data of the fourth step to the multiplication operation means 3, and starting the multiplication operation means. Executing the IDCT fast computation of the fifth step; (k) controlling the data register to store output data of the fifth step of the multiplication operation means 3; and (l) storing the data register. Control to provide the fourth and fifth output data to the butterfly calculating means (2), and after the butterfly calculating means performs the IDCT high-speed operation of the fourth step, by the butterfly calculating means remind Performing a six-step IDCT high-speed operation, (m) extracting the output data of the sixth step of the butterfly calculating means 2 from the output means 5, and (a An integrated circuit processor for discrete cosine transform, performed in the order of (m) to (m). 제3항에 있어서, 상기 단계(l)과 (m)의 사이에 상기 데이타 레지스터(4)를 제어하여 상기 제6스텝의 출력데이타를 저장하는 단계와, 상기 데이타 레지스터(4)를 제어하는 상기 제6스텝의 출력데이타를 저장하는 단계와, 상기 데이타 레지스터(4)를 제어하는 상기 제6스텝의 출력데이타를 상기 승법연산수단(3)으로 제공하고, 이 승법연산수단에 의해 제1스텝의 IDCT 고속연산을 실행시키는 단계와, 상기 단계를 (c) 내지 (l)의 순서로 중복시키는 단계를 더 구비하는 것을 특징으로 하는 직접회로 프로세서.4. The method according to claim 3, wherein the step of controlling the data register (4) to store the output data of the sixth step between the steps (l) and (m), and the control of the data register (4). Storing the output data of the sixth step, and providing the output data of the sixth step for controlling the data register 4 to the multiplication operation means 3, and by the multiplication operation means, And executing the IDCT high-speed operation and duplicating the steps in the order of (c) to (l). 입력수단(1), 버터플라이 연산수단(2), 승법연산수단(3), 데이타 레지스터(4), 출력수단(5) 및 제어수단(9)를 구비하는 이산적 코사인변환 및 역변환용의 직접회로 프로세서에 있어서, 상기 입력수단(1)이 외부로부터의 입력 데이타를 접수하고, 상기 버터플라이 연산수단(2)이 상기 입력수단(1) 및 데이타 레지스터(4)로부터의 데이타를 선택 출력하는 제1의 전치 멀티플렉서(721)와, 이 제1의 전치 멀티플렉서로부터의 출력데이타를 받아 가산 및 감산의 버터플라이 연산을 실행하는 버터플라이 연산기(722)를 포함하며, 상기 승법연산(3)이 상기 입력수단 및 데이타 레지스터로부터의 데이타를 선택 출력하는 제2의 전치 멀티플랙서(731)와, 상기 데이타 레지스터(4)에 연접되어 전치 가산연산의 가산부분 및 사후 감산연산 감산부분을 실행하는 보조 가감산기(732)와, 상기 제2의 전치 멀티플렉서와 이 보조 가감산기에 연접되어 단순승법, 전치 가산승법 및 사후 감산승법의 승법부분을 실행하는 곱셈기(733)와, 이 곱셈기에 연접되어 있으며 승법연산의 계수부분으로서 억세스되어 이 곱셈기의 또 하나의 연산 입력을 부여하는 계수 ROM(734)과, 상기 보조 감산기 및 곱셈기에 연결되어 있으며, 이 보조 가감산기 및 곱셈기의 출력을 선택하여 상기 데이타 레지스터(4)에 보내는 출력선택기(735)를 포함하며, 상기 데이타 레지스터(4)가 상기 버터플라이 연산수단(20 및 승법연산수단(3)에 연접되어 있으며, 연산 과정의 중간 결과를 억세스하고, 상기 출력수단(5)이 상기 버터플라이 연산수단(2) 및 승법연산수단(3)에 연결되어 있으며, 이 버터플라이 연산수단 및 승법연산수단의 출력데이타를 선택하여 외부로 송출하며, 상기 제어수단(9)의 상기 각 수단의 동작 순서를 제어순서에 따라 제어하도록 구성된 이산적 코사인 변환 및 역변환용의 집적회로 프로세서.Direct for discrete cosine transform and inverse transform having input means (1), butterfly calculation means (2), multiplication operation means (3), data registers (4), output means (5) and control means (9). In the circuit processor, the input means (1) receives input data from the outside, and the butterfly calculating means (2) selects and outputs data from the input means (1) and the data register (4). A premultiplexer 721 of one, and a butterfly calculator 722 that receives output data from the first premultiplexer and performs a butterfly operation of addition and subtraction, wherein the multiplication operation 3 is the input. A second premultiplexer 731 for selectively outputting data from the means and the data registers; and an auxiliary adder for concatenating the data register 4 to perform the addition portion and the post subtraction subtraction portion of the pre-add operation; (732) A multiplier 733 connected to the second premultiplexer and the auxiliary adder and executing a multiplicative portion of the simple multiplication, preaddition, and post subtraction multiplication, and connected to the multiplier and accessed as a coefficient part of the multiplication; An output selector connected to the coefficient ROM 734 for supplying another operational input of the multiplier and the auxiliary subtractor and the multiplier, the output of the auxiliary adder and multiplier being sent to the data register 4; 735, wherein the data register 4 is concatenated with the butterfly calculating means 20 and the multiplication operation means 3, to access intermediate results of the calculation process, and the output means 5 It is connected to the butterfly calculating means 2 and the multiplication operation means 3, and selects the output data of the butterfly calculating means and the multiplication operation means and sends it to the outside, and An integrated circuit processor for discrete cosine transform and inverse transform, configured to control the operation sequence of the respective means of the control means according to the control sequence. 제5항에 있어서, 상기 입력수단(1)이 디멀티플렉서를 구비하여 구성되어 있으며, DCT/IDCT 연산에 의해 입력된 데이타를 선택하여 상기 버터플라이 연산수단/승법연산수단에 보내도록 구성되어 있는 것을 특징으로 하는 직접회로 프로세서.6. The data input device according to claim 5, wherein said input means (1) comprises a demultiplexer and is configured to select data input by DCT / IDCT operation and send it to said butterfly calculation means / multiplication operation means. Integrated circuit processor. 제1의 1차원 처리수단(7), 제2의 1차원 처리수단(8) 및 제어수단(9)을 구비하며, 상기 제1의 1차원 처리수단(7)에는 입력수단(71), 버터플라이 연산수단(72), 승법연산수단(73) 및 제1의 데이타 레지스터(74)가 설치되며, 상기 입력수단(71)의 외부로부터의 입력데이타를 받아들이고, 상기 버터플라이 연산수단(72)이 상기 입력수단 및 제1데이타 레지스터로부터 출력되는 데이타를 선택하는 제1의 전치 멀티플렉서(721)고, 한 쌍의 가산기 및 감산기로 형성되며, 이 제1의 전치 멀티플렉서로부터의 데이타를 받아 가산 및 감산의 버터플라이 연산을 실행하는 버터플라이 감산기(722)를 구비하고, 상기 승법연산수단(73)이 상기 입력수단 및 제1의 데이타 레지스터로부터 출력되는 데이타를 선택하는 제2의 전치 멀티플렉서(731)와, 상기 제1의 데이타 레지스터(74)에 연접되어 전치가산 승법연산의 가산부분 및 사후 감산 승법연산의 감산부분을 실행하는 보조 가감산기(732)와, 상기 제2의 전치 멀티플렉서 및 보조 가감산기에 연접되어 단순승법, 전치 가산승법 및 사후 감산승법의 승법부분을 실행하는 곱셈기(733)와, 이 곱셈기에 연접되어 승법연산의 계수부분으로서 억세스되어 이 곱셈기의 다른 하나의 연산입력을 부여하는 계수 ROM과, 상기 보조 가감산기 및 곱셈기에 연결되어 이 보조가감산기 및 곱셈기의 출력 데이타를 상기 제1의 데이타 레지스터(74)에 선택 출력하는 출력선택기(735)를 구비하며, 상기 제1의 데이타 레지스터(74)가 상기 버터플라이 연산수단(72) 및 승법연산수단(73)에 연접되어 연산과정에 있어서의 중간 결과를 억세스하도록 구성되어 있으며, 상기 제2의 1차원 처리수단(8)에는 버터플라이 연산수단(81), 승법연산수단(82), 제2의 데이타 레지스터(83) 및 출력수단(84)이 설치되어 있으며, 상기 버터플라이 연산수단(81)이 상기 제1 및 제2의 데이타 레지스터(74,83)의 출력데이타를 선택하는 제1의 전치 멀티플렉서(811)와, 한쌍의 가산기 및 감산기로 형성되어 이 제1의 전치 멀티프렉서로부터의 데이타를 받아 가산 및 감산의 버터플라이 연산을 실행하는 버터플라이 연산기(812)를 구비하며, 상기 승법연산수단(82)이 상기 제1및 제2의 데이타 레지스터(74, 83)로부터 출력되는 데이타를 선택하는 제2의 전치 멀티플렉서(821)와, 상기 제2의 데이타 레지스터(88)에 연접되어 전체 가산승법연산의 가산부분 및 사후 감산승법연산의 감산부분을 실행하는 보조 가감산기(822)와, 상기 제2의 전치 멀티플랙서 및 보조 가감산기에 연접되어 단순승법, 전치 가산승법 및 사후 감산승법의 승법부분을 실행함과 동시에, 상기 제1의 1차원 처리수단(7)의 계수 ROM에도 연접되는 곱셈기(823)와, 상기 보조 가감산기 및 곱셈기에 연접되어 이 보조 가감산기 및 곱셈기의 출력 데이타를 선택하여 상기 제2의 데이타 레지스터(83)에 보내는 출력선택기(824)를 구비하며, 상기 제2의 데이타 레지스터(83)가 상기 버터플라이 연산수단(81) 및 승법연산수단(82)에 연접되어 연산 과정에 있어서의 중간 결과를 억세스하고, 상기 출력수단(84)이 상기 버터플라이 연산수단(81) 및 승법연산수단(82)에 연접되어 이 버터플라이 연산수단 및 승법연산수단의 출력을 선택하여 외부로의 출력데이타로 하며, 상기 제어수단(9)이 상기 제1의 1차원 처리수단(7) 및 제2의 1차원 처리수단(8)의 실행순서를 제어순서에 따라 제어하도록 구성되어 있는 것을 특징으로 하는 이산적 코사인변환 및 역변환용의 직접회로 프로세서.A first one-dimensional processing means (7), a second one-dimensional processing means (8) and a control means (9), wherein the first one-dimensional processing means (7) includes an input means (71) and butter The fly calculating means 72, the multiplication operation means 73, and the first data register 74 are provided to receive input data from the outside of the input means 71, and the butterfly calculating means 72 A first premultiplexer 721 for selecting data output from the input means and the first data register, and is formed by a pair of adders and subtractors, and receives and adds and subtracts the data from the first premultiplexer. A second premultiplexer 731 having a butterfly subtractor 722 for performing a butterfly operation, wherein the multiplication operation means 73 selects data output from the input means and the first data register; Concatenated to the first data register 74 Auxiliary adder and subtractor 732 which executes the addition part of the preaddition multiplication operation and the subtraction part of the post subtraction multiplication operation, and the second premultiplexer and the auxiliary adder subtractor are connected to each other in the simple multiplication method, the preaddition multiplication method, and the post subtraction method. A multiplier 733 for executing the multiplication part, a coefficient ROM concatenated to the multiplier and accessed as a coefficient part of the multiplicative operation to give another operation input of the multiplier, and connected to the auxiliary adder and multiplier And an output selector 735 for selectively outputting output data of an adder / subtracter and a multiplier to the first data register 74, wherein the first data register 74 is the butterfly calculating means 72 and the multiplication method. It is connected to the calculation means 73 and is configured to access intermediate results in the calculation process. The second one-dimensional processing means 8 has a butterfly calculation means 81. A multiplication operation means 82, a second data register 83 and an output means 84, wherein the butterfly calculation means 81 is provided with the first and second data registers 74 and 83; A first premultiplexer 811 that selects output data of the first premultiplexer 811 and a pair of adders and subtractors that receive data from the first premultiplexer and perform butterfly operations for addition and subtraction A second premultiplexer 821, wherein the multiplication operation means 82 selects data output from the first and second data registers 74 and 83, and the second premultiplexer 821; A concatenated subtractor 822 concatenated to the data register 88 to execute the addition part of the whole addition multiplication operation and the subtraction part of the post subtraction multiplication operation, and the second pre-multiplexer and the auxiliary adder subtractor are connected in a simple manner. Multiplication, transposition addition and post sense A multiplier 823 which is connected to the coefficient ROM of the first one-dimensional processing means 7 and the auxiliary adder and the multiplier connected to the multiplier of the first multidimensional processing unit 7 is executed, and the output of this auxiliary adder and multiplier is output. An output selector 824 that selects data and sends it to the second data register 83, wherein the second data register 83 is provided to the butterfly calculating means 81 and the multiplication operation means 82; Are connected to access intermediate results in the calculation process, and the output means 84 is connected to the butterfly calculation means 81 and the multiplication operation means 82 to output the outputs of the butterfly calculation means and the multiplication operation means. Selected as output data to the outside, the control means 9 is configured to control the execution order of the first one-dimensional processing means 7 and the second one-dimensional processing means 8 in accordance with the control sequence This is characterized by Ever cosine integrated circuit processor for the transform and inverse transform. 제7항에 있어서, 상기 입력수단(71)이 디멀티플랙서를 구비하여 구성되어 있으며, DCT/IDCT 연산에 의해 입력된 데이타를 선택하여 상기 제2의 1차원 처리수단(8)의 버터플라이 연산수단 및 제1의 승법연산수단에 보내도록 구성되어 있는 것을 특징으로 하는 직접회로 프로세서.8. The butterfly operation of the second one-dimensional processing means (8) according to claim 7, wherein the input means (71) comprises a demultiplexer and selects data input by a DCT / IDCT operation. And a first multiplication operation means.
KR1019940010391A 1994-05-12 1994-05-12 Vlsi processor for dct/idct KR0126109B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019940010391A KR0126109B1 (en) 1994-05-12 1994-05-12 Vlsi processor for dct/idct

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019940010391A KR0126109B1 (en) 1994-05-12 1994-05-12 Vlsi processor for dct/idct

Publications (2)

Publication Number Publication Date
KR950035402A KR950035402A (en) 1995-12-30
KR0126109B1 true KR0126109B1 (en) 1997-12-19

Family

ID=19382942

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940010391A KR0126109B1 (en) 1994-05-12 1994-05-12 Vlsi processor for dct/idct

Country Status (1)

Country Link
KR (1) KR0126109B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100563493B1 (en) * 1999-09-16 2006-03-27 브이케이 주식회사 Fast discrete cosine transform apparatus and method with the same positions of input data and the corresponding output data

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6882685B2 (en) * 2001-09-18 2005-04-19 Microsoft Corporation Block transform and quantization for image and video coding

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100563493B1 (en) * 1999-09-16 2006-03-27 브이케이 주식회사 Fast discrete cosine transform apparatus and method with the same positions of input data and the corresponding output data

Also Published As

Publication number Publication date
KR950035402A (en) 1995-12-30

Similar Documents

Publication Publication Date Title
US4385363A (en) Discrete cosine transformer
US5331585A (en) Orthogonal transformation processor for compressing information
US5471412A (en) Recycling and parallel processing method and apparatus for performing discrete cosine transform and its inverse
JPH03180965A (en) Integrated circuit apparatus adapted to repeat dct/idct computation using single multiplier/accumulator and single random access memory
JP3938238B2 (en) Fast Fourier transform processor
US6189021B1 (en) Method for forming two-dimensional discrete cosine transform and its inverse involving a reduced number of multiplication operations
JP2679007B2 (en) Digital signal processing integrated circuit
KR0126109B1 (en) Vlsi processor for dct/idct
KR0175733B1 (en) Vlsi for transforming beat serial matrix
JP2662501B2 (en) Integrated circuit processor for discrete cosine transform and inverse transform
US5359549A (en) Orthogonal transformation processor for compressing information
Sun et al. A low-cost VLSI architecture of multiple-size IDCT for H. 265/HEVC
US5343501A (en) Orthogonal transform apparatus for video signal processing
KR100444729B1 (en) Fast fourier transform apparatus using radix-8 single-path delay commutator and method thereof
US5847980A (en) Product-summing arithmetic circuit
JP3970442B2 (en) Discrete cosine transform device and inverse discrete cosine transform device
CN1064507C (en) IC processing device able to actuate cyclically discrete cosine transform and the inverse transform thereof
JP3654622B2 (en) DCT arithmetic device and IDCT arithmetic device
JP2822684B2 (en) Discrete cosine transform device and inverse discrete cosine transform device
JPH05174046A (en) Arithmetic circuit
JP3396818B2 (en) DCT operation circuit and IDCT operation circuit
JP2790911B2 (en) Orthogonal transform operation unit
JPH0613843A (en) Digital signal processing circuit
JP2697619B2 (en) N-point FFT dedicated processor
KR960014197B1 (en) Distributed arithmetic unit

Legal Events

Date Code Title Description
A201 Request for examination
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120925

Year of fee payment: 16

FPAY Annual fee payment

Payment date: 20130913

Year of fee payment: 17

EXPY Expiration of term