一种多核DSP软件仿真器及其物理层软件测试方法技术

技术编号:11676006 阅读:126 留言:0更新日期:2015-07-06 02:18
本发明专利技术提供一种多核DSP软件仿真器及其物理层软件测试方法,包括:通过调试应用程序接口同时建立多个DSP核的模拟器进程,并实现多核的指令级同步;根据预设需求依次为每个模拟器配置私有内存和外部内存,并将共享内存映射到每个模拟器的私有内存,以实现模拟器对共享内存的访问;调试应用程序接口的观测器接口检测指定的内存区域,当DSP访问这片内存时,观测器调用回调函数,在回调函数中通过调试应用程序接口的信号管理接口触发核间中断,以实现多核间的事件级同步。此外,通过测试脚本的方式引入外部事件和协议栈的高层消息原语,通过测试脚本的方式模拟射频数据,实现物理层软件的集成测试。

【技术实现步骤摘要】

本专利技术涉及通讯
,特别涉及一种多核DSP软件仿真器及其物理层软件测试方法
技术介绍
随着移动通信技术的快速发展,移动终端芯片的软硬件复杂度也在随之不断提高。单核心架构所提供的计算能力已经难以满足物理层协议栈的需要,很多移动终端物理层开始采用多核心架构,也就是用多个DSP核(处理器)协同完成物理层的功能。多核DSP方案具有很好的灵活性和扩展性,但是也给物理层软件的测试增加了复杂度。因为在软件硬件并行开发的流程中,硬件开发完成并回片之前,需要对软件进行充分的验证,以缩短研发周期。这个时候,就迫切需要一个软件仿真器,用于模拟多核DSP处理器的行为,以代替实际的芯片及单板,对物理层软件进行验证。目前,多核DSP软件仿真器及基于该仿真器的测试方法有以下几种:(I)利用DSP开发套件里的simulator (模拟器)来对物理层软件进行测试。DSP核设计公司提供的Simulator虽然可以模拟DSP的指令集和pipeline (传输途径),甚至可以从时钟精度上模拟对不同属性内存的访问,但是它只能模拟单核,不能模拟多核的并行运行。在用simulator进行测试时,只能把原本部署在多个核上的任务都放在一个核上运行,这样不仅增加了移植代码的工作量,还无法测试核间交互、同步的过程。(2)将物理层协议栈运行所依赖的实时操作系统移植到PC机上,并在windows上模拟 MAC (Media Access Control)模块以及 RLC (Rad1 Link Control)模块,这样,就可以在PC机上对物理层的功能进行测试。但是按照这样的方法建立模拟器,工作量非常大,而且物理层依赖于DSP核实现的功能无法在该模拟器上进行测试,如大量负载的算法模块坐坐寸寸ο(3)用ESL来建立多核仿真器,并用它来验证物理层软件。基于SYSTEM C的ESL是一种建模语言,其本身是用来对硬件逻辑进行验证的。如果用它来对多核DSP进行抽象和建模,本身就要花去很大人力和时间,而且在建模完成之后,还要对模型的正确性进行充分的验证,在开发周期较短、人力资源较为紧张的项目中,这种方法并不可取。(4)使用寄存器传输级(register-transfer level, RTL)的DSP软核以及加速器模型来建立多核仿真器,并通过脚本来控制整个测试流程。该方法中,RTL级DSP软核负责运行物理层源码,在启动后,从测试用例库中提取测试脚本,并启动加速器。测试脚本中集成了高层待下发的消息原语,以及模拟的射频数据。这样,就可以按照测试脚本完成对特定模块或者功能的测试了。但是这种方法虽然可以利用现成的DSP软核,减少了部分工作量,但是仍然需要用RTL来完成外设的仿真,以及核与核之间、核与外设之间的互连,并且该方法缺乏可扩展性,如果要根据测试者的需求定制或者增加仿真器的功能,则较为困难。
技术实现思路
本专利技术的目的在于提供一种多核DSP软件仿真器及其物理层软件测试方法,可以快速的建立多核DSP软件仿真器,且建立该仿真器的工作量小,成本低,快速高效;通过测试脚本输入外部事件和通过测试脚本的方式模拟射频数据,非常适用于物理层软件的集成测试,有效的缩短物理层软件的研发周期。为解决上述技术问题,本专利技术提供一种多核DSP软件仿真器,包括:N个核,所述N个核包括相应数量的模拟器,N是大于等于2的正整数;通过一调试应用程序接口同时建立多个DSP核的模拟器进程,并实现多核的指令级同步;通过一 Win32进程管理接口创建共享内存,并实现多核之间的通信。优选的,在所述的多核DSP软件仿真器中,还包括远程调试服务端,通过链接一调试器,实现在线调试。优选的,在所述的多核DSP软件仿真器中,所述调试器和所述远程调试服务端之间采用TCP/IP协议进行通信。优选的,在所述的多核DSP软件仿真器中,还包括测试脚本,通过引入测试脚本以实现物理层软件的集成测试。优选的,在所述的多核DSP软件仿真器中,所述测试脚本包括若干个事件、每个事件触发的起始时间和每个事件之间的时间间隔。优选的,在所述的多核DSP软件仿真器中,还包括射频数据,所述射频数据被写入所述测试脚本。优选的,在所述的多核DSP软件仿真器中,还包括跟踪日志模块,用于实时跟踪测试用例的执行情况。优选的,在所述的多核DSP软件仿真器中,还包括连接加速器C模型,用于实现物理层的复杂算法。相应的,本专利技术还提供一种基于多核DSP软件仿真器的物理层软件测试方法,使用所述的多核DSP软件仿真器,包括:通过调试应用程序接口同时建立多个DSP核的模拟器进程,并实现多核的指令级同步;根据预设需求依次为每个模拟器配置私有内存和外部内存,并将共享内存映射到每个模拟器的私有内存,以实现模拟器对共享内存的访问;调试应用程序接口的观测器接口检测指定的内存区域,当DSP访问这片内存时,观测器调用回调函数,在回调函数中通过调试应用程序接口的信号管理接口触发核间中断,以实现多核间的事件级同步。优选的,在所述的基于多核DSP软件仿真器的物理层软件测试方法中,还包括步骤:读取测试脚本,将所述测试脚本中的外部事件导入指定的内存区域。优选的,在所述的基于多核DSP软件仿真器的物理层软件测试方法中,所述测试脚本包括若干个事件、每个事件触发的起始时间和每个事件之间的时间间隔。优选的,在所述的基于多核DSP软件仿真器的物理层软件测试方法中,,还包括步骤:建立远程调试服务端进程;所述远程调试服务端接收调试器的指令,根据所述指令执行相应的操作;并将所述执行的结果反馈至所述调试器。优选的,在所述的基于多核DSP软件仿真器的物理层软件测试方法中,,所述调试器和所述远程调试服务端之间采用TCP/IP协议进行通信。本专利技术提供的多核DSP软件仿真器及其物理层软件测试方法,具有以下有益效果:使用本专利技术可以快速的建立多核DSP软件仿真器,开发工作量小,成本低,快速高效。模拟多核DSP处理器的工作情况,实现多核的并行运行,实现不同核之间的通信和交互,成功的解决当前大多数DSP公司的Simulator不能模拟多核运行的问题。此外,通过测试脚本输入外部事件和通过测试脚本的方式模拟射频数据,非常适用于物理层软件的集成测试,有效的缩短研发周期。【附图说明】图1是本专利技术实施例的多核DSP软件仿真器的示意图;图2是本专利技术实施例核间通信的示意图;图3是本专利技术实施例的测试脚本的示意图;图4是本专利技术实施例多核并行运行控制流程图。【具体实施方式】以下结合附图和具体实施例对本专利技术提出的多核DSP软件仿真器及其物理层软件测试方法作进一步详细说明。根据下面说明和权利要求书,本专利技术的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本专利技术实施例的目的。请参考图1,其是本专利技术多核DSP软件仿真器的示意图。如图1所示,本专利技术提供一种多核DSP软件仿真器,并基于多核DSP软件仿真器提供其物理层软件测试方法。所述多核DSP软件仿真器包括三层,是镜像层、软仿层和控制层。其中,最底层为镜像层,在镜像层中有N个镜像文件11。中间层为控制层,在软仿层中有仿真的处理器包含N个核,所述N个核包括相应数量的模拟器12 (simulator),N是大于等于2的正整数。也就是说多有少个本文档来自技高网
...

【技术保护点】
一种多核DSP软件仿真器,其特征在于,包括:N个核,所述N个核包括相应数量的模拟器,N是大于等于2的正整数;通过一调试应用程序接口同时建立多个DSP核的模拟器进程,并实现多核的指令级同步;通过一Win32进程管理接口创建共享内存,并实现多核之间的通信。

【技术特征摘要】

【专利技术属性】
技术研发人员:任博徐文强杨亮亮
申请(专利权)人:联芯科技有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1