安全智能钥匙SOC芯片的USB1.1接口设计与实现

安全智能钥匙SOC芯片的USB1.1接口设计与实现

论文摘要

通用串行总线(Universal Serial Bus,USB)自问世以来凭借其价格低廉、使用简单、协议灵活、接口标准化和易于端口扩展等优点,迅速占领了计算机外设接口领域的统治地位,而且随着USB技术的广泛应用,在各种Soc系统中集成USB功能也成为一种必然趋势,本设计是在安全SOC芯片中实现USB1.1接口,它综合了对设计者两方面能力,ASIC体系设计的能力和通信协议理解分析的能力,既具有较强的理论研究意义,又具有较高的实用价值。本文从SOC安全芯片的意义出发,对SOC的设计方法和IP的可重用技术进行了探讨,进而对市场上的三大片上总线(Core Connect、Advanced Microcontroller Bus Architecture、Wishbone)结构进行了简单的阐述。本次安全智能钥匙SOC芯片采用的是协议最为简单的Wishbone总线。本次设计中没有按照Intel提出的UTMI(USB Transceiver Macrocell)协议进行设计,而是将物理层的信号提取和时钟提取划分为DPLL(Digital Phase Locked Loop)模块,负责根据总线信号提取发送时钟和提取总线数据。将设计中的物理层的编码和协议层中包的包结构控制部分归结为SIE(Serial Interface Engine,串行接口引擎)模块,负责包的组织、收发和PID的解码。将端点控制部分和对控制命令的硬件解码归结为EPC(Endpoint Controller)模块,对控制器与CPU总线和RAM通信部分用USBI(USB Interface)模块实现。按照ASIC的设计一般流程,先对设计进行系统设计,提出设计的子模块功能划分和信号接口。根据设计好的子模块的功能和接口分别设计每个子模块,对每个子模块有对应的功能仿真。设计完成之后对整个设计进行系统功能仿真。在仿真中,我们使用了搭建的虚拟主机模型和PHY模型对设计的每项功能进行验证,最后将设计综合到FPGA芯片上,利用电脑和飞利浦的PHY芯片PDIUSBP11A对设计进行FPGA验证。

论文目录

  • 摘要
  • ABSTRACT
  • 引言
  • 0.1 安全智能钥匙芯片的出现及其意义
  • 0.2 USB 的发展
  • 0.3 本次开发所做的工作
  • 0.4 论文结构
  • 第1章 USB1.1 接口协议概述
  • 1.1 USB 系统传输模式
  • 1.2 USB 系统构成
  • 1.2.1 USB 主机
  • 1.2.2 集线器
  • 1.2.3 USB 设备
  • 1.3 USB 信号环境
  • 1.3.1 检测设备连接和速度
  • 1.3.2 NRZI 编码
  • 1.3.3 差分信号
  • 1.3.4 有效的数据状态J 和K
  • 1.3.5 单端0
  • 1.3.6 CRC 校验
  • 1.4 USB 数据传输机制
  • 1.4.1 包的格式
  • 1.4.2 标记包
  • 1.4.3 数据包
  • 1.4.4 握手包
  • 1.5 USB 总线通道
  • 1.6 USB 总线数据传输类型
  • 1.6.1 控制传输
  • 1.6.2 批量传输
  • 1.6.3 中断传输
  • 1.6.4 同步传输
  • 1.6.5 主机对设备的枚举
  • 第2章 USB 接口控制器的系统设计
  • 2.1 USB 接口通信协议
  • 2.2 USB 接口控制器系统设计
  • 2.2.1 USB 串行接口引擎
  • 2.2.2 EPC
  • 2.2.3 CPUI
  • 2.3 小结
  • 第3章 USB 接口控制器的模块设计
  • 3.1 SIE 模块的设计
  • 3.1.1 DPLL 模块的设计
  • RX 模块的设计'>3.1.2 SIERX 模块的设计
  • 3.1.3 SIE 数据同步模块的设计
  • 3.1.4 数据接口引擎的设计
  • 3.2 EPC 模块的设计
  • 3.2.1 EPC 模块的功能描述
  • 3.2.2 EPC 模块的数据传输设计
  • 3.2.3 EPC 模块的状态机设计
  • 3.3 CPUI 模块的设计
  • 3.3.1 数据传输控制模块
  • 3.3.2 RAM 地址控制模块
  • 3.3.3 MEMBUS 接口模块的设计
  • 3.3.4 事件中断请求处理
  • 3.4 小结
  • 第4章 USB 接口控制器的仿真与验证
  • 4.1 概述
  • 4.2 功能子模块的功能仿真
  • 4.2.1 DPLL 模块的仿真
  • 4.2.2 SIE 模块的仿真
  • 4.2.3 EPC 的功能仿真
  • 4.2.4 CPU 接口的功能仿真
  • 4.3 USB 控制器的系统仿真
  • 4.3.1 全速模式下bulk in 数据传输验证
  • 4.3.2 全速模式下bulk out 数据传输验证
  • 4.3.3 全速模式下控制传输验证
  • 4.3.4 全速模式下普通端点的stall 传输验证
  • 4.3.5 全速模式下帧号的接收,suspend 状态以及resume 的验证
  • 4.3.6 全速模式下USBI 主动唤醒主机的验证
  • 4.3.7 低速模式下控制端点的数据传输
  • 4.3.8 低速模式下interupt in 的验证
  • 4.3.9 低速模式下interupt out 的验证
  • 4.3.10 低速模式下stall 发送的验证
  • 4.4 USB 控制器的FPGA 验证
  • 4.4.1 控制端点测试
  • 4.4.2 将设备枚举成U 盘的测试
  • 4.4.3 将设备枚举成复合设备的测试
  • 4.5 小结
  • 第5章 结束语
  • 致谢
  • 参考文献
  • 攻读学位期间发表的学术论文及参加科研情况
  • 相关论文文献

    标签:;  ;  

    安全智能钥匙SOC芯片的USB1.1接口设计与实现
    下载Doc文档

    猜你喜欢