软硬件协同设计在H.264解码器设计中的应用
发布时间:2007/9/10 0:00:00 访问次数:435
来源:电子设计应用 作者:同济大学超大规模集成电路研究所 张力航 林
摘 要:作为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所示,在已经划分好的由嵌入式处理器完成的软件模型和将由硬件实现的软件模型之
来源:电子设计应用 作者:同济大学超大规模集成电路研究所 张力航 林
摘 要:作为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所示,在已经划分好的由嵌入式处理器完成的软件模型和将由硬件实现的软件模型之
热门点击
- 由ICL8308制作的多波形信号发生器
- FLJ--
- 电容模块在缓冲电路中的应用
- EPC-755A微型光电编码器及其应用
- DS1302,HT1380时钟芯片与8301
- 电子鼓音响芯片HT3670C及应用
- 基于扫描线转换的快速等值线填充算法
- 数字信号完整性和信号恢复
- 单片机开关电容滤波器TLC04原理与应用
- 高速脉宽调制器UC3883A,B/UC328
推荐技术资料
- 泰克新发布的DSA830
- 泰克新发布的DSA8300在一台仪器中同时实现时域和频域分析,DS... [详细]