基于FPGA和USB2.0协议的通用数据传输设计

2017-03-23 78 0

以USB2.0控制器CY7C68013A为接口,设计并实现了上位机与FPGA中FIFO与寄存器的读写,经测试数据传输速率达47MB/s,接近USB2.0控制芯片最高速率48MB/s。FPGA具高度灵活性与强大数据处理能力,但无直接与上位机通信的接口,故通过USB2.0解决数据传输。

系统为USB主从结构,上位机应用程序通过API调用驱动程序,驱动USB控制器向CY7C68013A发数据,由其SIE模块解析并依固件通过GPIF向FPGA发时序读写数据。CY7C68013A集成增强型8051、SIE与Slave FIFOs,采用GPIF模式编程实现传输。FPGA接口实现对寄存器读/写与FIFO读/写,GPIF对FPGA的控制信号CTL三位区分7种状态。固件核心为GPIF设计,工作在48MHz、16位数据线、两周期完成一次FIFO读写,采用“量子FIFO”结构解决带宽问题,并通过优化状态机跳转使两时钟周期完成一次读写、保证48MB/s速度。驱动与应用程序:Cypress提供Windows驱动与C++函数库,封装读/写寄存器、读/写FIFO四个函数成DLL,供MATLAB(loadlibrary加载)及其他平台调用。测试在CY7C68013A+XILINX ARTIX 7板上进行,寄存器/FIFO读写完整正确,FIFO读写实测47MB/s。

图像 012.png

图像 013.png

图像 014.png

图像 015.png

相关文章

一款常见车载逆变器工作原理及电路图
具有摇头功能的调速电风扇电动机接线图
调速电风扇电动机的连接图
双绕组抽头调速电动机
L型绕组抽头调速电动机
T型绕组抽头调速电动机

发布评论