220 likes | 600 Views
L39: Low Power DCT/IDCT Processor 설계. 1. Introduction. 본 Project 에서는 DCT/IDCT 알고리즘과 구조를 알아 보고 단일 칩 HDTV(MPEG-2), H.26x 등에서 사용이 가능한 소면적 , 고속의 DCT/IDCT 프로세서 구조를 제안하고 저전력 설계 방법으로 구현해 본다 . 저전력 디지털 설계 DCT/IDCT 알고리즘과 구조 소면적 , 고속의 DCT/IDCT 프로세서 구조를 제안 VLSI 설계 및 구현 결론.
E N D
1. Introduction 본 Project 에서는 DCT/IDCT 알고리즘과 구조를 알아 보고 단일 칩 HDTV(MPEG-2), H.26x 등에서 사용이 가능한 소면적, 고속의 DCT/IDCT 프로세서 구조를 제안하고 저전력 설계 방법으로 구현해 본다. • 저전력 디지털 설계 • DCT/IDCT 알고리즘과 구조 • 소면적, 고속의 DCT/IDCT 프로세서 구조를 제안 • VLSI 설계 및 구현 • 결론
2. 저전력 디지털 설계 • Modified DCT/IDCT 프로세서 구조로 하드웨어 크기를 줄여 물리적 Capacitance를 감소 시킨다. • W.H. Chen의 고속 알고리즘 • 분산 연산 구조 • 곱셈기 제거 • RAC(ROM and Accumulator in Cascade)로 매트릭스 곱셈 수행 • 소비전력이 적은 구조를 갖는 고속 덧셈기를 최적 설계한다.
3. DCT/IDCT 구조(1) 3.1 DCT/IDCT 알고리즘 입력 픽셀 블록의 값 에 대한 정 방향 2-D DCT와 역 방향 2-D DCT 식은 다음과 같다.
3. DCT/IDCT 구조(2) 3.2 고속알고리즘
3. DCT/IDCT 구조(5) • W.H. Chen은 행렬을 재구성하여 연산량을 줄이는 고속 알고리즘을 제안. • 코사인 함수의 대칭성을 이용 • (N x N) x (N x 1) 행렬 연산을 (N/2 x N/2) x (N/2 x 1) 행렬연산 • 식으로 변환하여 계산량을 줄임.
3. DCT/IDCT 구조(6) 3.3 분산 연산 구조 (Distributed Arithmetic)
4. Modified DCT/IDCT Forward DCT 는 매트릭스 분해 과정을 통해서 아래와 같이 표현 된다. 고속 알고리즘 : 입력계수 상호간의 가감산 부분 분산 산출 처리 : 서로 다른 상수값과의 곱셈 부분
5. VLSI 설계 및 구조 5.0 DCT/IDCT Processor 입출력 신호 Reset CLK DI : 입력 데이터 버스 MCD : DCT/IDCT Change Mode ST : 데이터 입력 시작 신호 DO : 출력 데이터 버스 Done : 출력데이터 시작 신호
5. VLSI 설계 및 구조 5.1 DCT 전체 블럭도
5. VLSI 설계 및 구조 5.2 Transpose RAM(1)
5. VLSI 설계 및 구조 5.2 Transpose RAM(2)
5. VLSI 설계 및 구조 5.3 Internal data word-length
5. VLSI 설계 및 구조 5.4 Butterfly in Preprocessor(1)
5. VLSI 설계 및 구조 5.4 Butterfly in Preprocessor(2)
5. VLSI 설계 및 구조 5.5 Postprocessor 워드 단위 병렬-직렬변환, IDCT 버터플라이, 라운딩(rounding)
6. Result 6.1 2-D DCT/IDCT Synthesis Result Preprocessor & Postprocessor (3324 & 7410 Gates) 16, 18, 20 bit Carry-look Adder RAC (16word x 7 ROM & 36278 Gates) Distribute Arithmetic 방법을 사용 하지 않고 곱셈기 사용(Synopsys Lib) Transpose RAM 16word x 16bits 일반 RAM 4개 사용 Total : 52,308 Gates
6. Future Work • 이번 프로젝트의 목적은 우선 구현이 목적이었으므로 Low power 와 Area 면에서 최적화를 시키지 못했다. • 행렬연산을 하는 RAC 부분을 곱셈기를 사용치 않고 Distribute Arithmetic 방법으로 구현을 한다면 36,278개의 Gates수가 최소한 반으로 줄 수 있을 것이다. • Preprocessor & Postprocessor 에 사용된 Carry-lookahead Adder 대신에 보다 Low power 와 소면적을 위해서 4bit Adder 와 Register로 하위 비트와 상위비트를 따로 계산을 하는 방법도 가능 할 것이다.
7. Reference [1] A.Makisetti and Jr A.N. Willson.”A 100 MHz 2-D 8x8 DCT/IDCT Processor for HDTV Applications”, IEEE Transactions on Circuit and Systems for Video Technology,5(2):158-165,1995 [2] Jordi Ribas-Corbera and Shawmin Lei, “Rate Control in DCT Video Coding for Low-Delay Communication”, IEEE Transactions on circuits and systems for video technology, vol.9,No.1,february 1999 [3] Seehyun Kim and Wonyong Sung, “Fixed-Piont Error Analysis and Word Length Optimization of 8x8 IDCT Architecture”, IEEE Transactions on circuits and systems for video technology, vol.8, No.8, December 1998 [4] Yun-Hui Fan, Vijay K. Madisetti, “On Fast Algorithms for Computing the Inverse Modified Discrete Cosine Transform”, IEEE signal processing letters, vol.6, No.3, march 1999 [5] Y.Arai, T.Agui and M.Nakajima, A Fast DCT-SQ Scheme for images, trans. Of the IEICE.E 71(11):1095(Nov.1988) [6] M.T.SUN, L. WU and M.L.Liou, “A Concurrent Architecture for VLSI Implementation of Discrete Cosine Transform”, IEEE Transactions on circuits and systems, vol. Cas-34, No. 8, August 1987