首页> 中国专利> 自重构片上多媒体处理系统及其自重构实现方法

自重构片上多媒体处理系统及其自重构实现方法

摘要

本发明涉及一种自重构片上多媒体处理系统,包括:处理器、存储器和片上总线,还包括:多媒体处理模块,该模块的全部或部分可重构;重构配置文件储存器;重构控制器,所述重构控制器从重构配置文件储存器读出被指定的配置文件,对多媒体处理模块的可重构部分进行部分或全部重构。本发明还提供一种实现片上系统自重构的方法,包括:读出数据的文件头;判断该文件头是否与现行的处理格式相符;读取相应的重构配置文件,对可重构部分进行重构;处理数据并输出。实施本发明的自重构片上多媒体处理系统及其实现方法,具有以下有益效果:其处理速度快,灵活性强,可以用一种设备处理多种多媒体信号,可实现硬件的时分复用,大大节省了硬件资源。

著录项

  • 公开/公告号CN101169866A

    专利类型发明专利

  • 公开/公告日2008-04-30

    原文格式PDF

  • 申请/专利权人 朱明程;

    申请/专利号CN200610063327.9

  • 发明设计人 朱明程;徐渊;曹捷;田志东;

    申请日2006-10-26

  • 分类号G06T1/20(20060101);G06F15/78(20060101);H04N7/26(20060101);

  • 代理机构44217 深圳市顺天达专利商标代理有限公司;

  • 代理人易钊

  • 地址 518060 广东省深圳市深圳大学海滨小区8栋601室

  • 入库时间 2023-12-17 20:02:40

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2013-04-03

    专利权的转移 IPC(主分类):G06T1/20 变更前: 变更后: 登记生效日:20130308 申请日:20061026

    专利申请权、专利权的转移

  • 2010-09-01

    授权

    授权

  • 2008-06-25

    实质审查的生效

    实质审查的生效

  • 2008-04-30

    公开

    公开

说明书

技术领域

本发明涉及多媒体处理系统及其实现方法,更具体地说,涉及一种自重构片上(SOC system on chip)多媒体处理系统及其自重构实现方法。

背景技术

图像视频的编解码器被广泛用于电视广播,视频会议,数码相机,手机,摄像头等生活的各个领域。为了满足实时快速的要求,对图像采集端的编码器,以及图像接受端的解码器的要求越来越高。传统的编解码器主要有两种解决方案:一种是软件解决方案,利用软件实现编解码处理。这种方法的优点在于软件具有灵活性高,开发周期短,可升级等特点。缺点是速度受处理器主频限制,在便携设备中常常无法满足实时要求,因此通常使用DSP(Digital SignalProcessor)芯片来提高速度;另一种是硬件解决方案,即用ASIC(ApplicationSpecific Integrated Circuit)芯片实现编解码处理。这种方法的优点在于速度快,稳定性高,缺点是开发周期长,灵活性差,通常只适用于一种或一类编解码器。

发明内容

本发明要解决的技术问题在于,针对现有技术的上述速度慢、灵活性差的缺陷,提供一种速度快、灵活性强的自重构片上多媒体处理系统及其自重构实现方法。

本发明解决其技术问题所采用的技术方案是:构造一种自重构片上多媒体处理系统,包括:

用于整个程序的运行、进程调度的处理器5;

用于存放所运行的程序及中间数值的存储器7;

用于进行系统中各部分间通讯的片上总线10,

还包括:

连接在所述片上总线上的、用于对多媒体信号进行编/解码的多媒体处理模块8,该模块的全部或部分可重构;

连接在所述片上总线上的、用于存放至少两个重构模块的配置文件的重构配置文件储存器9;

连接在所述片上总线上的重构控制器6,所述重构控制器6在收到所述处理器5发出的重构信号时,从重构配置文件储存器9读出被指定的配置文件,通过所述片上总线10写入多媒体处理模块8的可重构部分81。

在本发明所述的自重构片上多媒体处理系统中,所述多媒体处理模块8包括固定部分82和重构部分81。

在本发明所述的自重构片上多媒体处理系统中,所述片上总线10包括CORECONNECT总线(一种IBM公司专用的片上系统(SoC system on chip)总线);所述可重构部分81与固定部分82之间的信号通过BUS MACRO(FPGA器件的一种内部资源)83连接。

在本发明所述的自重构片上多媒体处理系统中,所述多媒体处理模块8包括可现场编程的FPGA(Field Programmable Gate Array)器件;所述可重构部分81每次重构后在所述FPGA上的面积均相同,其所占用面积的边界和布线资源固定不变。

在本发明所述的自重构片上多媒体处理系统中,所述可重构部分81包括功能模块和IPIF(IP Interface)模块,所述功能模块与IPIF模块相连,所述IPIF模块除与功能模块相连外,还与所述片上总线10相连。

在本发明所述的自重构片上多媒体处理系统中,所述重构控制器6包括内嵌于FPGA中的HWICAP(Hardware Internal Configuration Access Port)模块或单独的MCU。

在本发明所述的自重构片上多媒体处理系统中,所述系统处理的多媒体格式包括JPEG、JPEG2000、MPEG-2、MPEG-4、H.263、H.264或RM/RMVB中的一项或多项。

本发明还提供了一种实现多媒体处理系统自重构的方法,包括如下步骤:

1)接收数据,并读出数据的文件头;

2)判断该文件头是否与现行的可重构部分处理的格式相符,若是,则跳到步骤4),若不是,则进行步骤3);

3)根据读出的文件头的信息,读取相应的重构配置文件,对可重构部分进行重构;

4)处理数据并输出。

在本发明所述的实现自重构片上多媒体处理系统的方法中,所述步骤3)进一步包括如下步骤:

3a)在处理器的控制下,停止多媒体处理模块的工作;

3b)重构控制器由重构配置存储器中调出相应的配置文件;

3c)并对多媒体处理模块中的可重构部分进行重构;

3d)在处理器的控制下,多媒体处理模块开始工作。

在本发明所述的实现自重构片上多媒体处理系统的方法中,所述步骤3c)进一步包括如下步骤:

3c1)重构控制器判断重构是否完成,若是,跳转到3e),若不是,执行步骤3c2);

3c2)重构控制器由重构配置存储器中读取下一个最小可配置单位的配置文件;

3c3)将上述读取的最小可配置单位的配置文件写入可重构部分;

3c4)返回3c1)。

实施本发明的自重构片上多媒体处理系统及其实现方法,具有以下有益效果:

由于本发明中硬件功能模块随收到的多媒体信号的格式变化而变化,即采用了自重构系统,所以其处理速度快,灵活性强,可以用一种设备处理多种多媒体信号,可实现硬件的时分复用,大大节省了硬件资源。

附图说明

下面将结合附图及实施例对本发明作进一步说明,附图中:

图1是本发明自重构片上多媒体处理系统实施例的结构示意图;

图2是本发明自重构片上多媒体处理系统实施例中多媒体处理模块中可重构或固定模块与片上总线连接的结构示意图;

图3是本发明自重构片上多媒体处理系统实施例中重构控制器HWICAP的逻辑框图;

图4是本发明实现自重构片上多媒体处理系统的方法中实现自重构的流程图;

图5是实现图4中步骤3)进一步包括的步骤的流程图。

具体实施方式

在本发明中,实现自重构的过程如下:先将可能会遇到的多媒体格式的处理(编/解码)所需要的硬件结构划分为固定部分和可重构部分,其中,固定部分是在不同格式的处理(编/解码)过程中均相同的硬件结构,而可重构部分则是在不同格式的处理(编/解码)。过程中各不相同的硬件结构,例如,在JPEG和在MPEG-1/2格式的编码中度存在的DCT编码(离散余弦编码)和量化等功能模块,可分为固定部分;而JPEG特有的huffman编码等功能模块,可以划为可重构部分,作为第一个配置文件的内容;MPEG-1特有的运动补偿和运动预测功能模块,可以划为可重构部分,作为第二个配置文件的内容;以此类推,我们可以定义出多个可配置文件的内容,例如关于JPEG2000、MPEG-2、MPEG-4、H.263、H.264、RM/RMVB等多媒体格式的配置文件内容。将这些定义好的配置文件的内容用硬件描述语言描述出来(如VHDL),并对整个系统中的其他部分与多个可重构部分之间分别加以区别(约束),同过综合工具软件,得到上述描述的网表。然后进行NGDbuild(Xilinx公司提供的一个工具,其基本功能就是将综合生成的逻辑网表文件等翻译成Xilinx底层硬件原语NGD文件),生成各自的NGD(Native Generic Database)文件,最后装配,设定管脚等,装入设计好的软件,得到本发明所述的系统。

如图1所示,在本发明的自重构片上多媒体处理系统实施例中,包括处理器5、存储器7、配置文件存储器9、重构控制器6、多媒体处理模块8以及与上述各部件分别相连的片上总线10,其中,多媒体处理模块8种由包括可重构部分81、固定部分82以及连接在可重构部分81和固定部分82之间的BUSMARCO83。由图1中可见,有两个存储器连接在片上总线10上,存储器7存放处理器5的代码及提供处理器5建立程序空间和系统缓存空间。配置文件存储器9存放有至少两个需要重构的用户逻辑的配置文件。需要进行重新配置时,由处理器5发起重新配置时序,先从配置文件存储器9读取配置文件,将这个文件以及相应的配置信息传送给重构控制器6,通过重构控制器6对可重构部分81的用户逻辑资源进行重新配置,构成新的逻辑模块。

本实施例中使用Xilinx平台式FPGA(Field Programmable Gate Array)中的Virtex-II Pro XC2VP40作为硬件平台,在本实施例中,所述处理器5、存储器7、配置文件存储器9、重构控制器6、多媒体处理模块8以及与上述各部件分别相连的片上总线10均位于同一芯片上,构成片上系统(SOC systemon chip)。Xilinx平台式FPGA最大的特点就是片上集成了PowerPC硬核处理器,配合IBM专用的CoreConnect总线能够方便快捷地构建片上系统。CoreConnect总线提供了三种基本类型的连接总线,分别是处理器内部总线PLB(processor local bus)、片上外围总线OPB(on chip peripheral bus)和设备控制总线DCR(device control register bus)。所以在本实施例中,片上总线10是CoreConnect总线。

在本发明的实施例中,可重构部分81可实现两种多媒体格式的解码,也就是说在配置文件存储器9中存储有两种配置文件,一种是JPEG格式解码配置文件,另一种是MPEG-2格式的解码配置文件;这两种配置文件可根据输入码流的格式而被调出,用于配置可重构部分81,而其缺省配置为MPEG-2格式解码。本实施例的构成过程如下:

本实施例的目标系统的构成由处理器5、片上总线10以及连接在该总线上的多媒体处理模块8组成。其中多媒体处理模块8包括三个部分:固定部分81、JPEG格式解码模块和MPEG-2格式解码模块,后两个部分是将被重构(这两个系统是分时使用)的。JPEG格式解码模块和MPEG-2格式解码模块将在不同的时间片断出现在自重构系统中,由于该两个可重构部分的不同,可以构成整个系统的两个不同的配置,称之为JPEG格式系统和MPEG-2格式系统。为了简便起见,将除了JPEG格式解码模块和MPEG-2格式解码模块之外的SoC系统部分称之为系统。

下面结合Xilinx公司的ISE工具和EDK工具的开发流程,就自重构系统的设计流程作详细的说明。

前端设计首先要构建SoC系统的架构。在按照EDK规定的流程生成一个SoC系统的模板以后,在其中加入自重构系统所需要的HWICAP(HardwareInternal Configuration Access Port)模块以及其他一些SoC系统所需要的IP,此时生成系统的VHDL描述。所述HWICAP的逻辑框图见图3。

分别设计JPEG格式解码模块和MPEG-2格式解码模块的功能电路,按照CoreConnect总线规范的要求将此两个IP分别加入系统中构建JPEG格式系统和MPEG-2格式系统。Xilinx公司提供了IP和总线之间的连接接口,用于简化用户IP和总线的连接。通过EDK的导入工具,利用IPIF模块可以将JPEG格式解码模块和MPEG-2格式解码模块的功能部分连接于片上总线10,即Coreconnect总线之上,见图2。值得一提的是,上述HWICAP模块与片上总线10的连接也是通过IPIF模块连接的。

至此,得到了JPEG格式系统和MPEG-2格式系统以及系统的前端系统框架的VHDL描述。同时,还得到JPEG格式解码模块和MPEG-2格式解码模块的VHDL描述。

此时要对JPEG格式系统和MPEG-2格式系统的顶层文件进行修改。将JPEG格式解码模块和MPEG-2格式解码模块与系统之间做一个明确的划分,抽象出相互之间的互联信号,按照此互联信号重新修改系统的Port的内容以及相关联的逻辑。同时使用Xilinx的设计源语,加入Bus Marco,使得所有JPEG格式解码模块和MPEG-2格式解码模块与系统之间(除了时钟信号之外)的信号经过Bus Marco互联。

经过综合工具软件,将VHDL描述综合为网表。得到JPEG格式系统和MPEG-2格式系统以及系统各自的网表表述。综合时需要在顶层设计中将系统模块、JPEG格式解码模块或MPEG-2格式解码模块模块约束为black_box。同时对JPEG格式解码模块和MPEG-2格式解码模块的VHDL描述单独进行综合,得到这两个模块各自的网表表述。

后端流程的出发点是已经设计好的的网表。首先需要做的是对系统的位置进行约束,同时也要在芯片内部约束出固定的位置用于JPEG格式解码模块和MPEG-2格式解码模块的重构,将约束生成一个UCF文件(FPGA中的管脚绑定文件),值得注意的是,JPEG格式解码模块和MPEG-2格式解码模块作为部分重构单元,需要遵从Xilinx VirtexII Pro芯片重构的物理约束条件。即,最小的重构单元是一个重构Frame,而一个重构Frame的范围是1bit的整个列的可配置逻辑,包括上下的输入/输出逻辑模块(IOB)和其中的可构造逻辑模块(CLB)。因此,JPEG格式解码模块和MPEG-2格式解码模块必需由若干个Frame构成,也就是说,JPEG格式解码模块和MPEG-2格式解码模块需要占据若干连续整列的芯片位置;并且,要约束上述两个解码模块的边界,输出信号、输出脚等,使其相同,以便重构时不至于丢失信号。

下一步分别对JPEG格式系统和MPEG-2格式系统进行NGDbuild,生成各自的NGD文件,此NGD文件是对整个系统配置的一个描述。同时,还需要对系统、JPEG格式解码模块和MPEG-2格式解码模块三个模块分别进行Xilinxmodular设计的流程,按照芯片约束进行布图布线,最终对JPEG格式解码模块和MPEG-2格式解码模块生成bitstream文件。此bitstream文件与通常下载到FPGA中的bitstream文件的区别在于,这两个bitstream文件是一个模块的部分重构配置流。不能作为整个FPGA的配置,其大小通常远小于整个FPGA的配置流文件。

最后,将MPEG-2格式系统作为系统的初始系统,进行装配(Assemble),包括整体的MAP,布图布线,IO管脚确定等工作,并构建最终的初始化系统配置流文件。

系统硬件设计完成之后,还需要设计软件,使得PowerPC能够响应外部的条件,和进行正常的SoC系统操作。

将生成可重构模块的的部分配置文件作为可供PowerPC调用的数据存放在内存的数据段中,作为程序需要访问到的数据。在适当的时刻,被某些触发条件所触发,引起重构动作,通过软件调用HWICAP,将部分配置文件转化为硬件电路。

如图4,在本发明的实施例中,实现系统重构的方法如下:

1)接收数据,并读出数据的文件头:数据有系统的信号输入端送入本系统,存储在存储器7中特别指定的区域内,同时处理器5读取信号的文件头,得到其表示数据格式部分;

2)判断该文件头是否与现行的可重构部分处理的格式相同,处理器5将得到的、表示数据格式的信息与现行的可重构部分的处理格式的数据比较;若是相同的,则跳到步骤4),不经过重构,直接处理数据;若不相同,则进行步骤3);

3)根据读出的文件头的信息,读取相应的重构配置文件,对可重构部分进行重构:处理器5根据得到的表示数据格式的信息,确定需要的配置文件,并通过HWICAP模块对可重构部分进行重构;

4)处理数据并输出。

在上述步骤3)中,通过HWICAP对可重构部分进行重构又可以进一步划分为如下步骤:

3a)在处理器5的控制下,多媒体处理模块8停止工作;

3b)重构控制器6由重构配置存储器9中读出相应的配置文件;在本实施例中,重构控制器6就是HWICAP模块;

3c)对多媒体处理模块8中的可重构部分81进行重构;

3d)在处理器5的控制下,多媒体处理模块8开始工作,开始在重构的格式下,从存储器7中取出存放的输入数据,经过解码后输出。

其中,步骤3c)进一步包括:

3c1)重构控制器6判断重构是否完成,由于可重构部分的边界是固定的,也即是其在芯片上所占的面积是固定的,故其最小可配置单元数是固定的,只要用此数减已配置的最小可配置单元数即可知重构是否完成;若已完成,跳转到3d),在控制器5的控制下,多媒体处理模块8开始工作;若不是已完成,执行步骤3c2);

3c2)重构控制器6由重构配置存储器9中读取该配置文件中的下一个最小可配置单位;本实施例中,最小可配置单位是FRAME。FRAME是指在配置过程中能够读写的FPGA的逻辑资源的最小单位。一个配置FRAME是一个宽度为1bit的FPGA可配置逻辑列,包括了上下的IOB。

3c3)将上述读取的最小可配置单位的内容写入可重构部分81;可重构控制器6将其独到的一个最小可配置单位的内容通过片上总线10写到可重构部分81中去;

3c4)返回3c1);

在本实施例中,重构控制器6HWICAP的操作就是读入-修改-回写的一个过程。这个过程以配置FRAME为单位,反复操作这个过程完成对部分逻辑资源的重新配置。

值得一提的是,上述实施例只是本发明的一个较常用的应用,本发明的保护范围并不局限于该实施例,例如,在实际应用中可以是三个或4个或更多的可重构模块,涉及更多的多媒体格式等,也并不局限于上述实施例中的硬件平台,例如,重构控制器可以用单独的一个MCU担任(该MCU独立于上述的FPGA,并通过总线与FPGA相连),而不用实施例中的HWICAP等,凡在本发明的精神和原则范围内,所作的任何修改、改进、等同替换等,均应包含在本发明的保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号