电子发烧友网 > 处理器/DSP > 正文

基于TMS320C6414 DSP处理器实现通用FPGA测试平台的搭建

2020年08月07日 17:07 次阅读

1 引言

随着通信系统向高速度、低功耗、低电压和多媒体、网络化、移动化方向的发展,其对电路的要求日益提高,传统的单一功能的集成电路技术已经无法满足需要。而FPGA由于其固有的特性,被日益广泛的应用于通信系统中。FPGA可以方便的修改逻辑结果,完成对系统和设备的升级,以便迅速适应市场的变化;同时,FPGA可以支持多种通信协议和接口标准,并可以随着标准和协议的演变而方便的改变。

在结束对算法的代码编写以后,为了验证设计的正确性与可靠性,通常采用逻辑分析仪进行测试,测试的流程如下:

编写模块代码-》产生需要的激励-》将所需激励变成数据文件存储到FPGA的内部RAM中-》连接逻辑分析仪进行测试。

该方法主要缺点是:

1)器件存储器容量很有限,无法满足通信系统数据量大这一要求。以802.16e MIMO 2x2无线通信系统的信道估计算法为例,存储一个下行数据帧的信道值约需要3,500Kbit,就目前高性能FPGA的存储能力而言是难以完成的。例如Xilinx公司最先进的XC2V8000型FPGA仅有3,024Kbit的存储空间。

2)对于高速率的系统,现有的数字电路测试工具(如逻辑分析仪等)无法同时存储长时间的数据。较新型的逻辑分析仪,如Tektronix公司的TLA700系列,也仅能存储2ms内的测试数据,通信系统的数据传输一般以帧为单位,为了对通信系统进行完整的测试,常常需要同时观测一帧内所有的数据,仍然以802.16e MIMO 2x2无线通信系统为例,一帧的时间长度为5ms,普通的逻辑分析仪无法满足上述无线通信系统的测试需要。

为了能够发挥FPGA处理速度快的优势同时克服其测试上存在缺陷,本文介绍了一种硬件测试平台的设计方案。该平台由DSP处理器和FPGA芯片通过通信接口连接而构成,通过控制模块可以观测算法测试的结果并且能对测试的过程进行控制。由于DSP可以及时将测试结果导入PC主机,从而解决了大数据、长时间测试困难的问题。除此,该测试平台不仅可以应用于算法的硬件测试,由于其解决了DSP与FPGA接口通信困难的问题,实现了处理器间高速率的通信,通过小的改动可以将该平台扩展,应用于通信系统的设计。

2 硬件测试平台的设计

2.1. 平台硬件结构及模块功能描述

平台的实现采用Xilinx公司的XC2V6000 FPGA芯片和TI公司的TMS320C6414 DSP处理器。底层的物理接口使用C6414的外部存储器接口(External Memory Interface,以下简称EMIF),在数据传输时采用异步工作方式。测试控制模块、接口控制模块均在FPGA中完成。DSP的直接存储器访问(Extended Direct Memory Access,以下简称EDMA)控制 器,负责EMIF接口的数据传输。DSP与PC主机的交互通过JTAG口完成。

平台的模块化设计如图1:

硬件测试平台在FPGA中处理待测算法。测试控制模块向上控制算法运行的开始、结束,向下控制何时需要导入新的测试数据、何时需将处理结果导出至DSP。接口控制模块受控于测试控制模块,完成接口的时序控制和匹配。DSP处理器负责存储测试数据和处理结果并将数据导入PC主机,同时DSP还负责向FPGA和外部扩展存储器提供无缝接口。

该硬件平台的优势在于依托PC主机海量的存储空间,可以无限制的增大测试的数据量和测试时间,使得硬件平台下算法的测试不再受器件存储大小的限制。

平台对于不同的算法具有通用性。在FPGA中,无需重写接口控制模块和测试控制模块,就可以完成针对不同算法的硬件测试。在DSP端,其对存储器件和接口时序的控制对于具体算法来说是透明的,不同的算法测试不要求DSP中的模块作任何修改。

2.2. DSP端的配置

2.2.1. EMIF接口的配置

C64x系列DSP对外部存储器件提供了无缝接口,该接口数据总线宽度为64bit,同时也提供对32bit/ 16bit/ 8bit 的读写支持。

异步读写模式

C64x异步接口时序的可编程性高,使用灵活,可以适应不同的设计需要,故平台的接口传输采用异步模式。异步模式每个读/写周期由3个阶段构成:建立时间(Setup)、触发时间(Strobe)、和保持时间(Hold)。其中建立时间是指从存储器访问周期开始到读/写选通有效之前;触发时间为读写选通信号自有效到无效的时间段;保持时间指从读/写信号无效到该次访问周期结束。该模式可稳定工作在50MHz的外部时钟下,其最大的数据速率为1.6Gbit/s。下图给出了一个典型写操作时序的例子:

图中,当触发时间开始时,异步写使能在触发时间开始时有效,在保持时间开始时无效,在有效期内完成一次异步写操作。

控制寄存器配置[4]

异步模式下,C64x EMIF接口时序由全局控制寄存器(Global Control Register)GBLCTL和一组存储器映射的寄存器CExCTL进行控制与维护,详细的配置情况如下表:

2.2.2. EDMA控制器的使用

在系统中使用硬件中断启动DSP的EDMA,并由EDMA控制器控制EMIF接口接收或发送数据,就可以实现FPGA与EMIF接口间的数据传输。

EDMA控制寄存器设置

数据传输开始前必须完成一系列控制寄存器的设置。首先是事件寄存器ER(Event Register),通过对某些比特位置“0” ,该寄存器负责捕获相应比特位代表的中断事件;进一步设置事件使能寄存器EER(Event Enable Register),控制每一事件的使能/禁止,设置方法与ER相同。

通道参数RAM配置

对于每一条通道,为了使数据符合设计的传输格式,必须对该通道的参数RAM写入一定的控制字。

2.2.3. DSP与主机的通信方式

平台使用DSP开发工具CCS(Code Composer Studio)集成的数据导入/导出功能实现DSP与PC主机间的数据传输。

在一次测试开始前或结束后,需要由PC主机导入新的测试数据或向主机导出处理结果,而数据导入/导出功能则是由CCS内部的探针(Probe)实现的。通过在代码中插入探针,并将数据文件与相应探针关联,CPU运行至探针所在代码处便会通过JTAG控制器自动完成数据IO的功能。使用DSP的JTAG接口与PC主机通信,能在测试过程中及时的更新输入数据或将运算结果,从而解决了传统方法无法完成大数据量、长时间硬件测试的问题。

2.3. FPGA端的配置

FPGA对于测试过程的控制可以表示为一*状态的状态机,其工作原理可以表述为以下过程:

① 等待状态:FPGA发送GPIO中断,告知DSP端将测试数据导入;

② 接收状态:在此状态下,FPGA接收来自EMIF接口的测试数据,并且通过计数器判断数据是否接收完毕,如完毕,转入算法处理状态,否则重复接收;

③ 发送状态:类似接收状态,FPGA向DSP发送处理结果,如完毕转入下一等待状态,否则返回发送状态;

④ 算法处理状态:此状态下,FPGA处理待测算法,由于收发状态的转移均有FPGA控制,故此状态不可能被新的收发状态打断;处理完毕后,转入发送状态;

状态转移图如下:

图3 FPGA控制模块状态转移图

3 测试平台的通用性

由于实现了DSP与FPGA间高速率接口,并且实现了处理器的协同工作,该平台在通信系统的设计中也有实用价值。

如前述802.16e MIMO 2x2无线通信系统中,使用上述平台的硬件结构实现接收端的功能,算法层的结构模型如图4 :

图4 802.16e MIMO 2x2无线通信系统接收端结构图

4 结语

本文介绍的硬件测试平台实现了DSP和FPGA的交互,既满足算法对平台高实时性、高速率的要求,又能完成通信系统大数据量测试的要求,构建了可应用于测试各种FPGA算法的硬件测试环境。同时,在该平台DSP端加入信号处理算法,可将平台扩展为FPGA、DSP协同工作的信号处理系统。

责任编辑:gt

下载发烧友APP

打造属于您的人脉电子圈

关注电子发烧友微信

有趣有料的资讯及技术干货

关注发烧友课堂

锁定最新课程活动及技术直播

电子发烧友观察

一线报道 · 深度观察 · 最新资讯
收藏 人收藏
分享:

评论

相关推荐

写好状态机--从2019年全国FPGA竞赛谈Verilog编码技巧

理解Verilog编码技巧掌握FPGA中状态机的写法掌握非重叠序列检测代器Verilog代码编写
发烧友学院发表于 2020-04-21 00:00 21068次阅读
写好状态机--从2019年全国FPGA竞赛谈Verilog编码技巧

基于DSP器件TMS320C32和CPLD芯片实...

本系统采用美国TI 公司生产的浮点DSP器件TMS320C32作为底层主处理器件,实现对A/D采集得....
发表于 2020-08-07 17:35 0次阅读
基于DSP器件TMS320C32和CPLD芯片实...

采用FPGA芯片EP1C12Q240C8实现直接...

自1971年,美国学者J.Tierney等人撰写的“A Digital Frequency Synt....
发表于 2020-08-07 17:26 2次阅读
采用FPGA芯片EP1C12Q240C8实现直接...

基于FPGA器件和VHDL语言的三态电路应用实现...

现场可编程门阵列(FPGA)的出现是超大规模集成电路(VLSI)技术和计算机辅助设计(CAD)技术发....
发表于 2020-08-07 17:14 9次阅读
基于FPGA器件和VHDL语言的三态电路应用实现...

基于可编程逻辑器件和VHDL语言实现信号源的方案...

在高速数据采集系统中,信号源作为一种校验设备,需要及时、有效地向采集设备提供高频信号,用于检验数据采....
发表于 2020-08-07 17:02 14次阅读
基于可编程逻辑器件和VHDL语言实现信号源的方案...

通过利用CPLD/FPGA器件实现数字同步复接系...

在数字通信中,为了扩大传输容量和提高传输效率,通常需要将若干个低速数字码流按一定格式合并成一个高速数....
发表于 2020-08-07 16:55 22次阅读
通过利用CPLD/FPGA器件实现数字同步复接系...

基于现场可编程门阵列(FPGA)的硬件加速器件的...

Achronix先前宣布了其用于Speedcore IP的、现已可提供客户使用的Gen4 FPGA架....
发表于 2020-08-07 15:41 11次阅读
基于现场可编程门阵列(FPGA)的硬件加速器件的...

紫光同创推出了Logos-2系列高性价比FPGA...

芯片是信息技术的核心基础。随着大数据、人工智能、工业互联网等技术成为电子信息产业新热点之际,作为通用....
发表于 2020-08-07 15:30 14次阅读
紫光同创推出了Logos-2系列高性价比FPGA...

莱迪思的FPGA提供低功耗协处理,支持sub-L...

低功耗可编程器件的领先供应商莱迪思半导体公司宣布,安霸公司(Ambarella)(NASDAQ:AM....
发表于 2020-08-07 15:09 18次阅读
莱迪思的FPGA提供低功耗协处理,支持sub-L...

基于DPWM发生器实现模数转换器的设计应用方案

这里采用的转换器,其基本的工作原理是通过DP-WM模块产生脉宽信号(DPWM)。该信号通过简单的RC....
发表于 2020-08-07 14:53 23次阅读
基于DPWM发生器实现模数转换器的设计应用方案

无人机技术的多路设备数据传输系统解决方案

民用无人机系统集成时,除了飞控需要与地面站通信外,部分机载设备也需要与地面系统的设备进行通信。如采用....
发表于 2020-08-07 14:33 49次阅读
无人机技术的多路设备数据传输系统解决方案

英特尔傲腾持久内存进一步加速AI与数据分析,加速...

除了CPU,英特尔还提供了GPU、FPGA、专用AI芯片等丰富的硬件产品,并与业界生态伙伴一起开发软....
发表于 2020-08-07 11:47 63次阅读
英特尔傲腾持久内存进一步加速AI与数据分析,加速...

关于ARM 架构处理器的产品特点介绍

ARM 高端 CPU,强大边缘计算能力,有效分担云端压力;Linux 系统,集成 Python 开发....
发表于 2020-08-07 10:45 138次阅读
关于ARM 架构处理器的产品特点介绍

采用处理器实现便携式振动测试分析仪的改进设计

因此采用AD7864的A/D转换结束信号BUSY的下降沿中断CPU,然后由S3C2410直接读取A/....
发表于 2020-08-07 10:13 76次阅读
采用处理器实现便携式振动测试分析仪的改进设计

基于FPGA器件EP1C3和接口芯片CP2102...

传统的逻辑分析仪体积庞大、价格昂贵、通道数目有限,并且在数据采集、传输、存储、显示等方面存在诸多限制....
发表于 2020-08-07 10:02 42次阅读
基于FPGA器件EP1C3和接口芯片CP2102...

exynos880是什么处理器相当于骁龙多少

Exynos880是三星处理器,而这也是继Exynos980和990之后的第三款集成5G基带的三星移....
发表于 2020-08-07 09:49 501次阅读
exynos880是什么处理器相当于骁龙多少

TWLA500逻辑分析仪的功能测试及应用范围分析

FAE:现场技术支持。给客户提供你所销售产品应用上的技术支持,并对客户提出的质量问题进行处理。FAE....
发表于 2020-08-07 08:37 172次阅读
TWLA500逻辑分析仪的功能测试及应用范围分析

传感器节点控制器助力连网传感器

引言 今天的便携式设备通过持续的活动监测和情境感知来了解周围环境。为了实现这个功能,设备集成了越来越多的传感器...
发表于 2020-08-07 08:02 0次阅读
传感器节点控制器助力连网传感器

嵌入式屏幕色彩开发

还记得此前的“蓝黑白金裙”之争吗?这个分歧源于我们的眼中用来分辨颜色的锥状细胞的差异,而人机界面中“蓝黑白金裙...
发表于 2020-08-07 06:06 0次阅读
嵌入式屏幕色彩开发

在FPGA中实现嵌入式逻辑分析仪的系统开发与调试...

嵌入式逻辑分析仪Signal Tap II在对系统硬件模块进行监测时,是将测得的样本数据暂存于目标器....
发表于 2020-08-06 17:53 134次阅读
在FPGA中实现嵌入式逻辑分析仪的系统开发与调试...

基于Altera的FPGA器件完整设计流程以及开...

近年来,随着微电子学的迅速发展以及SoC(System on Chip,片上系统)技术在设计领域引起....
发表于 2020-08-06 17:50 183次阅读
基于Altera的FPGA器件完整设计流程以及开...

基于FPGA芯片为核心实现通用实验系统的软硬件设...

随着FPGA技术的不断发展和EDA工具软件的完善,在FPGA芯片上实现的各种复杂算法和构建SOPC系....
发表于 2020-08-06 17:46 96次阅读
基于FPGA芯片为核心实现通用实验系统的软硬件设...

采用Cyclone系列EP1C6Q240C8 F...

振动模拟器的原理框图如图1所示,图中由ADC模块分别接收调频和调幅信号给FPGA模块,FPGA模块将....
发表于 2020-08-06 17:42 108次阅读
采用Cyclone系列EP1C6Q240C8 F...

利用现场可编程门阵列实现DTMF信号接收及判别电...

要设计一个能够完成DTMF信号的接收及判别电路系统,可以考虑的方案有很多,可以选择利用MCU编程实现....
发表于 2020-08-06 17:37 71次阅读
利用现场可编程门阵列实现DTMF信号接收及判别电...

采用FPGA器件控制ADC和数据传输实现数据采集...

数据采集系统是计算机测控系统中不可或缺的组成部分,是影响测控系统的精度等性能指标的关键因素之一。常用....
发表于 2020-08-06 17:22 97次阅读
采用FPGA器件控制ADC和数据传输实现数据采集...

基于FPGA器件XC2VP20-FF1152实现...

科学级CCD相机(Scientific grade CCD camera)是一种具有低噪声、高灵敏度....
发表于 2020-08-06 17:21 46次阅读
基于FPGA器件XC2VP20-FF1152实现...

基于现场可编程门阵列技术设计时钟分配网络的应用方...

自产生到现在,现场可编程门阵列(FPGA)以其独特的优点被成功应用在工业控制、数据通信、计算机硬件等....
发表于 2020-08-06 17:17 54次阅读
基于现场可编程门阵列技术设计时钟分配网络的应用方...

基于Altera的FPGA器件和VHDL语言实现...

传统的数据采集系统,通常采用单片机或DSP作为主要控制模块,控制ADC、存储器和其他外围电路的工作。....
发表于 2020-08-06 17:02 32次阅读
基于Altera的FPGA器件和VHDL语言实现...

对Xilinx Cyclone系列EP2C8Q2...

在验证和调试系统时,传统上是把信号线引到I/O引脚,然后采用示波器、逻辑分析仪或总线分析仪进行测量和....
发表于 2020-08-06 17:00 96次阅读
对Xilinx Cyclone系列EP2C8Q2...

采用Altera的FPGA器件实现电池管理系统的...

便携式设备的便携性是与电池的发展息息相关的,从最初的铅酸电池、镍镉(Ni-Cd)电池发展到镍氢(Ni....
发表于 2020-08-06 16:48 76次阅读
采用Altera的FPGA器件实现电池管理系统的...

AMD用于索尼PS5等下一代游戏主机的处理器已开...

封装和测试,是芯片生产的最后两步,在完成这一环节之后,芯片就将用于相关终端产品的组装。索尼PS5所需....
发表于 2020-08-06 16:45 382次阅读
AMD用于索尼PS5等下一代游戏主机的处理器已开...

基于FPGA EPlS30芯片和AD变换器实现导...

INS/GPS组合导航系统在军事领域和民用方面的运动载体中得到了广泛应用。INS是组合导航系统中的核....
发表于 2020-08-06 16:20 46次阅读
基于FPGA EPlS30芯片和AD变换器实现导...

基于可编程逻辑器件实现数字下变频系统的设计

数字下变频DDC(digital down lonvwrsionl作为系统前端A/D转换器与后端通用....
发表于 2020-08-06 15:31 83次阅读
基于可编程逻辑器件实现数字下变频系统的设计

小米投资“芯来科技”促进国产RISC-V架构产品...

近年来,包括北京、上海、深圳、武汉等地在内的地方政府,都积极推动RISC-V成为国产芯片架构发展标准....
发表于 2020-08-06 14:26 234次阅读
小米投资“芯来科技”促进国产RISC-V架构产品...

基于TDSDM642EVM数字处理芯片实现实时说...

说话人识别又称声纹识别,是通过说话人的声音特征进行身份认证的一种生物特征识别技术。说话人识别经过60....
发表于 2020-08-06 13:17 60次阅读
基于TDSDM642EVM数字处理芯片实现实时说...

ADI的Blackfin DSP处理器BF70X...

ADI公布了Blackfin DSP处理器BF70X,该DSP处理器是BF51X系列的升级,采用了最....
发表于 2020-08-06 12:02 87次阅读
ADI的Blackfin DSP处理器BF70X...

基于TMS320F2812DSP和复杂可编程逻辑...

随着计算机技术、信号检测技术及微电子技术的迅猛发展,对断路器控制单元的要求也不断提高,现代智能控制单....
发表于 2020-08-06 11:49 50次阅读
基于TMS320F2812DSP和复杂可编程逻辑...

移动设备广泛应用在各种嵌入式系统

MIPI协会传感器工作小组主席Ken Foust表示:“I3C在I2C规格之上建立了功能超集(sup....
发表于 2020-08-06 11:07 145次阅读
移动设备广泛应用在各种嵌入式系统

ARM Cortex M4低功耗处理器可用以开发...

除了常见的运动追踪惯性传感器,该开发工具也包含心律传感器以及环境传感器;小尺寸版本的开发板面积为31....
发表于 2020-08-06 11:04 96次阅读
ARM Cortex M4低功耗处理器可用以开发...

FIS1100 IMU采用内置AttitudeE...

全球领先的高性能功率半导体解决方案供应商Fairchild 今日推出 FIS1100 六轴 MEMS....
发表于 2020-08-06 10:53 49次阅读
FIS1100 IMU采用内置AttitudeE...

Center研究人所开发最新可穿戴设备

这款智能T恤是以平台式架构设计,能让OEM厂添加不同功能的传感器,例如能追踪呼吸频率或是身体脱水的情....
发表于 2020-08-06 10:47 116次阅读
Center研究人所开发最新可穿戴设备

多旋翼无人机中红外热成像系统的设计组成部分

太阳电池的等效电路图。太阳电池主要是由p-n 结构成的,p-n 结具有单向导通性,类似于一个二极管,....
发表于 2020-08-06 10:26 85次阅读
多旋翼无人机中红外热成像系统的设计组成部分

FPGA IO和GND之间是否存在低阻抗路径?

嗨专家, 我有一个名为WAKEUP_N的信号,它有一个单独的上拉至3.3V辅助电压,总是3.3V,无论FPGA上电还是...
发表于 2020-08-06 10:07 0次阅读
FPGA IO和GND之间是否存在低阻抗路径?

如何用xc7z045 FPGA取代xc7z020 FPGA?

你好, 我目前正在修改电路设计,用xc7z045 FPGA取代xc7z020 FPGA。 目前的设计使用与Zedboard相同的电源排...
发表于 2020-08-06 10:04 0次阅读
如何用xc7z045 FPGA取代xc7z020 FPGA?

工业园区采用无线网桥实现数据组网传输的应用方案

根据客户提出的信息,目前园区内有接近30栋楼的数据需要通过无线传输实现管理中心和前端各个终端大楼的数....
发表于 2020-08-06 09:57 74次阅读
工业园区采用无线网桥实现数据组网传输的应用方案

德国XMG公司称将在2020年第三季度面临AMD...

德国XMG公司表示,订购锐龙7 4800H级笔记本电脑的客户可以选择用锐龙5 4600G进行更换,并....
发表于 2020-08-06 09:50 385次阅读
德国XMG公司称将在2020年第三季度面临AMD...

AMD将正式推出全新的Zen 3架构的处理器

AMD的Zen架构CPU已经推出了有三代,包括Zen、Zen+以及Zen 2,而在今年年末,AMD也....
发表于 2020-08-06 09:17 410次阅读
AMD将正式推出全新的Zen 3架构的处理器

采用FPGA和DSP技术相结合实现图像采集和处理...

随着科学技术的发展和社会发展应用需求,人们对视频图像采集处理高清化,传输实时化和控制智能化的要求越来....
发表于 2020-08-06 09:08 127次阅读
采用FPGA和DSP技术相结合实现图像采集和处理...

基于TMS320DM642多媒体处理器实现高速图...

图像采集的运用非常广泛,经过几十年的发展,采集技术有了很大程度的进步。目前的专业采集设备集成度更高,....
发表于 2020-08-06 08:50 105次阅读
基于TMS320DM642多媒体处理器实现高速图...

请问fpga晶振50Mhz电压幅值多少?

fpga晶振50Mhz电压幅值多少
发表于 2020-08-05 22:59 0次阅读
请问fpga晶振50Mhz电压幅值多少?

fpga--矩阵键盘实现某些按键独特功能

矩阵键盘原来是按一下输出一个值,现在想把其中几个值改为一直按一直输出而不是一直按着只输出一个值 ...
发表于 2020-08-05 10:30 141次阅读
fpga--矩阵键盘实现某些按键独特功能

FPGA如何获得外部输入信号?

你好, 我们想使用LCD引脚,在FPGA中获得外部输入信号。 我们在上阅读了讨论,我们使用vivado逻辑进行了一些...
发表于 2020-08-05 07:12 0次阅读
FPGA如何获得外部输入信号?

【每周FPGA案例】至简设计系列_串口回环工程

至简设计系列_串口回环工程 --作者:小黑同学 本文为明德扬原创及录用文章,转载请注明出处! 1.1 总体设计1.1.1 概...
发表于 2020-08-04 20:31 182次阅读
【每周FPGA案例】至简设计系列_串口回环工程

请问zynq 怎么实现PS与PL数据交互,然后通过UART串口打印出来?

请问zynq 怎么实现PS与PL数据交互,然后通过UART串口打印出来?   前辈们做过的指导我一下。 ...
发表于 2020-08-03 15:53 134次阅读
请问zynq 怎么实现PS与PL数据交互,然后通过UART串口打印出来?

初学者烧入DSP的LED灯闪烁程序,只亮不闪烁

主程序:/* * main.c * *  Created on: 2018-3-21 *      Author: Adminis...
发表于 2020-08-02 22:46 101次阅读
初学者烧入DSP的LED灯闪烁程序,只亮不闪烁