一种多DSP间飞越传输验证平台的实现

2022-03-24 09:23:07 | 浏览次数:

摘要:介绍了飞越传输在多DSP系统中的应用,提出一种软硬件协同验证平台对多DSP系统中的飞越传输功能进行验证。该协同验证平台能够在设计早期发现系统中的硬件错误和软件错误,提高验证效率。在实际应用中该协同验证平台工作稳定,高效准确地完成了设计验证。

关键词:多DSP;软硬件协同验证;飞越传输

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)18-4139-04

A Verification Platform for Flyby Transfer in Multi-DSP System

LIU Guan-nan,HUANG Guang-hong

(CETC No.38 Research Institute, Hefei 230031, China)

Abstract:The function of flyby transfer in multi-DSP system is introduced, and a software-hardware co-verification platform is proposed in this paper. This verification platform can detect both the hardware errors and software errors in the prophase design, and is proved efficient in the practical application.

Key words:Multi-DSP; Co-verification; Flyby transfer

现代数字技术的发展对运算速率、通信实时性、数据传输速率有更高的要求[1],以单个DSP构建的数字信号处理系统已经难以满足应用需求,需要将多个DSP组成并行数据处理系统进行应用。特别是在雷达、视频监控等处理系统中,需要存储和传输大量的实时数据[2],飞越传输成为多DSP处理系统中传输大批量数据的重要方式[3]。

本文中的多DSP系统采用4片DSP构成,每片DSP都有独立的DDR2 SDRAM,系统中每两片DSP之间采用飞越传输来实现大批量数据的共享。文章介绍一种软硬件协同验证平台的设计方法,可实现对多DSP间通信协议及数据传输功能的验证,并能自动比较验证结果,给出结果报告

1 验证平台结构

1.1 软硬件协同验证系统

多DSP系统结构复杂,DSP之间的数据通信及软件控制需要协调工作才能保证整个系统正确运行。软硬件协同验证平台[4][5][6]可以通过一个接口,让软件验证器和硬件验证器协同工作,模拟多DSP系统实际的工作情况。软硬件协同验证可以在设计的早期发现系统功能、软硬件划分、软硬件之间的接口以及设计中的其他问题,避免后期系统集成时出现软硬件交互错误,能够极大提高仿真验证的效率,减少系统设计中出现的错误和设计返工造成的损失。

软硬件协同验证平台的组成部分包括:硬件模拟内核、指令集模拟器(Instruction Set Simulation,ISS)、System C模型、软硬件通信接口、结果比较器、调试接口,如图1所示。硬件模拟内核包括RTL模型和Testcase生成器,RTL模型是DSP的RTL级建模,Testcase生成器产生多DSP系统的初始化程序、运行指令、配置参数。System C模型是多DSP系统的行为级建模。硬件验证平台与软件验证平台之间的通信采用基于TCP/IP协议的Socket接口技术。硬件验证平台产生的Testcase通过Socket接口送给软件验证平台的ISS进行编译、链接,转换成DSP能够识别的二进制文件,再分别送给RTL模型和System C模型进行仿真,仿真的结果送到结果比较器中进行自动比较。对于结果异常的仿真,可以通过软件调试器和波形分析器对软件程序和硬件设计进行调试,定位异常原因是软件程序错误还是硬件设计错误。

1.2 硬件验证平台结构

1.2.1 DSP间的级联方式及外设接口

本文中的多DSP系统由4片DSP组成,结构如图2所示,每片DSP都有4个全双工的Link通信端口,并外接一个独立的DDR2 SDRAM存储器,系统中的DSP之间通过Link端口相互连接,DSP间的通信和数据传输由Link口实现,每片DSP外挂的DDR2 SDRAM都可以通过飞越传输与其它DSP实现数据共享。多DSP系统的初始化程序通过并口从外部加载。

图2 DSP级连结构图

1.2.2 多DSP系统的初始化

多DSP系统工作时,要先从外部FLASH加载引导程序,外部FLASH中存有加载核、应用程序的程序段和数据段。多DSP系统加载结构如图3所示,FLASH通过并口与其中一个DSP连接,该DSP定义为主片(DSP1),其余的DSP定义为从片(DSP2、DSP3、DSP4)。主片的程序和数据段通过并口加载,从片的加载程序通过与主片相连的链路口进行加载。程序加载过程如图4所示,系统复位后,主片先通过并口从外部FLASH中导入主片加载核,然后主片再通过并口将DSP2的加载核导入主片内存中,并通过link口将DSP2的加载核发送给DSP2 ,主片通过相同的方式完成对DSP3、DSP4的加载核传输。从片加载核传输结束后,主片依次从外部FLASH中读入从片DSP2~DSP4的应用程序,并通过Link口传输给从片,完成3个从片的初始化,之后主片才从FLASH中读入主片应用程序,完成整个多DSP系统的初始化。

图3 程序加载结构示意图

1.2.3 DSP间的飞越传输

多DSP系统中的DSP都有一个独立的DDR2 SDRAM,DDR2存储容量大,可以在高频率下实现双倍数据率传输,能够满足数字信号处理系统需要的大数据量存储及高速率数据传输的要求。DDR2中的数据可以通过飞越传输送给其它的DSP使用,实现多DSP之间的资源共享,提高整体系统的运行效率。

文中的DSP在DDR2接口和链路口之间设计了飞越传输的DMA通道,DDR2接口所连接的DDR2 SDRAM中的数据,可以不经过DSP内核,直接通过链路口的发送端发送出去;或者链路口接收端接收到的数据可以不通过DSP内核,直接经过DDR2接口存储到DDR2 SDRAM中,数据传输路径如图5所示(以DSP1和DSP2之间的飞越传输为例)。在测试中,飞越传输的传输起始地址、目标起始地址、步进长度、传输长度等可以在独立的配置文件中进行设置,实现不同的飞越传输模式。飞越传输的波形如图6所示。通过飞越传输,不同的DSP之间就能间接地共享DDR2外存,达到多DSP耦合的目的。

图6 飞越传输波形图

1.3 软件验证平台结构

软件验证平台主要包括指令集仿真器(ISS)和System C模型。软件验证平台主要功能为:实现多DSP系统的行为级建模、监测软硬件接口交互信号、协调软硬件平台工作、记录并比较结果。硬件平台与软件平台之间采用收/发请求和确认的方式进行交互,通过请求及应答信号协调软、硬件平台之间的工作。系统运行后,硬件平台产生的Testcase需要送到软件平台进行编译、链接,产生DSP能够识别的格式文件。验证结束后,比较器分别从软件/硬件结果目录中读取结果文件进行比较,产生比较报告。测试流程如图7所示。

2 系统运行与测试

整个软硬件协同验证平台在Linux环境下运行,硬件验证平台使用Synopsys公司的VCS工具,软件验证平台使用高级编程语言C++编写。

在测试时,先对发起飞越传输操作的DSP的内存进行初始化,写入要传输的数据,随后发起DMA对DDR2的写操作,将数据存入DDR2中,然后依次发起对其他三片DSP的飞越传输,将数据传给其他三片DSP的DDR2。整个测试过程分解为:对内存的初始化操作、DMA对DDR2的读/写操作,Link口的数据收/发操作。每个操作都有相关的配置寄存器控制其具体工作方式。通过配置DMA相关参数,可以实现DMA一维、二维传输模式测试,以及DMA处理bank仲裁和中断服务程序正确性测试;通过配置DDR2相关参数,可以实现DDR2连续读写、跳跃读写,以及自动刷新时中断传输并自动恢复传输过程中数据传输连贯性及正确性测试;通过配置Link口相关参数,可以测试Link口读写以及数据、时钟同步功能正确性。在调试时,根据出现的错误信息,主要针对软硬件接口交互信号、DMA与DDR2接口传输协议进行修改和完善。

结果显示,该验证平台中软件与硬件平台能够稳定地进行协同工作,DSP之间可以通过飞越传输正确快速地进行数据共享,验证结果可以自动进行比较,提高了验证效率。

3 结束语

多DSP并行处理系统能够快速高效地进行信息处理,飞越传输可以让DSP之间共享大量数据,提高了多DSP系统的处理能力。多DSP系统运行的正确性与稳定性需要进行充分验证,该文设计的软硬件协同验证平台能够很好地模拟多DSP系统实际的工作方式,可以尽早发现系统软件与硬件在设计上的缺陷以及软硬件交互设计中的缺陷,通过参数配置,可以对系统间的飞越传输模式进行完备测试,并能自动比较结果,极大地提高仿真验证的效率。

参考文献:

[1] 李蛟,杨进,邱兆坤,基于ADSP2TS201S的多DSP并行数据处理系统设计[J].现代电子技术,2010,19(15):42-46.

[2] 张华,胡修林,基于CPCI9656的高速实时采集存储系统[J].计算机应用,2010,30(11):3130-3134.

[3] 刘书明,罗勇江.ADSP TS201XS系列 DSP原理与应用设计[M].北京:电子工业出版社,2007.

[4] Rashinkar P,Paterson P,Singh L. System on a Chip Verification Methodology and Techniques[M]. America Cadence Design Systems,Inc,2001.

[5] 辛强.一种基于ISS的软硬件协同验证环境[J]. 现代电子技术,2007,31(8):151-153.

[6] 张齐,曹阳,李栋娜.基于SystemC的SoC行为级软硬件协同设计[J].计算机工程,2005,31(19):217-219.

推荐访问: 飞越 传输 验证 平台 DSP