用于数字信号处理器芯片文件加载的系统及方法与流程

文档序号:11250662阅读:928来源:国知局
用于数字信号处理器芯片文件加载的系统及方法与流程

本发明涉及通信技术领域,特别涉及一种用于数字信号处理技术(英文全称:digitalsignalprocess,英文简称:dsp)芯片文件加载的系统及方法。



背景技术:

dsp芯片具有强大的数据处理能力和较高的运行速度,在通信技术领域中日益得到广泛应用。系统设计时,常将dsp芯片作为数据处理单元。

传统dsp芯片文件加载方案主要实现方式是事先利用仿真器将文件烧录到dsp芯片中,再对系统上电进行加载。后来出现利用仿真器将文件烧录到外部存储器中,将存储器设计成可插拔模块,通过插针和插座与电路板连接在一起,通过更换存储器模块再对系统上电来更换加载到dsp芯片中的文件。

现有的dsp芯片文件加载方案在文件加载前需对系统进行断电处理,该方案实现过程比较复杂,文件加载速率较低,成本相对较高。



技术实现要素:

本发明实施例提供了一种用于数字信号处理器芯片文件加载的系统及方法以解决现有技术在文件加载前需对系统进行断电处理文件加载速率较低和成本高的问题。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。

根据本发明实施例的第一方面,提供了一种用于dsp芯片文件加载的系统,其特征在于,包括:一个主控制模块,一个现场可编程门阵列(英文全称:field-programmablegatearray,英文简称:fpga)芯片和多个dsp芯片;所述主控制模块和所述fpga芯片采用紧凑型外设部件互连标准(英文全称:compactperipheralcomponentinterconnect,英文简称:cpci)总线连接;所述主控制模块,用于接收控制指令并根据所述控制指令中目标文件的名称调用目标文件并加载所述目标文件至所述fpga芯片;其中,所述主控制模块包括:基于公共对象请求代理体系结构(英文全称:commonobjectrequestbrokerarchitecture,英文简称:corba)规范的软件通信体系框架sca中间件、cpci总线接口和操作系统;所述基于corba规范的软件通信体系框架(英文全称:servicecomponentarchitecture,英文简称:sca)中间件包括波形应用组件和设备组件;所述操作系统包括外设部件互连标准(英文全称:peripheralcomponentinterconnect,英文简称:pci)驱动;所述波形应用组件,用于根据所述控制指令中dsp芯片id寻找所述设备组件并将所述控制指令发送给所述设备组件;所述设备组件,用于调用所述pci驱动读取目标文件;所述pci驱动,用于将所述目标文件发送至所述fpga芯片;所述fpga芯片,用于引导加载所述目标文件至所述多个dsp芯片;所述波形应用组件和所述设备组件通过基于corba规范的接口通信;所述设备组件还连接至所述cpci总线接口,并通过所述cpci总线接口与所述cpci总线连接;所述多个dsp芯片之间通过超链接hyperlink接口互联。

可选地,所述控制指令包括目标文件名称、配置参数和dsp芯片id;所述fpga芯片按所述dsp芯片id引导加载所述目标文件至相应的dsp芯片;控制指令包括目标文件名称、配置参数和dsp芯片id,可以使系统有目的的进行文件选择和加载,加快系统处理速度。

可选地,还包括一个功能选择模块,用于进行功能选择和设置配置参数生成控制指令;所述功能选择模块和所述主控制模块通过基于公共对象请求代理体系结构corba规范的接口通过局域网lan总线进行通信。所述功能选择模块和所述主控制模块分工明确,相互连通保证系统工作的完整性。

可选地,所述波形应用组件与所述功能选择模块中提供的功能选项一一对应。所述设备组件与dsp芯片一一对应。所述波形应用组件可被加载到不同的所述设备组件上。所述波形应用组件、所述功能选择模块中提供的功能选项、所述设备组件和所述dsp芯片的对应关系保证系统间互连、互通和互操作,降低了开发的复杂性,减少了开发成本。

可选地,所述主控制模块运行的操作系统是vxworks系统,所述vxworks系统包含所述pci驱动。

可选地,所述dsp芯片各外接一个闪存(英文全称:flasheeprom,英文简称:flash)和一个双倍速率同步动态随机存储器(英文全称:dualdataratesynchronousdynamicrandomaccessmemory,英文简称:ddr),在所述flash内固化了dsp芯片驱动文件,用于在所述fpga芯片通过通用输入/输出(英文全称:generalpurposeinputoutput,英文简称:gpio)接口给出控制信号后加载完成dsp芯片的初始化;所述ddr,用于存储所述目标文件。

可选地,所述多个dsp芯片为两个dsp芯片。

可选的,所述控制指令中dsp芯片id用于对各dsp芯片进行区分,包括:设备号,或,设备号和厂商号。

根据本发明实施例的第二方面,提供一种用于dsp芯片文件加载的方法,包括:主控制模块接收控制指令;所述主控制模块解析所述控制指令,得出所述控制指令中包含的目标文件的名称;所述主控制模块根据所述目标文件的名称选择波形应用组件;所述波形应用组件根据所述控制指令中包含的dsp芯片id寻找设备组件并传递所述控制指令;所述设备组件接收所述波形应用组件传递的所述控制指令;所述设备组件根据所述控制指令中目标文件的名称调用所述pci驱动读取所述目标文件;所述pci驱动将所述目标文件发送至fpga芯片;所述fpga芯片加载所述目标文件至所述dsp芯片id对应的dsp芯片。

可选地,所述控制指令由功能选择模块发送,所述控制指令包括目标文件名称、配置参数和dsp芯片id;所述fpga芯片按所述dsp芯片id引导加载所述目标文件至相应的dsp芯片;控制指令包括目标文件名称、配置参数和dsp芯片id,可以使系统有目的的进行文件选择和加载,加快系统处理速度。

可选地,所述控制指令中dsp芯片id用于对各dsp芯片进行区分,包括:设备号,或,设备号和厂商号。

可选地,所述目标文件存储在所述dsp芯片外接的ddr内。

可选地,在功能选择模块发送控制指令之前还包括:对所述fpga芯片上电;对所述功能选择模块,所述主控制模块和所述dsp芯片上电。

可选地,还包括:所述fpga芯片发送控制信号;所述dsp芯片根据所述控制信号加载固化在所述dsp芯片外接的flash内的dsp芯片驱动文件。

本发明实施例提供的技术方案可以包括以下有益效果:

本实施例提供的系统基于sca进行软件结构设计,硬件结构采用dsp+fpga架构,实现对dsp芯片文件动态加载,整个过程不需要重启加载,提高文件的加载效率,提高了系统的灵活性和兼容性,降低了系统成本低。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。

图1是根据一示例性实施例示出的一种用于dsp芯片文件加载的系统结构示意图;

图2是根据一示例性实施例示出的一种用于dsp芯片文件加载的系统结构示意图;

图3是根据一示例性实施例示出的一种用于dsp芯片文件加载的方法的框图;

图4是根据一示例性实施例示出的一种用于dsp芯片文件加载的方法的框图。

具体实施方式

以下描述和附图充分地示出本发明的具体实施方案,以使本领域的技术人员能够实践它们。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选的,并且操作的顺序可以变化。一些实施方案的部分和特征可以被包括在或替换其他实施方案的部分和特征。本发明的实施方案的范围包括权利要求书的整个范围,以及权利要求书的所有可获得的等同物。在本文中,各实施方案可以被单独地或总地用术语“发明”来表示,这仅仅是为了方便,并且如果事实上公开了超过一个的发明,不是要自动地限制该应用的范围为任何单个发明或发明构思。本文中,诸如第一和第二等之类的关系术语仅仅用于将一个实体或者操作与另一个实体或操作区分开来,而不要求或者暗示这些实体或操作之间存在任何实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素本文中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的结构、产品等而言,由于其与实施例公开的部分相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

如图1所示,本发明实施例提供的用于dsp芯片文件加载的系统包括:一个主控制模块1200,一个fpga芯片1300和多个dsp芯片。

主控制模块1200和fpga芯片1300采用紧凑型外设部件互连标准cpci总线连接。主控制模块1200,用于接收控制指令并根据控制指令调用目标文件并加载目标文件至fpga芯片1300。

其中,主控制模块1200包括:基于corba规范的软件通信体系框架sca中间件、cpci总线接口和操作系统,基于corba规范的sca中间件包括波形应用组件1201和设备组件1202,操作系统包括外设部件互连标准pci驱动,波形应用组件1201,用于根据控制指令中dsp芯片id寻找设备组件1202并将控制指令发送给设备组件1202。设备组件1202是与dsp芯片相映射的软件模块。与每个dsp芯片对应的有一个设备组件1202。设备组件1202,用于调用pci驱动读取目标文件,pci驱动将目标文件发送至fpga芯片1300,波形应用组件1201和设备组件1202通过基于corba规范的接口通信,设备组件1202还连接至cpci总线接口,并通过cpci总线接口与cpci总线连接。

基于sca的系统架构在不同的层面对硬件和软件进行详细地定义,为系统的设计和开发提供了详细的规范,建立了独立于设备的结构框架,使系统具有组件的可移植性和复用性,并确保根据sca开发的产品之间的兼容性。sca能保证基于该规范的各种系统间实现互连、互通和互操作,同时,它还为不同的sca波形应用组件提供了可移植的平台,并通过充分采用corba规范封装复杂的接口,降低了开发的复杂性,减少了开发成本。凭借sca技术能够实现文件的动态切换,不需要将设备断电或是重启再加载文件。

fpga芯片1300,用于引导加载目标文件至多个dsp芯片,多个dsp芯片之间通过超链接hyperlink接口互联。

hyperlink接口为dsp芯片之间提供一种高速、低延迟,引脚数少的通信连接接口。数据传输速度比以往单一的地址数据总线更具优势,能满足高速率的数据传输要求。

dsp芯片具有强大的数据处理能力,可处理复杂的数据类型,软件算法易修改,外设资源丰富。本发明实施例系统结构硬件采用dsp+fpga架构,dsp芯片作为处理中心,通过数据总线完成与fpga芯片的数据交换,实现复杂数据通信和外部控制。fpga芯片利用其大规模硬件资源,实现接口扩展及控制功能,并且通过fpga芯片实现dsp芯片的初始化和文件部署。

本实施例提供的系统基于sca进行软件结构设计,硬件结构采用dsp+fpga架构,实现对dsp芯片文件动态加载,整个过程不需要重启加载,提高文件的加载效率,提高了系统的灵活性和兼容性,降低了系统成本低。

在一些实施例中,参见图2,用于dsp芯片文件加载的系统包括功能选择模块1100、主控制模块1200、一个fpga芯片1301和多个dsp芯片。

其中,功能选择模块1100用于进行功能选择和设置配置参数生成控制指令,控制指令包括目标文件名称、配置参数和dsp芯片id。其中,目标文件名称为加载到dsp芯片的文件的名称,配置参数为dsp芯片加载目标文件后执行相应功能时的配置参数,dsp芯片id为加载目标文件的dsp芯片id。

功能选择模块1100提供的不同的功能选项对应不同的目标文件。主控制模块1200与功能选择模块1100基于corba规范定义的接口通过局域网(英文全称:localareanetwork,英文简称:lan)进行通信。功能选择模块1100和主控制模块1200分工明确,相互连通保证系统工作的完整性

主控制模块1200,运行vxworks操作系统,基于corba规范的sca中间件部署在主控制模块1200上,其中,所述sca中间件以。xml文件和。out文件形式存在,由spectracx软件生成。sca中间件包括波形应用组件1201和设备组件1202。波形应用组件1201,根据控制指令中dsp芯片id寻找设备组件1202并将控制指令发送给设备组件1202,设备组件1202,用于调用vxworks操作系统的pci驱动读取目标文件,将目标文件写到控制指令中dsp芯片id对应的pci地址中,并将目标文件发送至fpga芯片1301。每个dsp芯片均有一个独有的id,用于对各dsp芯片进行区分,包括dsp芯片的设备号,进一步的,还包括厂商号。针对每一dsp芯片抽象出一个设备组件1202,波形应用组件1202通过dsp芯片id查找对应的设备组件1202,并将控制指令传送给设备组件1202。波形应用组件1201是与功能选择模块1100中提供的功能选项相映射的软件模块,与每个功能选项对应的有一个波形应用组件1201。设备组件1202是与dsp芯片相映射的软件模块。与每个dsp芯片对应的有一个设备组件1202。一个波形应用组件1201可以加载到不同的设备组件1202上。波形应用组件1201、功能选择模块1100中提供的功能选项、设备组件1202和dsp芯片的对应关系保证系统间互连、互通和互操作,降低了开发的复杂性,减少了开发成本。

dsp芯片各外接一个flash和一个ddr,在flash内固化了dsp芯片驱动文件,dsp芯片上电后加载dsp芯片驱动文件,在接收到fpga芯片1301通过通用输入/输出gpio接口给出控制信号后完成dsp芯片的初始化。ddr内存储目标文件。

在本实施例中ddr采用ddr3,fpga芯片采用sprtan-6,dsp芯片采用tms320c6670芯片。tms320c6670芯片上有四个集成的c66xdsp的corepac,每个核心运行在1.0至1.20ghz。硬件加速提供了高集成度,低功耗和易于使用的平台。

fpga芯片1301通过cpci总线和主控制模块1200连接,多个dsp芯片通过hyperlink接口连接。

系统上电过程为:fpga芯片1301首先上电完成加载,然后功能选择模块1100和主控制模块1200以及dsp芯片上电。因为dsp芯片的初始化及文件加载需要fpga芯片1301的控制实现,所以要先对fpga芯片1301上电。

系统完成上电后,dsp芯片加载固化在flash内的dsp芯片驱动文件,在接收到fpga芯片1301通过通用输入/输出gpio接口给出的控制信号后完成dsp芯片的初始化。然后执行dsp芯片文件加载过程。

文件动态加载过程为:通过功能选择模块1100选择需要加载的功能和需要配置的参数,生成控制指令,通过基于corba规范的接口传递给主控制模块1200。其中,控制指令包含与选择的功能对应的目标文件名称、需要配置的参数及需要加载的dsp芯片id。目标文件为二进制(英文全称:binary,英文简称:bin)文件,通过仿真器生成。dsp芯片id指示将目标文件加载至指定dsp芯片。当主控制模块1200接收到功能选择模块1100发出的控制指令,波形应用组件1201会根据控制指令中dsp芯片id寻找对应的设备组件1202,并将指令发送给设备组件1202。当设备组件1202接收到波形应用组件1201传递的控制指令,调用vxworks操作系统的pci驱动从dsp芯片外接的ddr内读取目标文件,将目标文件写到控制指令中dsp芯片id对应的pci地址中,并将目标文件发送至fpga芯片1301,由fpga芯片1301引导加载至指定的dsp芯片,直接替代原来的文件完成dsp芯片文件。当需要切换功能时,在功能选择模块1100进行功能切换,并依次执行前述步骤完成对dsp芯片文件动态加载,整个过程不需要重启加载。

本实施例提供的系统基于sca进行软件结构设计,硬件结构采用dsp+fpga架构,实现对dsp芯片文件动态加载,整个过程不需要重启加载,提高文件的加载效率,提高了系统的灵活性和兼容性,降低了系统成本低。

在一些实施例中,系统包括两个dsp芯片。

与前述系统实施例相对应,参见图3,本发明实施例提供的用于dsp芯片文件加载的方法包括如下步骤。

步骤s301,主控制模块1200接收控制指令。

主控制模块1200接收的控制指令包括目标文件名称,目标文件名称为加载到dsp芯片的文件的名称。

步骤s302,所述主控制模块1200解析所述控制指令,得出所述控制指令中包含的目标文件的名称。

步骤s303,所述主控制模块1200根据所述目标文件的名称选择波形应用组件1201。

目标文件的名称不同,对应的波形应用组件1201不同,主控制模块1200根据目标文件的名称选择对应的波形应用组件1201。

步骤s304,所述波形应用组件1201根据所述控制指令中dsp芯片id寻找设备组件1202并将所述控制指令发送给所述设备组件1202。

步骤s305,所述设备组件1202接收所述控制指令。

步骤s306,所述设备组件1202根据所述控制指令调用pci驱动读取所述目标文件,并将所述目标文件发送至fpga芯片1300。

步骤s307,所述fpga芯片1300加载所述目标文件至所述dsp芯片id对应的dsp芯片。

本实施例提供的方法可以实现对dsp芯片文件动态加载,整个过程不需要重启加载,提高文件的加载效率,提高了系统的灵活性和兼容性,降低了系统成本低。

在一些实施例中,参见图4,用于dsp芯片文件加载的方法包括如下步骤。

步骤s401,fpga芯片1300上电。

步骤s402,功能选择模块1100,主控制模块1200和dsp芯片上电。

fpga芯片1300实现dsp芯片的初始化和文件部署,在系统进行工作前首先对fpga芯片1300上电,当fpga芯片1300上电后再对其他模块进行上电。

步骤s403,所述dsp芯片加载固化在所述dsp芯片外接的flash内的dsp芯片驱动文件。

dsp芯片外接的flash内固化了dsp芯片驱动文件,在系统完成上电后,dsp芯片会自动加载dsp芯片驱动文件。

步骤s404,所述dsp芯片根据所述fpga芯片1300发送的控制信号完成初始化。

dsp芯片在加载文件前首先要进行初始化,fpga芯片1300发送控制信号控制dsp芯片进行初始化。

步骤s405,功能选择模块1100发送控制指令。

功能选择模块1100可以进行功能选择和设置配置参数并生成控制指令。对应不同的功能加载的目标文件不同,因此每个功能对应一个目标文件名称。

步骤s406,主控制模块1200接收控制指令。

主控制模块1200接收的控制指令包括目标文件名称、配置参数和dsp芯片id。其中,目标文件名称为加载到dsp芯片的文件的名称,配置参数为dsp芯片加载目标文件后执行相应功能时的配置参数,dsp芯片id为加载目标文件的dsp芯片id。

步骤s407,主控制模块1200解析所述控制指令,得出所述控制指令中包含的目标文件的名称。

步骤s408,主控制模块1200根据所述目标文件的名称选择波形应用组件1201。

功能选择模块1100提供的不同的功能选项对应不同的目标文件,波形应用组件1201是与功能选择模块1100中提供的功能选项相映射的软件模块,与每个功能选项对应的有一个波形应用组件1201,主控制模块1200根据目标文件的名称选择对应的波形应用组件1201。

步骤s409,所述波形应用组件1201根据所述控制指令中dsp芯片id寻找设备组件1202并将所述控制指令发送给所述设备组件1202。

设备组件1202是与dsp芯片相映射的软件模块。与每个dsp芯片对应的有一个设备组件1202。波形应用组件1201根据目标文件的名称选择对应的设备组件1202。

步骤s410,所述设备组件1202接收所述控制指令。

步骤s411,所述设备组件1202根据所述控制指令调用pci驱动读取所述目标文件,并将所述目标文件发送至fpga芯片1300。

设备组件1202调用pci驱动读取目标文件,pci驱动将目标文件写入dsp对应的pci地址中,并将目标文件发送至fpga芯片1300。目标文件存储在dsp芯片外接的ddr中。pci驱动被包含在由主控制模块1200运行的vxworks操作系统。步骤s412,所述fpga芯片1300加载所述目标文件至所述dsp芯片id对应的dsp芯片。

控制指令包括dsp芯片id,fpga芯片1300根据控制指令包含的dsp芯片id将目标文件加载至对应的dsp芯片。

当执行上述步骤完成一次目标文件的加载后。系统等待功能选择模块1100发送控制指令,当在功能选择模块1100做出功能切换时,则执行步骤s406及之后的步骤,完成dsp芯片文件的动态加载。

本实施例提供的方法可以实现对dsp芯片文件动态加载,整个过程不需要重启加载,提高文件的加载效率,提高了系统的灵活性和兼容性,降低了系统成本低。

应当理解的是,本发明并不局限于上面已经描述并在附图中示出的流程及结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

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