基于高性能DSP从接口HPI硬件仿真平台系统的设计与实现

| 浏览次数:

摘 要 随着半导体制造技术的不断发展,相应的设计规模和复杂度飞速增长,传统的软件仿真工具已难以完全解决功能验证的问题。而且一些需要处理大量实时数据的应用(视频)也越来越多,因此我们要求能够在接近实时的条件下进行功能验证。基于仿真平台的测试已成为DSP设计流程中重要一个环节。基于仿真平台的测试可以用来改进RTL级设计代码,验证功能的正确和完整性,大大提高DSP的流片成功率。

关键词 DSP HPI 硬件仿真

中图分类号:TP3 文献标识码:A

1平台结构

整个平台按照PC-USB-FPGA-HPI的结构搭建,如图1,通过HPI接口与DSP进行通信。平台主要的器件有:Xilinx的Spartan 3S1200E FPGA、Xilinx的Platform Flash PROM XCF04s、Cypress公司FX2系列产品CY7C68013。

图1 HPI仿真平台系统框架图

PC机下发的请求通过USB控制器的GPIF产生访问波形,可以称为USB接口协议,USB接口协议完全由USB控制器处理。FPGA主要起到接口转换的作用,实现16位数据与32位数据之间的转化,工作时钟输入由CY7C68013提供。由于FPGA属于掉电易失性器件,每次断电重启后必须重新加载硬件代码才可正常工作,因此又为其配置了PROM器件(Xilinx XCF04S),FPGA从PROM中自动导入预先下载的设计文件即可正常工作,可以大大减少下载次数提高工作效率。仿真器硬件构架图如图2所示。

图2 HPI仿真器硬件构架图

在为HPI的仿真平台准备好所有的硬件资源之后,接下来的主要工作就是对协议转变器(FPGA)与仿真协同软件进行设计,并最终实现协同的仿真功能。图3体现的是仿真平台的软硬件构建。

图3 仿真平台的软硬件构建

2 FPGA协议转变器

协议转变器在整个仿真平台中可以简单的看做是一个连接两个主要接口的中间地带,其主要的控制通路与数据通路方向如图4所示。

图4 控制通路与数据通路主体构图

PC机与协议转变器(FPGA)的连接实际指的是USB接口芯片FX2的GPIF接口与FPGA之间的连接,其中16位双向数据总线FD到协议变换器内部,经过FPGA的IOBUF的端口处理,拆分成两个单向信号FD_out(输出信号)与FD_in(输入信号)。RDY0的信号值由协议转变器中产生。具体的信号连接如图5所示。

在设计中,FPGA一共被分为4个单元,如图6协议转变器FPGA框架图所示。其中译码单元(PC_Decoder)单元对PC机的操作要求进行译码,主要包括区分单字访问、自增访问,确定访问的对象、确定读/写操作以及对FX2的控制输入信号的采样。数据拆分和拼接单元(PC_Single)主要针对输入和输出的16位与32位的接口差异进行数据的拆分和拼接。批量数据处理单元(PC_Bulk_Data)设计有3个单元,及HPIC_access、HPIA_access、HPID_access。PC机的指令经过译码单元译码后,对HPIC_access、HPIA_access、HPID_access进行访问操作。RAM单元用来暂存发往DSP和返回上位机的数据。

图5 PC机与FPGA的接口连接

图6 协议转变器FPGA框架图

3 协同软件

在本设计中,协同软件主要包括固件设计、驱动程序设计和主机端口应用程序设计。如图2仿真平台的软硬件构建所示。

(1)固件设计

CYPRESS公司的EZ-USB FX2开发套件提供给用户一个固件函数库(Ezusb.lib)和固件框架(Frame work),两者均是基于KEIL C51开发的。固件函数库提供了一系列的函数来加速USB 固件程序的开发,使用时只需在程序中包含fx2.h 和fx2regs.h 两个头文件,并在项目中链接Ezusb.lib 就可以直接使用固件库中的各个函数了。在使用固件框架来进行特定的固件开发时,固件框架已经实现了初始化、重枚举、电源管理等功能。对我们而言,只需要在固件架构的预留位置处添加代码,就可以完成特定的功能。

GPIF能够装载4个控制波形,分别是单个数据读、单个数据写、连续数据读、连续数据写。“读”是指FX2从外部接口读入数据,“写”是指FX2向外部接口写出数据。所谓“连续数据读写”是指读入的数据存放在FX2的内部FIFO,或者写出的数据来自FX2的内部FIFO。图7为GPIF批量写波形。

图7 GPIF批量写波形图

(2)驱动程序设计

驱动程序是指一系列硬件设备的函数,它为连接到计算机的硬件提供了软件接口。用户应用程序可以通过驱动程序接口访问各种硬件,而不必考虑如何具体实现不同硬件的控制。Cypress公司的开发套件提供给用户一个通用USB驱动,在该设计中,不需要对程序加以修改,经过DDK编译后直接使用。

(3)主机端口应用程序设计

为有效完成HPI口的相关操作,我们一共设置了9个设备请求:

HPIC_WRITE:写HPIC寄存器;

HPIC_READ:读HPIC寄存器;

HPIA_WRITE:写HPIA寄存器;

HPIA_READ:读HPIA寄存器;

HPID_WRITE:写HPID寄存器;

HPID_READ:读HPID寄存器;

HPID_ADDR_ADD_WRITE:地址自增写HPID寄存器;

HPID_ADDR_ADD__READ:地址自增读HPID寄存器;

RESET_DSP:DSP复位。

以上几个设备请求均是通过控制传输实现的,另外,为实现大规模数据传输,我们采用批量传输的方式定义了两个函数:

①WriteBULKDataToDSPRAM( );

②ReadBULKDataFromDSPRAM( );

参考文献

[1] 杜慧敏,李宥谋,赵全良.基于Verilog的FPGA设计基础[J].西安:西安电子科技大学出版社,2006.

[2] Prakash Rashinkar, Peter Paterson,Leena Singh著,孙海平,丁健 译.系统芯片(SOC)验证方法与技术[M].电子工业出版社,2005.1.

[3] 高阁.高性能定点DSP(XDSP)UTOPIA接口的研究与设计[D].湖南:国防科技大学,2010.

推荐访问: 高性能 仿真 接口 硬件 设计

【基于高性能DSP从接口HPI硬件仿真平台系统的设计与实现】相关推荐

工作总结最新推荐

NEW
  • XX委高度重视党校的建设和发展,出台《创建全省一流州市党校(行政学院)实施方案》及系列人才培养政策,为党校人才队伍建设提供了有力的政策支撑。州委党校在省委党校的悉心指导下、州委的正确领导下,深入贯彻落

  • 为推动“不忘初心、牢记使命”主题教育常态化,树牢“清新简约、务本责实、实干兴洛”作风导向,打造忠诚干净担当、敢于善于斗争的执纪执法铁军,经县纪委常委会会议研究,决定在全县纪检监察系统开展“转变作风工作

  • 为进一步发展壮大农村集体经济,增强村级发展活力,按照中共XXX市委抓党建促乡村振兴工作领导小组《关于印发全面抓党建促乡村振兴四个工作计划的通知》要求,工作队与村“两委”结合本村实际,共同研究谋划xx村

  • 今年来,我区围绕“产城融合美丽XX”总体目标,按照“城在林中,水在城中,山水相连,林水相依”以及“城乡一体、景城一体、园城一体”的建设思路,强力推进城市基础设施建设、棚户区改造、房地产开发和城市风貌塑

  • 同志们:新冠疫情发生至今已有近三年时间。三年来,在广大干群的共同努力下,我们坚决打好疫情防控阻击战,集团公司范围内未发生一起确诊病例,疫情防控工作取得了阶段性胜利。当前国际疫情仍在扩散蔓延,国内疫情多

  • 我是毕业于XX大学的定向选调生,当初怀着奉献家乡、服务人民的初心回到XX,在市委的关心关爱下,获得了这个与青年为友的宝贵历练机会。一年感悟如下。一要对党忠诚,做政治坚定的擎旗手。习近平总书记指出,优秀

  • 同志们:今天召开这个会议,主要任务是深入学习贯彻习近平总书记重要指示批示精神,以及李克强总理批示要求,认真落实全国安全生产电视电话会议和全省、全市安全生产电视电话会议精神,研究我县安全生产和安全隐患大

  • 2022年市委政研室机关党的建设工作的总体要求是:坚持以XXX新时代中国特色社会主义思想为指导,全面贯彻党的XX届X中X会和省、市第十二次党代会精神,自觉运用党的百年奋斗历史经验,弘扬伟大建党精神,深

  • 同志们:今天,我们在这里召开市直机关基层党建示范点工作会议,一方面是对各示范点单位进行表彰授牌,另一方面是想通过这种会议交流的方式,给大家提供一个相互学习、取长补短的平台和机会。市直工委历来把创建基层

  • 新冠疫情暴发以来,学校党委坚决贯彻习近平总书记关于疫情防控工作的指示要求和党中央的决策部署,严格执行×××部、×××厅关于疫情防控的系列要求,认真落实驻地防疫部门的工作举措,继承发扬优良传统,以最高标