微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > 基于FPGA的USB3.0 HUB设计方案

基于FPGA的USB3.0 HUB设计方案

时间:08-02 来源:电子技术设计 点击:

模块也会轮询地从EM_A模块和EM_B模块接受数据。而在以前的USB2.0的模式下,数据位宽只有8bit,全速的带宽为480Mbit/s,所以只需要1个AES就可以。

  

  图5 AES算法加密原理图

  2.4 ROUTING模块

  ROUTING模块即路由逻辑模块,它的作用是根据连接到下行端口设备的速度来决定将下行端口连接到中继模块还是连接到TT模块。由于在USB3.0HUB的上行端口中的速度是高速的,而下行端口则不确定为高速、全速或者低速,所以当下行端口设备的速度为高速时,ROUTING模块连接到中继模块,如果下行端口设备的速度为全速或者低速时就连接到TT模块。

  2.5 Repeater中继模块

  集线器中继模块在HUB的数据转发中起到建立和拆除上行端口和下行端口之间的连接,并且处理集线器的挂起和唤醒的作用。中继器把上行端口的数据发送到下行端口,把下行端口的数据发送到上行端口,并且要用本地时钟来从端口上发送和接受数据。它以数据包为单位控制端口的建立和连接以及HUB的唤醒和挂起。如图6所示为Repeater的连接状态机。

  

  图6 Repeater的连接状态机

  2.6 PHY模块

  PHY模型就是通常所说的USB物理收发器模型,它的作用是实现数据的串并转换。因为在上行端口是并行数据,而在面向设备和电缆中的下行端口是串行数据。

  2.7 TT处理转换器

  TT模块的作用是完成传输事务转发和速度的匹配。当上行端口在高速环境下运行而下行端口在全速或者低速下运行时,TT处理转换器就是将高速事务转换成低速事务。由于要满足速度的匹配,因此TT处理器必须采用缓存的方式来存储,在缓存的上行端口是一个高速处理器,用来处理高速数据的收发;缓存的下行端口是全速和低速处理器,用来处理全/低速数据的接受和发送。

  3. FPGA仿真与验证

  为了更好地完成仿真和验证,采用ModelsimSE和Navos公司的Debussy软件。首先搭建仿真环境,包括编译测试文件、仿真调用文件、引导文件、宏定义文件以及激励文件。首先将C语言的驱动程序在Linux环境下转换为二进制的kvout激励文件,把二进制的kvout文件存储在外挂的Flash中然后再存储到内置的RAM中,使其成为发出指令的源头;同时USBDevice的行为级模型也会装载部分命令以达到仿真的目的。如图7所示为USB3.0HUB高速数据批量传输仿真结果。

  

  图7 USB3.0HUB高速数据批量传输仿真(截图)

  图中数据包的总大小为4096byte,rst_n为系统复位信号,clk30为主机端12M时钟,pci_clk为本地时钟,cpu_datao是从主机发送出的数据,utm0_data,utm1_data,utm2_data,utm3_data分别为经过USB3.0HUB扩展后的4路高速信号,Utm_rxready,utm_rxvalid,utm_rxactive分别为端口的控制信号。

  为了加强整个设计的可靠性,必须进行FPGA验证,FPGA验证选择的是Altera的StratixIIS180开发板,采用QuartusII将RTL级的verilog代码进行变异并且综合成网表,然后通过USB-blaster下载线下载到FPGA测试版中,另外激励文件是在Linux环境下编译产生的,并且通过EJTAG下载到测试版中。把激励文件下载到FPGA板子中后,把HUB的上行端口连接到USB的主机,此时如果主机检查出有USB HUB连接,会产生1个复位信号;在HUB复位后,USB主机向USB Device发送令牌包,并且对HUB进行枚举,主机识别出该HUB;当主机对USB3.0 HUB成功枚举后按照USB协议进行数据传输。

  在传输速率上,可以通过USB3.0 HUB传输1个比较大的文件,并且用ATTO DISK BENCHMARK软件来测试其读写速度,通过ATTO可以显示出读取数据可以提高到1088Mbit/s,写入速度可以达到840Mbit/s(USB2.0 HUB的读写速度分别为240Mbit/s和184Mbit/s);很显然这个读写速度比USB2.0的提高了5~6倍。当然由于软件和硬件的各种原因,这个实际的传输速度离其理论最大值5G bit/s有一定的差距,但已基本实现其高速传输的功能。

  从verilog的功能仿真、时序仿真和FPGA验证表明,USB3.0 HUB基本实现了高速数据的传输,达到了预期的效果。

  4. 总结

USB及HUB接口是目前计算机以及微控制器中最常用的通用高速接口,它可以连接串口、U盘、音频、视频、手机、相机等绝大多数的外设设备。USB3.0正在以其高速度、高性能、高可靠性、低成本等特点逐渐代替更多的USB2.0产品,成为通信电子市场的主要接口。本文中设计的USB3.0 HUB实现了多媒体数据的高速同步及时传输;更佳的电源管理功能以及支持AES加密解密等功能,这些都将促使它在市场上迅速普及。但是USB3.0及其HUB依旧有自己的瓶颈,比如在某些应用中需要尽可能高的吞吐量时,线缆的长度会受到限制;同时电缆的材质以及

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top