A High-Performance Fully Hardwired Architecture Design for Context-Based Adaptive Binary Arithmetic Codec
博士 === 國立清華大學 === 資訊工程學系 === 99 === Context-based Adaptive Binary Arithmetic Coding (CABAC) adopted by H.264/AVC main profile achieves high compression ratio in comparison with a traditional variable-length coding. However, it incurs high computational complexity and its throughput is limited by bit...
Main Authors: | , |
---|---|
Other Authors: | |
Format: | Others |
Language: | en_US |
Published: |
2011
|
Online Access: | http://ndltd.ncl.edu.tw/handle/24159415177337506500 |
id |
ndltd-TW-099NTHU5392107 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-TW-099NTHU53921072015-10-13T20:23:01Z http://ndltd.ncl.edu.tw/handle/24159415177337506500 A High-Performance Fully Hardwired Architecture Design for Context-Based Adaptive Binary Arithmetic Codec 一個針對全文自適應二進位算術編碼解碼器的高效能全硬體化設計研究 Chen, Jian-Wen 陳建文 博士 國立清華大學 資訊工程學系 99 Context-based Adaptive Binary Arithmetic Coding (CABAC) adopted by H.264/AVC main profile achieves high compression ratio in comparison with a traditional variable-length coding. However, it incurs high computational complexity and its throughput is limited by bit-level data dependency. Moreover, for ultra high resolution applications, e.g. QFHD (3840×2160), a partially hardwired architecture cannot meet the real-time requirement. Therefore, it is necessary to implement the CABAC function in a fully hardwired architecture. After analyzing the syntax elements (SE) distribution and the bin distribution of different types of SEs, we found that bins of coefficient block SEs and motion vector difference (MVD) SEs account for most of the bins. Therefore, we realized that our design must process these SEs efficiently. Furthermore, by analyzing the data dependency of CABAC algorithm, we concluded that a pipelined architecture is suitable for the binary arithmetic encoder (BAE), but not for the binary arithmetic decoder (BAD). For the CABAC encoder, we designed a six-stage pipelined BAE which can encode up to eight bins per cycle. In order to keep up with the BAE throughput, we propose several acceleration methods to speed up the generation of bins and context indices. We further propose a novel architecture that shortens the critical path of renormalization and bit-stream generation. Simulation results show that our design can encode 1.33 bins per cycle, and it achieves a throughput of 295 Mbin/sec. It can real-time encode QFHD (3840×2160) video at 30fps for H.264/AVC main profile, level 5.1 when running at 222 MHz. We have successfully integrated the proposed CABAC encoder into an H.264/AVC encoder system. For the CABAC decoder, we propose a Two-Bin BAD engine to generate two bins in one cycle for the frequent SEs. In order to boost the BAD utilization, we propose a prediction method to enhance the prediction accuracy of the second bin. Furthermore, we reallocate the context memory to shorten the critical path delay of the Two-Bin BAD circuit. Experimental results show that our CABAC decoder can generate 1.25 bins per cycle. Its throughput is capable of real-time decoding QFHD video for H.264/AVC main profile, level 5.1 when running at 238 MHz. We have successfully integrated the proposed CABAC decoder into an H.264/AVC decoder system. Lin, Youn-Long 林永隆 2011 學位論文 ; thesis 82 en_US |
collection |
NDLTD |
language |
en_US |
format |
Others
|
sources |
NDLTD |
description |
博士 === 國立清華大學 === 資訊工程學系 === 99 === Context-based Adaptive Binary Arithmetic Coding (CABAC) adopted by H.264/AVC main profile achieves high compression ratio in comparison with a traditional variable-length coding. However, it incurs high computational complexity and its throughput is limited by bit-level data dependency. Moreover, for ultra high resolution applications, e.g. QFHD (3840×2160), a partially hardwired architecture cannot meet the real-time requirement. Therefore, it is necessary to implement the CABAC function in a fully hardwired architecture.
After analyzing the syntax elements (SE) distribution and the bin distribution of different types of SEs, we found that bins of coefficient block SEs and motion vector difference (MVD) SEs account for most of the bins. Therefore, we realized that our design must process these SEs efficiently. Furthermore, by analyzing the data dependency of CABAC algorithm, we concluded that a pipelined architecture is suitable for the binary arithmetic encoder (BAE), but not for the binary arithmetic decoder (BAD).
For the CABAC encoder, we designed a six-stage pipelined BAE which can encode up to eight bins per cycle. In order to keep up with the BAE throughput, we propose several acceleration methods to speed up the generation of bins and context indices. We further propose a novel architecture that shortens the critical path of renormalization and bit-stream generation. Simulation results show that our design can encode 1.33 bins per cycle, and it achieves a throughput of 295 Mbin/sec. It can real-time encode QFHD (3840×2160) video at 30fps for H.264/AVC main profile, level 5.1 when running at 222 MHz. We have successfully integrated the proposed CABAC encoder into an H.264/AVC encoder system.
For the CABAC decoder, we propose a Two-Bin BAD engine to generate two bins in one cycle for the frequent SEs. In order to boost the BAD utilization, we propose a prediction method to enhance the prediction accuracy of the second bin. Furthermore, we reallocate the context memory to shorten the critical path delay of the Two-Bin BAD circuit. Experimental results show that our CABAC decoder can generate 1.25 bins per cycle. Its throughput is capable of real-time decoding QFHD video for H.264/AVC main profile, level 5.1 when running at 238 MHz. We have successfully integrated the proposed CABAC decoder into an H.264/AVC decoder system.
|
author2 |
Lin, Youn-Long |
author_facet |
Lin, Youn-Long Chen, Jian-Wen 陳建文 |
author |
Chen, Jian-Wen 陳建文 |
spellingShingle |
Chen, Jian-Wen 陳建文 A High-Performance Fully Hardwired Architecture Design for Context-Based Adaptive Binary Arithmetic Codec |
author_sort |
Chen, Jian-Wen |
title |
A High-Performance Fully Hardwired Architecture Design for Context-Based Adaptive Binary Arithmetic Codec |
title_short |
A High-Performance Fully Hardwired Architecture Design for Context-Based Adaptive Binary Arithmetic Codec |
title_full |
A High-Performance Fully Hardwired Architecture Design for Context-Based Adaptive Binary Arithmetic Codec |
title_fullStr |
A High-Performance Fully Hardwired Architecture Design for Context-Based Adaptive Binary Arithmetic Codec |
title_full_unstemmed |
A High-Performance Fully Hardwired Architecture Design for Context-Based Adaptive Binary Arithmetic Codec |
title_sort |
high-performance fully hardwired architecture design for context-based adaptive binary arithmetic codec |
publishDate |
2011 |
url |
http://ndltd.ncl.edu.tw/handle/24159415177337506500 |
work_keys_str_mv |
AT chenjianwen ahighperformancefullyhardwiredarchitecturedesignforcontextbasedadaptivebinaryarithmeticcodec AT chénjiànwén ahighperformancefullyhardwiredarchitecturedesignforcontextbasedadaptivebinaryarithmeticcodec AT chenjianwen yīgèzhēnduìquánwénzìshìyīngèrjìnwèisuànshùbiānmǎjiěmǎqìdegāoxiàonéngquányìngtǐhuàshèjìyánjiū AT chénjiànwén yīgèzhēnduìquánwénzìshìyīngèrjìnwèisuànshùbiānmǎjiěmǎqìdegāoxiàonéngquányìngtǐhuàshèjìyánjiū AT chenjianwen highperformancefullyhardwiredarchitecturedesignforcontextbasedadaptivebinaryarithmeticcodec AT chénjiànwén highperformancefullyhardwiredarchitecturedesignforcontextbasedadaptivebinaryarithmeticcodec |
_version_ |
1718047082705584128 |