摘要:为解决PC与FPAG的高速数据传输,通过USB实现了PC和FPGA的通信。介绍了USB接口芯片CY7C68013的基本工作原理;编写了USB固件程序和应用程序;利用从属FIFO方式,实现了数据的快速读写。测试结果表明,利用FPGA控制USB器件CY7C68013可实现高速数据传输,传输数据可靠性高。该方案完全可满足各种高速数据采集系统、移动硬盘、ATA和DSL调制解调器等接口的需要。
关键词:USB;CY7C68013;FPGA;固件;应用程序
0 引言
1994年,Compaq、Intel、Microsoft、NEC等7家世界著名的计算机和通讯公司成立了USB论坛。1995年11月正式制订了USB通用串行总线(universal serial Bus)规范。USBl.1主要应用在中低速外部设备上,它支持的传输速率有低速1.5 Mbps和全速12 Mbps。1999年初在Intel的开发者论坛大会上,介绍了USB2.0规范。最新的USB2.0支持3种速率:低速1.5 Mbps、全速12 Mbps和高速480 Mbps。这3种速率可以满足目前大部分外设接口的需要。本文介绍了目前使用较多的USB2.0控制器CY7C68013与FPGA接口的VHDL实现。本系统可扩展,完全可用于其他高速数据采集、高速数据通信系统中,可以支持宽带数字摄像设备及下一代扫描仪、打印机及存储设备等。
1 CY7C68013简介
CYPRESS半导体公司的EZ-USB FX2系列芯片是最早符合USB2.0协议的微控制器之一,以其良好的性能和独特的设计在USB接口开发领域占有重要的地位。CY7C68013是EZ-USB FX2系列芯片中的一款高性能USB2.0微控制器,它提供了全面的USB2.0外围设备解决方案。
CY7C68013将USB外围接口设备所需的各种功能集成在一个单片电路上,通过集成的USB收发器连接到USB总线的D+和D一端;串行接口引擎(SIE)进行译码、编码、错误纠正和位填充,变换USB所需的信号电平;最终,从USB接口SIE发送和接收数据。USB2.0控制器CY7C68013数据传输速率快,可支持移动硬盘、ATA、FPGA和DSL调制解调器等接口。CY7C68013主要具有如下特性:
(1)芯片内有480 Mb/s的收发器(PLL和智能SIE),包含全部USB2.O物理层(PHY);
(2)2、3、4倍增缓冲端点FIFO,以适应480 Mb/s的USB2.O传输速率;
(3)内部嵌入可运行在48 MHz频率的增强型8051内核;
(4)4个接口FIFO:它们都可以由外部和内部来提供时钟,端点FIFO与接口FIFO两者相结合可以实现缩短USB和外部逻辑电路数据传输的时间;
(5)通用可编程接口(CPIF)作为一种编码状态设备,可实现时序管理,使得CY7C68013 FIFO达到无缝连接。CY7C68013集成了很多功能,设计时无需考虑外部物理层(PHY),从而大大降低了成本,并减少了芯片间高速信号布线的困难。