基于CYPRESS的USB3.0总线技术开发应用

2014-03-10 16:06 来源:电子信息网 作者:铃铛

5-0


测试数据模块

当计算机向FPGA发出读命令时,FPGA产生测试数据。32位数据,高16位为0,低16位循环计数,发送一个周期后,自动清零。

批量(bulk)传输时的最大包大小为1024字节,因此测试数据在0~255之间循环变化。

产生测试数据后,数据传输流程为DATA-》

DDR2-》FIFO-》CYUSB3014-》PC机,实现了将测试数据上传到PC机的功能。

DDR2接口模块

该部分直接负责外围DDR2接口,利用FPGA的DDRII SDRAM IP核实现,按照DDR2芯片MT47H64M16HR来设定控制器的时序参数,控制器根据这些参数值生成满足MT47H64M16HR时序的接口,再由DDR2模块进行读写控制。

测试结果及分析

写入数据测试

当应用程序向USB发出写命令时,FPGA产生测试数据并传给FX3以便上传给PC机。

采集1000MB的数据进行记录,以便在MATLAB中进行分析。

CYPRESS官方开发包中自带了streamer软件进行速度测试。在Endpoint选项中选择Bulk in endpoint端点(Bulk Out对应的是PC机向FPGA写数据)。由于批量传输时的最大包为1024字节,因此需要将Packets perXfer设置为256或以下,Xfers to Queue置为4.不同的USB3.0控制器,速度的测试结果会有所不同。如图7所示是在64位WIN7系统下的测试及分析结果。如图7(a)中所示,经过一段时间的速度测试,23704个成功包,0失败,往P C中写入数据的速度能够达到178800KB/S,即1.43Gbps.为了验证数据的正确性,在MATLAB中对采集的8.0Gb数据进行分析。由于测试数据是0~255之间循环变化,因此可以根据每一包数据的数据差是否为1来判断数据的正确性,当不为1时报错。

< 1 2 3 4 5 > 
总线 Cypress

相关阅读

暂无数据

一周热门