论文部分内容阅读
通用串行总线(Universal Serial Bus,USB)作为一种新型的计算机外设总线,以其简单易用、连接灵活、高带宽(USB2.0可以提供480Mbps的带宽)等特点已经成为PC机连接外部设备最常用的一种方式.USB收发器在USB总线中的位置处在各种USB设备、USB HUB与USB总线的接口处.它的作用是处理USB物理层的协议和信号,其中接收部分接收USB总线上的串行数据,转成并行数据后交给串行接口引擎(SIE Serial Interface Engine);同时发送部分完成相反的操作,接受SIE的并行数据,并/串转换后发送到USB总线上去.USB收发器对于USB设备有较强的通用性,它既可以作为一个单独的芯片在USB系统中使用,提高USB设备的设计成功率,也可以作为一个IP核,集成到一些需要USB 2.0接口的SOC芯片中.鉴于USB收发器是一个数模混合的芯片,而在IC设计中,数字电路和模拟电路的设计方法和流程是不一样的,因此我们根据USB收发器的功能将它分成模拟前端、时钟产生与数据恢复,以及逻辑电路几个模块.本文着重介绍了USB收发器逻辑电路的ASIC设计.基于标准单元库的设计流程是ASIC设计中最常用的设计流程.它采用Verilog HDL或者VHDL描述电路,通过仿真、综合、自动布局布线以及静态时序分析等等一套完整的设计流程完成芯片设计.这种设计方法自动化程度高,设计周期短,达到的芯片性能也比较高.USB收发器逻辑电路采用典型的VLSI ASIC设计流程,使用TSMC 0.25um CMOS工艺标准单元库完成整个电路的设计.本文分析了USB2.0收发器的总体功能以及内部各个模块的划分,介绍了一般的基于标准单元库ASIC设计流程,并着重阐述USB收发器中弹性缓冲器、发送电路、接收电路几个模块的功能与实现方法,最后给出了ASIC设计的部分仿真结果、FPGA验证结果和最终的版图实现.仿真结果显示该芯片正确实现了收发器逻辑电路的功能.