FPGA Implementation of H.264 CAVLC Decoder Using High-Level Synthesis

Slawomir Cichon, M. Gorgon
{"title":"FPGA Implementation of H.264 CAVLC Decoder Using High-Level Synthesis","authors":"Slawomir Cichon, M. Gorgon","doi":"10.1515/ipc-2017-0009","DOIUrl":null,"url":null,"abstract":"Abstract CONTEXT ADAPTIVE VARIABLE LENGTH CODING (CAVLC) is a method designed for coding residual pixel data after transform and quantization, in which different codes with variable length are chosen based on recently coded coefficients. Coded bitstream can be stored or transmitted. This method is optional in widely adopted H.264 video coding standard. The entire algorithm is a complex one, and also difficult to implement efficiently in Field-Programmable Gate Array (FPGA), due to data dependency. When the complexity of the Register Transfer Logic (RTL) implementation rises, it impacts the duration and costs of development. Therefore, usage of High Level Synthesis (HLS) may be beneficial with these types of projects. In this paper first known to authors implementation of CAVLC and Exp-Golomb decoders for H.264 intra decoder in Impulse C language will be presented and compared with other implementations. Proposed solution is able to decode more then 720p@40fps with FPGA module clock at 166MHz.","PeriodicalId":271906,"journal":{"name":"Image Processing & Communications","volume":"30 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2017-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Image Processing & Communications","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1515/ipc-2017-0009","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Abstract CONTEXT ADAPTIVE VARIABLE LENGTH CODING (CAVLC) is a method designed for coding residual pixel data after transform and quantization, in which different codes with variable length are chosen based on recently coded coefficients. Coded bitstream can be stored or transmitted. This method is optional in widely adopted H.264 video coding standard. The entire algorithm is a complex one, and also difficult to implement efficiently in Field-Programmable Gate Array (FPGA), due to data dependency. When the complexity of the Register Transfer Logic (RTL) implementation rises, it impacts the duration and costs of development. Therefore, usage of High Level Synthesis (HLS) may be beneficial with these types of projects. In this paper first known to authors implementation of CAVLC and Exp-Golomb decoders for H.264 intra decoder in Impulse C language will be presented and compared with other implementations. Proposed solution is able to decode more then 720p@40fps with FPGA module clock at 166MHz.
基于高级综合的H.264 CAVLC解码器的FPGA实现
自适应变长编码(CAVLC)是一种对经过变换和量化后的残差像素数据进行编码的方法,它根据最近编码的系数选择不同的变长编码。编码的比特流可以存储或传输。这种方法在广泛采用的H.264视频编码标准中是可选的。整个算法比较复杂,而且由于数据依赖,难以在FPGA中高效实现。当寄存器传输逻辑(RTL)实现的复杂性增加时,它会影响开发的持续时间和成本。因此,使用高层次综合(HLS)可能有利于这些类型的项目。本文首先介绍了在Impulse C语言中实现的用于H.264内部解码器的CAVLC和ex - golomb解码器,并与其他实现进行了比较。提出的解决方案能够解码超过720p@40fps FPGA模块时钟在166MHz。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信