当前位置:首页 > 电源 > 数字电源
[导读]针对H.264解码芯片的设计,本文提出了一种软硬件协同设计、仿真以及验证的系统模型。

摘 要:作为SoC设计的三大关键支撑技术之一,软硬件协同设计技术已经得到了越来越广泛的应用。针对H.264解码芯片的设计,本文提出了一种软硬件协同设计、仿真以及验证的系统模型。设计实践证明,软硬件协同设计有效地提高了设计效率,加快了开发进度。
关键词:软硬件协同设计;H.264;SoC

引言
    H.264/AVC标准是由ISO/IEC的运动图像专家组(MPEG)和ITU-T的视频编码专家组(VCEG)共同制订的新一代图像压缩标准,它具有一系列优于MPEG4和H.263的新特性,在相同的重建图像质量下,能比H.263节约50%左右的码率。但是,在获得优越性能的同时,H.264的计算复杂度却大大增加。据估计,其编码的计算复杂度大约相当于H.263的3倍,解码复杂度大约相当于H.263的2倍。在这种情况下,如果用纯软件的方式进行实时解码就会显得力不从心,因此需要由软件结合硬件加速器来完成实时的编解码任务。本文提出了一种基于软硬件协同设计技术的H.264解码芯片的SoC设计方案。

软硬件协同设计理论

SoC设计主要有3个关键的支撑技术:
1. 软硬件协同设计技术:它主要是面向不同目标系统的软件和硬件的功能划分理论和设计空间搜索技术。
2. IP模块复用技术。IP是指那些集成度较高并具有完整功能的单元模块,如MPU、DSP、DRAM、Flash等模块。IP模块的再利用除了可以缩短芯片的设计时间外,还能大大降低设计和制造的成本,提高可靠性。
3. 模块以及模块界面间的综合分析和验证技术。综合分析和验证是难点,要为硬件和软件的协同描述、验证和综合提供一个自动化的集成开发环境。


图1  软硬件协同设计的基本流程

    其中软硬件协同设计技术往往成为影响开发周期以及系统性能的关键因素。软硬件协同设计的基本流程如图1所示。设计初期需要对设计进行系统级建模。在经过分析后对软硬件进行适当的划分,于是系统设计分为软件设计和硬件设计两条路线。为了保证软硬件设计的协同,在设计的各个时期还要对软硬件接口进行设计。当软硬件设计完成后,就可将设计中软件和硬件部分加以集成以完成最后的设计。如果此时的设计不能完全满足设计目标,还需要将整个架构进行重新划分,进行迭代直到设计满足要求。


图2  H.264解码功能模块划分

系统软硬件划分
    采用软硬件协同设计,在系统模型建立以后,就要对系统的软硬件进行划分。一部分工作需要交给嵌入式处理器用软件来完成,而剩余的部分则要用硬件来实现。在划分时,要考虑目标体系结构、软硬件实现所占用的成本等各种因素。划分完后,产生软硬件分割界面,供软硬件仿真、验证和测试使用。

    H.264的解码功能模块如图2所示,整个解码的过程由码流输入单元、熵解码单元、反量化及反离散余弦变换单元、帧内预测单元、帧间预测单元、去块效应单元、内存控制单元、显示输出单元、图像信息管理单元、解码过程控制单元和内存等功能单元组成。

    对高清码流进行解码时,解码器的工作频率一般为200MHz,此时对一个宏块图像的信息进行处理的时间平均只有900个时钟,实时性要求很高,因此必须将软件的工作量减小。设计中采用嵌入式处理器控制解码过程能给系统设计带来更大的灵活性,而图像信息管理只涉及针对图像级别的计算,在对一帧图像进行解码时只会计算一次,故将这两部分任务交给嵌入式处理器完成。为了保证软硬件负荷的平衡,还将码流输入和熵解码任务交给嵌入式处理器处理。图2中灰色的模块则需要用专门的硬件加速模块来完成。


图3  H.264解码器软硬件协同设计的软件仿真模型

系统的软硬件协同设计

H.264解码器软硬件协同设计的仿真平台

    当系统设计的软硬件划分完成后,设计就分成软件设计和硬件设计两条路线,为了保证在软、硬件设计过程中能够随时进行联合仿真,本文建立了如图3所示的仿真模型。由图中的硬件设计部分可知,嵌入式处理器将通过片内高速总线对挂在总线上的各个硬件加速器进行控制。为了使得软硬件划分的界面更加清晰,嵌入式处理器解码时产生的数据通过连接在片内高速总线上的动态存储控制器存入DRAM中,而后各个硬件加速器通过片内高速总线将各自需要的数据从动态存储器中读出,进行相应的解码。考虑到片内高速总线的负担比较重,设计中将总线位宽设定为64bit,以提高数据传输的速度。

    为了保持软件与硬件设计的协同性,在进行硬件加速模块设计的同时,软件设计也需要作相应的改动。如图3所示,在已经划分好的由嵌入式处理器完成的软件模型和将由硬件实现的软件模型之间,加入数据打包和数据解包单元。数据打包单元是为了生成软件仿真所需要的输入向量,数据解包单元用于将打包后的数据还原,作为将由硬件实现的软件模型的输入,以便模型能够生成硬件设计部分进行软仿真所需要的参照向量。

    在软件仿真时期,软件与硬件的接口主要通过数据打包单元完成。各个硬件加速器解码所需的数据是从动态存储器获取的,而这些数据是由嵌入式处理器通过片内高速总线事先存入动态存储器中的。于是在数据打包单元的帮助下,软件模型就可以用打包单元模拟DRAM输出数据,而后硬件设计中就可以将这些数据加载到自己的软件仿真测试平台中,供其软件仿真使用。为了验证硬件设计的正确性,在硬件设计中还加入了测试单元。测试单元将硬件解码的数据暂存到其内部缓存中,测试平台中的解码数据检测单元就可以通过片内总线将解码后的数据读回,与软件模型生成的参照向量进行比较。于是,通过软件仿真便可以初步验证硬件设计的正确性。考虑到在硬件与软件协同仿真完成后,要通过PC对设计进行加速验证,本文在硬件设计中加入了PCI总线到片内高速总线桥接器。

H.264解码器软硬件协同设计的加速验证环节
    由于解码器设计的规模比较大,硬件设计进行软件仿真的速度比较慢,而且在前期设计中软件和硬件都是通过生成的输入向量和参照向量的方式进行耦合的。为了加快仿真的速度,并为嵌入式处理器和硬件加速器的集成做进一步的准备,设计中将图3所示的仿真模型演变成了图4所示的模型。

    在设计完成并通过软件仿真后,硬件设计被综合成网表文件下载到FPGA中。系统通过PCI 总线到片内总线桥接器与PC相连,PC模拟嵌入式处理器的软件工作,并通过PCI总线将控制信号以及解码数据送到FPGA内部的片内高速总线上,由硬件模块完成最终的解码任务。

    为了验证设计的正确性,PC可以通过PCI总线将硬件解码后的数据从测试单元读出,与图3模型中生成的参照向量进行比较,验证解码的正确性。由于在FPGA中硬件仿真的速度远高于软件仿真,因此使验证的速度得以加快。


图4  H.264解码器软硬件协同设计的加速验证模型

H.264解码器软硬件协同设计的系统集成
    通过如图4所示的验证环节后,设计的正确性以及软硬件设计的协同性得到了进一步的验证。为了方便软、硬件的集成,本文将图4中的设计模型进一步进行了修改。图5所示的设计模型为H.264解码器软硬件集成后的最终系统评估和设计验证模型。可见,在经过PC模拟嵌入式处理器行为与硬件联合进行硬件仿真后,嵌入式处理器通过片内高速总线与硬件系统进行了连接,最终完成了软硬件的集成。


图5 H.264解码器的最终系统评估和设计验证模型

    此时系统仍使用PCI接口对码流进行输入,并将解码后的数据从测试单元读入PC,与图3模型中生成的参照向量进行比较,对最终设计的正确性进行验证。当验证完成后测试单元将被移除。

    当然此时的设计不一定能完全满足设计要求,如果没有完全达到设计的要求,那么整个设计将从软硬件划分步骤重新进行,一次次进行迭代直到满足最终的要求。

结语
    由于采用了软硬件协同设计技术,整个SoC系统的软件设计和硬件设计能够方便地进行联合仿真以及测试。在整个设计过程中,软件设计和硬件设计能够很好地协同,当软件或硬件的一方需要改动的时候,另一方能够及时地进行相应的改动。同时软件设计还能在设计的各个阶段为硬件设计提供必要的验证数据,使得软件与硬件设计能够进行快速有效的集成,从而减小了系统在开发过程中的风险,提高了系统设计的正确性,加快了开发的速度。
  
参考文献:
1 Joint Video Team (JVT) of ISO/IEC MPEG & ITU-T VCEG. Proposed Draft Errata List with Revision-Marked Corrections for H.264/AVC[M], 2003.12.
2 毕厚杰. 新一代视频压缩编码标准—H.264/AVC[M]. 北京:人民邮电出版社,2005.5.
3 (美)Rochit Raj Suman. System On Chip:Design and Test. 于敦山,盛世敏,田泽译. 北京:北京航空航天大学出版社,2003
4 郭鹏飞. SoC设计中的软硬件协同设计. 中国电子站,2005.02.11

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭