位置:51电子网 » 技术资料 » D S P

基于C6000系列DSP的MPEG-4编码器实现

发布时间:2008/5/27 0:00:00 访问次数:442

mpeg-4是一种开放性标准,其中许多部分都没有规定,可以加入一些新的算法,因此采用通用dsp能够随时更新算法、优化算法、使得编码效率更高。由于mpeg-4编码算法复杂,需要存储的数据量大,无论是存储空间分配、数据传输还是运算速度对dsp来说都是挑战。本文介绍了基于c6000系列dsp的mpeg-4视频编码卡的软硬件实现。利用dsp的vliw和流水线结构设计程序可以使mpeg-4编码效率大大提高。

1dsp特性介绍

由于算法的复杂性及数据量的日益增大,单靠串行结构的处理器完成数据处理工作已经越来越不可行,因此出现了并行结构的cpu以完成这一新的任务。现今最著名的两种并行体系结构是超长指令字vliw(very long instruction word)结构和超标量体系结构。由于超标量体系结构cpu硬件极其复杂,指令动态调度将导致时间的不确定性,所以dsp很少使用这种结构。而一般使用超长指令字(vliw)结构,这种长指令通常包括多个彼此独立的同步操作。

c6000系列dsp是ti公司生产的高档dsp。这一系列dsp都是基于velocitit构架的vliw dsp,它在每个周期可以执行八条32bit的指令,具有高达200mhz的coy,从而使得其运算能力达到1600mips(200mhz×8条指令=1600mips)。这些性能都确立了它在高端多媒体应用中的地位。

dsp的cpu结构如图1所示,它具有两个通道,每个通道具有4个功能单元(1个乘法器和3个算术逻辑单元),16个32位通用寄存器,每个通道的功能单元可以随意访问本通道的寄存器。cpu还有两个交叉单元,通过它们,一个通道的功能单元可以访问另一个通道的寄存器。另外cpu还具有256bit宽的数据和程序通道,可以使程序存储器在每个时钟周期提供8条并行执行指令。这种cpu结构是dsp具有vliw结构的最基本条件。此系列dsp的存储空间映射为内部存储器、内部外设及扩展存储器。其中内部存储器由64kb内部程序存储器和数据存储器构成,内部程序存储器可以映射到cpu地址空间或者作为cache操作。内部和外部数据存储器均可通过cpu、dma或hpi(hostport interface)方式访问,hpi接口使上位机可以访问dsp的存储空间。

2 mpeg-4编码卡的硬件设计

mpeg-4编码卡包括几部分:视频采集、视频的mpeg-4编码、整个系统的cpld控制、pc机与dsp的通信等模块,其结构框图如图2所示。

2.1视频采集

视频采集部分主要完成模拟视频到数字视频的转换,包括一片视频采集芯片和一片小的cpld。cpld的作用是控制视频采集芯片,将采得的数据从8位或16位转化为32位,并且使数据按照y、u、v分开的方式排列。这样相当于对采集到的数据进行了一次预处理,以便于视频编码使用。另外,cpld将32位宽的数据输出给32位的fifo。用32位的fifo以及将视频数据转换为32位,可以使dsp读取视频数据时32位的数据总线没有空闲,从而提高dsp读取视频数据的效率;这里使用fifo是为了减少dsp读取数据的时间、降低高速设备和低速设备的不匹配。每次fifo半满时,cpld会给dsp发送中断信号,并且在中断处理程序中使用dma方式读取视频数据;如果不使用fifo,dsp会频繁中断,从而花费大量时间在入栈、出栈以及寄存器的设置上。

2.2 视频编码

dsp读入视频数据后进行先期处理,如将yuv格式转为rgb格式等;然后进行mpeg-4视频编码。在这一过程中,数据访问通常要占用50%的时间,算术运算要占用30%的时间,控制要占用20%的时间。因为需要进行运动估计和运动补偿,在数据存储器中通常保存一帧i(原始帧)帧图像和至少一帧p(预测帧)帧图像,这些图像占用的空间都比较大,因此一般都放在外部存储器sdram里。在编码过程中还要存储dct系数、运动向量、量化矩阵、可变长编码表、z形编码表等,由于占用较小的存储空间而且会反复用到,因此把它们放在片内存储器中。

2.3 pc与编码卡通信

pc与编码卡通信可以通过并口、串口、usb口、pci接口等方式实现。其中pci接口方式易于pc与编码器高速传输数据,因此本文采用pci接口。编码后的数据通过dsp的hpi、pci桥芯片、pci总线到达pc。pc通过dsp的hpi直接对dsp的存储空间进行访问。hpi有两种工作方式:一种是单数据读写,这种方式每次只能读写一个数据,一般主机对编码参数进行设置,例如设置图像大小、帧率等;另一种是burst方式的数据读写,在这种方式下只需要指定初始访问地址,然后以地址自加的方式访问dsp的存储空间,这种访问方式不需要dsp的cpu参与。图2中

mpeg-4是一种开放性标准,其中许多部分都没有规定,可以加入一些新的算法,因此采用通用dsp能够随时更新算法、优化算法、使得编码效率更高。由于mpeg-4编码算法复杂,需要存储的数据量大,无论是存储空间分配、数据传输还是运算速度对dsp来说都是挑战。本文介绍了基于c6000系列dsp的mpeg-4视频编码卡的软硬件实现。利用dsp的vliw和流水线结构设计程序可以使mpeg-4编码效率大大提高。

1dsp特性介绍

由于算法的复杂性及数据量的日益增大,单靠串行结构的处理器完成数据处理工作已经越来越不可行,因此出现了并行结构的cpu以完成这一新的任务。现今最著名的两种并行体系结构是超长指令字vliw(very long instruction word)结构和超标量体系结构。由于超标量体系结构cpu硬件极其复杂,指令动态调度将导致时间的不确定性,所以dsp很少使用这种结构。而一般使用超长指令字(vliw)结构,这种长指令通常包括多个彼此独立的同步操作。

c6000系列dsp是ti公司生产的高档dsp。这一系列dsp都是基于velocitit构架的vliw dsp,它在每个周期可以执行八条32bit的指令,具有高达200mhz的coy,从而使得其运算能力达到1600mips(200mhz×8条指令=1600mips)。这些性能都确立了它在高端多媒体应用中的地位。

dsp的cpu结构如图1所示,它具有两个通道,每个通道具有4个功能单元(1个乘法器和3个算术逻辑单元),16个32位通用寄存器,每个通道的功能单元可以随意访问本通道的寄存器。cpu还有两个交叉单元,通过它们,一个通道的功能单元可以访问另一个通道的寄存器。另外cpu还具有256bit宽的数据和程序通道,可以使程序存储器在每个时钟周期提供8条并行执行指令。这种cpu结构是dsp具有vliw结构的最基本条件。此系列dsp的存储空间映射为内部存储器、内部外设及扩展存储器。其中内部存储器由64kb内部程序存储器和数据存储器构成,内部程序存储器可以映射到cpu地址空间或者作为cache操作。内部和外部数据存储器均可通过cpu、dma或hpi(hostport interface)方式访问,hpi接口使上位机可以访问dsp的存储空间。

2 mpeg-4编码卡的硬件设计

mpeg-4编码卡包括几部分:视频采集、视频的mpeg-4编码、整个系统的cpld控制、pc机与dsp的通信等模块,其结构框图如图2所示。

2.1视频采集

视频采集部分主要完成模拟视频到数字视频的转换,包括一片视频采集芯片和一片小的cpld。cpld的作用是控制视频采集芯片,将采得的数据从8位或16位转化为32位,并且使数据按照y、u、v分开的方式排列。这样相当于对采集到的数据进行了一次预处理,以便于视频编码使用。另外,cpld将32位宽的数据输出给32位的fifo。用32位的fifo以及将视频数据转换为32位,可以使dsp读取视频数据时32位的数据总线没有空闲,从而提高dsp读取视频数据的效率;这里使用fifo是为了减少dsp读取数据的时间、降低高速设备和低速设备的不匹配。每次fifo半满时,cpld会给dsp发送中断信号,并且在中断处理程序中使用dma方式读取视频数据;如果不使用fifo,dsp会频繁中断,从而花费大量时间在入栈、出栈以及寄存器的设置上。

2.2 视频编码

dsp读入视频数据后进行先期处理,如将yuv格式转为rgb格式等;然后进行mpeg-4视频编码。在这一过程中,数据访问通常要占用50%的时间,算术运算要占用30%的时间,控制要占用20%的时间。因为需要进行运动估计和运动补偿,在数据存储器中通常保存一帧i(原始帧)帧图像和至少一帧p(预测帧)帧图像,这些图像占用的空间都比较大,因此一般都放在外部存储器sdram里。在编码过程中还要存储dct系数、运动向量、量化矩阵、可变长编码表、z形编码表等,由于占用较小的存储空间而且会反复用到,因此把它们放在片内存储器中。

2.3 pc与编码卡通信

pc与编码卡通信可以通过并口、串口、usb口、pci接口等方式实现。其中pci接口方式易于pc与编码器高速传输数据,因此本文采用pci接口。编码后的数据通过dsp的hpi、pci桥芯片、pci总线到达pc。pc通过dsp的hpi直接对dsp的存储空间进行访问。hpi有两种工作方式:一种是单数据读写,这种方式每次只能读写一个数据,一般主机对编码参数进行设置,例如设置图像大小、帧率等;另一种是burst方式的数据读写,在这种方式下只需要指定初始访问地址,然后以地址自加的方式访问dsp的存储空间,这种访问方式不需要dsp的cpu参与。图2中

相关IC型号
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!