论文部分内容阅读
通用串行总线(USB)是应用在PC领域中的新型接口技术,自从Windons98操作系统全面对USB接口支持后,USB逐渐进入实用阶段。利用USB可以实现较传统方式更有效、更经济、更多扩展的PC外设与PC相连。通用串行总线(USB)作为一种新兴的计算机外设总线标准,从标准的出现到大规模的应用,仅用了短短几年的时间,这一切都得益于它易用、真正的热插拔、高性能和系统造价低廉等忧点。它可以同时支持低速(1.5Mb/s)和全速(12Mb/s)以及高速(480Mb/s)的数据传输,还可以同时支持多达127个外设。连接方式也十分灵活,既可以串行连接,也可以用集线器(HUB)把多个设备连接在一起,再同PC机的USB接口相连。正由于USB的这些特点,使其获得了广泛的应用。本文着重分析了USB总线的工作原理、通讯协议、总线体系结构、数据传输模式、USB数据流模型。提出设计了USB接口电路的整体构架,设计了USB的主要控制逻辑和与MCU的互连的接口(此接口与飞利普的USB接口芯片PDIUSBD12兼容),也设计了一个数字锁相环(DPLL)来同步数据和分离时钟,并对同步模式的识别、并行/串行转换、位填充/解除填充、CRC 校验/产生、PID 校验/产生、地址识别和握手评估/产生做了具体的分析。本课题具体是用Verilog语言设计了USB设备端的控制器(主要为接收部分),并用FPGA对其进行验证。采用自顶向下的设计方法,在充分了解系统的基础上,划分功能模块进行行为描述、RTL功能仿真、逻辑综合。在此基础上进一步做时序仿真和静态时序分析,产生BYTE文件,下载到FPGA进行实物验证。运用硬件描述语言--Verilog-HDL来完成代码设计,并使用Active-HDL和Synplify软件完成仿真和综合。