巧妙测试嵌入式USB2.0主机接口信号质量

发布者:jingyan最新更新时间:2011-11-05 关键字:嵌入式  USB2.0主机接口  信号质量 手机看文章 扫描二维码
随时随地手机看文章

  在高速串行技术如此广泛应用的今天,简单易用的USB堪称是PC平台上最成功的I/O技术,普及率几乎100%。而且随着终端用户对于高速USB设备应用需求的不断增加,越来越多的嵌入式通信类终端产品开始增加了USB2.0主机接口的设计以满足客户的应用需求。成熟的应用技术由PC平台转向嵌入式平台的已经成为一种趋势。

  为了满足USB2.0一致性应用的需求,所有的USB2.0设计都必须满足USB IF发布的USB2.0物理层一致性测试要求。相对于比较成熟的PC平台USB2.0 主机测试技术而言,基于通信类终端的嵌入式USB2.0 主机的测试面临更多的挑战。特别是进行二次开发的应用厂商而言,如何满足USB2.0物理层一致性测试要求,很大程度上需要原厂在测试模式以及测试封包方面提供更多的支持。但应用需求的多样化导致了许多设计架构脱离了原厂的测试状态机控制范畴,问题接踵而来。

  嵌入式USB2.0主机测试具体过程

  本文中的USB控制主机采用某大型通讯类方案提供商的IAD解决方案,片内集成一个USB2.0控制器,然后通过一个USB HUB中继对外提供2个高速主机接口。所选用的测试设备如表1所示。

  表1:嵌入式USB 2.0主机测试所采用的测试设备


  测试中出现的问题本次测试将主要验证产品上两个USB高速主机接口的眼图。对于USB2.0物理层的眼图测试,USB IF在USB2.0 SPEC中有着明确的眼图,模板定义如图2所示。


  F1: DUT_USB2.0功能框图



  F2: 传输信号波形模版

  关于USB高速主机眼图测试的测试方法,USB IF在USB2.0 SPEC中也有清晰的定义,USB2.0主机控制器必须支持规定的测试模式。对于眼图的测试则必须支持Test Packet测试模式,连续发送规范的测试码流以测定眼图模板、上升下降时间、传输抖动以及其他的一些AC指标。也就是说,测试是基于原厂对于测试模式的支持并提供相应的Firmware。准备测试前工程师和原厂沟通后顺利拿到了测试Firmware和测试命令。原厂提供的测试方法是在上电启动之后进入CFE模式然后下载和运行测试专用Image,这样就可以使用teST_Packet命令进行眼图的测试了。测试连接图示参见图3。


  F3: 测试连接图

  一切看起来都是那么的顺利,但是当我们通过串口进行Test Packet命令,下发之后在两个主机接口却看不到信号波形出现。因为是第一次进行嵌入式USB的测试,所以对于出现的问题是没有任何经验可以参考和借鉴的。从串口信息来看显示命令是下发成功的,那问题到底出在哪里呢?只有从信号流向一步一步地查找了。工程师首先测试了USB HUB与CPU之间的Upstream接口,发现有相应的信号波形出现。也就是说,USB主机控制器已经执行了Test Packet命令并发送了测试码流。那么,问题是出现在USB Hub这里,它并没有向两个Down Stream Facing Port转发码流。而且原厂提供的命令也很奇怪,根据有PC主板测试经验的工程师的意见,对于HUB的测试应该需要指定测试端口才对。而在测试命令中,我们并没有看到相应的指令而只有简单的Test Packet命令。在询问了原厂技术人员后问题有了答案:

  (1)原来我们采用的方案只支持一个USB 主机接口,所以在片上只集成一个USB 主机Controller,测试命令也是基于主机控制器类型的。而我们的板级应用是采用了一个USB Hub与主机Controller中继来实现多端口应用的扩展,根本无法进行Hub Down Stream Facing Port的测试。

  (2)原厂的测试是在CFE模式下通过下载运行特定的测试程式来进行测试,在这个阶段,并没有实现USB Hub的初始化以及配置字的操作。也就是说,USB Hub是不可控的,无法进入测试模式的设定。我们的多USB主机端口的应用设计使得系统架构中加入了USB Hub进行中继,这超出了原厂设计的USB测试状态机控制范畴,导致了无法通过原厂提供的测试命令进行测试。再次和原厂技术支持讨论新测试程式的开发,从时间来看已经不实际了,客户非常关注并要求我们必须尽快给到USB 主机的测试报告。第一次进行嵌入式USB 主机测试就遇到如此棘手的问题,工程师们一时间束手无策。有没有另外的方法呢?

  问题分析解决在和客户方面的资深工程师分析和讨论之后,我们有了一个非常巧妙的解决方案,当然还需要实际的测试来验证。

  USB专业测试人员都知道,USB IF针对USB一致性测试提供了一个专用测试工具(USB-IF HS Electrical Test Tool)以方便开发者进行相关的USB测试。但这个工具只能运行在PC主机上,而我们的嵌入式系统其实也是通过相应的底层命令来实现这个工具相关的测试功能。

  从测试拓扑来看,我们目前的问题主要在于嵌入式控制主机无法实现对USB Hub的控制和测试模式设定。从控制系统的角度来说,不管是嵌入式控制主机还是PC主机实现的都是USB主机控制器的作用,也就是说,我们可以使用PC主机替代嵌入式控制主机,在一台装有USB-IF HS Electrical Test Tool的PC上对产品板级USB Hub进行Down Stream Facing Port的Test Packet测试。当然,我们首先要断开嵌入式控制主机与USB Hub之间的Up Stream Facing Port,并飞线与PC主机的USB接口连接。因为测试单扳本身提供5V供电,所以我们只需要飞出D+/D-/GND三线即可。完成后的电路板如图4所示。


  F4: USB Hub Up Stream Port飞线图

  我们使用了一台装有USB-IF HS Electrical Test Tool的ThinkPad R51作为控制平台,在按照上面的图示进行测试连接并将产品上电之后,我们在测试工具中选择了Hub类测试并发现了板级的USB Hub。现在,我们已经初步实现了之前关于控制系统的设想,参见图5。


  F5: 控制工具设置界面

  在图5中的Port CONtrol栏中选择Test Packet命令,在相应的Port栏中选择我们需要测试的端口如1,示波器上出现了我们期待已久的信号波形(图6)。按照Lecroy示波器USB2.0测试软件中的Step by Step,示波器很快就完成了测试并输出了分析报告。根据测试报告中的关键测试数据,我们优化了电路设计,使得主机接口的信号更加理想。


  F6: 优化调整后的USB-主机眼图

  测试总结

  此次嵌入式USB2.0主机接口眼图的测试到此算是顺利完成了,重新回顾一下我们的测试过程,感触颇深。可以说因为是第一次进行USB高速主机接口的测试,前期的准备工作并不是很充分。但正是有这些突如其来的问题,让我们可以更加深入的理解和分析USB技术的原理和测试方法,有很多的收获和经验和大家一起分享:

  (1) 仔细和深入的解读产品的规范是我们顺利进行测试的基础和依据,例如此次的USB2.0 SPEC。所有的设计和测试都是依据规范展开的,只有解读了规范,才能保证理解USB2.0的内部架构和状态控制机,才能保证测试的顺利进行。

  (2) 真正理解控制系统,此次测试的关键在于工程师首先理解的USB2.0 SPEC的同时大胆进行了控制主机的假定替代。用归一化的方法来审视我们的控制系统以及层次化系统功能层面是我们进行测试设计创新的保证。

  (3) 一套真正专业实用的分析设备和工具非常关键,此次使用的美国力科(Lecory)的数字示波器和USB2.0分析软件对于我们高效的分析信号和准确的定位问题非常关键。有了专业仪器厂商的支持才能确保产品的开发进度和质量。

  当然,USB主机信号质量的测试不仅仅是眼图部分,USB IF关于USB2.0一致性测试规范还有很多的测试项目需要完成。而且对于嵌入式USB测试而言,会面临更多的挑战,希望本文可以给到从事嵌入式USB开发测试的工程师一些思路和借鉴。

关键字:嵌入式  USB2.0主机接口  信号质量 引用地址:巧妙测试嵌入式USB2.0主机接口信号质量

上一篇:计算机系统总线基础
下一篇:基于CAN总线的智能型温湿度采集系统设计

推荐阅读最新更新时间:2024-05-02 21:41

苹果嵌入式光传感器和智能照明系统专利 - 苹果汽车越来越近了?
日前,苹果通过美国专利商标局获得了新的汽车专利,而这一次涉及的是汽车嵌入式光传感器和智能照明系统,后者类似汽车氛围灯,但是有所不同。 据了解,苹果的泰坦计划从未停止过研发的脚步,多年的研究。已经让苹果拥有了一系列的科技专利。从曝光的申请文件上看,新专利首先介绍了这是一种用于资助导航系统的嵌入式光传感器,新专利使汽车有一个或者多个元件组成,可通过汽车的公共窗式元件,同时提供光发射和环境监测。元件总成包括一个安装在车身的壳体,壳内的内部空间足以支撑一个光传感器和其相连设备,元件总成还装有一个窗式元件与其内部相连接,并通过窗体与外界相互租用。 图1展示了与多个传感器和控制元件相连的导航系统,图2展示了一个或多个光传感
[汽车电子]
苹果<font color='red'>嵌入式</font>光传感器和智能照明系统专利 - 苹果汽车越来越近了?
嵌入式)关于arm中的存储控制器(一)
实验目的: 由于开发板(JZ2440 V3)上电后从Nand flash启动CPU时,CPU会通过内部的硬件将Nand flash的前4K数据复制到称为“Steppingstone”的4K内部SRAM中(起始地址为0),然后跳到地址0开始执行。 这个实验我们先用汇编语言设置好S3C2440芯片内部的存储控制器,使外接的SDRAM可以操作使用:然后把程序本身从“Steppingstone”(即芯片内部的4K SRAM)复制到SDRAM处,最后跳到SDRAM中执行。 知识预备: 存储控制器(memory controller):它为CPU提供了访问外部设备所需的信号,这是一种通过总线方式来访问拓展的外设,在嵌入式中,这些拓展的
[单片机]
(<font color='red'>嵌入式</font>)关于arm中的存储控制器(一)
嵌入式驱动移植之IIC总线驱动移植
移植环境 主机开发环境:ubuntu12.04 BootLoader:u-boot-1.1.6 kernel:linux-2.6.30.4 CPU:s3c2440 开发板:TQ2440 移植步骤 在2.6.30.4 的内核中已经存在了 IIC 总线的驱动,只需要将其配置好,然后编译出内核镜像,就可以使用 IIC 总线了,在 TQ2440 中存在 IIC 总线的 EEPROM(AT24C02),可以通过对其的读写测试 IIC 总线是否驱动上。 1、配置内核 Device Drivers --- * I2C support --- --- I2C support * I2C device inter
[单片机]
<font color='red'>嵌入式</font>驱动移植之IIC总线驱动移植
嵌入式重定向 printf
学习stm32,打交道最多的莫过于串口通讯了,但是官方的串口发送库太恶心了,完全不好用甚是还念C语言的printf,想输出什么就有什么,现在,一步步来做个重定向,让你的stm32可以跟C语言一样能想看什么就看什么: 首先: 添加printf的头文件 : #include stdio.h //当时学C语言最熟悉的stdio.h 其次: 改写int fputc(int ch, FILE *f)函数 int fputc(int ch, FILE *f); int fputc(int ch, FILE *f) { USART_SendData(USARTx, (uint8_t) ch); whi
[单片机]
凌华科技推出新款无风扇嵌入式电脑
2016年6月16日,全球智能云计算服务平台、网关、嵌入式计算机及行业应用平台供应商 凌华科技针对旗下无风扇嵌入式电脑产品线推出全新超值型MVP-6000系列,价格、功能与性能完美结合,突破工业电脑的极限。 搭载新款第六代Intel Core i7/i5/i3(代号Skylake)系列处理器以及DDR4-2133内存,与上一代CPU相比,性能增幅高达30%,同时平台整体性能也有了大幅提升。此外,突破过去传统工业电脑的大体积,MVP-6000系列极致轻巧的外型设计与承袭自凌华科技Matrix系列的无风扇坚固设计,打造出无可比拟的实用性,为环境严苛的工业自动化应用提供了最具性价比优势的新选择。 我们一直从客户端听到这样的市场需求,
[工业控制]
凌华科技推出新款无风扇<font color='red'>嵌入式</font>电脑
嵌入式新技术论坛召开在即 注册参会增送资料
由嵌入式系统联谊会主办的“嵌入式系统新技术论坛”即将于下周三(28日)下午1:30在北京首享科技大厦(北航东南角)召开,会议不仅有国际著名的嵌入式技术公司Intel和Microsoft 研究院刘东和马宁,Xilinx谢凯年和NXP王朋朋到会,还邀请到国内长期从事嵌入式系统研发的学术和教育的专家学者成都电子科技大学罗蕾教授,软件所和凯思昊鹏公司顾玉良研究员和工信部CSIP孙加兴主任到会共同探讨嵌入式系统新技术发展趋势。 注册参会可获得《2009-2010年嵌入式系统联谊会资料汇编》,本书汇集了嵌入式系统专家学者思想的文章和历次联谊会会议发言实录精选。由联谊会工作组选编,专业机构编辑印制。 注册参会:
[嵌入式]
<font color='red'>嵌入式</font>新技术论坛召开在即 注册参会增送资料
i2011中国嵌入式技术创新应用大会即将举行
2011年中国(肇庆)嵌入式技术创新应用大会暨十大优秀嵌入式系统创新解决方案颁奖典礼将于6月9-11日在广东肇庆市▪奥威斯酒店举行。会议主题将聚焦嵌入式技术和解决方案在智慧城市和物联网、云计算、智能交通和新能源汽车等战略性新兴产业中的应用。此次大会由工业和信息化部信息化推进司、电子信息司、软件服务业司指导,工业和信息化部软件与集成电路促进中心(CSIP)、广东省经济和信息化委员会和肇庆市人民政府共同主办。 信息技术作为当今最活跃、最具变革性的技术,在加快信息化建设、推动我国产业结构调整和经济发展方式转变中发挥着愈来愈重要的作用。“三网融合”、两化融合、信息技术推广应用的全面深入展开以及物联网、云计算、新能源汽车等战略性新
[嵌入式]
基于虚拟存储的嵌入式存储系统的设计方法
1引言   嵌入式系统由嵌入式硬件和固化在硬件平台中的嵌入式软件组成。传统的小规模嵌入式系统,软件多采用前后台的方法,通常应用于实时性要求不高的简单场合;对于复杂的应用场合,较为普遍的做法是给系统配上嵌入式实时操作系统(RTOS),这样不仅能够使系统具有良好的实时性能,降低软件编制的工作量,还可以提高整个系统的稳定性。此外,为了简化用户程序,系统通常要提供一些必要的库函数供用户调用。同前后台系统相比,这种实时嵌入式系统增加了系统存储空间的开销。Intel 8051系列及各种兼容的单片机因其极高的性价比、丰富的库函数和长期的技术积累等背景而被广泛应用于各种嵌入式领域中。受传统单片机寻址空间的限制,嵌入式应用中经常需要进行存储空间扩展
[缓冲存储]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved