一种多模式多功能测试仪器自动配置装置和方法与流程

文档序号:17261365发布日期:2019-03-30 09:41阅读:242来源:国知局
一种多模式多功能测试仪器自动配置装置和方法与流程

本发明属于测试技术领域,具体涉及一种多模式多功能测试仪器自动配置装置和方法。



背景技术:

多模式多功能测试仪器是一种综合测试类仪器,传统的设计方法大多采用专用集成电路来完成不同测量功能的处理,即设计阶段就决定了它所能完成的处理功能,设计完成后它的功能就被完全的固化,比如一旦设计完成,就只能完成设计定型的功能。对于多模式多功能测试仪器来说,其软件程序涉及的部分主要包括主机程序、fpga程序、dsp程序和各个测量的单板程序,传统的方法对主机运行的程序一般配置比较方便,可以通过远程控制或者现场将安装的程序覆盖掉就可以,但是对于板载的如fpga程序、dsp程序和各个单板的程序基本都是数字处理的算法程序,其具有固定的ip核信息,为了保护算法,基本是通过烧录的方式记录到集成芯片的可读内存中,因此升级十分不方便。

传统的方式是通过在线烧录的方式,需要将仪器返回厂家,通过jtag接口在线烧录的方式升级程序,这种方式效率低,并且周期长。

另外一种方式是通过远程的方式升级主程序,但是fpga程序、dsp程序和各个单板的程序不能完成升级,这种方式只能对部分的程序自动配置,具有一定的局限性,导致不能满足工程的应用。

传统的仪器仪表大多采用专用集成电路来完成数字部分的处理,数字处理算法流程的更新变的十分困难,即设计阶段就决定了它所能完成的处理功能,难以适应不断变化的升级更新需求。多模式多功能测试仪器设计以硬件为核心,缺乏灵活性,可重构能力差,一旦有升级需求,很难完成自动升级。本发明的多模式多功能测试仪器采用可重构的平台设计,在仪器出厂以后也很容易实现远程fpga、dsp程序升级和功能扩展,提高仪器生命周期。

传统的多模式多功能测试仪器工作模式多,例如对于本发明来说,主要包括频谱、瞬态、调幅噪声、相位噪声、基带噪声、频率和功率等六大测量模式的信号分析功能,对于这些测量功能来说,由于fpga或者dsp的容量受限制,很难讲多有的测量模式的软件集成进行升级,本发明按照测量模式,将程序编译成不同的版本,可以进行动态的切换,实现在有限的内存容量情况下实现程序的自由升级。



技术实现要素:

针对现有技术中存在的上述技术问题,本发明提出了一种多模式多功能测试仪器自动配置装置和方法,设计合理,克服了现有技术的不足,具有良好的效果。

为了实现上述目的,本发明采用如下技术方案:

一种多模式多功能测试仪器自动配置装置,包括远程升级服务器、主机程序模块、总线接口在线配置管理器、中央处理的fpga、dsp、ddr3存储器、频率功率板fpga、电源板fpga和测量板fpga;该装置采用分布式和共享式的链接结构,中央处理的fpga和dsp、频率功率板fpga、电源板fpga、测量板fpga之间采用srio总线接口连接;中央处理的fpga与在总线接口线配置管理器模块、主机程序模块之间采用pcie总线接口连接;

其中,远程升级服务器,被配置为用于与远程的主机程序模块进行网络链路的连接配置,进行数据的远程交换;

主机程序模块,被配置为用于与远程网络进行连接,接收传送的配置指令和配置数据文件;

总线接口在线配置管理器,被配置为用于对软件自动配置的算法和处理流程进行调度;

中央处理的fpga,被配置为用于负责各个模块之间的连接,进行各个模块之间的调度和资源配置管理;其和频率功率板fpga、电源板fpga和测量板fpga组成了fpga簇;

dsp,被配置为用于进行数字信号处理运算,多个dsp组成了dsp簇,dsp簇协同中央处理的fpga、频率功率板fpga、电源板fpga和测量板fpga共同完成信号的处理;

ddr3存储器,被配置为用于存储dsp分解的数据。

此外,本发明还提到一种多模式多功能测试仪器自动配置方法,该方法采用如上所述的一种多模式多功能测试仪器自动配置装置,采用状态机的自动配置方法,配置过程采用远程升级的方式,具体包括如下步骤:

步骤1:主机程序模块实时监控远程升级服务器的命令,当收到自动配置命令后,将自动配置命令发送到中央处理的fpga的数据缓冲区;同时主机程序模块通过srio数据接口将数据传输给总线接口在线配置管理器;

步骤2:总线接口在线配置管理器将数据分解成中央处理的fpga升级数据和dsp升级数据,同时通知中央处理的fpga和dsp进行并行的升级配置过程;

步骤3:在中央处理的fpga自动配置过程中,总线接口在线配置管理器通过srio接口向中央处理的fpga发送配置命令,中央处理的fpga进行fpga簇的自动配置流程;

步骤4:在dsp配置过程中,dsp配置状态采用二次加载的方式进行运行,当收到自动配置命令后,首先将升级程序加载到dsp的二级缓存区,然后初始化ddr的存储空间,然后启动二次加载,将升级程序加载到ddr中,进行在线升级;

步骤5:当中央处理的fpga和dsp升级完成后,通过门铃中断的方式通知主机程序,主机程序通过网络将配置完成后的状态信息进行反馈。

优选地,配置过程,包括fpga配置过程和dsp配置过程;

fpga配置过程,采用状态机的形式,包括idle状态、配置模式状态、fpga器件初始化状态、配置fpga程序状态和错误检测状态;其中,

idle状态:fpga的默认状态,是处于闲置的状态;

配置模式状态:负责配置电路的状态;

fpga器件初始化状态:对整机的工作状态进行复位操作,使整机工作在初始状态;

配置fpga程序状态:通过读写内存中的数据,进行加载fpga配置程序;

错误检测状态:检测配置fpga程序状态是否正常完成,如果状态全部正常则进行状态切换;

fpga配置过程如下:

系统首先处于idle状态,当检测到主机程序模块发送过来的配置命令后进入配置模式状态,然后进入fpga器件初始化状态,器件初始化结束后,通过配置fpga程序状态加载fpga配置程序,配置程序加载完成后进入错误检测状态,检测配置加载是否成功,如果加载成功,则进入idle状态,如果加载失败,则跳转到配置模式状态进行重新加载;

dsp,包括地址映射模块、dsp程序分解模块、程序加载模块、门铃中断模块和数据发送模块;

地址映射模块:负责各个dsp的地址空间与主机程序模块之间的dsp空间的映射关系转换,dsp地址和主机程序模块间地址能够透明的访问;

dsp程序分解模块:负责将dsp的配置程序按照约定的格式进行分解和解析,分解的数据格式包括程序运行地址和数据段;

门铃中断模块:负责发送中断,通过各个dsp当前的状态,保持各个dsp之间的状态同步;

数据发送模块:将dsp程序分解模块分解的dsp程序写入dsp程序空间;

dsp配置过程如下:

加载过程中,第一个dsp处于加载状态,其它的dsp处于idle闲置状态,等待中断的处理;当dsp收到配置命令后,将各个dsp和主机程序模块之间的地址空间的地址进行映射,保证dsp和主机之间地址访问透明,然后按照数据规则,对要配置的应用程序进行分解,然后启动程序加载过程,将数据写入第一个dsp的存储空间中,当第一个dsp的数据加载完成后,对ddr3进行初始化,ddr3初始化完成后,将应用程序通过pcie总线写入其它dsp中,最后通过门铃中断模块通知各个dsp数据加载完成,然后进入状态检测,如果加载过程没有错误,则各个dsp脱离idle状态,进入正常运行状态,如果加载失败则进入程序加载模块重新配置;其中地址映射、dsp程序分解、程序加载属于一次加载过程,程序加载到状态检测属于二次加载过程。

本发明所带来的有益技术效果:

1、对于fpga程序采用状态机的软件设计模式,简化软件功能切换,实现状态同步配置。

2、dsp的自动配置方式,采用了pcie的总线传输方式,数据传输速度快,效率高,其数据传输速度达到gbit/s,可以满足实时配置的需求。

3、本发明采用“门铃”中断的交互方式,通过“门铃”中断通过各个dsp状态发生改变,保持各个dsp装状态的一致性。

4、本发明的dsp传输配置采用二次加载的方案,可以解决大块程序的加载配置问题,并且加载配置流程灵活简单,可以高效的完成dsp程序的程序配置。

5、仪器在生产、维护、升级方面都比较方便,生产过程中可实现不同类型的仪器进行统一生产调试,在仪器出厂以后也很容易实现远程fpga、dsp程序升级和功能扩展,提高仪器生命周期。

6、相比于传统仪器结构和配置方式,本发明更加灵活,可进行自动升级,可提供用户在当前和未来所需要的测试功能。

7、相比于传统的远程在线升级的方式,本发明采用更加“可重构”的硬件平台架构,主要包含dsp簇、基于中央处理的fpga为中心的fpga组合,这种组合结构可以灵活完成各种算法,并且灵活性也可以得到保证,不仅可以方便的配置应用程序,而且可以实时的自动配置多个fpga和多个dsp程序,配置过程更加灵活高效,解决了配置的过程中配置数据量大、数据传输速度、状态之间的同步问题。

附图说明

图1为本发明装置的原理示意图。

图2为多任务分解示意图。

图3为fpga的配置过程示意图。

图4为dsp的加载过程示意图。

具体实施方式

下面结合附图以及具体实施方式对本发明作进一步详细说明:

本发明的硬件平台装置的可编程器件主要包括fpga和多核dsp,其主要设计采用可重构的架构设计,本发明的装置可以接收来自网络的命令进行自动配置。基本结构如图1所示。包括远程升级服务器、主机程序模块、总线接口在线配置管理器、中央处理的fpga、dsp、ddr3存储器、频率功率板fpga、电源板fpga和测量板fpga。其中,远程服务器模块负责与远程的主机程序模块进行网络链路的连接配置,负责数据的远程交换。主机程序模块负责与远程网络进行连接,接受传送的配置指令和配置数据文件。总线接口在线配置管理器负责软件自动配置的算法和处理流程调度,中央处理的fpga负责各个模块之间的链接,进行各个模块之间的调度和资源配置管理。dsp负责数字信号处理算法的运算,多个dsp组成了dsp簇,在进行复杂的数字信号处理算法的时候,dsp簇协同中央处理的fpga、频率功率板fpga、电源板fpga、测量板fpga共同完成复杂信号的处理,这种组合结构可以灵活完成各种算法,并且灵活性也可以得到保证。

本发明的多模式多功能测试仪器自动配置装置,采用分布式和共享式的链接结构,各个模块如中央处理的fpga和dsp、频率功率板fpga、电源板fpga、测量板fpga之间采用srio的高速总线接口。中央处理的fpga与总线接口在线配置管理器、主机程序模块之间采用pcie的总线接口连接,其中各个模块的ddr3、flash、sdram的内存之间通过映射算法进行共享。各个模块之间采用dma的高速数据传输技术,保证数据传输快速可靠。

本发明的数据处理方式采用流水线的方式,其基本结构如图2所示,中央处理的fpga从数据采集模块获得数据后,对需要处理的任务进行分解,分解为任务1、任务2、任务n等多个子任务,然后将任务分发到对应的dsp1、dsp2、dspn等对应的数据运算单元。为了完成各个模块之间的协调和调度,各个模块之间采用“门铃”的方式进行中断式的交互通信,其中“门铃”是一种交互应答的通讯机制。dsp按照流水线的方式对任务进行处理运算。这种运算方式可以最大限度的提高处理运算速度。

如上所述,本发明的硬件平台和数据处理采用了“可重构”“流水线”的处理架构,因此,自动配置上也需要采用灵活的方式,本发明的软件自动配置算法采用状态机的自动配置算法。配置过程采用远程升级的方式,其中主要包括fpga的配置过程和dsp的配置过程,自动配置装置在接收到自动配置命令后,主机程序模块通过网络接收到fpga和dsp的配置程序,考虑到fpga容量的限制,本发明将程序模块按功能进行划分,采用随用随配置的灵活模式,然后总线接口在线配置管理器将配置的程序分解为不同的功能模块,并通过pcie总线接口将fpga程序下载到fpga,将dsp程序模块下载到dsp,然后启动配置升级过程。

fpga的配置过程采用“状态机”的形式,fpga配置过程其主要分为idle状态、配置模式状态、fpga器件初始化状态、配置fpga程序状态、错误检测状态。

idle状态:fpga的默认状态,是处于闲置的状态。

配置模式状态:配置模式状态主要负责配置电路的状态。

器件初始化状态:对整机的工作状态进行复位操作,使整机工作在出事状态。

配置fpga程序状态:通过读写内存中的数据,进行加载fpga配置程序。

错误检测状态:检测配置fpga程序过程是否正常完成,如果状态全部正常则进行状态切换。

系统首先处于idle状态,当其检测主机发送过来的配置命令后进入配置状态,然后fpga进入器件初始化状态,器件初始化结束后开始加载fpga配置程序,配置程序加载完成后进入状态检测状态,检测配置加载是否成功,如果成功后进入idle状态,如果加载失败跳转到配置模式状态进行重新加载。整个过程只需要几个毫秒就可以完成。

其工作流程如图3所示。

dsp加载要考虑如下三个问题:

(1)加载的接口类型

dsp的加载方式支持多种总线接口类型,常见的接口类型有spi总线、i2c总线、emif总线接口等,但是上述总线数据传输速度慢,当配置的程序大的时候,不满足实时加载的要求,本发明采用基于pcie的总线数据接口类型。其数据传输速度达到gbit/s,可以满足实时配置的需求。

(2)多个dsp之间的状态同步

另外,本发明的dsp采用多个dsp组合的“dsp簇”架构,因此需要考虑多个dsp程序的状态同步问题,本发明采用“门铃”中断的交互方式,通过“门铃”中断通过各个dsp状态发生改变,保持各个dsp装状态的一致性。

(3)加载的程序偏大的问题

传统的自动配置方式,需要首先把应用程序加载到ram或者二级缓存中,这种方式只适合加载小的应用程序,本发明需要加载大的程序,因此传统的方法并不适用本发明,本发明采用二次加载的方式,基本原理是首先在用一次加载将应用程序数据加载到二级缓存后,初始化ddr3大容量的存储空间,然后启动二次加载,将应用程序存入ddr3中,解决存储容量的瓶颈。

dsp加载流程如图4所示,其基本的模块包括地址映射模块、dsp程序分解模块、程序加载模块、门铃中断模块、数据发送模块组成,

地址映射模块:负责各个dsp的地址空间与主机之间的dsp空间的映射关系转换,dsp地址和主机间地址可以透明的访问。

dsp程序分解模块:负责将配置的dsp程序按照约定的格式进行分解和解析,分解的数据格式主要包括程序运行地址、数据段。

门铃中断模块:负责发送中断,通过各个dsp当前的状态,保持各个dsp之间的状态同步。

数据发送模块:将dsp分解模块分解的dsp程序写入dsp程序空间。

加载过程中dsp1处于加载状态,其它的dsp处于idle闲置状态,等待中断的处理。当dsp收到配置命令后,将各个dsp和主机之间的地址空间的地址进行映射,保证dsp和主机之间地址访问透明,然后按照数据规则,对要配置的应用程序进行分解,然后启动程序加载过程,将数据写入dsp1的存储空间中,当dsp1的数据加载完成后,对ddr3进行初始化,ddr3初始化完成后可以保证有足够大的存储空间存储应用程序,将应用程序通过pcie总线写入其它dsp中,最后通过门铃中断通知各个dsp数据加载完成,然后进入状态检测,如果加载过程没有错误,则各个dsp脱离idle状态,进入正常运行状态,如果加载失败则进入程序加载模块重新配置。其中地址映射、dsp程序分解、程序加载属于一次加载过程,程序加载到状态检测属于二次加载过程。

当然,上述说明并非是对本发明的限制,本发明也并不仅限于上述举例,本技术领域的技术人员在本发明的实质范围内所做出的变化、改型、添加或替换,也应属于本发明的保护范围。

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