A High-Throughput Binary Arithmetic Coding Architecture for H.264/AVC CABAC

In this paper, we propose a high-throughput binary arithmetic coding architecture for CABAC (Context Adaptive Binary Arithmetic Coding) which is one of the entropy coding tools used in the H.264/AVC main and high profiles. The full CABAC encoding functions, including binarization, context model selection, arithmetic encoding and bits generation, are implemented in this proposal. The binarization and context model selection are implemented in a proposed binarizer, in which a FIFO is used to pack the binarization results and output 4 bins in one clock. The arithmetic encoding and bits generation are implemented in a four-stage pipeline with the encoding ability of 4 bins/clock. In order to improve the processing speed, the context variables access and update for 4 bins are paralleled and the pipeline path is balanced. Also, because of the outstanding bits issue, a bits packing and generation strategy for 4 bins paralleled processing is proposed. After implemented in verilog-HDL and synthesized with Synopsys Design Compiler using 90nm libraries, this proposal can work at the clock frequency of 250MHz and takes up about 58K standard cells, 3.2Kbits register files and 27.6K bits ROM. The throughput of processing 1000M bins per second can be achieved in this proposal for the HDTV applications.

[1]  H. Shojania,et al.  A high performance CABAC encoder , 2005, The 3rd International IEEE-NEWCAS Conference, 2005..

[2]  Javier D. Bruguera,et al.  High-Throughput Architecture for H.264/AVC CABAC Compression System , 2006, IEEE Transactions on Circuits and Systems for Video Technology.

[3]  Ajay Luthra,et al.  Overview of the H.264/AVC video coding standard , 2003, IEEE Trans. Circuits Syst. Video Technol..

[4]  Heiko Schwarz,et al.  Context-based adaptive binary arithmetic coding in the H.264/AVC video compression standard , 2003, IEEE Trans. Circuits Syst. Video Technol..

[5]  Atila Alvandpour,et al.  A 130-nm 6-GHz 256 /spl times/ 32 bit leakage-tolerant register file , 2002 .

[6]  Xiaohua Tian,et al.  Full RDO-Support Power-Aware CABAC Encoder With Efficient Context Access , 2009, IEEE Transactions on Circuits and Systems for Video Technology.

[7]  Wei Zheng,et al.  Efficient pipelined CABAC encoding architecture , 2008, IEEE Transactions on Consumer Electronics.

[8]  Yong-Surk Lee,et al.  A Novel Architecture for High Performance CABAC Encoder , 2006 .

[9]  Youn-Long Lin,et al.  A Hardwired Context-Based Adaptive Binary Arithmetic Encoder for H. 264 Advanced Video Coding , 2007, 2007 International Symposium on VLSI Design, Automation and Test (VLSI-DAT).

[10]  Grzegorz Pastuszak A High-Performance Architecture of the Double-Mode Binary Coder for H.264.AVC , 2008, IEEE Transactions on Circuits and Systems for Video Technology.

[11]  Hassan Shojania,et al.  A VLSI architecture for high performance CABAC encoding , 2005, Visual Communications and Image Processing.

[12]  Rajiv V. Joshi,et al.  A 500-MHz, 32-word/spl times/64-bit, eight-port self-resetting CMOS register file , 1999 .