Joint Algorithm-Architecture Optimization of CABAC

This paper uses joint algorithm and architecture design to enable high coding efficiency in conjunction with high processing speed and low area cost. Specifically, it presents several optimizations that can be performed on Context Adaptive Binary Arithmetic Coding (CABAC), a form of entropy coding used in H.264/AVC, to achieve the throughput necessary for real-time low power high definition video coding. The combination of syntax element partitions and interleaved entropy slices, referred to as Massively Parallel CABAC, increases the number of binary symbols that can be processed in a cycle. Subinterval reordering is used to reduce the cycle time required to process each binary symbol. Under common conditions using the JM12.0 software, the Massively Parallel CABAC, increases the bins per cycle by 2.7 to 32.8× at a cost of 0.25 to 6.84% coding loss compared with sequential single slice H.264/AVC CABAC. It also provides a 2× reduction in area cost, and reduces memory bandwidth. Subinterval reordering reduces the critical path delay by 14 to 22%, while modifications to context selection reduces the memory requirement by 67%. This work demonstrates that accounting for implementation cost during video coding algorithms design can enable higher processing speed and reduce hardware cost, while still delivering high coding efficiency in the next generation video coding standard.

[1]  Wen Gao,et al.  Variable-Bin-Rate CABAC Engine for H.264/AVC High Definition Real-Time Decoding , 2009, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[2]  G. Bjontegaard,et al.  Calculation of Average PSNR Differences between RD-curves , 2001 .

[3]  Jiun-In Guo,et al.  High-Throughput H.264/AVC High-Profile CABAC Decoder for HDTV Applications , 2009, IEEE Transactions on Circuits and Systems for Video Technology.

[4]  Anantha Chandrakasan,et al.  Joint algorithm-architecture optimization of CABAC to increase speed and reduce area cost , 2011, 2011 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP).

[5]  Liang-Gee Chen,et al.  A 59.5mW scalable/multi-view video decoder chip for Quad/3D Full HDTV and video streaming applications , 2010, 2010 IEEE International Solid-State Circuits Conference - (ISSCC).

[6]  Anantha Chandrakasan,et al.  A Highly Parallel and Scalable CABAC Decoder for Next Generation Video Coding , 2011, IEEE Journal of Solid-State Circuits.

[7]  Itu-T and Iso Iec Jtc Advanced video coding for generic audiovisual services , 2010 .

[8]  Anantha Chandrakasan,et al.  Multicore Processing and Efficient On-Chip Caching for H.264 and Future Video Decoders , 2009, IEEE Transactions on Circuits and Systems for Video Technology.

[9]  Anantha Chandrakasan,et al.  A high throughput CABAC algorithm using syntax element partitioning , 2009, 2009 16th IEEE International Conference on Image Processing (ICIP).

[10]  Youn-Long Lin,et al.  A high-performance hardwired CABAC decoder for ultra-high resolution video , 2009, IEEE Transactions on Consumer Electronics.

[11]  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..