Abstract
CABAC (Context-based Adaptive Binary Arithmetic Coding) is a single operation mode for entropy coding in the two last video coding standards VVC (Versatile Video Coding) and HEVC (high-efficiency video coding). Otherwise, the CABAC+ used in VVC have been improved and partially changed compared to that used in HEVC. For high-resolution applications, the pick of one bin/cycle is not sufficient and it is a very challenging task to implement pipeline, parallel and mixed CABAC decoding architecture by simply adding more stages due to the data dependencies which and cause it to be the throughput bottleneck for video decoding. Mainly, the CABAC decoder is based on three stages: CSM (Context Selection and Modeling), BAD (Binary Arithmetic Decoding) and DBZ (De-binarization). Where the CSM and BAD adopted in CABAC VVC are changed compared to that used in CABAC HEVC. Consequently, in order to improve the CABAC decoder throughput with good area cost, new mixed design of CABAC MxVH_CABAC on a FPGA is proposed that can be support the SEs (syntax elements) in two recent standards VVC and HEVC respectively. This work is designed, described in VHDL language and implemented on FPGA Virtex-7. As result, the throughput is improved in our mixed design MxVH_CABAC and ranging between 166.33 Mbins/s and 665.32 Mbins/s with gain in area cost equal to 17.24% compared to those consumed in the both proposed designs CABAC_HEVC and CABAC_VVC. Additionally, the efficiency of MxVH_CABAC is about 0.069 Mbins/s/LUTs and it is better than those obtained in the other works in literature.
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11760-024-03242-w/MediaObjects/11760_2024_3242_Fig1_HTML.png)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11760-024-03242-w/MediaObjects/11760_2024_3242_Fig2_HTML.png)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11760-024-03242-w/MediaObjects/11760_2024_3242_Fig3_HTML.png)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11760-024-03242-w/MediaObjects/11760_2024_3242_Fig4_HTML.png)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11760-024-03242-w/MediaObjects/11760_2024_3242_Fig5_HTML.png)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11760-024-03242-w/MediaObjects/11760_2024_3242_Fig6_HTML.png)
Similar content being viewed by others
Data availability
A statement on how any datasets used can be accessed. This declaration is “not applicable”.
References
Schwarz, H., Rudat, C., Siekmann, M., Bross, B., Marpe, D., Wiegand, T.: Coding efficiency/complexity analysis of JEM 1.0 coding tools for the random-access configuration. In: Document JVET-B0044 3rd 2nd JVET Meeting, San Diego, CA, USA, 2016.
Bouaafia, S., Khemiri, R., Messaoud, S., et al.: Complexity analysis of new future video coding (FVC) standard technology. Int. J. Digit. Multimed. Broadcast. 2021, 1–13 (2021)
Saldanha, M., Corrêa, M., Corrêa, G., Palomino, D., Porto, M., Zatt, B., Agostini, L.: An Overview of Dedicated Hardware Designs for State-of-the-Art AV1 and H.266/VVC Video Codecs. IEEE (2020)
Park, S., Kang, J.: Context-based ternary tree decision method in versatile video coding for fast intra coding. IEEE Access (2017)
Menasri, W., Skoudarli, A., Belhadj Aissa, A., Azzaz, M.: Field programmable gate array implementation of variable-bins high efficiency video coding CABAC decoder with path delay. Institution of Engineering and Technology, Journal of Image Processing, England, January (2019)
Telecommunication standardization sector of ITU: Series H: Audiovisual and multimedia systems, Infrastructure of audiovisual services-Coding of moving video (High efficiency video coding), H.265 12/2016.
Telecommunication standardization sector of ITU: Series H: Audiovisual and multimedia systems, Infrastructure of audiovisual services-Coding of moving video (Versatile video coding), H.266 08/2020.
Pourazad, M.T., Doutre, C., Azimi, M., et al.: HEVC: The new gold standard for video compression: How does HEVC compare with H. 264/AVC. IEEE Consumer Electron. Mag. 1(3), 36–46 (2012)
Marpe, D., Schwarz, H., Wiegand, T.: Context-based adaptive binary arithmetic coding in the H.264/AVC video compression standard. IEEE Trans. Circuits Syst. Video Technol. 13(7), 620–636 (2003)
Menasri, W., Skoudarli, A., Belhadj Aissa, A.: Implementation of Multi-bin CABAC Decoder in HEVC/H.265 on FPGA, Springer, CSA’2018 conference, Algiers, Algeria, April (2018).
Ding, D., Liu, F., Qi, H., et al.: An FPGA-friendly CABAC-encoding architecture with dataflow modelling programming. Imaging Sci. J. 66(6), 1–9 (2018)
Wang, S., Zhang, S., Wang, J., Chang, L., Feng, L., Fan, X.: Hardware architecture design of HEVC entropy decoding. In: 2021 IEEE Intl Conf on Parallel & Distributed Processing with Applications, Big Data & Cloud Computing, Sustainable Computing & Communications, Social Computing & Networking (ISPA/BDCloud/SocialCom/SustainCom), New York City, NY, USA, 2021, pp. 1143-1150, https://doi.org/10.1109/ISPA-BDCloud-SocialCom-SustainCom52081.2021.00157.
Hahlbeck, J., Stabernack, B.: A 4k capable FPGA based high throughput binary arithmetic decoder for H.265/MPEG-HEVC. ICCE, Berlin pp 388–390 (2014). https://doi.org/10.1109/ICCE-BERLIN.2014.7034335.
Habermann, P., Chi, C.C., Alvarez-Mesa, M., et al.: Application-specific cache and prefetching for HEVC CABAC decoding. IEEE Multimed. 24(1), 72–85 (2017)
Nagaraju, M., Gupta, S.K., Bhadauria, V.: High-throughput, area-efficient hardware architecture of CABAC-Binarization for UHD applications, Microelectronics Journal, Volume 123: 105425 (2022). ISSN 0026–2692, https://doi.org/10.1016/j.mejo.2022.105425.
Choi, J.A., Ho, Y.S.: Efficient residual data coding in CABAC for HEVC lossless video compression. SIViP 9, 1055–1066 (2015). https://doi.org/10.1007/s11760-013-0545-z
Osorio, R.R., Bruguera, J.D.: High-speed FPGA architecture for CABAC decoding acceleration in H. 264/AVC standard. J. Signal. Process. Syst. 72(2), 119–132 (2013)
Korishetti, A.C., Malemath, V.S.: Regressive rate-distortion tradeoff with weighted entropy coding for HEVC encoding. J. Real Time Image Proc. 18, 2165–2180 (2021). https://doi.org/10.1007/s11554-01096-WD
Menasri, W., Skoudarli, A.: Performance comparison of throughput between AVC, HEVC and VVC hardware CABAC decoder. J. Real-Time Image Proc. 20, 26 (2023). https://doi.org/10.1007/s11554-023-01266-y
Funding
Details of any funding received. This declaration is “not applicable”.
Author information
Authors and Affiliations
Contributions
A. Wahiba Menasri. B. Abdelkader Morsli. C. Abdallah Skoudarli. D. Abderrezak GACEMI.
Corresponding author
Ethics declarations
Conflict of interest
The authors declare no competing interests.
Ethical approval
(Applicable for both human and/ or animal studies. Ethical committees, Internal Review Boards and guidelines followed must be named. When applicable, additional headings with statements on consent to participate and consent to publish are also required). This declaration is “not applicable”.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Menasri, W., Morsli, A., Skoudarli, A. et al. Design and FPGA implementation of mixed VVC/HEVC CABAC decoding. SIViP (2024). https://doi.org/10.1007/s11760-024-03242-w
Received:
Revised:
Accepted:
Published:
DOI: https://doi.org/10.1007/s11760-024-03242-w