多处理器架构的实时图像压缩平台的制作方法

文档序号:12810201阅读:471来源:国知局
多处理器架构的实时图像压缩平台的制作方法与工艺

本发明涉及一种视频处理技术领域,特别涉及一种多处理器架构的实时图像压缩平台。



背景技术:

随着图形图像技术的发展,对于芯片电路的图像的实时压缩能力提出了越来越高的要求,现有的图像压缩平台的压缩能力以及压缩算法已经无法满足日益提高的需求。



技术实现要素:

本发明的目的在于提供一种多处理器架构的实时图像压缩平台,用于解决上述现有技术的问题。

本发明一种多处理器架构的实时图像压缩平台,其中,包括:至少一解码芯片,第一fpga,dsp,arm处理器以及存储器;该至少一解码芯片用于进行图像输入源的解码;该第一fpga用于接收缓存解码芯片输出的数字图像信号,以及信号的预处理,根据不同的视频源完成相应的图像预处理;该dsp用于图像的压缩编码;该arm处理器用于进行压缩码流的对外传输;该存储器用于进行图像的缓存。

根据本发明的多处理器架构的实时图像压缩平台的一实施例,其中,包括:第二fpga,用于辅助该dsp的图像的压缩编码。

根据本发明的多处理器架构的实时图像压缩平台的一实施例,其中,包括:该解码芯片的解码包括模拟信号到数字信号的转变以及串行数字信号到并行数字信号的转换。

根据本发明的多处理器架构的实时图像压缩平台的一实施例,其 中,该压缩编码的算法为游程编码和小波编码。

根据本发明的多处理器架构的实时图像压缩平台的一实施例,其中,该第一fpga以及第二fpga分别设置有一存储器,用于进行图像的缓存。

根据本发明的多处理器架构的实时图像压缩平台的一实施例,其中,该arm处理器还用于进行该fpga以及该dsp的程序加载。

根据本发明的多处理器架构的实时图像压缩平台的一实施例,其中,该第一fpga与该第二fpga之间采用高速串行总线完成数据的传输;该fpga与该dsp之间采用emif口通信,该第二fpga与该arm处理器之间采用pci-e高速总线进行数据传输。

根据本发明的多处理器架构的实时图像压缩平台的一实施例,其中,还包括:flash存储器用于存储该fpga以及该dsp的应用程序。

综上,本发明的多处理器架构的实时图像压缩平台,能够满足对于图像实时压缩能力的要求,解决了现有的图像的实时压缩芯片实时压缩能力不足的问题。

附图说明

图1所示为本发明多处理器架构的实时图像压缩平台的模块图;

图2所示为本发明多处理器架构的实时图像压缩平台通信原理示意图;

图3所示为fpga的工作原理模块图;

图4所示为游程编码的流程框图;

图5所示为小波编码算法的流程图;

图6所示为本发明多处理器架构的实时图像压缩平台的工作原理图。

具体实施方式

为使本发明的目的、内容、和优点更加清楚,下面结合附图和实 施例,对本发明的具体实施方式作进一步详细描述。

图1所示为本发明多处理器架构的实时图像压缩平台的模块图,本发明多处理器架构的实时图像压缩平台是能够实现多路视频源输入,多种压缩算法按需加载的通用图像压缩平台。本发明多处理器架构的实时图像压缩平台包括多种视频制式的解码芯片101-104,解码芯片的数量和类型灵活可变,fpga1、fpga2、dsp11、dsp12、arm3以及ddr4。

参考图1,解码芯片101-104(数量不以此为限)负责完成图像输入源的解码,包括各种不同制式的视频源(可见光的,红外的,微光的,低分辨率的,高清分辨率的),分别完成解码。解码功能不限定于模拟信号到数字信号的转变,也可以完成串行数字信号到并行数字信号的转换。fpga1用于接收缓存解码芯片101-104输出的数字图像信号,以及信号的预处理,根据不同的视频源完成相应的图像预处理。例如红外图像需要进行非均匀性校正操作,微光图像进行图像帧叠加操作,以及图像的增强和直方图均衡化等操作。fpga2、dsp11以及dsp12协同配合,共同实现多路图像源的压缩编码工作。压缩编码算法可以主要采用游程编码和小波编码。arm处理器3用于压缩码流的对外传输,可以采用千兆以太网接口,arm处理器3用于对外通信和控制,例如通过以太网接口接收外部命令可以选择加载游程编码或者小波编码算法。

fpga1以及fpga2可分别外挂大容量ddr内存4以实现图像的多帧缓存。

参考图1,整个系统的主控制器为arm处理器3,fpga1接收到图像源后分别对图像进行预处理操作,然后判别图像类别,并把判别信息传输给arm处理器3,由arm处理器3决定使用何种算法或者根据以太网接口收到的控制命令来决定使用何种算法,由arm处理器3来完成fpga2,dsp11以及dsp12的程序加载。进行图像压缩算法实 现的核心为fpga2+dsp11+dsp12处理器。

参考图1,fpga1与fpga2之间采用高速串行总线完成数据的传输。fpga2与dsp1和dsp2之间采用emif口通信,完成数据的交换,在fpga2中两块双口ram(dpram)与emif互联。fpga2与arm之间采用pci-e高速总线进行数据传输,数据主要为压缩的码流。

图2所示为本发明多处理器架构的实时图像压缩平台通信原理示意图,如图1以及图2所示,平台的各个处理器的应用程序可以统一存储在一片大容量的flash存储器5中,可以根据系统需要加载,程序统一存储也便于程序的更新和管理。大容量flash存储器5挂载在arm处理器3上,由arm处理器3负责对fpga2,dsp1,dsp2处理器依次加载。平台加电启动后,arm处理器3首先完成程序的加载操作,然后arm处理器进行fpga2的程序加载操作,当fpga2启动以后,进行dsp1和dsp2的程序加载工作,读取大容量flash存储器5中的dsp1和dsp2程序并完成dsp1和dsp2处理器的程序加载。fpga1也可以单独挂载一片flash芯片完成自身的程序加载操作。

参考图1和图2,arm处理器3可以采用j-link仿真器和rs232串口完成仿真调试工作。fpga1和fpga2采用菊花链式jtag连接实现程序的调试。dsp1和dsp2也采用菊花链式jtag接口完成程序的调试。

图3所示为fpga的工作原理模块图,参考图1以及图3,fpga1主要完成原始输入图像数据的预处理操作,包括非均匀性校正、色彩空间转换、直方图均衡等。如果输入图像为红外图像则进行非均匀性校正操作,对于彩色图像可能需要进行色彩空间转换操作,以及图像增强和去噪等操作。

参考图1,由fpga2处理器、dsp11和dsp12处理器协同配合,共同实现多路图像源的压缩编码工作。压缩编码算法主要采用游程编码和小波编码。

游程编码算法主要包括:离散余弦变换+量化+zigzag编码+熵编码操作。小波编码算法主要包括:小波变换+量化+嵌入式块编码+优化截断操作。

图4所示为游程编码的流程框图,如图4所示,采用的游程编码算法主要包括离散余弦变换+量化+zigzag编码+熵编码操作。在fpga2处理器中即可实现,无需占用其他处理器资源。经过fpga1处理器预处理后的图像数据首先分成8*8的方块,然后对每个小方块分别进行离散余弦变换,将图像从空间域转换到频率域,每个小方块变换后得到一个8*8系数表,左上角代表最低频信息,右下角代表最高频信息;量化操作就是对8*8系数表的每个值分别除以某个值,其原则是对低频信号除以较小的值,对高频系数除以较大的值,从而达到尽量保留低频系数,减小高频系数的目的,起到的压缩的作用。经过量化后的系数进行zigzag重排序就会提高64个系数出现连续0系数的概率,从而为游程编码提供了可能。然后对游程编码结果进行熵编码,进一步压缩数据量得到最终的压缩码流。

图5所示为小波编码算法的流程图,如图5所示,对于小波压缩算法,必须借助多个处理器并建立合理的并行体系才能实时实现.流水线并行方法和单指令流多数据流(singleprogrammultipledata,spmd)并行方法是计算机并行处理领域内最为通用的两种并行方法。本系统的压缩算法硬件实现方案借用这两种并行思想,建立了其并行体系结构,如图所示,利用dsp处理器的流水线操作将小波压缩算法分解成三部分,与三级流水线对应。包括离散小波变换和量化,嵌入式块编码,优化截断。利用spmd思想将编码任务分派给fpga2和dsp1,dsp2处理器,交由它们共同完成。在三级流水线中,第一、三级任务被映射到fpga2中执行,第二级流水任务被映射到dsp1,dsp2中共同执行。

参考图1以及图5,多路并行的图像数据经过fpga1处理后缓存 在外部存储器中,当缓存数据满一个图像帧时,fpga2执行小波变换+量化运算,运算结果存入外部ddr缓存中,dsp1和dsp2分别通过emif接口将运算的结果读出并执行嵌入式块编码运算,运算结果通过emif接口写入外部ddr缓存中.当一个图像帧的所有编码块的嵌入式块编码运算结果写入ddr缓存时,fpga2执行优化截断运算,得到最终的压缩码流,并通过pci-e总线输出到arm处理器中。arm处理器通过千兆以太网输出。

图6所示为本发明多处理器架构的实时图像压缩平台的工作原理图,参考图1-6,原始图像经过小波变换后得到一幅小波系数,量化模块对小波系数进行量化操作,为压缩提供可能性。嵌入式块编码1和嵌入式块编码2执行相同的操作,并行操作,提高数据处理能力,其将各个子带分成一个个相对独立的码块,然后进行编码操作,产生压缩码流。fpga2再对码流进行优化截断处理产生最终的码流。

参考图1-6,将各个处理器(fpga1处理器除外)的程序统一存储在大容量flash中,该flash挂载在arm处理器上,所以fpga2,dsp1,dsp2处理器的程序加载工作由arm处理器统一控制完成。

参考图1-6,将fpga2的配置管脚连接到arm处理器的一组gpio引脚。fpga2配置引脚中的init(初始化信号),done(配置完成信号)统一连接到arm处理器。当arm处理器完成自身的程序加载后即跳转到启动代码1处。启动代码1的程序功能就是利用arm处理器的gpio接口模拟fpga2配置时序,将存储在大容量flash中的fpga2程序传输到fpga2中。

参考图1-6,dsp1和dsp2的程序加载工作由fpga2完成。当fpga2启动以后首先完成dsp1和dsp2的程序加载。具体实现途径为:在fpga2中构造两个hpi接口控制器分别与dsp1和dsp2的hpi口连接。fpga2首先需要读取大容量flash中的dsp1和dsp2的配置程序到fpga2中缓存,该功能通过fpga2和arm处理器之间的pci-e总线完 成数据传输。然后fpga2通过两个hpi口同时完成dsp1和dsp2的程序配置。

各个程序文件按照如表1所示的顺序,从flash空间0地址开始依次存放。

表1

综上,本发明的多处理器架构的实时图像压缩平台,能够满足对于图像实时压缩能力的要求,解决了现有的图像的实时压缩芯片实时压缩能力不足的问题。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1