KR100311251B1 - 2차원이산코사인변환장치,2차원역이산코사인변환장치및디지탈신호처리장치 - Google Patents

2차원이산코사인변환장치,2차원역이산코사인변환장치및디지탈신호처리장치 Download PDF

Info

Publication number
KR100311251B1
KR100311251B1 KR1019940023780A KR19940023780A KR100311251B1 KR 100311251 B1 KR100311251 B1 KR 100311251B1 KR 1019940023780 A KR1019940023780 A KR 1019940023780A KR 19940023780 A KR19940023780 A KR 19940023780A KR 100311251 B1 KR100311251 B1 KR 100311251B1
Authority
KR
South Korea
Prior art keywords
matrix
calculation
data
register
result
Prior art date
Application number
KR1019940023780A
Other languages
English (en)
Other versions
KR950009472A (ko
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 이데이 노부유끼
Publication of KR950009472A publication Critical patent/KR950009472A/ko
Application granted granted Critical
Publication of KR100311251B1 publication Critical patent/KR100311251B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • 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

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Discrete Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Complex Calculations (AREA)

Abstract

본 발명의 목적은 입출력데이터로서 시리얼데이터를 사용하는 경우에도 레지스터수를 삭감하고 회로규모를 축소할 수 있는 2차원 이산코사인 변환장치를 제공하는데 있다.
그 구성은 임력단자에서 예를들면 화상데이터가 시리얼로 입력되고, 셀렉터(S1∼S12)를 거쳐서 순차후단의 레지스터(R0∼R11)에 전송된다. 이 전송과정에 있어서 제어화로(9)로 부터의 제어신호(CS1∼CS24)에 의해서 데이터는 버스(4)를 거쳐서 소정의 연산기(AS1, AS2, ADD, SUB, MPY)에 공급되어 계산이 실행된다. 연산기에 있어서의 계산결과는 셀렉터(S1∼Sl2) 및 버스(4)를 거쳐서 다시 레지스터(R1∼R12)에 출력되고 최종적으로 계산결과가 출력단자에서 시리얼로 출력된다.

Description

2차원 이산코사인 변환장치, 2차원 역이산코사인 변환장치 및 디지탈 신호처리장치
제 1도는 본 발명의 제 1실시예에 관계되는 2차원 이산코사인 변환장치의 구성도이다.
제 2도는 제 1도에 나타내는 계산회로의 구성도이다.
제 3도는 제 2도에 나타내는 계산회로의 타이밍차트이다.
제 4도는 제 2도에 나타내는 계산회로의 각 구성요소에 있어서의 각 클럭사이클마다의 계산내용을 실명하기위한 도면이다.
제 5도는 제 2도에 나타내는 계산회로의 승산기를 설명하기위한 도면이다.
제 6도는 본 발명의 제 2실시예에 관계되는 2차원 역이산코사인 변환장치의 구성도이다.
제 7도는 제 2실시에에 있어서의 제 2도에 나타내는 계산회로의 타이밍차트이다.
제 8도는 제 2실시예에 있어서의 제 2도에 나타내는 계산회로의 각 구성요소에 있어서의 각 클럭사이클마다 계산내용을 증명하기 위한 도면이다.
제 9도는 본 발명의 제 3실시예에 관계되는 디지탈신호 처리장치의 구성도이다.
제 10도는 종래의 2차원 8×8DCT장치의 구성도이다.
제 11도는 제 10도에 나타내는 계산회로의 구성도이다.
제 12도는 제 10도에 나타내는 시리얼/패러렐변환기의 구성도이다.
제 13도는 제 10도에 나타내는 패러렐/시리얼변환기의 구성도이다.
제 14도는 종래의 2차원 8×8DCT장치의 구성도이다.
제 15도는 제 14도에 나타내는 계산회로의 구성도이다.
* 도면의 주요부분에 대한 부호의 설명
1,100 : 2차원 8×8DCT장치 2,6,34,38,122,124,133,135 : 계산회로
4,62 : 버 스 5,36,123,134 : 병환회로
6 : 제어회로 8,32,126,131 : 승산기
52 : 파이프라인 레지스터 54,56,58,60 : 연산기
121 : 시리얼/패러렐변환기 125 : 패러렐/시리얼변환기
R0∼R11,Reg0∼Reg15 : 레지스터 Hold0∼Hold7 : 홀드회로
S1∼S12,Sell0∼Sell7 : 셀렉터 AS1∼AS2 : 가감산기
ADD : 가산기 SUB : 감산기
MPY : 승산기
본 발명은 디지탈신호 처리장치에 관하여 특히 2차원 이산코사인변환(DCT; Discretc Cosinc TransfDnnation)장치 및 2차원 역이산코사인변환(IDCT; Invcnse DCT)장치 및 그 처리방법에 관한 것이다.
근래, 화상압축의 분야에서는 2차원DCT 및 2차원IDCT를 이용하는 방식이 주류를 점유하고 있다. 2차원 8×8DCT 및 2차원 8×8IDCT는 하기식(17)으로 나타내는 변환이다. 하기 식(1)에 있어서 첨자의 『t』는 전치행렬을 나타내고, [Nt]와 [N]은 전치행렬의 관계에 있다.
식(17)에 있어서,[X]는 예를들면 8×8의 실공간의 화상행렬데이터이며,[C]는 [X]에 대응하는 8×8의 주파수공간의 행렬데이터이며, [N]은 [C]를 [X]로 변환하기위한 8×8 정수행렬이 다.
[N]은 하기 식(18), [Nt]는 하기 식(19)와 같이 나타낸다.
[수 18]
[수 19]
2차윈 8×8DCT, IDCT의 계산을 상기 식(17)을 그대로 단순히 계산하여 행하면 승산회수가 상당히 많아지고 다수의 승산기를 포함하는 방대한 하드웨어가 필요하게 된다는 문제가 있다.
이 문제를 해결하기위해 본 출원인에 의한 일본 특원평4-211014호에서는 상기 식(17)에 나타내는 정수행렬[N]을 대각선성분이 무리수이며 다른성분이 모두『0』인 행렬[W] 및 각 성분이 무리수 『+1』 혹은 『-1』의 어느것인 행렬 『M』로 행렬분해하고, 정수행렬[Nt]을 상기 행렬[W]의 전치행렬인 행렬[Wt] 및 상기 행렬[M]의 전치행렬인 행렬[Mt]로 행렬분해하고, 이들 행렬분해된 행렬식에 기초해서 계산을 실행함으로써 DCT의 승산회수를 줄일 수 있는 2차원 8×8DCF장치를 나타낸다.
이 2차원 8×8DCT장치에서는 상기 식(17)에 나타내는 DCT의 식을 하기 식(20)과 같이 변환하고, 하기 식(20)을 하기 스텝(S1)∼스템(S3)의 순서로 계산하는 것으로 승산회수를 저감하고, 승산기 수의 증대에 의한 연산회로의 대규모화를 억제한다.
[수 20]
[수 21]
상기 식(20)에 있어서의 행렬[W]은 하기 식(22)으로 나타낸다.
[수 22]
또, 상기 식(20)에 있어서의 행렬[M]은 하기식(23)으로 나타낸다.
[수 23]
또한 상기 식(20)에 있어서의 행렬[W], 행렬[M]은 각각 행렬[W], 행렬[M]의 전치행렬이며, 하기 식(24),(25)으로 나타낸다.
[수 24]
[수 25]
제 10도는 상기 식(20)의 계산을 하는 2차원 8×8DCT장치(100)의 구성도이다.
제 10도에 표시하는 바와같이 2차원 8×8DCT장치(100)는 시리얼/패러렐변환기(121), 계산회로(122), 병환회로(123), 계산회로(124), 패러렐/시리얼변환기(125) 및 승산기(126)로 구성된다.
이 2차윈 8×8DCT장치(100)에서는 화상데이터인 행렬[X]을 시리얼로 입력하고, 시리얼/패러렐변환기(121)로행렬[X]을 패러렐데이터로변환하고, 계산회로(122)를 이용하여 상기 스템(S1)의 계산을 실행하고, 병환회로(123) 및 계산회로(124)를 이용하여 상기 스템(S2)의 계산을 실행하고, 패러렐/시리얼변환기(125)를 이용하여 계산회로(124)로 부터의 패러렐데이터를 시리얼데이터로 변환하고, 승산기(126)를 이용하여 상기 스템(s3)의 계산을 실행하고, 승산기(126)에서 주파수상의 데이터인 행렬[C]을 시리얼로 출력한다.
제 11도는 계산희로(122)의 구성도이다.
제 11도에 나타내는 xx0∼xx7은 하기 식(26)으로 나타내는 벡터[xx]의 구성의 요소이며, 벡터[xx]는 식(20)의 행렬[x]의 방향의 구성요소로 구성되는 벡터이다. 또 yy0∼yy7은 하기 식(27)으로 나타내는 벡터[yy]의 구성요소이며, 벡터[y]는 스텝(S1)의 행렬[Y]의 행방향의 구성요소로 구성되는 벡터이다.
[수 26]
[수 27]
계산회로(122)는 8요소의 입력데이터(xx0, xx1, …, xx7)를 패러렐로 입력하여 8요소의 출력데이터(yy0, yy1,… , yy7)를 패러렐로 출력하는 구성으로 되어 있다.
계산회로(122)에서는 예를들면 입력데이터(xx0)는 가산기(90a)로 입력데이터(xx7)와 가산되고, 이 가산결과가 xp0로서 가산기(90b)에 출력된다. 가산기(90b)에서는 xp0와 xp3가 가산되고, 가산결과가 xr0로서 가산기(90c)에 출력된다. 가산기(90c)에서는 xr0와 xrl이 가산되고 가산결과가 yy0로서 출력된다.
제 12도에 시리얼/패러렐변환기(121)의 구성도를 나타낸다.
시리얼/패러렐변환기(121)에서는 입력단자에서 데이터가 1사이클에 1워드씩 워드시리얼로 입력되면 8사이클 종료후에는 레지스터(단위지연회로)(Rcg0∼7)에 8개의 데이터가 유지되므로 이들을 8개의 대응하는 홀드회로(Hold 0∼7)에 각각 이동하고, Hold 0∼7로 부터의 출력을 출력단자에서 얻으므로서 1입력 8출력의 시리얼/패러렐변환이 실현된다.
제 13도에 패러렐/시리얼변환기(125)의 구성도를 나타낸다.
패러렐/시리일변환기(125)에서는 8개의 입력단자에서 8개의 데이터가 1사이클간에 입력되고 이들 데이터가 8개의 셀렉터(Sc10∼17)을 거쳐 레지스터(Rg8∼15)에 유지되고, 2사이클째이후에 Rg8∼15가 직렬로 접속되도록 S10∼17가 도시하지않은 제어회로로 부터의 제어신호에 의해 제어되고, 8사이클 걸쳐서 데이터가 1워드씩 출력단자에서 출력되는 것으로 8입력 1출력의 패러렐/시리얼 변환이 실현된다.
홀드회로는 데이터를 유지하는 회로이며, 기본적으로는 레지스터와 같다. 따라서 제 10도의 8×8DCT장치(100)에서는 홀드회로는 시리얼/패러렐변환기(121)내에 16개 및 패러렐/시리얼변환기(125)내에 8개 각각 필요하게되고 합계 24개 필요하게된다.
또한 상기 특윈에서는 상기 식(17)에 나타내는 정수행렬[N]을 대각선성분이 무리수이며, 다른성분이 모두 『0』인 행렬[G] 및 각 성분이 무리수 『+1』 혹은 『-1』의 어느것인 행렬[F]로 행렬분해하고, 정수행렬[Nt]을 상기 행렬[G]의 전치행렬인 행렬[Gt] 및 상기 행렬[F]의 전치행렬인 행렬 [Ft]로 행렬분해하고, 이들 행렬분해된 행렬식에 기초해서 계산을 실행함으로써 IDCT의 승산회수를 줄일 수 있는 2차윈 8×8IDCT장치를 나타낸다.
이 2차원 8×8IDCT장치에서는 상기 식(17)에 나타내는 IDCT의 식을 하기 식(28)과 같이 식변환하고, 하기 식(28)을 하기 스텝(S1')∼스텝(S3')의 순서로 계산하는 것으로 승산회수를 저감하고, 승산기 수의 증대에 의한 연산회로의 대규모화를 억제한다.
[수 28]
[수 29]
상기 식(28)에 있어서의 행렬[G]은 하기 식(30)으로 나타낸다.
[수 30]
또, 상기 식(28)에 있어서의 행렬[F]은 하기 식(31)으로 나타낸다.
[수 31]
또한 상기 식(28)에 있어서의 행렬[Gt], 행렬[Ft]은 각각 행렬[G], 행렬[F]의 전치행렬이며, 하기식(32),(33)으로 정의된다.
[수 32]
[수 33]
제 14도는 상기 식(28)의 계산을 행하는 2차윈 8×8IDCT장치(130)의 구성도이다.
제 14도에 표시하는 바와같이 2차원 8×8DCT장치(130)는 승산기(131), 시리일/패러렐변환기(121), 계산회로(133), 병환회로(134), 계산회로(135) 및 패러렐/시리얼변환기(125)로 구성된다.
이 2차원 8×8IDCT장치(130)에서는 주파수공간의 데이터인 행렬[C]을 시리얼로 입력하고 승산기(131)로 스템(S1')의 계산을 시리얼로 실행하고 시리얼/패러렐변환기(121)로 패러렐데이터로 변환하고, 계산회로(133)를 이용하여 상기 스템(S2')의 계산을 실행하고, 병환회로(134) 및 계산회로(135)를 이용하여 상기 스텝(S3')의 계산을실행하고, 패러렐/시리얼변환기(125)를 이용하여 계산회로(135)로 부터의 패러렐데이터를 시리얼데이터로 변환하고, 실공간의 화상데이터인 행렬[X]을 시리얼로 출력한다.
제 15도는 계산회로(135)의 구성도이다.
제 15도에 나타내는 벡터[yy]는 하기식(34) 및 벡터[xx]는 하기 식(35)에서 각각 나타내고 벡터[yy]는 스템(S2')에서 생성된 행렬[Q]을 병환회로(134)에서 행과 열을 병환한 행렬의 행방향의 구성요소로 구성되는 벡터이며, [xx]는 스텝(S3')으로 생성되는 실공간의 행렬[X]의 행방향의 구성요소로 구성되는 벡터이다.
[수 34]
[수 35]
제 15도에 표시하는 계산회로(135)는 8요소의 입력데이터(yy0, yy1,…, yy7)를 패러렐로 입력하고, 8요소의 출력데이터(xx0, xx1,…, xx7)를 패러렐로 출력하는 구성으로 되어 있다.
이 2차원 8×8IDCT장치(130)에서도 2차원 8×8DCT장치(100)의 경우와 동일하게 시리얼/패러렐변환기(121)내 및 패러렐/시리얼변환기(125)내에 합계 24개의 레지스터를 필요로 한다.
그러나, 상술한 일본 특원평 4-211014호가 개시하는 2차원 8×8DCT장치(100) 및 2차원 8×8IDCT장치(130)에서는 상기 스텝(S1∼S3) 및 스템(S1'∼S3')의 순서로 계산을 행하는 것으로 종래 기술의 경우에 비해 승산기의 수를 저감시켜 회로규모를 축소할 수 있으나 워드시리얼로 행렬데이터를 입출력하는 경우에는 종래의 경우와 동일하게 제 10도 및 제 14도에 나타내는 바와같은 다수의 레지스터를 포함하는 시리얼/패러렐변환기(121) 및 패러렐/시리얼변환기(125)가 필요하게 되고, 이 부분의 회로 규모가 커지는 문제가 있다.
상술한 종래기술의 문제를 해결하기위해 본 발명은 입출력데이터로서 워드시리얼데이터를 이용하는 경우에 있어서도 레지스터수를 저감하고 회로규모를 더욱 축소할 수 있는 2차원 이산코사인 변환장치, 2차원 역이산코사인 변환장치 및 디지탈신호 처리장치를 제공하는 것을 목적으로 한다.
상술한 문제를 해결하고 상술한 목적을 달성하기위해 본 발명의 2차원 이산코사인 변환장치는 적어도 하나의 대각성분이 무리수이고 다른 각 성분이 『0』인 제 1행렬과 각 성분이 무리수, 『+1』 혹은 『-1』의 어느것인 제 2행렬로 행렬분해할 수 있는 제 1계수행렬과, 상기 제 2행렬의 전치행렬인 제 3행렬과 상기 제 1행렬의 전치행렬인 제 4행렬로 행렬분해할 수 있는 상기 제 1계수행렬의 전치행렬인 제 2계수행렬을 각각 좌측 및 우측에서 입력행렬로 승산하고, 그 승산결과인 출력행렬의 각 성분을 출력하는 행렬데이터 승산장치로서,
상기 제 2행렬과 상기 입력행렬과의 승산에 상당하는 소정의 계산을 행하는 제 1계산회로와, 이 제 1계산회로의 승산결과와 상기 제 3행렬과의 승산에 상당하는 소정의 계산을 행하는 제 2계산회로와, 이 제 2계산회로의 승산결과에 대하여 좌측에서 상기 제 1행렬을 승산하며 우측에서 상기 제 4행렬을 승산하는 계산에 상당하는 소정의 계산을 행하는 승산기를 가지며,
상기 제 1계산회로 및 상기 제 2계산회로는 직렬적으로 접속된 복수의 기억소자와, 이 기억소자에서 공급되는 데이터를 이용하여 소정의 계산을 행하고, 계산결과를 소정의 상기 기억소자로 출력하는 단수 또는 복수의 연산기를 가지며, 제 1단의상기 기억소자에서 데이터를 시리얼로 입력하고, 이 입력한 데이터를 파이프라인방식으로 순차, 후단의 기억소자에 전송하고, 이 전송과정에 있어서 상기 연산기에 의한 상기 계산을 행하고 최종단의 상기 기억소자에서 계산결과를 나타내는 데이터를시리얼로 출력한다.
또, 본 발명의 2차원 역이산코사인 변환장치는 적어도 하나의 대각성분이 무리수이고, 다른 각 성분이 『0』인 제 1행렬과, 각 성분이 무리수, 『+1』혹은 『-1』의 어느것인 제 2행렬로 행렬분해할 수 있는 제 1계수행렬과, 상기 제 2행렬의 전치행렬인 제 3행렬과, 상기 제 1행렬의 전치행렬인 제 4행렬로 행렬분해할 수 있는 상기제 1계수행렬의 전치행렬인 제 2계수행렬을 각각 우측 및 좌측에서 입력행렬로 승산하고, 그 승산결과인 출력행렬의 각 성분을 출력하는 행렬데이터 승산장치로서,
상기 입력행렬에 대하여 좌측에서 상기 제 4행렬을 승산하고 우측에서 상기 제1행렬을 승산하는 계산에 상당하는 계산을 행하는 승산기와 이 승산기와 상기 제 2행렬의 승산에 상당하는 계산을 행하는 제 1계산회로와, 상기 제 3행렬과 상기 제 1계산회로의 상기 승산결과와의 승산에 상당하는 계산을 행하는 제 2계산회로를 가지며,
상기 제 1계산회로 및 상기 제 2계산회로는 직렬적으로 접속된 복수의 기억소자와, 이 기억소자에서 공급되는 데이터를 이용하여 소정의 계산을 행하고, 계산결과를 소정의 상기 기억소자로 출력하는 단수 또는 복수의 연산기를 가지며,
제 1단의 상기 기억소자에서 데이터를 시리얼로 입력하고, 이 입력된 데이터를 파이프라인방식으로 순차, 후단의 기억소자로 전송하고, 이 전송과정에 있어서 상기 연산기에 의한 상기 계산을 행하고, 최종단의 상기 기억소자에서 계산결과를 나타내는 데이터를 시리얼로 출력한다.
또한, 본 발명의 디지탈 신호처리장치는 직렬적으로 접속된 복수의 기억소자와 이 기억소자에서 공급되는 데이터를 이용하여 소정의 계산을 행하고 계산결과를 소정의 상기 기억소자로 출력하는 단수 또는 복수의 연산기를 가지며,
제 1단의 상기 기억소자에서 데이터를 시리얼로 입력하고, 이 입력한 데이터를 파이프라인방식으로 순차, 후단의 기억소자로 전송하고, 이 전송과정에 있어서 상기 연산기에 의한 상기 계산을 행하고, 최종단의 상기 기억소자에서 계산결과를 나타내는 데이터를 시리얼로 출력한다.
본 발명의 2차윈 이산코사인 변환장치에서는 입력행렬에 따른 데이터가 시리얼로 제 1계산회로에 입력되고, 이 제 1계산회로로 각 성분이 무리수, 『+1』혹은 『-1』의 어느것인 제 2행렬과 상기 입력행렬과의 승산에 상당하는 소정의 계산이 실행되고, 계산결과를 나타내는 데이터가 시리얼로 출력된다.
이 제 1계산회로의 계산결과를 나타내는 데이터는 다음에 제 2계산회로에 시리얼로 입력되고, 이 제 2계산회로로 이 제 1계산희로의 계산결과를 나타내는 데이터와, 상기 제 2행렬의 전치행렬인 제 3행렬과의 승산에 상당하는 소정의 계산이 실행되고, 계산결과를 나타내는 데이터가 시리얼로 출력된다.
이 제 2계산회로의 계산결과를 나타내는 데이터는 다음에 승산기에 시리얼로 입력되고, 이 승산기로 좌측에서 적어도 하나의 대각성분이 무리수이며, 다른 각 성분이 『0』인 제 1행렬을 승산하고 우측에서 상기 제 1행렬의 전치행렬인 제 4행렬을 승산하는 계산에 상당하는 소정의 계산이 실행되고 계산결과를 나타내는 데이터가 시리일로 출력된다.
상기 제 1계산회로 및 제 2계산회로에 있어서는 데이터가 제 1단의 기어소자에 시리얼로 입력되고, 이 입력된 데이터는 파이프라인방식으로 순차,후단의 기억소자에 전송된다. 그리고 이 전송과정에 있어서 연산기에 의한 소정의 계산이 실행되고, 최종단의 기억소자에서 계산결과를 나타내는 데이터가 시리얼로 출력된다.
[실시예]
제 1실시예에 대하여 설명한다.
본 발명에서는 상술한 종래의 2차원 8×8DCT장치(100)와 동일하게 하기 식(36)을 하기 스텝(S1∼S3)에 나타내는 순서로 실행하는 2차원 8×8DCT장치에 대하여 설명한다.
[수 36]
[수 37]
상기 식(36)에 있어서의 행렬[W]은 하기 식(38)으로 나타낸다.
[수 38]
또, 상기 식(36)에 있어서의 행렬[M]은 하기 식(39)으로 나타낸다.
[수 39]
또한 상기 식(36)에 있어서의 행렬[Wt], 행렬[Mt]은 각각 행렬[W] 및 행렬[M]의 전치행렬이며, 하기식(40),(41)으로 나타낸다.
[수 40
[수 41]
또, 상기 식(36)에 있어서의 [X]는 8×8의 실공간의 화상데이터이며,[C]는 [X]에 대응하는 8×8의 주파수공간의 데이터이다.
제 1도는 본 실시예의 2차원 8×8DCT장치(1)의 구성도이다.
2차원 8×8DCT장치(1)는 계산회로(2), 병환회로(5), 계산회로(6) 및 승산기(8)로 구성되고, 각 구성요소는 시리얼데이터를 입력하고, 시리얼데이터를 출력한다.
따라서 2차원 8×8DCT장치(1)에서는 상술한 종래의 2차윈 8×8DCr장치(100)와같이 합계 24개의 레지스터를 포함하는 시리얼/패러렐변환기 및 패러렐/시리얼변환기를 필요로 하지않고 각 구성요소에 있어서 시리얼데이터를 후술하는 바와같이 그대로 처리할 수 있고, 레지스터수를 대폭으로 저감할 수 있는 동시에 회로규모를 더욱 축소하는 것이 가능하게 된다.
계산회로(2)는 상기 스텝(S1)의 계산을 실행한다.
병환회로(5) 및 계산회로(6)는 스텝(S2)의 계산을 실행한다.
승산기(8)는 스텝(S3)의 계산을 실행한다.
제 2도는 제 1도에 나타내는 계산회로(2)의 구성도이다.
제 2도에 나타내는 바와같이 계산회로(2)는 입력단자와 접속된 레지스터(R0), 레지스터(R1∼R11) 및 출력단자와 접속된 레지스터(R12)가 직렬로 접속되고, 13단의 파이프라인 레지스터를 구성하고 있다. 각 레지스터간에는 셀렉터레지스터(S1∼S12)가 각각 설치되어 있고, 셀렉터레지스터(Si)(1i12)는 레지스터(Ri-1) 및 버스(4)로부터의 데이터를 제어회로(9)로부터의 제어신호(CS1∼CS12)에 기초해서 선택적으로 레지스터(Ri)에 출력한다.
계산회로(2)에는 가감산기(AS1, AS2), 가산기(ADD), 감산기(SUB) 및 승산기(MPY)가 설치되어 있다. 가감산기(AS1, AS2)는 각각 버스(4)와 접속되고, 가산/감산선택신호(CS13, CS14)에 기초해서 버스(4)에서 공급된 데이터에 대하여 가산 및 감산을 1클럭사이클로 선택적으로 행하고, 계산결과를 버스(4)에 출력한다. 가산기(ADD)는 버스(4)와 접속되고, 버스(4)에서 공급된 데이터에 대하여 가산을 1클럭사이클로 행하고 계산결과를 버스(4)에 출력한다. 감산기(SUB)는 버스(4)와 접속되고, 버스(4)에서 공급된 데이터에 대하여 감산을 1클럭사이클로 행하고, 계산결과를 버스(4)에 출력한다. 승산기(MPY)는 버스(4)와 접속되고, 버스에서 공급된 데이터와 제어회로(9)로부터의 계수신호(S15)에 표시되는 계수와의 승산을 행하고 계산결과를 버스(4)에 출력한다. 승산기(MPY)에 있어서의 승산은 1클럭사이클이상 필요하기때문에 승산을 파이프라인화하여 실행한다. 즉 각 클럭사이클마다 순차 승산기(MPY)로 데이터를 입력하는 것은 가능하나, 그 승산결과는 소정의 클럭사이클 만큼 지연되어서 승산기(MPY)에서 출력된다.
단, 버스(4)는 경합하지않도록 충분히 넓은 폭을 갖게하여 둔다. 혹은 경합할 때는 시분할로 데이터를 송신하도록 하여둔다. 또 이하에서 기술하는 바와같이 DCT전용회로 등 특정의 어플리케이션에 적용하는 경우에는 모든 레지스터와 모든 연산기를 버스로 접속할 필요는 없다. 즉 특정의 어플리케이션에 있어서 사용하지 않는 레지스터와 연산기와의 조합은 버스로 접속할 필요는 없다.
이하, 계산회로(2)를 이용하여 스텝(S1)의 계산을 행할 경우에 대하여 설명한다.
제 3도는 계산회로(2)를 이용하여 스텝(S1)의 계산을 행할때의 타이밍차트이다.
제 4도는 제 3도의 각 클럭사이클에 있어서의 계산내용을 설명하기위한 도면이다.
제 3도 및 제 4도에 표시되는 xx0∼xx7, xp0∼xp7, xq4∼xq7, xr0∼xr7, xs2∼xs7 및 yy0∼yy7은 제 8도에 나타내는 것과 동일하다.
입력데이터(xx0∼xx7)는 제 3도에 표시하는 바와같이 1∼8클럭사이클에 걸쳐서 순차, 입력단자에서 입력된다.
여기서 입력데이터(xx0∼xx7)는 식(36)의 행렬[X]의 행방향의 구성요소로 구성되는 벡터이다.
행렬[X]을 구성하는 행방향의 벡터를 단위로서 이하의 계산이 실행되고, 모든 행방향의 벡터의 계산을 행하는 것으로 행렬[X]에 대하여 상기 식(36)의 계산이 실행된다.
입력데이터는 1클럭사이클마다에 순차 후단의 레지스터(R0∼R12) 및 버스(4)에 출력된다. 버스(4)에 출력된 입력데이터는 제어회로(9)로 부터의 연산지시신호(CS20∼CS24)에 기초해서 소정의 가감산기(AS1, AS2), 가산기(ADD), 감산기(SUB) 혹은 승산기(MPY)에 공급되고, 스텝(S1)에 따른 계산이 실행된다. 가감산기(AS1,AS2), 가산기(ADD), 감산기(SUB) 혹은 승산기(MPY)에 있어서의 계산결과는 버스(4)를 거쳐 셀렉터(S1∼S12)에 출력되고, 제어신호(CS1∼CS12)에 따라서 소정의 레지스터(R1∼R12)에 출력된다.
제어회로(9)는 가감산기(AS1, AS2), 가산기(ADD), 감산기(SUB) 및 승산기(MPY)에 대하여 제 4도에 나타내는 순서로 스텝(S1)의 계산이 실행되도록 제어신호(CS1∼CS12), 연산지시신호(CS20∼CS24), 가산/감산선택신호(CSI3, CS14) 및 계수신호(S15)를 출력한다.
이하, 계산회로(2)에 있어서의 계산순서를 제 3도 및 제 4도를 이용하여 각 클럭 사이클마다 설명한다.
1∼8클럭사이클쩨:행렬데이터[X]의 8요소가 xx0, xx1, xx2, xx3, xx4, x6, xx7, xx6의 순으로 입력단자에서 입력되고, 순차 후단의 레지스터에 출력된다.
6클럭사이클째: 제 3도에 표시하는 바와같이 입력단자에서 데이터(xx2)가 입력되고, 레지스터(R0∼R4)에는 데이터(xx3, xx4, x5, xx7, xx6)가 각각 기억되어 있다.
그리고 계산회로(2)에서는 6클럭사이클쩨에 있어서 제 4도에 표시하는 바와같이 레지스터(R0)에 기억된 데이터(xx3) 및 레지스터(R1)에 기억된 데이터(xx4)를 버스(4)를 거쳐 가산기(ADD) 및 감산기(SUB)에 공급하고 가산기(ADD)에 있어서 데이터(xx3)와 데이터(xx4)와의 가산을 실행하고, 감산기(SUB에 있어서 데이터(xx3)와 데이터(xx4)와의 감산을 행하고, 가산기(ADD)에 있어서의 가산결과(xp3)를 레지스터(R2)에 기억시켜, 감산기(SUB)에 있어서의 감산결과(xp4)를 레지스터(R1)에 기억시킨다.
즉, 6클럭사이클째가 종료한 시점에서 데이터(xp3)가 레지스터(R2)에 기억되고 데이터(xp4)가 레치스터(R1)에 기억된다.
7클럭사이클째: 가산기(ADD)로 레지스터(R0)에 기억된 데이터(xx2)와 레지스터(R3)에 기억된 데이터(xx5)와의 가산이 실행되고 가산결과 xp2가 레지스터(R4)에 기억된다.
또, 감산기(SUB)를 레지스터(R0)에 기억된 데이터(xx2)와 레지스터(R3)에 기억된 데이터(xx5)와의 감산이 실행되고, 감산결과(xp5)가 레지스터(R1)에 기억된다.
8클럭사이클째: 가산기(ADD)로 레지스터(R0)에 기억된 데이터(xx1)와 레지스터(R6)에 기억된 데이터(xx6)와의 가산이 실행되고, 가산결과(xp1)가 레지스터(R7)에 기억된다.
또 감산기(SUB)로 레지스터(R0)에 기억된 데이터(xx1)와 레지스터(R6)에 기억된 데이터(xx6)와의 감산이 실행되고, 감산결과(xp6)가 레지스터(R1)에 기억된다.
9클럭사이클째: 승산기(MPY)로 제어회로(9)로 부터의 계수신호(S15) 및 연산지시 신호(S24)에 기초해서 레지스터(R1)에 기억되어 있는 데이터(xp6)를 버스(14)를 거쳐 입력하고, 데이터(xp6)와 계수신호(S15)에 표시되는 계수(A4)(=2×cos(4×π/16))와의 승산이 실행되고, 그 승산결과(xq5)가 10클럭사이클째의 종료시에 버스(14)를 거쳐 레지스터(R3)에 기억된다.
승산기(MPY)에 있어서의 계산은 상술한 바와같이 파이프라인화되어 있고, 9클럭사이클째에 입력한 데이터에 대하여 승산결과는 10클럭사이클째 종료시에 출력되다.
또 가감산기(AS2)로 레지스터(R2)에 기억된 데이터(xp5)와 레지스터(R1)에 기억된 데이터(xp6)와의 가산이 실행되고 가산결과(xq6)가 레지스터(R3)에 기억된다.
또 가산기(ADD)로 레지스터(R0)에 기억된 데이터(xx0)와 레지스터CR6)에 기억된 데이터(xx7)와의 가산이 실행되고 가산결과(xp0)가 레지스터(R7)에 기억된다.
또, 감산기(SUB)로 레지스터(R0)에 기억된 데이터(xx0)와 레지스터(R6)에 기억된 데이터(xx7)와의 감산이 실행되고, 감산결과(xp7)가 레지스터(R1)에 기억된다.
10클럭사이클째: 승산기(MPY)로 레지스터(R1)에 기억되어 있는 데이터(xp7)와 계수(A4)(=2×cos(4×π/16))와의 승산이 실행되고, 그 승산결과(xq4)가 11클럭사이클째의 종료시에 레지스터(R3)에 기억된다.
또 가감산기(AS2)로 레지스터(R4)에 기억된 데이터(xp4)와 레지스터(R1)에 기억된데이터(xp7)와의 가산이 실행되고, 가산결과(xq7)가 레지스터(R5)에 기억된다.
또 가산기(ADD)로 레지스터(R8)에 기억된 데이터(xp1)와 레지스터(R6)에 기억된 데이터(xp2)와의 가산이 실행되고, 가산결과(xr1)가 레지스터(R9)에 기억된다.
또, 감산기(SUB)로 레지스터(R8)에 기억된 데이터(xp1)와 레지스터(R6)에 기억된 데이터(xp2)와의 감산이 실행되고, 감산결과(xr3)가레지스터(R7)에기억된다.
11클럭사이클째: 가산기(ADD)로 레지스터(R8)에 기억된 데이터(xp0)와 레지스터(R6)에 기억된 데이터(xp3)와의 가산이 실행되고 가산결과(xr0)가 레지스터(R9)에 기억된다.
또, 감산기(SUB)로 레지스터(R8)에 기억된 데이터(xp0)와 레지스터(R6)에 기억된 데이터(xp3)와의 감산이 실행되고, 감산결과(xr2)가 레지스터(R7)에 기억된다.
12클럭사이클째: 가감산기(AS1)로 레지스터(R10)에 기억된 데이터(xr1)와 레지스터(R9)에 기억된 데이터(xr0)와의 가산이 실행되고, 가산결과(yy0)가 레지스터(R12)에 기억된다.
승산기(MPY)로 레지스터(R7)에 기억되어 있는 데이터(xr2)와, 계수(A4)(=2×cos(4× π/16))와의 승산이 실행되고, 그 승산결과(xs2)가 13클럭사이클째의 종료시에 레지스터(R9)에 기억된다.
또, 가감산기(AS2)로 레지스터(R8)에 기억된 데이터(xr3)와 레지스터(R7)에 기억된 데이터(xr2)와의 가산이 실행되고, 가산결과(xs3)가 레지스터(R9)에 기억된다.
또 가산기(ADD)로 레지스터(R4)에 기억된 데이터(xq5)와 레지스터(R6)에 기억된 데이터(xq7)와의 가산이 실행되고, 가산결과(xr5)가 레지스터(R7)에 기억된다.
또, 감산기(SUB)로 레지스터(R4)에 기억된 데이터(xq5)와 레치스터(R6)에 기억된 데이터(xq7)와의 감산이 실행되고, 감산결과(xr7)가 레지스터(R5)에 기억된다.
13클럭사이클째: 가감산기(AS1)로 레지스터(R10)에 기억된 데이터(xr0)와 레지스터(R11)에 기억된 데이터(xr1)와의 가산이 실행되고, 가산결과(yy4)가 레지스터(R12)에 기억된다.
또, 가산기(ADD)로 레지스터(R4)에 기억된 데이터(xq4)와 레지스터(R6)에 기억된 데이터(xq6)와의 가산이 실행되고, 가산결과(xr4)가 레지스터(R7)이 기억된다.
또, 감산기(SUB)로 레지스터(R4)에 기억된 데이터(xq4)와 레지스터(R6)에 기억된 데이터(xq6)와의 감산이 실행되고, 감산결과(xr6)가 레지스터(R5)에 기억된다.
14클럭사이클째: 가감산기(AS1)로 레지스터(R10)에 기억된 데이터(xs3)와 레지스터(R9)에 기억된 데이터(xs2)와의 가산이 실행되고, 가산결과(yy2)가 레지스터(R12)에 기억된다.
승산기(MPY)로 레지스터(R7)에 기억되어 있는 데이터(xr4)와, 계수(A2)(=2×cos(2× π/16))와의 승산이 실행되고, 그 승산결과(xs4)가 15클럭사이클째의 종료시에 레지스터(R9)에 기억된다.
또, 가감산기(AS2)로 레지스터(R8)에 가억된 데이터(xr5)와 레지스터(R7)에 기억된 데이터(xr4)와의 가산이 실행되고 가산결과(xs5)가 레지스터(R9)에 기억된다.
15클럭사이클째: 가감산기(AS1)로 레지스터(R10)에 기억된 데이터(xs2)와 레지스터(R11)에 기억된 데이터(xs3)와의 가산이 실행되고, 가산결과(yy6)가 레지스터(R12)에 기억된다.
16클럭사이클째: 가감산기(AS1)로 레지스터(R10)에 기억된 데이터(xs5)와 레지스터(R9)에 기억된 데이터(xs4)와의 가산이 실행되고 가산결과(yy1)가 레지스터(R12)에 기억된다.
승산기(MPY)로 레지스터(R7)에 기억되어 있는 데이터(xr6)와, 계수(A6)(=2×cos(6× π/16))와의 승산이 실행되고, 그 승산결과(xs6)가 17클럭사이클째의 종료시에 레지스터(R9)에 기억된다.
또, 가감산기(AS2)로 레지스터(R8)에 기억된 데이터(xr7)와 레지스터(R7)에 기억된 데이터(xr6)와의 가산이 실행되고 가산결과(xs7)가 레지스터(R9)에 기억된다.
17클럭사이클째: 가감산기(AS1)로 레지스터(R10)에 기억된 데이터(xs4)와 레지스터(R11)에 기억된 데이터(xs5)와의 감산이 실행되고 감산결과(yy7)가 레지스터(R12)에 기억된다.
18클럭사이클째: 가감산기(AS1)로 레지스터(R10)에 기억된 데이터(xs7)와 레지스터(R9)에 기억된 데이터(xs6)와의 가산이 실행되고 가산결과(yy3)가 레지스터(R12)에 기억된다.
19클럭사이클째: 가감산기(AS1)로 레지스터(R10)에 기억된 데이터(xs6)와 레지스터(R11)에 기억된 데이터(xs7)와의 감산이 실행되고 감산결과(yy5)가 레지스터(R12)에 기억된다.
이와같이 계산회로(2)에서는 제 3도 및 제 4도에 표시하는 바와같이 13∼20클럭사이클째에 걸쳐서 데이터(yy0, yy4, yy2, yy6, yy1, yy7, yy3 및 yy5)가 출력된다.
상술한 바와같이 계산회로(2)에 의하면 시리얼로 데이터를 입출력하는 형태로 스텝(S1)의 계산을 실행할 수 있다.
계산회로(6)는 상술한 제 2도에 나타내는 계산회로(2)와 같은 구성이며, 제어회로(9)는 가감산기(AS1, AS2), 가산기(ADD), 감산기(SUB) 및 승산기(MPY)에 대하여 병환회로(5)로 부터의 데이터를 이용하여 스텝(S2)의 계산이 실행되도록 제어신호(CS1∼CS12), 연산지시신호(CS20∼CS24), 가산/감산선택신호(CS13, CS14) 및 계수신호(S15)를 출력한다.
승산기(8)는 스텝(S3)의 8×8행렬[Z]의 각 요소(Zhk)를 제 5도에 나타내는 승산회로(MPY)의 입력단자(T1)에 시리얼로 입력하고 각 클럭사이클마다에 스텝(S3)을 계산하기위한 적절한값:(1/4)×ai×aj를승산회로(MPY)의 계수입력단자(T2)에 입력함으로써 스텝(S3)의 계산을 실행하고, 계산결과를 출력단자에서 시리얼로 출력한다.
상술한 바와같이 본 실시예의 2차원 8×8DCT장치(1)에서는 계산회로(2), 병환회로(5), 계산회로(6) 및 승산기(8)는 각각 시리일로 데이터를 입력하고, 시리얼로 데이터를 출력한다.
따라서 2차원 8×8DCT장치(1)에서는 종래의 2차원 8×8DCT장치(100)와 같이 합계 24개의 레지스터를 포함하는 시리얼/패러렐변환기 및 패러렐/시리얼변환기를 필요로 하지않고 R0∼R12의 13개의 레지스터를 포함하는 계산회로(2, 6)를 이용하는 것으로 입력데이터를 시리얼데이터인채로 처리할수 있고, 레지스터수를 대폭으로 저감할 수 있는 동시에 회로규모를 더욱 축소하는 것이 가능하게 된다.
제 2실시예에 대하여 설명한다.
본 실시예에서는 상술한 종래의 2차원 8×8IDCT장치(130)와 동일하게 하기 식(42)을 하기 스텝(S1'∼S3')에 나타내는 순서로 실행하는 2차원 8×8IDCT장치(30)에 대하여 설명한다.
[수 42]
[수 43]
상기 식(42)에 있어서의 행렬[G]은 하기 식(44)으로 표시한다.
[수 44]
또, 상기 식(42)에 있어서의 행렬[F]은 하기 식(45)으로 표시한다.
[수 45]
또한 상기 식(42)에 있어서의 행렬[Gt], 행렬[Ft]은 각각 행렬[G], 행렬[F]의 전치행렬이며, 하기 식(46 및 47)으로 나타낸다.
[수 46]
[수 47]
제 6도는 본 실시에의 2차원 8×8IDCT장치(30)의 구성도이다.
2차원 8×8IDCT장치(30)는 승산기(32), 계산회로(34), 병환회로(36) 및 계산회로(38)로 구성되고, 각 구성요소는 시리얼데이터를 입력하고 시리얼데이터를 출력한다.
따라서 2차원 8×8IDCT장치(30)에서는 상술한 종래의 2차원 8×8IDCT장치(130)와 같이 합계 24개의 레지스터를 포함하는 시리얼/패러렐변환기 및 패러렐/시리얼변환기를 필요로하지않고, 시리얼데이터를 각 구성요스에 있어서 후술하는 것같이 그대로 처리할 수 있고, 레지스터수를 대폭으로 저감할 수 있는 동시에 회로규모를 더욱 축소하는 것이 가능하게 된다.
승산기(32)는 상기 스텝(S1')의 계산을 실행한다.
계산회로(34)는 상기 스텝(S2')의 계산을 실행한다.
병환회로(36) 및 계산회로(38)는 상기 스텝(S3')의 계산을 실행한다.
승산기(32)는 스템(S1')의 8×8행렬[C] 각 요소(Chk)를 제 5도에 나타내는 승산회로(MPY)의 입력단자(T1)에 시리얼로 입력하고, 각 클럭사이클마다 스텝(S1')을 계산하기위한 적절한 값:(1/4)×ai ×aj를 승산회로(MPY)의 계수입 력단자(T2)에 입력함으로써 스텝(S1')의 계산을 실행하고, 계산결과를 출력단자에서 시리얼로 출력한다.
계산회로(34)는 상술한 2차원 8×8DCT장치(1)의 계산회로(2)와 동일한 구성이며 제어회로(9)는 가감산기(AS1, AS2), 가산기(ADD), 감산기(SUB) 및 승산기(MPY)에 대하여 승산기(32)로부터의 데이터를 이용하여 스텝(S2')의 계산이 실행되도록 제어신호(CS1∼CS12), 연산지시신호(CS20∼CS24], 가산/감산선택신호(CS13, CS14) 및 계수신호(S15)를 출력한다.
계산회로(38)는 상술한 2차원 8×8DCT장치(1)의 계산회로(2)와 동일한 구성이며,제어회로(9)는 가감산기(AS1, AS2), 가산기(ADD), 감산기(SUB) 및 승산기(MPY)에 대하여 병환회로(36)로부터의 데이터를 이용하여 스텝(S3')의 계산이 실행되도록 제어신호(CS1∼SC12), 연산지시신호(CS20∼CS24), 가산/감산선택신호(CS13, CS14) 및 계수신호(S15)를 출력한다.
이하, 계산회로(38)를 이용하여 스템(S3')의 계산을 행하는 경우에 대하여 설명한다.
제 7도는 계산회로(38)를 이용하여 스텝(S3')의 계산을 행할때의 타이밍차트이다.
제 8도는 제 7도의 각 클럭사이클에 있어서의 계산내용을 설명하기위한 도면이다.
제 7도 및 제 8도에 표시하는 부호(yy0∼yy7, yp0∼yp7, yq2∼yq7, yr0∼yr7, ys4∼ys7 및 xx1∼xx7)는 제 15도에 나타내는 것과 동일하다.
여기서 (yy0∼yy7)는 스텝(S2')에 있어서 계산된 행렬[Q]을 병환회로(36)로 열과 행을 바꿔늘어논 행렬에 있어서의 행방향의 구성요소로 구성되는 벡터이며, 부호(xx0∼xx7)는 스텝(S3')에 있어서 생성되는 실공간의 행렬[X]의 행방향의 구성요소로 구성되는 벡터이다.
1∼8클럭사이클째: 행렬데이터[Y]가 병환회로(8)의 8요소가 부호(yy3, yy5, yy1, yy7, yy2, yy6, yy0, yy4)의 순으로 입력단자에서 입력되고 순차 후단의 레지스터에 출력된다.
3클럭사이클째: 가감산기(AS1)로 레지스터(R0)에 기억된 데이터(yy5)와 레지스터(R1)에 기억된 데이터(yy3)와의 가산이 실행되고, 가산결과(yp6)가 레지스터(R3)에 기억된다.
4클럭사이클째: 가감산기(AS1)로 레지스터(R2)에 기억된 데이터(yy3)와, 레지스터(R1)에 기억된 데이터(yy5)와의 감산이 실행되고, 감산결과(yp7)가 레지스터(R3)에 기억된다.
또, 승산기(MPY)로 레지스터(R3)에 기억된 데이터(yp6)와 계수신호(S15)에 표시되는 계수(AA6)(=1/{2 ×cos(6×π/16)})와의 승산이 실행되고, 승산결과(yq6)가 5클럭사이클째의 종료시에 레지스터(R5)에 기억된다.
5클럭사이클째: 가감산기(AS1)로 레지스터(R0)에 기억된 데이터(yy7)와, 레지스터(R1)에 기억된 데이터(yy1)와의 가산이 실행되고, 가산결과(yp4)가 레지스터(R3)에 기억된다.
6클럭사이클째: 가감산기(AS1)로 레지스터(R2)에 기억된 데이터(yy1)와, 레지스터(R1)에 기억된 데이터(yy7)와의 감산이 실행되고, 감산결과(yp5)가 레지스터(R3)에 기억된다.
또, 승산기(MPY)로 레지스터(R3)에 기억된 데이터(yp4)와, 계수신호(S15)에 표시되는 계수(AA2)(=1/{2×cos(2×π/16)})와의 승산이 실행되고, 그 승산결과(yq4)가 7클럭사이클째의 종료시에 레지스터(R5)에 기억된다.
또, 가감산기(AS2)로 레지스터(R4)에 기억된 데이터(yp7)와, 레지스터(RT)에 기억된 데이터(yq6)와의 감산이 실행되고 감산결과(yq7)가 레지스터(R5)에 기억된다.
7클럭사이클째: 가감산기(AS1)로 레지스터(R0)에 기억된 데이터(yy6)와, 레지스터(R0)에 기억된 데이터(yy2)와의 가산이 실행되고, 가산결과(yp2)가 레지스터(R3)에 기억된다.
8클럭사이클째: 가감산기(AS1)로 레지스터(R2)에 기억된 데이터(yy2)와, 레지스터(R1)에 기억된 데이터(yy6)와의 감산이 실행되고 감산결과(yp3)가 레지스터(R3)에 기억된다.
또 승산기(MPY)로 레지스터(R3)에 기억된 데이터(yp2)와, 계수신호(S15)에 표시되는 계수(AA4)(=1/{2×cos(4× π/16))와의 승산이 실행되고, 그 승산결과(yp2)가 9클럭사이클째의 종료시에 레지스터(R5)에 기억된다.
또, 가감산기(AS2)로 레지스터(R4)에 기억된 데이터(yp5)와 레지스터(R5)에 기억된 데이터(yq4)와의 감산이 실행되고 감산결과(yq5)가 레지스터(R5)에 기억된다.
또 가산기(ADD)로 레지스터(R5)에 기억된 데이터(yq4)와, 레지스터(R7)에 기억된 데이터(yq6)와의 가산이 실행되고, 가산결과(yr4)가 레지스터(R8)에 기억된다.
또한, 감산기(SUB)로 레지스터(R5)에 기억된 데이터(yp4)와, 레지스터(R7)에 기억된 데이터(yq6)와의 감산이 실행되고, 감산결과(yr6)가 레지스터(R6)에 기억된다.
9클럭사이클째: 가감산기(AS1)로 레지스터(R0)에 기억된 데이터(yy4)와 레지스터(R1)에 기억된 데이터(yy0)와의 가산이 실행되고 가산결과(yp0)가 레지스터(R3)에 기억된다.
또 승산기(MPY)로 레지스터(R8)에 기억되어 있는 데이터(yr4)와, 계수신호(S15)에 표시되는 계수(AA4)(=1/{2×cos(4× π/16)})와의 승산이 실행되고, 그 승산결과(ys4)가 10클럭사이클째의 종료시에 레지스터(R10)에 기억된다.
또 가산기(ADD)로 레지스터(R5)에 기억된 데이터(yq5)와, 레지스터(R7)에 기억된 데이터(yq7)와의 가산이 실행되고, 가산결과(yr5)가 레지스터(R8)에 기억된다.
또한, 감산기(SUB)로 레지스터(R5)에 기억된 데이터(yq5)와 레지스터(R7)에 기억된 데이터(yq7)와의 감산이 실행되고, 감산결과(yr7)가 레지스터(R6)에 기억된다.
10클럭사이클째: 가감산기(AS1)로 레지스터(R2)에 기억된 데이터(yy0)와 레지스터(R1)에 기억된 데이터(yy4)와의 감산이 실행되고 감산결과(yp1)가 레지스터(R3)에 기억된다.
또,승산기(MPY)로 레지스터(R8)에 기억되어 있는 데이터(yr5)와, 계수신호(S15)에 표시되는 계수(AA4)(=1/{2×cos(4×π/16)})와의 승산이 실행되고, 승산결과(ys4)가 11클럭사이클쩨의 종료시에 레지스터(Rl0)에 기억된다.
또, 가감산기(AS2)로 레지스터(R4)에 기억된 데이터(yp3)와, 레지스터(R5)에 기억된 데이터(yq2)와의 감산이 실행되고 감산결과(yp3)가 레지스터(R5)에 기억된다.
또 가산기(ADD)로 레지스터(R3)에 기억된 데이터(yp0)와, 레지스터(R5)에 기억된 데이터(yq2)와의 가산이 실행되고, 가산결과(yr0)가 레지스터(R4)에 기억된다.
또한 감산기(SUB)로 레지스터(R3)에 기억된 데이터(yp0)와, 레지스터(R5)에 기억된 데이터(yq2)와의 감산이 실행되고, 감산결과(yr2)가 레지스터(R6)에 기억된다.
11클럭사이클째: 가감산기(AS2)로 레지스터(R7)에 기억된 데이터(yr7)와, 레지스터(R10)에 기억된 데이터(ys4)와의 감산이 실행되고, 감산결과(ys7)가 레지스터(R8)에 기억된다.
또 가산기(ADD)로 레지스터(R3)에 기억된 데이터(yp1)와, 레지스터(R5)에 기억된 데이터(yq3)와의 가산이 실행되고, 가산결과(yrl)가 레지스터(R4)에 기억된다.
또한, 감산기(SUB)로 레지스터(R3)에 기억된 데이터(yp1)와, 레지스터(R5)에 기억된 데이터(yq3)와의 감산이 실행되고, 감산결과(yr3)가 레지스터(R6)에 기억된다.
12클럭사이클째: 가감산기(AS2)로 레지스터(R9)에 기억된 데이터(yr6)와, 레지스터(R10)에 기억된 데이터(ys5)와의 감산이 실행되고 감산결과(ys6)가 레지스터(R10)에 기억된다.
또 가산기(ADD)로 레지스터(R5)에 기억된 데이터(yr0)와, 레지스터(R11)에 기억된 데이터(ys4)와의 가산이 실행되고, 가산결과(xx0)가 레지스터(R12)에 기억된다.
또한, 감산기(SUB)로 레지스터(R5)에 기억된 데이터(yr0)와, 레지스터(R11)에 기억된 데이터(ys4)와의 감산이 실행되고, 감산결과(yx7)가 레지스터(R6)에 기억된다.
13클럭사이클째: 가산기(ADD)로 레지스터(R5)에 기억된 데이터(yr1)와, 레지스터(R11)에 기억된 데이터(ys5)와의 가산이 실행되고 가산결과(xx1)가 레지스터(R12)에 기억된다.
또, 감산기(SUB)로 레지스터(R5)에 기억된 데이터(yr1)와, 레지스터(R11)에 기억된 데이터(ys5)와의 감산이 실행되고, 감산결과(yx6)가 레지스터(R6)에 기억된다.
14클럭사이클째: 가산기(ADD)로 레지스터(R8)에 기억된 데이터(yr3)와 레지스터(R11)에 기억된 데이터(ys6)와의 가산이 실행되고, 가산결과(xx2)가 레지스터(R12)에 기억된다.
또, 감산기(SUB)로 레지스터(R8)에 기억된 데이터(yr3)와, 레지스터(R11)에 기억된 데이터(ys6)와의 감산이 실행되고, 감산결과(xx5)가 레지스터(R9)에 기억된다.
15클럭사이클째: 가산기(ADD)로 레지스터(R10)에 기억된 데이터(yr2)와, 레지스터(R11)에 기억된 데이터(ys7)와의 가산이 실행되고 가산결과(xx3)가 레지스터(R12)에 기억된다.
또, 감산기(SUB)로 레지스터(R10)에 기억된 데이터(yr2)와 레지스터(R11)에 기억된 데이터(ys7)와의 감산이 실행되고, 감산결과(xx4)가 레지스터(R11)에 기억된다.
이와같이 계산회로(38)에서는 제 7도 및 제 8도에 표시하는 바와같이 13∼20클럭사이클째에 걸쳐서 데이터(xx0, xx1, xx2, xx3, xx4, xx5, xx7 및 xx6)가 출력된다.
상술한 바와같이 본 실시예의 2차원 8×8IDCT장치(30)에서는 승산기(32), 계산회로(34), 병환회로(36) 및 계산회로(38)는 각각 데이터를 시리얼로 입력하고 데이터를 시리얼로 출력한다.
따라서 2차원 8×8IDCT장치(30)에서는 종래의 2차원 8×8IDCT장치(130)와 같이 합계 24개의 레지스터를 포함하는 시리얼/패러렐변환기 및 패러렐/시리얼변환기를 필요로하지않고, R0∼R12의 13개의 레지스터를 포함하는 계산회로(34,38)를 이용하는 것으로 입력데이터를 시리얼 데이터인채로 처리할 수 있고, 레지스터수를 대폭으로 저감할 수 있는 동시에 회로규모를 더욱 축소하는 것이 가능하게 된다.
제 3실시예에 대하여 설명한다.
본 실시예에서는 직렬적으로 복수의 레지스터가 접속되어서 구성되는 파이프라인 레지스터를 데이터가 순차 후단의 레지스터에 전송되어가는 과정에 있어서 소정의 연산기에 의한 계산이 실행되는 디지탈신호 처리장치의 일반형인 디지탈신호 처리장치(50)에 대하여 설명한다.
제 9도는 디지탈신호 처리장치(50)의 구성도이다.
제 9도에 표시하는 바와같이 디지탈신호 처리장치(50)는 파이프라인 레지스터(52), 버스(62) 및 연산기(54,56,58,60)로 구성된다.
파이프라인 레지스터(52)는 상술한 제 2도에 표시하는 바와같은 레지스터와 셀렉터를 조합해서 구성되고 각 레지스터와 버스(62)가 접속되고 입력단자에서 시리얼로 입력된 데이터가 순차, 후단의 레지스터에 전송되고 이 전송된 데이터는 최종적으로 출력단자에서 시리얼로 출력된다.
버스(62)에는 연산기(54∼60)가 접속되고, 도시하지않은 제어회로로부터의 제어신호에 기초해서 파이프라인 레지스터(52)를 구성하는 각 레지스터로부터의 데이터가 버스(62)를 거쳐 소정의 연산기(54∼60)에 공급되어 계산이 실행된다.
그리고, 연산기(54∼60)의 계산결과는 도시하지않은 제어회로로부터의 제어신호에 기초해서 파이프라인 레지스터(52)의 소정의 레지스터에 출력된다.
디지탈신호 처리장치(50)에 있어서 상술한 2차윈 8×8DCT장치(1)와 동일하게 입력단자에서 시리얼로 입력되는 데이터를 이용하여 소정의 계산을 실행하고 그 계산 결과가 출력단자에서 시리얼로 출력되도록 도시하지않은 제어회로에서 소정의 제어 신호가 파이프라인 레지스터(52) 및 연산기(54∼60)에 출력된다.
본 실시예의 디지탈신호 처리장치(50)에 의하면, 시리얼 데이터를 다수의 레지스터를 포함하는 시리얼/패러렐변환기 및 패러렐/시리얼변환기를 이용하지않고 그대로 처리하고, 처리된 데이터를 시리얼데이터로서 출력할 수 있기때문에 레지스터수를 삭감할 수 있고 회로규모를 축소하는 것이 가능하게 된다.
본 발명의 2차원 이산코사인 변환장치, 2차원 역이산코사인 변환장치 및 디지탈 신호 처리장치에 의하면 입력데이터 및 출력데이터로서 시리얼데이터를 이용하는 경우에도 다수의 레지스터를 필요로 하는 시리얼/패러렐변환기 및 패러렐/시리얼변환기를 필요로 하지않고 레지스터수를 삭감할 수 있다.
또, 2차원 이산코사인 변환장치, 2차윈 역이산코사인 변환장치 및 디지탈신호 처리장치에 의하면 레지스터수를 삭감할 수 있는 결과, 장치의 규모를 축소하는 것이 가능하게 된다.

Claims (10)

  1. (정정) 좌측으로부터, 적어도 하나의 대각성분이 무리수이며, 다른 각 성분이 『0』인 제 1행렬과 각 성분이 무리수 『+1』 혹은 『-1』 의 어느 것인 제 2행렬로 행렬분해할 수 있는 제 1계수행렬을, 우측으로부터, 상기 제 2행렬의 전치행렬인 제 3행렬과, 상기 제 1행렬의 전치행렬인 제 4행렬로 행렬분해할 수 있는 상기 제 1계수행렬의 전치행렬인 제 2계수행렬을 각각 입력 행렬에 의해 승산하고, 그 승산결과인 출력행렬의 각 성분을 출력하는 행렬데이터 승산장치로 작용하는 2 차원 이산코사인 변환장치에 있어서, 상기 이산코사인 변환장치는, 상기 제 2행렬과 상기 입력행렬에 대한 승산에 상당하는 소정의 계산을 행하는 제1계산회로와, 상기 제 1계산회로의 승산결과와 상기 제 3행렬의 승산연산의 결과에 대한 승산 연산에 상당하는 소정의 계산을 행하는 제 2계산회로와, 상기 제 2계산회로의 승산결과를 가지고 좌측에서 상기 제 1행렬을 승산하고 우측에서 상기 제 4행렬을 승산하는 계산에 상당하는 소정의 계산을 행하는 승산기를 포함하고, 상기 제 1계산회로 및 상기 제 2계산회로는, 파이프 라인 시스템으로 배열되어 있고 직렬적으로 접속된 복수의 기억소자와, 상기 기억소자에서 공급되는 데이터를 이용하여 소정의 계산을 행하고 상기 계산결과를 소정의 상기 기억소자에 출력하는 단수 또는 복수의 연산기를 포함하고, 제 1단의 상기 기억소자에서 데이터를 시리얼로 수신하고 상기 입력된 데이터를 파이프라인방식으로 후단의 기억소자에 연속적으로 전송하고, 상기 전송과정에 있어서 상기 한 개 또는 그 이상의 연산기에 의해 상기 계산을 하여 상기 기억소자의 최종단으로부터 상기 계산의 계산결과를 나타내는 데이터를 시리얼로 출력하도록 구성된 것을 특징으로 하는 2차원 이산코사인 변환장치.
  2. (정정) 제 1항에 있어서, 상기 제 1계산회로의 계산결과의 열과 행을 행과 열로 배열되어 있으며, 상기 제1계산회로와 상기 제 2계산회로의 사이에 설치되어 있으며, 상기 제 1계산회로의 상기 결과들의 행과 열들을 재배열하는 재배열회로를 추가로 포함하는 것을 특징으로 하는 2차원 이산코사인 변환장치.
  3. (정정) 제 1항에 있어서, 상기 제 1계산회로 및 상기 제 2계산회로는 각각 2개의 가감산기, 가산기, 감산기 및 승산기를 가지도록 구성된 것을 특징으로 하는 2차원 이산코사인 변환장치.
  4. (정정) 좌측으로부터, 적어도 하나의 대각성분이 무리수이며, 다른 각 성분이 『0』인 제 1행렬과 각 성분이 무리수 『+1』 혹은 『-1』의 어느 것인 제 2행렬로 행렬분해할 수 있는 제 1계수행렬을, 우측으로부터, 상기 제 2행렬의 전치행렬인 제 3행렬과, 상기 제 1행렬의 전치행렬인 제 4행렬로 행렬분해할 수 있는 상기 제 1계수행렬의 전치행렬인 제 2계수행렬을 각각 입력 행렬에 의해 승산하고, 그 승산결과인 출력행렬의 각 성분을 출력하는 행렬데이터 승산장치로 작용하는 2 차원 역이산 코사인 변환장치에 있어서, 상기 역이산 코사인 변환장치는, 상기 입력행렬에 대하여 좌측에서 상기 제 4행렬을 승산하고 우측에서 상기 제1행렬을 승산하는 계산에 상당하는 계산을 행하는 승산기와, 상기 승산기의 결과와 상기 제 2행렬의 승산결과에 상당하는 계산을 행하는 제1계산회로와, 상기 제 3행렬과 상기 제 1계산회로의 상기 승산결과에 대한 승산에 상당하는 계산을 행하는 제 2계산회로와를 포함하고, 상기 제 1계산회로 및 상기 제 2계산회로는 파이프 방식으로 배열되어 있으며 직렬적으로 접속된 복수의 기억소자와, 상기 기억소자에서 공급되는 데이터를 이용하여 소정의 계산을 행하고 상기 계산결과를 소정의 상기 기억소자에 출력하는 단수 또는 복수의 연산기를 포함하고, 제 1단의 상기 기억소자에서 데이터를 시리얼로 수신하고 상기 입력된 데이터를 파이프라인방식으로 후단의 기억소자에 연속적으로 전송하고, 상기 전송과정에 있어서 상기 한 개 또는 그 이상의 연산기에 의해 상기 계산을 하여 상기 기억소자의 최종단으로부터 상기 계산의 계산결과를 나타내는 데이터를 시리얼로 출력하도록 구성된 것을 특징으로 하는 2차원 역이산 코사인 변환장치.
  5. (정정) 제 4항에 있어서, 상기 제 1계산회로의 계산결과의 열과 행을 행과 열로 배열되어 있으며, 상기 제1계산회로와 상기 제 2계산회로의 사이에 설치되어 있으며, 상기 제 1계산회로의 상기 결과들의 행과 열들을 재배열하는 재배열회로를 추가로 포함하는 것을 특징으로 하는 2차원 역이산코사인 변환장치.
  6. (정정) 제 4항에 있어서, 상기 제 1계산회로 및 상기 제 2계산회로는 각각 2개의 가감산기, 가산기, 감산기 및 승산기를 가지도록 구성된 것을 특징으로 하는 2차원 역이산코사인 변환장치.
  7. (삭제)
  8. (삭제)
  9. (2차 정정) 2차윈 이산 코사인 변환처리방법에 있어서, 8×8의 실공간의 화상행렬데이터[X]에 대한 8×8의 주파수공간의 행렬데이터[C]의 2차원 이산코사인 변환을 위한 2차원 DCT 수식 (1)인
    에 있어서,
    상기 2차원 이산코사인 변환수식(1)의 계산은, 화상데이터[X]의 요소를 시리얼로 파이프라인방식으로 연속적으로 후단의 기억소자에 전송하여 상기 전송과정에 있어서 하기식(2)에 상당하는 계산을 행하고 그 계산결과[Y]를 시리얼로 산출하는 제 1스텝과,
    [Y] = [M] [X] (2)
    상기 제 1스텝의 계산결과[Y]를 시리얼로 파이프라인방식으로 연속적으로 후단의 기억소자에 전송하여 상기 전송과정에 있어서 하기 식(3)에 상당하는 계산을 행하고 그 계산결과[Z]를 시리얼로 산출하는 제 2단계와,
    [Z] = [Y] [Mt] ……(3)
    상기 제 2스텝의 계산결과[Z]를 이용하여 하기 식(4)에 상당하는 승산을 행하고 승산결과인 상기[C]를 시리얼로 산출하는 제 3스텝에 의해
    에서 행해지는 것을 특징으로 하는 2차원 이산코사인 변환처리방법.
  10. (정정) 2차원 역이산 코사인 변환처리방법에 있어서, 8×8주파수공간의 행렬데이터[C]를 8×8의 실공간의 화상행렬데이터[X]에 2차원역이산코사인 번환하는 하기 2차원 역이산코사인 변환식(5)
    에 있어서의
    상기 2차원 역이산코사인 변환식(5)의 계산을 주파수상의 데이터인 상기 [C]의 요소를 이용하여 하기식(6)에 상당하는 승산을 행하고 그 승산결과[P]를 시리얼로 산출하는 제 1스텝과,
    [P] = (1/4) [Gt] [C] [G] ……(6)
    상기 스텝(1)의 승산결과[P]의 요소를 시리얼로 파이프라인방식으로 순차후단의 기억소자에 전송하고 이 전송과정에 있어서 하기 식(7)에 상당하는 계산을 행하고 그 계산결과[Q]를 시리얼로 산출하는 스텝과,
    [Q] = [P] [F] ……(7)
    상기 제 2스텝의 계산결과[Q]를 시리얼로 파이프라인방식으로 순차 후단의 기억 소자에 전송하고 이 전송과정에 있어서 하기 식(8)에 상당하는 계산을 행하고 그 계산결과[X]를 시리얼로 산출하는 제 3스텝,
    [X] = [Ft] [Q] ……(8)
    에 의해 행해지는 것을 특징으로 하는 2차원 역이산코사인 변환처리방법.
KR1019940023780A 1993-09-24 1994-09-17 2차원이산코사인변환장치,2차원역이산코사인변환장치및디지탈신호처리장치 KR100311251B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP23852693A JP3697717B2 (ja) 1993-09-24 1993-09-24 2次元離散コサイン変換装置および2次元逆離散コサイン変換装置
JP93-238526 1993-09-24

Publications (2)

Publication Number Publication Date
KR950009472A KR950009472A (ko) 1995-04-24
KR100311251B1 true KR100311251B1 (ko) 2001-12-15

Family

ID=17031571

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940023780A KR100311251B1 (ko) 1993-09-24 1994-09-17 2차원이산코사인변환장치,2차원역이산코사인변환장치및디지탈신호처리장치

Country Status (3)

Country Link
US (1) US5590066A (ko)
JP (1) JP3697717B2 (ko)
KR (1) KR100311251B1 (ko)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5825676A (en) 1994-09-30 1998-10-20 Canon Kabushiki Kaisha Orthogonal converting apparatus
JP3025750B2 (ja) * 1994-11-30 2000-03-27 三洋電機株式会社 離散コサイン変換回路,離散コサイン逆変換回路,mpegビデオエンコーダ,mpegビデオデコーダ
JP2914226B2 (ja) * 1995-06-16 1999-06-28 日本電気株式会社 可逆変換を可能にするディジタル信号の変換符号化方式
JP3274593B2 (ja) * 1995-09-27 2002-04-15 日本電気株式会社 可逆変換可能な変換装置及び逆変換装置
US5754456A (en) * 1996-03-05 1998-05-19 Intel Corporation Computer system performing an inverse cosine transfer function for use with multimedia information
US5754457A (en) * 1996-03-05 1998-05-19 Intel Corporation Method for performing an inverse cosine transfer function for use with multimedia information
JP3129398B2 (ja) * 1997-01-08 2001-01-29 日本電気株式会社 8点×8点2次元逆離散コサイン変換回路およびそれを実現するマイクロプロセッサ
US6134270A (en) * 1997-06-13 2000-10-17 Sun Microsystems, Inc. Scaled forward and inverse discrete cosine transform and video compression/decompression systems employing the same
US6504871B1 (en) * 1997-07-31 2003-01-07 Lsi Logic Corporation IDCT processor for use in decoding MPEG compliant video bitstreams meeting 2-frame and letterboxing requirements
TW364269B (en) * 1998-01-02 1999-07-11 Winbond Electronic Corp Discreet cosine transform/inverse discreet cosine transform circuit
US6243730B1 (en) * 1999-05-04 2001-06-05 Sony Electronics, Inc. Methods and systems for performing short integer chen IDCT algorithm with fused multiply/add
US6625721B1 (en) * 1999-07-26 2003-09-23 Intel Corporation Registers for 2-D matrix processing
US6421696B1 (en) 1999-08-17 2002-07-16 Advanced Micro Devices, Inc. System and method for high speed execution of Fast Fourier Transforms utilizing SIMD instructions on a general purpose processor
JP3934290B2 (ja) * 1999-09-30 2007-06-20 株式会社東芝 離散コサイン変換処理装置、逆離散コサイン変換処理装置及び離散コサイン変換処理装置・逆離散コサイン変換処理装置
US6832232B1 (en) 2000-07-10 2004-12-14 Advanced Micro Devices, Inc. Dual-block inverse discrete cosine transform method
US6742010B1 (en) 2000-07-10 2004-05-25 Advanced Micro Devices, Inc. Dual-block discrete consine transform method
US6973469B1 (en) 2001-02-01 2005-12-06 Advanced Micro Devices, Inc. Two-dimensional discrete cosine transform using SIMD instructions
JP4459470B2 (ja) * 2001-04-06 2010-04-28 信越化学工業株式会社 電子部品の放熱構造体及びそれに用いる放熱シート
JP3971135B2 (ja) * 2001-07-11 2007-09-05 株式会社テクノマセマティカル Dct行列分解方法及びdct装置
US6882685B2 (en) * 2001-09-18 2005-04-19 Microsoft Corporation Block transform and quantization for image and video coding
US7460993B2 (en) * 2001-12-14 2008-12-02 Microsoft Corporation Adaptive window-size selection in transform coding
US7242713B2 (en) * 2002-05-02 2007-07-10 Microsoft Corporation 2-D transforms for image and video coding
US7487193B2 (en) * 2004-05-14 2009-02-03 Microsoft Corporation Fast video codec transform implementations
CN100448293C (zh) * 2005-02-03 2008-12-31 联想(北京)有限公司 一种二维离散余弦变换装置及方法
US7546240B2 (en) * 2005-07-15 2009-06-09 Microsoft Corporation Coding with improved time resolution for selected segments via adaptive block transformation of a group of samples from a subband decomposition
US7689052B2 (en) * 2005-10-07 2010-03-30 Microsoft Corporation Multimedia signal processing using fixed-point approximations of linear transforms
US8942289B2 (en) * 2007-02-21 2015-01-27 Microsoft Corporation Computational complexity and precision control in transform-based digital media codec
US7761290B2 (en) 2007-06-15 2010-07-20 Microsoft Corporation Flexible frequency and time partitioning in perceptual transform coding of audio

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5163103A (en) * 1988-12-27 1992-11-10 Kabushiki Kaisha Toshiba Discrete cosine transforming apparatus
US5257213A (en) * 1991-02-20 1993-10-26 Samsung Electronics Co., Ltd. Method and circuit for two-dimensional discrete cosine transform

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2608808B1 (fr) * 1986-12-22 1989-04-28 Efcis Circuit integre de traitement numerique de signaux
DE68928886T2 (de) * 1988-10-27 1999-06-02 Matsushita Electric Ind Co Ltd Gerät für die direkte oder umgekehrte orthogonale Transformation
JPH04242860A (ja) * 1990-12-28 1992-08-31 Sony Corp 演算装置
US5420811A (en) * 1992-08-26 1995-05-30 Sony Corporation Simple quick image processing apparatus for performing a discrete cosine transformation or an inverse discrete cosine transformation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5163103A (en) * 1988-12-27 1992-11-10 Kabushiki Kaisha Toshiba Discrete cosine transforming apparatus
US5257213A (en) * 1991-02-20 1993-10-26 Samsung Electronics Co., Ltd. Method and circuit for two-dimensional discrete cosine transform

Also Published As

Publication number Publication date
US5590066A (en) 1996-12-31
JP3697717B2 (ja) 2005-09-21
KR950009472A (ko) 1995-04-24
JPH0793294A (ja) 1995-04-07

Similar Documents

Publication Publication Date Title
KR100311251B1 (ko) 2차원이산코사인변환장치,2차원역이산코사인변환장치및디지탈신호처리장치
JP2945487B2 (ja) 行列乗算器
US4791598A (en) Two-dimensional discrete cosine transform processor
KR0130772B1 (ko) 고속디지탈신호처리프로세서
JPH04313157A (ja) 演算処理装置
JPH06103301A (ja) 8x8離散コサイン変換回路および8x8離散コサイン逆変換回路
EP0128298B1 (en) Orthogonal transformer and apparatus operational thereby
US5233551A (en) Radix-12 DFT/FFT building block
JPH04242861A (ja) 内積演算回路
US5001661A (en) Data processor with combined adaptive LMS and general multiplication functions
KR20010023031A (ko) 가변 블록 사이즈의 2-차원 역 이산 코사인 변환 엔진
JP6357345B2 (ja) ビデオデータ処理時に空間領域と周波数領域との間の変換を実行するためのデータ処理装置および方法
JPH01269183A (ja) 空間フィルタ画像処理装置
US5999958A (en) Device for computing discrete cosine transform and inverse discrete cosine transform
JP2822684B2 (ja) 離散コサイン変換装置および逆離散コサイン変換装置
JP2732673B2 (ja) 離散的コサイン変換装置
KR940004478A (ko) 2차원 4x4이산코사인 변환회로 및 2차원 4x4이산코사인 역변환회로
KR0152802B1 (ko) 영상 압축장치의 역이산 코사인 변환방법 및 장치
JP2646844B2 (ja) 離散コサイン変換装置
JP3697716B2 (ja) 行列データ乗算装置
KR20150050680A (ko) 이산 코사인 변환 장치 및 방법
KR100306745B1 (ko) 알에이씨를사용하는하프밴드서브밴드디씨티/아이디씨티회로및그방법
KR100575285B1 (ko) 고속의 저전력 이산 코사인 변환 장치 및 방법
JPH0540776A (ja) 二次元dctマトリクス演算回路
GB2205183A (en) Finite element analysis utilizing a bandwidth maximized matrix

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20050831

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee