VLSI Design of H.264/AVC CAVLC encoder for HDTV Application

실시간 HD급 영상 처리를 위한 H.264/AVC CAVLC 부호화기의 하드웨어 구조 설계

  • Woo, Jang-Uk (Dept. Electrical and Electronic Eng. Yonsei Univ.) ;
  • Lee, Won-Jae (Dept. Electrical and Electronic Eng. Yonsei Univ.) ;
  • Kim, Jae-Seok (Dept. Electrical and Electronic Eng. Yonsei Univ.)
  • 우정욱 (연세대학교 전기전자공학과) ;
  • 이원재 (연세대학교 전기전자공학과) ;
  • 김재석 (연세대학교 전기전자공학과)
  • Published : 2007.07.25

Abstract

In this paper, we propose an efficient hardware architecture for H.264/AVC CAVLC (Context-based Adaptive Variable Length Coding) encoding. Previous CAVLC architectures search all of the coefficients to find statistic characteristics in a block. However, it is unnecessary information that zero coefficients following the last position of a non-zero coefficient when CAVLC encodes residual coefficients. In order to reduce this unnecessary operation, we propose two techniques, which detect the first and last position of non-zero coefficients and arrange non-zero coefficients sequentially. By adopting these two techniques, the required processing time was reduced about 23% compared with previous architecture. It was designed in a hardware description language and total logic gate count is 16.3k using 0.18um standard cell library Simulation results show that our design is capable of real-time processing for $1920{\times}1088\;30fps$ videos at 81MHz.

본 논문에서는 실시간 HD급 영상($1920{\times}1080@30fps$) 처리를 위한 효율적인 CAVLC (Context-based Adaptive Variable Length Code) 부호화기의 하드웨어 구조를 제안한다. 기존에 제안되었던 CAVLC 하드웨어 구조들은 CAVLC 부호화를 위해 필요한 $4{\times}4$ 블록내의 정보들을 구하기 위해서 16개의 계수들을 모두 탐색하면서 zigzag scanning을 하였다. 그러나 zigzag 방향으로 정렬 된 계수들 중 '0'이 아닌 마지막 계수 이후에 존재하는 '0'의 열은 CAVLC 부호화를 하는데 있어 불필요한 계수들이다. 본 논문에서는 이러한 불필요한 연산을 줄이기 위해서 계수 위치 탐색 기법과 레벨 순차 정렬 기법을 제안한다. 제안된 구조를 적용하여 실험한 결과, 하나의 매크로블록을 처리하는 평균 클럭 수(Cycles/MB)는 기존 방식보다 약 23%가 줄었다. 제안된 CAVLC 하드웨어 구조는 Verilog HDL을 사용하여 하드웨어로 설계 및 검증되었다. 0.18um 표준 셀 라이브러리로 합성한 결과 16.3k 게이트를 가졌고, HD급($1920{\times}1080@30fps$) 영상을 기준으로 했을 경우 81MHz에서 동작할 수 있음을 확인하였다.

Keywords

References

  1. J. V. Team, Draft ITU-T Recommendation and Final Draft International Standard of Joint Video Specification. ITU-T Rec. H.264 and ISO/IEC 14496-10 AVC
  2. M. Zhou, 'Evaluation and Simplification of H.26L Baseline Coding Tools,' JVT-B030, Jan,2002
  3. Okubo Sakae, Kadono Shinya, Kikuchi Yoshihiro, Suzuki Teruhiko 저, 정제창 역, 'H.264/AVC 비디 오 압축 표준', 홍릉 과학 출판사
  4. Richardson, I. E. G. 'H.264 and MPEG-4 Video Compression' Video Coding for Next-generation Multimedia, John Wiley & Sons Ltd., Sussex, England, December 2003
  5. Wiegand, T., and Sullivan, G., 'Draft Errata List with Revision-Marked Corrections for H.264/ AVC,' JVT Document JVT-1050, SanDiego, California, September 2003
  6. Ihab Amer, Wael Badawy, and Graham Jullien. 'TOWARDS MPEG-4 PART 10 SYSTEM ON CHIP : A VLSI PROTOTYPE FOR CONTEXTBASED ADAPTIVE VARIABLE LENGTH CODING(CAVLC),' Signal Processing Systems, 2004, SIPS IEEE Workshop, Page(s) : 275 –279
  7. Yeong-Kang Lai; Chih-Chung Chou; Yu-Chieh Chung; 'A Simple and Cost Effective Video Encoder with Memory-Reducing CAVLC', ISCAS 2005. IEEE International Sysposium on Volume 1, 18-20 Sept. 2003 Page(s):323-326 Vol.1 [2]
  8. Chen T.; Huang Y.; Tsai C.; Hsieh B.; Chen L.; 'Architecture Design of Context-Based Adaptive Variable Length Coding for H.264/AVC', IEEE Transactions on Circuit and Systems : Analog and Digital Signal Processing Vol PP, 2006 Page(s) : 832-836
  9. Wu Di, Gao Wen, Hu Mingzeng, Ji Zhenzhou 'An Exp-Golomb encoder and decoder architecture for JVT/AVS' ASIC,2003, Proceedings, 5th International Conference on Volume2, 21-24 Oct, 2003 Page(s) : 910 – 913