- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* UTMI 接口研究 终端项目部:阎 磊 2006 年 10 月 系统功能简介 模块功能 工作时序 系统位置 与低功耗USB的关系 目录 UTMI 接口在系统中的位置 USB2.0 Transceiver macrocell Interface : 通用宏接口 UTMI 是一个具有通用性的接口,完成所有USB2.0设备都要 完成的通用数字信号处理。 其核心功能:是把数据从主机发送的时钟域,切换到设备接收 处理的时钟域,以便后的数据处理。同时完成串并转换,降低 总线时钟速率,把设备和主机之间的串行通信切换到设备内部 的并行通信。 为后面逻辑层中频处理提供了可能,由于逻辑层因设备而异 通常用rtl级的hdl来实现.(频率太高会带来综合的困难) 并行速率最高60M(480/8) UTMI 接口的涵义和主要作用 UTMI 接口的涵义和主要作用 具体函数功能: 1)时钟的恢复(采样时钟的恢复),即时钟和数据的 分离和提取; 2)同步序列SOP,EOP信号的检测和产生; 3)数据流的NRZI编码与解码; 4)填充位的插入和剔除; 5)串并转换与并串转换; 6)填充位错误,EOP错误的检测; 7)支持暂停模式,高速模式,Reset,Resume模式, 测试模式等的检测。 内部函数模块图 数据速率,时钟速率,采样有效时钟 数据速率:在数据发出之前,内部的串行数据速率基本上 和所选取的工作模式数据速率一致(在UTMI 模块内除了出口部分是并行数据内部数据全部 串行传输) 高速:480M;全速12M; 低速1.5M 在剔除填充位后,实际速率会略有下降,只是 填充位的采样时钟被屏蔽掉了(rx_valid) 数据速率,时钟速率,采样有效时钟 时钟速率: 时钟速率是本地晶振倍频得到的,是本地处理 时钟的基本来源,在数据提取时,本地采样时 钟频率要大于等于数据的频率。 采样有效时钟:没有被rxvalid和txvalid屏蔽掉的有效时钟 沿。 模块:clock multiplier 倍频模块:从本地晶振,倍频出采样时钟,对应不同的工作 方式,倍频器产生不同的倍频系数。 UTMI有三种工作模式:高速/全速;全速(only); 低速(only) 高速/全速:输出60M的处理时钟。对于高速1字节占用一个 时钟周期,对于全速40个时钟周期对应一个字 节。 全速(only):输出48M时钟,一字节占用32个时钟周期。 低速(only):输出6M时钟,一字节占用32个时钟周期。 对于一字节占用多个时钟周期的情况其有效采样沿用rx_valid 和tx_ready标识。时序如下: 模块:clock multiplier 模块:HS DLL always @(posedge clk) rxd_s0 = rxd; always @(posedge clk) rxd_s1 = rxd_s0; always @(posedge clk) // Avoid detecting Line Glitches and noise if(rxd_s0 rxd_s1) rxd_s = 1b1; else if(!rxd_s0 !rxd_s1) rxd_s = 1b0; 同步数据提取是用更高速率的采样时钟,实现上用4倍采样,移 位积存采样值,同1为1,同0为0。相异不是合理采样点。通过 高速采样时钟和移位寄存器实现。 模块:elasticity buffer 这个缓存用来补偿,发送时钟和接收时钟,接收时钟的最大 误差500ppm,这个时钟误差在高速时引起,最长包情况下计 数误差为12比特,用一个深度为24比特,门限值设在中间的 Fifo来实现,当时钟在误差允许范围之内时,fifo即使在连续 发送最长包的情况下仍可以用乒乓球的逻辑搬移数据,补偿 时钟缓存,而当时钟误差超过500ppm,则一包溢出超过门限 值,在系统内报时钟错误。 模块:mux;NRZI decoder;bit unstuffer Mux:这是个路由选择模块,选通高速数据还是
文档评论(0)