KR100481067B1 - 분산 산술 처리장치 및 그를 이용한 이차원 이산여현변환 처리장치 - Google Patents

분산 산술 처리장치 및 그를 이용한 이차원 이산여현변환 처리장치 Download PDF

Info

Publication number
KR100481067B1
KR100481067B1 KR10-2001-0060467A KR20010060467A KR100481067B1 KR 100481067 B1 KR100481067 B1 KR 100481067B1 KR 20010060467 A KR20010060467 A KR 20010060467A KR 100481067 B1 KR100481067 B1 KR 100481067B1
Authority
KR
South Korea
Prior art keywords
data
discrete cosine
cosine transform
bit
inverse discrete
Prior art date
Application number
KR10-2001-0060467A
Other languages
English (en)
Other versions
KR20030027321A (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 브이케이 주식회사
Priority to KR10-2001-0060467A priority Critical patent/KR100481067B1/ko
Priority to US10/183,401 priority patent/US7065543B2/en
Publication of KR20030027321A publication Critical patent/KR20030027321A/ko
Application granted granted Critical
Publication of KR100481067B1 publication Critical patent/KR100481067B1/ko

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
    • 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/141Discrete Fourier transforms
    • 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

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Complex Calculations (AREA)

Abstract

본 발명은 분산 산술 처리장치 및 그를 이용한 이차원 이산여현변환 처리장치에 관한 것으로, 많은 계산량을 필요로 하는 이산여현변환장치의 분산 산술 처리회로에 영(0)입력 검출회로를 구비하여 입력 데이터 중에서 유효한 데이터만 받아들여 계산하도록 하여 회로에서 소비되는 전력량을 줄일 수 있는 분산 산술 처리장치 및 그를 이용한 이차원 이산여현변환 처리장치를 제공하기 위하여, 이산여현변환/역이산여현변환을 위한 분산 산술 처리장치에 있어서, 외부로부터 수신한 데이터를 병렬 데이터로 로딩하기 위한 로딩 수단; 상기 로딩 수단에서 로딩한 데이터를 임시 저장하기 위한 제1 임시 저장수단; 상기 로딩 수단에 로딩되어 있는 데이터의 소정 비트를 검사하여 소정 비트가 모두 "0"임에 따라 해당 데이터가 연산수단에서 이산여현변환/역이산여현변환 연산이 수행되지 않게 통과(by-pass)되도록 하기 위한 영(zero) 입력 검출수단; 상기 임시 저장수단에 저장되어 있는 데이터를 이용하여 이산여현변환/역이산여현변환 연산을 수행하기 위한 상기 연산수단; 상기 연산수단에서 이산여현변환/역이산여현변환 연산이 소정의 클럭(clock) 내에 수행되도록 처리 시간을 지연시키기 위한 지연수단; 상기 연산수단에서 이산여현변환/역이산여현변환 연산을 수행한 데이터 및 상기 분산 산술 처리장치의 최종 출력 데이터를 반가산하기 위한 반가산 수단; 상기 반가산 수단에서 반가산한 데이터를 임시 저장하기 위한 제2 저장수단; 및 외부로부터 수신한 데이터를 이용하여 특정 데이터가 분산 산술되도록 상기 각 구성 요소를 제어하기 위한 제어수단을 포함하며, 저전송율 영상 시스템 등에 이용됨.

Description

분산 산술 처리장치 및 그를 이용한 이차원 이산여현변환 처리장치{Apparatus for 2-D Discrete Cosine Transform using Distributed Arithmetic Module}
본 발명은 입력되는 데이터 비트들이 모두 "0"일 때, 회로를 구성하고 있는 계산 기능 블록을 거치지 않고 바이패스하여 전력소모를 줄일 수 있도록 하는 영(zero)입력 검출회로를 구비한 분산 산술 처리장치 및 그를 이용한 이차원 이산여현변환 처리장치에 관한 것이다.
이산여현변환(DCT : discrete cosine transform)은 영상신호를 공간영역의 정보에서 주파수 영역의 정보로 변환시키거나 반대로 주파수 영역의 정보를 공간영역의 정보로 변환시켜, 영상신호의 압축과 복원처리와 같은 응용분야에 많이 사용되는 기술이다.
휴대용 기기 분야에 응용할 수 있는 집적회로로 구현하기 위해서는 기기의 배터리 수명이나 회로 특성 등을 고려할 때 소비전력의 절감을 도모할 수 있는 구조를 필요로 한다.
상기 이산여현변환 처리장치는 일반적으로 영상 압축 집적회로가 필요한 응용에서 입력 영상을 처리하는 핵심기능요소로 사용된다.
또한, 이산여현변환 처리장치는 처리해야 할 계산량이 다른 기능블록보다도 훨씬 많은 블록을 가진다. 따라서, 전력소비의 증가를 초래한다.
전력소비의 증가는 칩의 열발생(heating)은 물론, 입력전압(Vdd)과 접지(GND)사이의 바운싱(bouncing)에 의한 노이즈와 같은 전압 강하(voltage drop) 문제를 야기한다.
따라서, 영상처리 집적회로의 특성을 더욱 향상시키기 위해서는 전력소비를 줄이도록 하여 이러한 문제가 일어나지 않도록 해야 한다.
최근 휴대용 기기에는 동작시간을 늘리고 배터리를 작게 하기 위한 저소비전력 칩의 요구가 대두되고 있고, 초고밀도집적회로(Very Large Scale Integration : VLSI) 제조공정이 발달함에 따라 게이트 카운트가 늘어나고 동작주파수가 계속 높아져 왔다. 따라서, 이산여현변환(DCT) 부분의 계산량을 줄여주면 영상처리 집적회로 전체의 소비전력을 절감시킬 수 있다.
한편, 칩의 전력소비는 하기의 [수학식 1]을 이용하여 계산 및 분석할 수 있다.
P = CVddVswingfp
여기서, "P"는 전력소비(power consumption), "C"는 기판 크기에 따른 부하 정전용량(load capacitance), "Vdd"는 공급전압(supply voltage), "Vswing "은 신호전압(signal swing), "f"는 운용주파수(operating frequency), 그리고 "p"는 활성화 확률(activation probability)을 각각 나타낸다.
전력소비의 절감은 부하 정전용량(C), 공급전압(V), 운용주파수(f), 활성화 확률(p) 등을 줄임으로써 얻을 수 있는데, 본 발명에서는 활성화 확률(p)의 감소를 통하여 위의 효과를 얻고자, 조건에 따라 데이터를 통과(data bypassing)시킬 수 있도록 이산여현변환(DCT)회로를 구성한다. 여기서, 이산여현변환(Discrete cosine transform, DCT) 방법은 이산 푸리에변환(discrete Fourier transform : DFT)과 유사한 실제값 주파수변환(real-valued frequency transform)이다.
한편, 이산여현변환 구현(DCT implementation)에 대하여 알아보면 다음과 같다.
L x L 픽셀(pixel)사이즈의 이미지 블럭에 적용할 경우, 이차원(two dimensional) 이산여현변환(DCT)은 하기 [수학식 2]와 같이 표시할 수 있다.
여기서, k = 0,1, ... , L-1
l = 0,1, ... , L-1
또한, (i,j)는 초기블럭에서 픽셀들의 좌표(coordinates of the pixels in the initial block), (k,l)은 초기블럭에서 계수들의 좌표(coordinates of the coefficients in the initial block), xi,j는 초기블럭에서 픽셀의 값(value of the pixel in the initial block), 그리고 Yk,l은 변환된 블럭에서 계수의 값(value of the coefficient in the transformed block)을 각각 나타낸다.
상기 [수학식 2]로부터 길이(length) L의 2차원 이산여현변환(2D-DCT)을 계산할 때 ""번 만큼의 곱셈과 덧셈이 요구된다. 그리고, 다이렉트 폼(direct form) 방법으로 2차원 이산여현변환을 구현하면 64탭 디지털 필터와 비슷한 복잡도를 갖는다.
한편, 2차원 이산여현변환(2D-DCT)의 초고밀도 집적회로(VLSI) 구현(implementation)에 있어서 중요한 특성은 행/열의 분리도이다.
이것은 다음과 같은 방법에 의해 계산할 수 있다. 즉, 연속적으로 열(row)에 대하여 엘-포인터(L-point)의 1차원(one-dimensional) 이산여현변환(DCT)을 수행하고, 결과 행(column)에 1차원 이산여현변환(1D-DCT)을 수행하는 것이다.
엘-포인터(L-point)의 1차원 이산여현변환(1D-DCT)은 하기 [수학식 3]과 같이 표현된다.
여기서, k = 0,1, ... , L-1
이다.
상기 [수학식 3]으로부터 길이(length) L의 분리 수평(separate horizontal) 및 분리 수직(separate vertical) 1차원 이산여현변환(1D-DCT)을 계산하려면 2L3의 곱셈과 덧셈이 필요하게 된다.
현재 다이렉트 2차원 구현(direct 2D implementation)과 비교하여 계산량의 감소를 위해 분리 수평(separate horizontal) 및 분리 수직(separate vertical) 1차원 이산여현변환(1D-DCT)방법을 사용한다.
하기 [표 1]에 몇 가지 다른 이산여현변환(DCT) 알고리즘에 대한 비교를 계산량과 메모리 소요량 측면에서 비교해 나타내었다.
이 테이블에서 나타나 있는 것과 같이 여러 가지의 구조 별로 약간의 차이는 있지만 계산량을 줄이는 것이 전력소모 절감의 관건이 됨을 알 수 있다.
즉, 이산여현변환처리를 위해서는 많은 계산량과 빠른 처리속도가 요구된다. 따라서, 집적회로로 구현할 경우에 많은 횟수의 계산과 데이터 전이(transition)로 인하여 회로에서 전력량이 많이 소비되는 문제점이 있었다.
본 발명은, 상기한 바와 같은 문제점을 해결하기 위하여 제안된 것으로, 많은 계산량을 필요로 하는 이산여현변환장치의 분산 산술 처리회로에 영(0)입력 검출회로를 구비하여 입력 데이터 중에서 유효한 데이터만 받아들여 계산하도록 하여 회로에서 소비되는 전력량을 줄일 수 있는 분산 산술 처리장치 및 그를 이용한 이차원 이산여현변환 처리장치를 제공하는데 그 목적이 있다.
상기 목적을 달성하기 위한 본 발명의 장치는, 이차원 이산여현변환 처리장치에 있어서, 외부로부터 수신한 데이터 및 전치데이터 저장수단으로부터 수신한 데이터 중 어느 하나의 데이터를 선택하기 위한 다중화 수단; 상기 다중화 수단에서 선택한 데이터를 병렬 데이터로 변환하기 위한 제1 변환수단; 상기 제1 변환수단에서 변환한 병렬 데이터를 로딩하기 위한 로딩 수단; 상기 로딩 수단에서 로딩한 데이터를 임시 저장하기 위한 제1 임시 저장수단; 상기 제1 임시 저장수단에 저장되어 있는 데이터의 비트 순서를 재정리하기 위한 재순차 역이산여현변환 수단; 상기 제1 임시 저장수단에 저장되어 있는 데이터의 각 비트를 누산하기 위한 제1 덧셈수단; 상기 재순차 역이산여현변환 수단에서 비트 순서를 재정리한 데이터의 소정 비트 및 상기 제1 덧셈수단에서 각 비트를 누산한 데이터의 소정 비트를 검사하여 상기 각 소정 비트가 모두 "0"임에 따라 해당 데이터가 분산 산술 수단에서 분산 산술되지 않게 통과(by-pass)되도록 하기 위한 영(zero) 입력 검출수단; 상기 재순차 역이산여현변환 수단에서 비트 순서를 재정리한 데이터 및 상기 제1 덧셈수단에서 각 비트를 누산한 데이터를 분산 산술하기 위한 상기 분산 산술 수단; 상기 분산 산술 수단에서 분산 산술한 데이터를 임시 저장하기 위한 제2 임시 저장수단; 상기 제2 임시 저장수단에 저장되어 있는 데이터의 비트 순서를 재정리하기 위한 재순차 이산여현변환 수단; 상기 제2 임시 저장수단에 저장되어 있는 데이터의 각 비트를 누산하기 위한 제2 덧셈수단; 상기 재순차 이산여현변환 수단에서 비트 순서를 재정리한 데이터 및 상기 제2 덧셈수단에서 각 비트를 누산한 데이터를 반올림하기 위한 라운딩 수단; 상기 라운딩 수단에서 반올림한 데이터를 직렬 데이터로 변환하기 위한 제2 변환수단; 상기 라운딩 수단에서 반올림한 데이터를 전치(Transposition)시켜 저장하기 위한 상기 전치데이터 저장수단; 및 상기 제2 변환수단에서 변환한 직렬 데이터를 반올림하고 클립핑(clipping)하기 위한 라운딩 앤 클립핑 수단을 포함한다.
한편, 본 발명의 다른 장치는, 이산여현변환/역이산여현변환을 위한 분산 산술 처리장치에 있어서, 외부로부터 수신한 데이터를 병렬 데이터로 로딩하기 위한 로딩 수단; 상기 로딩 수단에서 로딩한 데이터를 임시 저장하기 위한 제1 임시 저장수단; 상기 로딩 수단에 로딩되어 있는 데이터의 소정 비트를 검사하여 소정 비트가 모두 "0"임에 따라 해당 데이터가 연산수단에서 이산여현변환/역이산여현변환 연산이 수행되지 않게 통과(by-pass)되도록 하기 위한 영(zero) 입력 검출수단; 상기 임시 저장수단에 저장되어 있는 데이터를 이용하여 이산여현변환/역이산여현변환 연산을 수행하기 위한 상기 연산수단; 상기 연산수단에서 이산여현변환/역이산여현변환 연산이 소정의 클럭(clock) 내에 수행되도록 처리 시간을 지연시키기 위한 지연수단; 상기 연산수단에서 이산여현변환/역이산여현변환 연산을 수행한 데이터 및 상기 분산 산술 처리장치의 최종 출력 데이터를 반가산하기 위한 반가산 수단; 상기 반가산 수단에서 반가산한 데이터를 임시 저장하기 위한 제2 저장수단; 및 외부로부터 수신한 데이터를 이용하여 특정 데이터가 분산 산술되도록 상기 각 구성 요소를 제어하기 위한 제어수단을 포함한다.
삭제
삭제
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.
도 1 은 종래의 이산여현변환 처리장치의 구성예시도로서, 저전송율 영상신호용 이차원 이산여현변환 처리장치를 나타낸다.
도면에서, "110"은 다중화기(MUX), "120"은 시리얼 투 패러럴 컨버터(Serial to Parallel Converter), "130"은 천이 레지스터(Shift Register), "140"은 1차원 이산여현변환/역이산여현변환 모듈(1-D DCT/IDCT), "150"은 패러럴 투 시리얼 컨버터(Parallel to Serial Converter), "160"은 전치 메모리(Transposition Memory), 그리고 "170"은 라운딩 앤 클립핑 모듈(Rounding & Clipping for Output)을 각각 나타낸다.
행열방법(Row-column method)을 사용하므로 8x8 블록이 입력되면 행(row) 방향의 1차원 이산여현변환/역이산여현변환(1-D DCT/IDCT) 후 전치메모리(transposition memory)(160)를 거쳐 전치(transposition)가 이루어지고 열(column) 방향의 1차원 이산여현변환/역이산여현변환(1-D DCT/IDCT)을 수행하여 출력한다.
이산여현변환/역이산여현변환(DCT/IDCT) 셀렉터(selector)에 의해 통과할 패스가 결정이 된다.
입력 단의 다중화기(MUX)(110)는 입력데이터를 선택하고, 포맷(format)을 맞춰주는 역할을 수행한다.
이산여현변환(DCT)의 경우, 입력 신호가 행(row) 방향의 1차원 이산여현변환을 위해 입력된다. 1차원 이산여현변환의 결과 데이터, 즉, 전치(Transposition)된 데이터들이 다시 열(column) 방향의 1차원 이산여현변환을 위해 1차원 이산여현변환/역이산여현변환 모듈(140)에 입력되고 그 결과 데이터가 이산여현변환 계수로서 출력된다.
역이산여현변환(IDCT)의 경우, 입력 신호가 행(row) 방향의 1차원 이산여현변환을 위해 입력된다. 1차원 이산여현변환의 결과 데이터, 즉 전치(Transposition)된 데이터들이 다시 열(column) 방향의 1차원 이산여현변환을 위해 1차원 이산여현변화/역이산여현변환 모듈(140)에 입력되고, 그 결과 데이터가 이산여현변환 계수로서 출력된다.
한편, 하기 [수학식 4]와 [수학식 5]에서 x로 나타내어진 값들이 입력 픽셀 데이터이고, y가 처리된 이산여현변환 계수이다. 그리고, 8-포인터(point) 역이산여현변환(IDCT)는 하기 [수학식 4]와 [수학식 5]로 나타낼 수 있다.
도 2 는 본 발명에 따른 이산여현변환 처리장치의 구성예시도이다.
서로 다른 이산여현변환(DCT) 연산을 수행하면서 하드웨어의 반복 사용을 극대화 할 수 있는 방법으로 분산 산술 처리(distributed arithmetic)방법이 있다.
본 발명에서는 분산 산술 처리회로에 영(zero)입력 검출회로를 적용하여 전력 절감을 도모하고자 한다.
분산 산술 처리방법은 신호처리에서 많이 쓰이는 방법이며 이산여현변환(DCT)의 구현에도 매우 자주 쓰이는 방법이다.
아래에 분산 산술 처리방법에 대하여 간단히 설명한다.
변수 X가 변수 Y0, Y1, Y2, Y3에 의하여 하기 [수학식 6]에 따라 구해진다고 가정한다.
여기서, 변수 Y0, Y1, Y2, Y3가 n-비트 2의 보수(n-bit 2's complement)로 표현되어 있는 경우에 Yi(여기서, 임)는 하기 [수학식 7]과 같이 표현된다.
이때, X는 하기 [수학식 8]과 같이 표현될 수 있다.
위의 식에서 의 값들을 의 가능한 모든 경우에 대하여 미리 계산하여 롬(ROM)에 저장하여 놓으면 의 값을 쉽게 구할 수 있다. 이러한 중간 값들을 계속하여 구하면 최종적으로 원하는 값을 구할 수 있다. 그리고, 다음에 기술되는 도 5에 [수학식 8]의 값을 구하는 회로가 나타나 있으며, 이에 대해서는 도 5를 설명하면서 좀 더 상세히 설명한다.
한편, 본 발명에 따른 이산여현변환 장치는, 외부입력과 전치메모리(232)로부터의 입력 중 하나를 선택하는 다중화기(MUX)(201), 상기 다중화기(201)에서 출력되는 직렬데이터를 병렬데이터로 변환하는 시리얼 투 패러럴 컨버터(Serial to Parallel Converter)(202), 상기 시리얼 투 패러럴 컨버터(Serial to Parallel Converter)(202)로부터 출력된 데이터를 병렬로 로딩(loading)하는 천이 레지스터(16bit × 8 Shift Register)(203), 상기 천이 레지스터(203)에서 출력된 데이터를 이산여현변환 또는 역이산여현변환하는 1차원 이산여현변환/역이산여현변환 모듈(210), 상기 1차원 이산여현변환/역이산여현변환 모듈(210)로 입력되는 데이터를 검사하여 입력되는 비트들이 모두 "0"일 때, 상기 1차원 이산여현변환/역이산여현변환 모듈(210)의 일부 모듈을 거치지 않고 패스하도록 하는 영(zero) 입력 검출기(221), 상기 1차원 이산여현변환/역이산여현변환 모듈(210)에서 출력된 병렬 데이터를 직렬데이터로 변환하는 패러럴 투 시리얼 컨버터(Parallel to Serial Converter)(231), 상기 패러럴 투 시리얼 컨버터(231)에서 출력된 데이터를 저장하는 전치메모리(Transposition Memory)(232), 상기 패러럴 투 시리얼 컨버터(231)에서 출력된 데이터를 출력하기 위하여 반올림과 클립핑(Clipping)을 수행하는 라운딩 앤 클립핑 모듈(Rounding & Clipping Module)(233), 그리고 상기 라운딩 앤 클립핑 모듈(233)에서 출력된 데이터를 임시로 저장하기 위한 레지스터(Register)(234)를 포함한다.
또한, 상기 1차원 이산여현변환/역이산여현변환 모듈(210)은 천이 레지스터(203)에서 출력된 데이터를 임시 저장하는 버퍼(211, 212), 상기 버퍼(211)에서 출력된 데이터의 순서를 재정리하는 재순차 역이산여현변환 모듈(213), 상기 버퍼(212)에서 출력된 데이터를 이산여현변환을 위해 덧셈하는 직렬 덧셈기(214), 상기 재순차 역이산여현변환 모듈(213), 직렬 덧셈기(214)에서 출력된 데이터를 분산 산술 연산하는 분산 산술 모듈(215), 상기 분산 산술 모듈(215)에서 출력된 데이터를 임시로 저장하는 버퍼(216, 217), 상기 버퍼(216)에서 출력된 데이터의 순서를 재정리하는 재순차 이산여현변환모듈(218), 상기 버퍼(217)에서 출력된 데이터를 역이산여현변환을 위해 덧셈하는 직렬 덧셈기(219), 그리고 상기 재순차 이산여현변환모듈(218)과 직렬 덧셈기(219)에서 출력된 데이터를 반올림하는 라운딩 모듈(220)을 포함한다.
상기 8x8 이산여현변환/역이산여현변환 장치를 구성하고 있는 각 블록들의 기능은 다음과 같다.
먼저, 다중화기(MUX)(201)는 외부입력 데이터와 전치메모리(Transposition Memory)(232)로부터의 입력 중 하나를 선택한다. 이는 2차원 이산여현변환의 구조가 행-열(row-column) 분리방법을 구현한 것이다.
상기 외부입력 데이터는 이산여현변환(DCT)의 경우 9비트(bits), 역이산여현변환(IDCT)의 경우 12비트(bits)이고, 전치메모리(232)로부터의 입력은 15비트(bit) × 2이다.
행(row) 방향의 변환이 우선 수행되고, 열(column) 방향의 변환을 수행됨으로써 2차원 이산여현변환/역이산여현변환(2-D DCT/IDCT)이 마무리된다.
시리얼 투 패러럴 컨버터(Serial To Parallel Converter)(202)는 15비트 레지스터(bit Register) 8개로 이루어져 있으며, 직렬로 입력되는 데이터를 병렬로 출력한다.
천이 레지스터(16bit × 8 Shift Register)는 16비트 × 8의 레지스터로 구성되며, 시리얼 투 패러럴 컨버터(202)로부터의 데이터를 병렬로 로딩(Loading)하여 1차원 이산여현변환/역이산여현변환 모듈(1-D DCT/IDCT)(210)의 입력으로 사용하도록 한다. 여기서, 병렬 로딩(Loading) 시 시리얼 투 패러럴 컨버터(202)의 출력이 15비트이므로 최하위비트(LSB)에 0을 채워 16비트의 데이터로 만들어준다.
1차원 이산여현변환/역이산여현변환 모듈(1-D DCT/IDCT)(210)로 입력될 때는 2비트씩 8개의 데이터가 입력된다. 그래서, 천이 레지스터(203)는 시리얼 투 패러럴 컨버터(202)로부터 병렬로 로딩(Loading)하는 동작과 로딩(Loading) 후, 2비트씩 오른쪽 천이(Right Shift)하면서 2비트를 출력으로 내준다.
영(zero) 입력 검출기(221)는 입력되는 비트들이 모두 "0"일 때, 1차원 이산여현변환/역이산여현변환(1-D DCT/IDCT) 모듈(210)의 일부를 거치지 않고 패스하도록 하여 파워 소모를 줄이는 역할을 한다.
상기 영(zero) 입력 검출기(221)는 1차원 이산여현변환/역이산여현변환 모듈(210)의 분산 산술 모듈(215)의 입력이 모두 "0"인지를 확인하여 모두 "0"인 경우 롬(ROM)으로부터 데이터를 읽어 내고, 그 데이터들의 합을 구하는 기능을 수행하는 모듈을 바이패스 하도록 한다. 그리고, 이는 16개의 입력 데이터 비트들을 논리합(OR-ing)시켜 구현한다.
재순차 역이산여현변환 모듈(Reorder IDCT module)(213)과 재순차 이산여현변환 모듈(Reorder DCT module)(218)은, 역이산여현변환(IDCT)의 입력이 x0, x1, x2, ... , x7의 순서가 아니라 x0, x4, x6, x2, x1, x3, x5, x7이므로 이의 순서를 바꿔주는 기능을 수행한다. 그리고, 이산여현변환(DCT)의 출력도 x0, x1, x2, ... , x7의 순서가 아니라 x0, x4, x6, x2, x1, x3, x5, x7이므로 그 순서를 바꿔주는 역할을 한다.
1차원 이산여현변환은 분산 산술 모듈(215) 전에 덧셈을 수행하게 되는데 이를 위한 모듈이 이산여현변환을 위한 직렬 덧셈기(Serial Adder for DCT)(214)이다.
그리고, 1차원 역이산여현변환은 분산 산술 모듈(215) 후에 덧셈을 수행하게 되는데 이를 위한 모듈이 역이산여현변환을 위한 직렬 덧셈기(Serial Adder for IDCT)(219)이다.
분산 산술 모듈(Distributed arithmetic module)(215)은 1차원 이산여현변환/역이산여현변환 모듈(210)의 곱셈 동작을 전담한 부분이다.
이산여현변환과 역이산여현변환이 같은 롬 테이블(ROM table)을 사용할 수 있으므로, 분산 산술 모듈(215)은 이산여현변환과 역이산여현변환의 경우 동일하다. 즉, 이산여현변환을 위한 롬 테이블(ROM table)과 역이산여현변환을 위한 롬 테이블(ROM table)을 따로 두지 않는다.
상기 전치 메모리(Transposition memory)(232)의 동작은 다음과 같다.
먼저, 입력의 경우 행 또는 열 방향의 1차원 이산여현변환/역이산여현변환 결과, 15비트 데이터 8개는 2개씩 1클럭에 입력되고, 두 번째 클럭에서는 시리얼 투 패러럴 컨버터(202)가 상기 전치 메모리(232)에 저장되어 있는 데이터를 읽을 수 있는 시간을 주기 위해 아무런 동작을 하지 않는다. 그 다음 클럭에서 다시 2개의 데이터를 쓰기(Write), 그 다음 클럭은 시리얼 투 패러럴 컨버터(202)를 위해 동작 정지(no operation)한다. 상기 동작을 통해 8개의 데이터가 전치 메모리(232)에 모두 읽기/쓰기(read/write)될 때까지 수행한다. 그리고, 출력은 입력의 경우에서의 쓰기(write) 동작이 수행되는 시간을 피해 15비트 데이터 2개씩을 읽어낸다. 그리고, 다음 블록의 입출력을 위한 고려사항으로서, 8x8 하나의 블록에 대한 이산여현변화/역이산여현변환에서 전치메모리(232)에 데이터를 쓰는 방향이 가로 방향이었다면, 그 다음 8x8 블록에서는 세로 방향으로 전치메모리(232)에 데이터를 쓰도록 하며, 이는 파이프라이닝(Pipelining)을 위한 동작이다.
한편, 역이산여현변환을 위한 라운딩 모듈(Rounding module)(220)은 1차원 역이산여현변환의 결과를 전치메모리(232)의 입력으로 사용하기 위해 데이터를 반올림해 주는 기능을 한다. 그리고, 이산여현변환을 위한 라운딩 모듈(Rounding module)(220)은 역이산여현변환의 라운딩 모듈(Rounding module)(220)과 유사하게 1차원 이산여현변환의 결과를 전치메모리(232)의 입력으로 사용하기 위해 데이터를 반올림해주는 기능을 한다.
다음으로, 출력을 위한 라운딩 앤 클립핑(Rounding & clipping for output) 모듈(233)에서는 출력을 위한 반올림과 클립핑(Clipping)이 수행된다. 입력은 15비트이며, 출력은 이산여현변환의 경우 12비트, 역이산여현변환의 경우 9비트이다.
즉, 본 발명에 따른 이산여현변환 처리장치는 종래의 이산여현변환 회로를 구성하는 분산 산술 처리회로에 영(zero)입력 검출회로를 장착하여 입력 데이터의 비트 구성을 체크하여 전부 영(zero)인 경우, 많은 계산량을 요구하는 이산여현변환 연산회로, 즉 롬(ROM)으로부터 데이터를 읽고 그 읽어 낸 데이터들의 합을 구하는 모듈을 바이패스 하도록 하여, 전력소비의 한 요소인 시그널 액티비티를 줄여 이산여현변환 처리회로에서의 전력소모를 절감할 수 있다.
도 3 은 본 발명에 따른 영입력 검출회로를 구비한 분산 산술 처리장치의 일실시예 상세 구성도로서, 이산여현변환시 짝수 계수들을 위한 분산 산술 처리 과정을 나타낸다.
도 3에 도시된 바와 같이, 본 발명에 따른 분산 산술 처리장치는, 입력 데이터를 병렬로 로딩하는 16비트 천이 레지스터(16bit shift register)(301, 302), 상기 천이 레지스터(301, 302)에서 출력된 데이터를 임시 저장하는 버퍼(303), 상기 버퍼(303)에서 출력된 데이터를 이용하여 역이산여현변환 연산을 수행하는 역이산여현변환 모듈(305), 상기 16비트 천이 레지스터(301, 302)에서 출력된 데이터 중에서 소정의 비트가 "0" 인 경우를 검출하여 바이패스 시키는 0(zero) 입력 검출기(304), 상기 역이산여현변환 모듈(305)의 계산을 보조하기 위한 파이프라인 레지스터(Pipeline Register)(306), 상기 파이프라인 레지스터(306)의 출력과 분산 산술 처리 모듈의 출력을 입력받아 반가산하는 반가산기(Half Adder)(307), 상기 반가산기(307)에서 출력된 데이터를 임시 저장하는 레지스터(A)(308)와 레지스터(B)(309), 상기 분산 처리 모듈을 제어하는 제어 블럭(311), 그리고 상기 제어 블럭(311)에서 출력된 신호와 상기 분산 처리 모듈의 출력 신호를 논리곱하는 논리곱기(310)를 포함한다.
짝수 계수들에 대한 곱셈을 담당하는 분산 산술 모듈은 두 개(실질적으로, y0, y4 또는 y2, y6의 입력)의 입력을 가지는 반면, 홀수 계수들에 대한 분산 산술 모듈은 4개(실질적으로, y1, y3, y5, y7의 입력)의 입력을 가지게 된다.
먼저, 도 3을 이용하여 짝수 계수들에 대한 곱셈을 담당하는 분산 산술 모듈에 대하여 상세히 설명하면 다음과 같다.
상기 역이산여현변환 모듈(305)의 내부에 있는 롬(ROM)으로 2비트의 데이터 두 개(y0, y4 또는 y2, y6)가 입력된다. 그리고, 16비트 천이 레지스터(16bit shift register)(301, 302)는 데이터를 병렬로 로딩하고, 이를 직렬로 2비트씩 오른쪽 천이(right shift)하여 역이산여현변환 모듈(305)의 내부에 있는 롬(ROM)의 주소를 가리키게 된다. 이때, 입력되는 16비트의 값이 전부 "0"인 경우 영입력 검출기(304)를 이용하여 역이산여현변환 모듈(305)을 거치지 않고 바이패스 시켜 불필요한 계산을 피하게 한다. 여기서, 역이산여현변환 모듈(305)의 내부는 롬(ROM) 두 개, 다중화(MUX)회로, 1의 보수회로(1's complement), 15비트 전가산기 등으로 구성되어 있다.
한편, 17비트인 파이프라인 레지스터(306)는 역이산여현변환 모듈(305) 내부의 15비트 전가산기 동작이 1클럭 안에 수행되기 어려울 경우를 대비한 것이다. 그리고, 출력 레지스터인 레지스터(A)(308), 레지스터(B)(309)와 더불어 직렬 덧셈(serial addition)을 수행한다.
상기 출력 레지스터인 레지스터(A)(308), 레지스터(B)(309), 그리고 최하위비트(LSB) 2비트는 각각 역이산여현변환과 이산여현변환 동작에 따라 다르게 사용된다. 예를 들면, 역이산여현변환의 경우 레지스터(B)(309)는 사용하지 않고, 레지스터(A)(308)와 최하위비트(LSB) 2비트만 사용하는데, 레지스터(A)(308)는 계산결과의 최상위비트(MSB)를 포함하고 있고, 라운딩 모듈(Rounding module)(220)에 직접 입력되며, 최하위비트(LSB)의 2비트는 직렬 덧셈기(Serial adder)(219) 부분으로 입력이 된다. 8클럭 후, 직렬 덧셈(Serial addition)된 결과와 레지스터(A)(308)의 합으로 최종 결과가 얻어지고, 상기 라운딩 모듈(Rounding module)(220)에서 전치메모리(232)로의 입력을 위해 반올림 동작을 수행한다.
이산여현변환의 경우 최하위비트(LSB) 2비트 출력은 사용되지 않고 레지스터(A)(308)와 레지스터(B)(309)가 라운딩 모듈(220)로 입력된다.
또한, 이산여현변환의 경우, 직렬 덧셈(Serial addition)이 분산 산술 모듈(215)의 앞에 위치 한다.
분산 산술 모듈의 출력 A는 이산여현변환/역이산여현변환 라운딩 제어회로, 출력 B는 이산여현변환 라운딩 제어회로로 입력되고, 출력 C는 역이산여현변환을 위한 직렬 덧셈기(serial adder)(219)로 입력된다.
도 4 는 본 발명에 따른 영입력 검출회로를 구비한 분산 산술 처리장치의 다른 실시예 상세 구성도로서, 역이산여현변환의 홀수 계수들의 계산을 위한 과정을 나타낸다.
도 4에 도시된 바와 같이, 본 발명에 따른 분산 산술 장치는, 입력 데이터를 병렬로 로딩하는 16비트 천이 레지스터(16bit shift register)(401~404), 상기 16비트 천이 레지스터(401~404)에서 출력된 데이터를 임시 저장하는 버퍼(405), 상기 버퍼(405)에서 출력된 데이터를 이용하여 역이산여현변환 연산을 수행하는 역이산여현변환 모듈(407), 상기 16비트 천이 레지스터(401~404)에서 출력된 데이터 중에서 소정의 비트가 "0" 인 경우를 검출하여 바이패스 시키는 0(zero) 입력 검출기(406), 상기 역이산여현변환 모듈(407)의 계산을 보조하기 위한 파이프라인 레지스터(Pipeline Register)(408), 상기 파이프라인 레지스터(408)의 출력과 분산 산술 처리 모듈의 출력을 입력받아 반가산하는 반가산기(Half Adder)(409), 상기 반가산기(409)에서 출력된 데이터를 임시 저장하는 레지스터(A)(410)와 레지스터(B)(411), 상기 분산 처리 모듈을 제어하는 제어 블럭(413), 그리고 상기 제어 블럭(413)에서 출력된 신호와 상기 분산 처리 모듈의 출력 신호를 논리곱하는 논리곱기(412)를 포함한다.
상기 설명한 바와 같이, 짝수 계수들에 대한 곱셈을 담당하는 분산 산술 모듈은 두 개(실질적으로, y0, y4 또는 y2, y6의 입력)의 입력을 가지는 반면, 홀수 계수들에 대한 분산 산술 모듈은 4개(실질적으로, y1, y3, y5, y7의 입력)의 입력을 가지게 된다.
먼저, 도 4를 이용하여 홀수 계수들에 대한 곱셈을 담당하는 분산 산술 모듈에 대하여 상세히 설명하면 다음과 같다.
롬(ROM) 모듈에 입력되는 데이터는 2비트의 데이터가 4개(y1, y3, y5, y7) 입력되는 것을 제외하고는 기능은 도 3과 같다.
16비트 천이 레지스터(shift register)(401~404)는 데이터를 병렬로 로딩하고, 이를 직렬로 2비트씩 오른쪽 천이(right shift)하여 롬(ROM)의 주소를 가리키게 되는 것이다. 이때, 상기 천이 레지스터를 통과한 16비트 데이터 값이 전부 "0"인 경우 영입력 검출기(406)를 이용하여 역이산여현변환 모듈(407)을 거치지 않고 바이패스시켜 불필요한 계산을 피하게 한다.
도 5 는 본 발명에 따른 분산 산술 처리 회로의 일실시예 상세 구성도이다.
분산 산술 처리는 신호처리에서 많이 쓰이는 방법이며, 이산여현변환의 구현에 매우 자주 쓰이는 방법이며, 그에 대한 설명은 상기 도 2에서 설명하였다.
도 5는 상기 [수학식 8]의 값을 구하는 회로이며, 도 5에서 롬(ROM)과 가/감산기(accumulator)(502), 그리고 천이 레지스터(SR)(503)가 연결되어 있는 것을 랙(RAC : ROM and accumulator in cascade)이라고 하며, 분산 산술 처리의 기본 요소가 된다. 그리고, 그에 대한 설명은 공지된 기술로서 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 알 수 있으므로 상세한 설명은 논외로 한다.
한편, 본 발명은 이산여현변환장치를 집적회로로 구현하는데 있어서, 불필요한 계산을 하지 않음으로 인한 전력소모 절감을 도모한 회로이다. 또한, 많은 계산량을 필요로 하는 이산여현변환장치의 중요 구성요소인 분산 산술 처리회로에 영입력 검출회로를 구비하여, 전부 "0"으로 이루어진 입력 데이터가 들어오면 롬(ROM), 다중화 회로, 1의 보수회로, 15비트 전가산기 등으로 구성되어 있는 회로를 바이패스하도록 하여, 그 결과 영상 압축/복원 용 집적회로에서 대부분의 계산량을 처리하는 이산여현변환장치 회로에서 소비되는 전력량을 줄일 수 있다.
삭제
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.
상기한 바와 같은 본 발명은, 집적회로 구현시 기존의 회로에 비해 소비전력을 상당히 줄일 수 있기 때문에 이차원 이산여현변환 장치의 특성을 개선시켜 활용범위 확대 및 성능 향상에 효과가 있다.
도 1 은 종래의 이산여현변환 처리장치의 구성예시도.
도 2 는 본 발명에 따른 이산여현변환 처리장치의 구성예시도.
도 3 은 본 발명에 따른 영입력 검출회로를 구비한 분산 산술 처리장치의 일실시예 상세 구성도.
도 4 는 본 발명에 따른 영입력 검출회로를 구비한 분산 산술 처리장치의 다른 실시예 상세 구성도.
도 5 는 본 발명에 따른 분산 산술 처리 회로의 일실시예 상세 구성도.

Claims (9)

  1. 삭제
  2. 이차원 이산여현변환 처리장치에 있어서,
    외부로부터 수신한 데이터 및 전치데이터 저장수단으로부터 수신한 데이터 중 어느 하나의 데이터를 선택하기 위한 다중화 수단;
    상기 다중화 수단에서 선택한 데이터를 병렬 데이터로 변환하기 위한 제1 변환수단;
    상기 제1 변환수단에서 변환한 병렬 데이터를 로딩하기 위한 로딩 수단;
    상기 로딩 수단에서 로딩한 데이터를 임시 저장하기 위한 제1 임시 저장수단;
    상기 제1 임시 저장수단에 저장되어 있는 데이터의 비트 순서를 재정리하기 위한 재순차 역이산여현변환 수단;
    상기 제1 임시 저장수단에 저장되어 있는 데이터의 각 비트를 누산하기 위한 제1 덧셈수단;
    상기 재순차 역이산여현변환 수단에서 비트 순서를 재정리한 데이터의 소정 비트 및 상기 제1 덧셈수단에서 각 비트를 누산한 데이터의 소정 비트를 검사하여 상기 각 소정 비트가 모두 "0"임에 따라 해당 데이터가 분산 산술 수단에서 분산 산술되지 않게 통과(by-pass)되도록 하기 위한 영(zero) 입력 검출수단;
    상기 재순차 역이산여현변환 수단에서 비트 순서를 재정리한 데이터 및 상기 제1 덧셈수단에서 각 비트를 누산한 데이터를 분산 산술하기 위한 상기 분산 산술 수단;
    상기 분산 산술 수단에서 분산 산술한 데이터를 임시 저장하기 위한 제2 임시 저장수단;
    상기 제2 임시 저장수단에 저장되어 있는 데이터의 비트 순서를 재정리하기 위한 재순차 이산여현변환 수단;
    상기 제2 임시 저장수단에 저장되어 있는 데이터의 각 비트를 누산하기 위한 제2 덧셈수단;
    상기 재순차 이산여현변환 수단에서 비트 순서를 재정리한 데이터 및 상기 제2 덧셈수단에서 각 비트를 누산한 데이터를 반올림하기 위한 라운딩 수단;
    상기 라운딩 수단에서 반올림한 데이터를 직렬 데이터로 변환하기 위한 제2 변환수단;
    상기 라운딩 수단에서 반올림한 데이터를 전치(Transposition)시켜 저장하기 위한 상기 전치데이터 저장수단; 및
    상기 제2 변환수단에서 변환한 직렬 데이터를 반올림하고 클립핑(clipping)하기 위한 라운딩 앤 클립핑 수단
    을 포함하는 이차원 이산여현변환 처리장치.
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
KR10-2001-0060467A 2001-09-28 2001-09-28 분산 산술 처리장치 및 그를 이용한 이차원 이산여현변환 처리장치 KR100481067B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR10-2001-0060467A KR100481067B1 (ko) 2001-09-28 2001-09-28 분산 산술 처리장치 및 그를 이용한 이차원 이산여현변환 처리장치
US10/183,401 US7065543B2 (en) 2001-09-28 2002-06-28 Apparatus and method for 2-D discrete transform using distributed arithmetic module

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0060467A KR100481067B1 (ko) 2001-09-28 2001-09-28 분산 산술 처리장치 및 그를 이용한 이차원 이산여현변환 처리장치

Publications (2)

Publication Number Publication Date
KR20030027321A KR20030027321A (ko) 2003-04-07
KR100481067B1 true KR100481067B1 (ko) 2005-04-07

Family

ID=19714789

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0060467A KR100481067B1 (ko) 2001-09-28 2001-09-28 분산 산술 처리장치 및 그를 이용한 이차원 이산여현변환 처리장치

Country Status (2)

Country Link
US (1) US7065543B2 (ko)
KR (1) KR100481067B1 (ko)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100481067B1 (ko) * 2001-09-28 2005-04-07 브이케이 주식회사 분산 산술 처리장치 및 그를 이용한 이차원 이산여현변환 처리장치
KR20040026767A (ko) * 2002-09-26 2004-04-01 (주)씨앤에스 테크놀로지 역이산여현변환 방법과 이를 이용한 영상복원방법
KR100522595B1 (ko) * 2002-11-29 2005-10-19 삼성전자주식회사 엠펙 비디오 복호화방법 및 엠펙 비디오 복호화기
US9330060B1 (en) 2003-04-15 2016-05-03 Nvidia Corporation Method and device for encoding and decoding video image data
US8660182B2 (en) * 2003-06-09 2014-02-25 Nvidia Corporation MPEG motion estimation based on dual start points
US8423597B1 (en) * 2003-08-29 2013-04-16 Nvidia Corporation Method and system for adaptive matrix trimming in an inverse discrete cosine transform (IDCT) operation
EP1952268A4 (en) * 2005-11-04 2012-01-04 Univ Singapore METHOD AND SYSTEM FOR DETERMINING PRE-ARRANGED NUMBERS OF PROCESSOR CYCLES REQUIRED FOR ANY SEGMENTS OF A MEDIA FILE FOR PLAYING THE MEDIA FILE
US8731071B1 (en) 2005-12-15 2014-05-20 Nvidia Corporation System for performing finite input response (FIR) filtering in motion estimation
US8599841B1 (en) 2006-03-28 2013-12-03 Nvidia Corporation Multi-format bitstream decoding engine
US8593469B2 (en) * 2006-03-29 2013-11-26 Nvidia Corporation Method and circuit for efficient caching of reference video data
US8724702B1 (en) 2006-03-29 2014-05-13 Nvidia Corporation Methods and systems for motion estimation used in video coding
US7966509B2 (en) * 2006-05-30 2011-06-21 Nvidia Corporation System and method for performing low power dynamic trimming
US7884742B2 (en) * 2006-06-08 2011-02-08 Nvidia Corporation System and method for efficient compression of digital data
US8660380B2 (en) * 2006-08-25 2014-02-25 Nvidia Corporation Method and system for performing two-dimensional transform on data value array with reduced power consumption
KR20080086766A (ko) * 2007-03-23 2008-09-26 삼성전자주식회사 픽셀 단위의 컨텍스트 모델을 이용한 영상의 부호화,복호화 방법 및 장치
US8756482B2 (en) * 2007-05-25 2014-06-17 Nvidia Corporation Efficient encoding/decoding of a sequence of data frames
US20080291209A1 (en) * 2007-05-25 2008-11-27 Nvidia Corporation Encoding Multi-media Signals
US9118927B2 (en) * 2007-06-13 2015-08-25 Nvidia Corporation Sub-pixel interpolation and its application in motion compensated encoding of a video signal
US8873625B2 (en) * 2007-07-18 2014-10-28 Nvidia Corporation Enhanced compression in representing non-frame-edge blocks of image frames
US8666181B2 (en) * 2008-12-10 2014-03-04 Nvidia Corporation Adaptive multiple engine image motion detection system and method
KR100978391B1 (ko) * 2009-01-14 2010-08-26 한양대학교 산학협력단 이산여현변환/역이산여현변환 방법 및 장치
US9110849B2 (en) * 2009-04-15 2015-08-18 Qualcomm Incorporated Computing even-sized discrete cosine transforms
US8762441B2 (en) * 2009-06-05 2014-06-24 Qualcomm Incorporated 4X4 transform for media coding
US9069713B2 (en) * 2009-06-05 2015-06-30 Qualcomm Incorporated 4X4 transform for media coding
US8451904B2 (en) 2009-06-24 2013-05-28 Qualcomm Incorporated 8-point transform for media data coding
US9075757B2 (en) * 2009-06-24 2015-07-07 Qualcomm Incorporated 16-point transform for media data coding
US9118898B2 (en) * 2009-06-24 2015-08-25 Qualcomm Incorporated 8-point transform for media data coding
US9081733B2 (en) * 2009-06-24 2015-07-14 Qualcomm Incorporated 16-point transform for media data coding
CN101989254B (zh) * 2009-08-05 2012-03-14 鸿富锦精密工业(深圳)有限公司 离散余弦转换及其逆转换电路
US20110158310A1 (en) * 2009-12-30 2011-06-30 Nvidia Corporation Decoding data using lookup tables
WO2012005395A1 (ko) * 2010-07-09 2012-01-12 한양대학교 산학협력단 이산여현변환/역이산여현변환 방법 및 장치
US9824066B2 (en) 2011-01-10 2017-11-21 Qualcomm Incorporated 32-point transform for media data coding
US9798698B2 (en) 2012-08-13 2017-10-24 Nvidia Corporation System and method for multi-color dilu preconditioner
KR102401851B1 (ko) * 2017-06-14 2022-05-26 삼성디스플레이 주식회사 영상 압축 방법 및 이를 수행하는 표시 장치

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR940015787A (ko) * 1992-12-30 1994-07-21 양승택 이산여현 변환회로
US5371611A (en) * 1992-08-26 1994-12-06 Kokusai Denshin Denwa Kabushiki Kaisha Method for and system of decoding compressed continuous-tone digital image data
JP2000138933A (ja) * 1998-11-02 2000-05-16 Fujitsu Ltd 画像符号化装置
KR20010059970A (ko) * 1999-12-31 2001-07-06 이계철 이산여현변환을 위한 비동기식 매트릭스-벡터 곱셈기
KR100306745B1 (ko) * 1998-11-11 2002-05-18 오길록 알에이씨를사용하는하프밴드서브밴드디씨티/아이디씨티회로및그방법
US20030078952A1 (en) * 2001-09-28 2003-04-24 Ig Kyun Kim Apparatus and method for 2-D discrete transform using distributed arithmetic module

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2596892B1 (fr) 1986-04-04 1988-05-20 Jutand Francis Circuit pour effectuer une transformation lineaire sur un signal numerique
JP3102115B2 (ja) 1991-12-27 2000-10-23 日本電気株式会社 離散コサイン変換処理装置
US5764553A (en) * 1996-02-28 1998-06-09 Lsi Logic Corporation Generalized data processing path for performing transformation and quantization functions for video encoder systems
KR20010060467A (ko) 1999-12-27 2001-07-07 구자홍 롬 정정 장치 및 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5371611A (en) * 1992-08-26 1994-12-06 Kokusai Denshin Denwa Kabushiki Kaisha Method for and system of decoding compressed continuous-tone digital image data
KR940015787A (ko) * 1992-12-30 1994-07-21 양승택 이산여현 변환회로
JP2000138933A (ja) * 1998-11-02 2000-05-16 Fujitsu Ltd 画像符号化装置
KR100306745B1 (ko) * 1998-11-11 2002-05-18 오길록 알에이씨를사용하는하프밴드서브밴드디씨티/아이디씨티회로및그방법
KR20010059970A (ko) * 1999-12-31 2001-07-06 이계철 이산여현변환을 위한 비동기식 매트릭스-벡터 곱셈기
US20030078952A1 (en) * 2001-09-28 2003-04-24 Ig Kyun Kim Apparatus and method for 2-D discrete transform using distributed arithmetic module

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
August and Ha,"On the low-power design of DCT and IDCT for low bit-rate video codec", Int. ASIC/SOC conference, Arlington, Virginia, Sep. 2001 *
논문(요약/4 절/결론 참조)(2001, 09) *

Also Published As

Publication number Publication date
US20030078952A1 (en) 2003-04-24
KR20030027321A (ko) 2003-04-07
US7065543B2 (en) 2006-06-20

Similar Documents

Publication Publication Date Title
KR100481067B1 (ko) 분산 산술 처리장치 및 그를 이용한 이차원 이산여현변환 처리장치
US5453945A (en) Method for decomposing signals into efficient time-frequency representations for data compression and recognition
KR100359965B1 (ko) 프로세서와이의연산방법 및 데이타프로세서
US8660380B2 (en) Method and system for performing two-dimensional transform on data value array with reduced power consumption
JPH0526229B2 (ko)
JPH11505640A (ja) ビット・スライス式テーブル・ルックアップ・デジタルたたみ込み
Sripathi Efficient implementations of discrete wavelet transforms using FPGAs
US20210312270A1 (en) Highly Parallel Convolutional Neural Network
CN1598876A (zh) 输出多位元影像数据的控制装置、系统与方法
JPH0744530A (ja) 演算装置
CN116151321A (zh) 半导体装置
US6789097B2 (en) Real-time method for bit-reversal of large size arrays
JP2002519957A (ja) 符号関数を処理する方法および装置
JPH0981541A (ja) 累算器
CN113031916A (zh) 乘法器、数据处理方法、装置及芯片
Liguori A MAC-less Neural Inference Processor Supporting Compressed, Variable Precision Weights
Sjöström et al. Design and implementation of a digital down converter chip
Ruiz et al. Memory efficient programmable processor chip for inverse Haar transform
Hsiao et al. Parallel, pipelined and folded architectures for computation of 1-D and 2-D DCT in image and video codec
Gudvangen et al. Rapid synthesis of a macropipelined CMOS ASIC for the Fermat number transform,"
KR100329367B1 (ko) 영상 압축 시스템에서 디씨티 구조
Chehaitly et al. A generic, configurable and efficient architecture for first and second generation discrete wavelet packet transform with ultra-high speed and low-cost FPGA implementation
Nair et al. Optimized FIR filter using distributed parallel architectures for audio application
Yoon et al. An efficient variable-length tap FIR filter chip
Ashim et al. FPGA based realization of a High-Speed 8-Tap FIR Filter for Signal Processing Applications

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
N236 Change of applicant [patent]: notification of change of applicant and registration of partial transfer of right
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130304

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20140303

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20150226

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20160226

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20170224

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20180226

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20190304

Year of fee payment: 15