乐平| 阳春| 栾城| 石拐| 建平| 南靖| 薛城| 景东| 仲巴| 鼎湖| 肃宁| 呼伦贝尔| 陵川| 南华| 闵行| 遂昌| 鄄城| 白朗| 西藏| 信阳| 关岭| 沭阳| 徽县| 沿滩| 万荣| 安顺| 元氏| 陆丰| 墨江| 灌阳| 铜鼓| 嘉定| 平阴| 永州| 昔阳| 丰宁| 长安| 鄂尔多斯| 门头沟| 鹰潭| 巴林右旗| 江源| 连云港| 莱西| 北碚| 青田| 安陆| 海南| 鹿邑| 镇坪| 岳西| 固镇| 定兴| 漳浦| 韶关| 偏关| 房县| 三都| 陵川| 望都| 封丘| 小金| 洱源| 九江县| 阳江| 蛟河| 临淄| 衡山| 德庆| 安康| 新巴尔虎左旗| 三台| 庆元| 蒲江| 和布克塞尔| 临沂| 阳东| 怀仁| 全椒| 呼兰| 晋中| 南通| 宁强| 马边| 石景山| 滴道| 乌恰| 广饶| 泰顺| 红河| 五莲| 都匀| 灵台| 唐山| 庆安| 小金| 唐海| 四平| 台中县| 温县| 酒泉| 威远| 简阳| 珠穆朗玛峰| 盂县| 江安| 武胜| 东营| 北安| 奇台| 宁都| 集安| 淳安| 榆树| 满洲里| 庆云| 广东| 铁山| 裕民| 巨野| 准格尔旗| 礼县| 商都| 得荣| 镇远| 延吉| 汤旺河| 武冈| 潢川| 新平| 定南| 洛浦| 措勤| 永胜| 蓝山| 浦江| 溆浦| 玉山| 峡江| 漯河| 连城| 德庆| 应城| 前郭尔罗斯| 大冶| 南充| 汉源| 土默特左旗| 铜梁| 长白山| 木垒| 寿宁| 平凉| 夏县| 吴桥| 凉城| 科尔沁左翼中旗| 镇原| 突泉| 靖宇| 甘洛| 日喀则| 黄岩| 乳山| 望江| 肃宁| 余干| 禹城| 威县| 盘山| 马关| 西和| 寿宁| 华安| 沙湾| 丹寨| 河津| 满洲里| 安陆| 易县| 湖南| 古蔺| 阿拉善右旗| 彭州| 桂平| 诏安| 龙口| 开县| 天祝| 湘潭县| 海淀| 曾母暗沙| 彭山| 石棉| 塔城| 浦口| 雷波| 大方| 宾川| 商水| 烈山| 云县| 河池| 王益| 莱西| 建瓯| 塘沽| 麦积| 武进| 祁连| 津市| 德庆| 兴义| 黑水| 宜秀| 哈密| 澄迈| 花都| 梁河| 湄潭| 屏边| 屏山| 上甘岭| 襄樊| 东宁| 城口| 图木舒克| 盐边| 鲁甸| 诏安| 和龙| 水城| 张北| 开原| 青神| 吴川| 铜陵市| 东平| 合水| 红安| 大化| 洋山港| 石河子| 金秀| 台中县| 衡阳县| 博湖| 望城| 新平| 安顺| 阜新市| 岚皋| 克拉玛依| 青县| 昆明| 广平| 丹寨| 宣恩| 科尔沁右翼中旗| 彰化| 晴隆| 瑞金| 衢州| 马龙| 澳门威尼斯人赌城

电子发烧友网 > 接口/总线/驱动 > 正文

USB控制主机的测试及原理

2019-01-16 15:02 ? 次阅读
标签:眠花醉柳 大小点赌场 开曼群岛

一 前言

在高速串行技术如此广泛应用的今天,简单易用的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主机测试

1 产品USB部分原理及测试环境

产品USB控制原理

USB控制主机采用某大型通讯类方案提供商的IAD解决方案,片内集成一个USB2.0控制器,然后通过一个USB HUB中继对外提供2个高速主机接口。

测试设备:

USB控制主机的测试及原理

USB控制主机的测试及原理

DUT_USB2.0功能框图

2 测试中出现的问题

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

USB控制主机的测试及原理

Transmit Waveform Template

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

USB控制主机的测试及原理

测试连接图

一切看起来都是那么的顺利,但是当我们通过串口进行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 主机测试就遇到如此棘手的问题,工程师们一时间束手无策。有没有另外的方法呢?

3 问题分析解决

在和客户方面的资深工程师分析和讨论之后,我们有了一个非常巧妙的解决方案,当然还需要实际的测试来验证。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三线即可。完成后的图示如下:

USB控制主机的测试及原理

USB Hub Up Stream Port飞线图

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

USB控制主机的测试及原理

控制工具设置界面

在图示中的Port Control栏中选择Test Packet命令,在相应的Port栏中选择我们需要测试的端口如1,示波器上出现了我们期待已久的信号波形(如下)。按照Lecroy示波器USB2.0测试软件中的Step by Step,示波器很快就完成了测试并输出了分析报告。有专业的分析工具就是不一样,我们根据测试报告中的关键测试数据,优化了我们的电路设计使得主机接口的信号更加理想(图示如下,本文中不对分析内容进行展开)。

USB控制主机的测试及原理

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

三 测试总结

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

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

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

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

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

下载发烧友APP

打造属于您的人脉电子圈

关注电子发烧友微信

有趣有料的资讯及技术干货

关注发烧友课堂

锁定最新课程活动及技术直播

电子发烧友观察

一线报道 · 深度观察 · 最新资讯
收藏 人收藏
分享:

评论

相关推荐

Microchip MPLAB? PICkit?...

Microchip MPLAB? PICkit? 4不仅非常适合那些针对8位空间的设计,同时更是16...

发表于 2019-01-16 13:58 ? 1252次阅读
Microchip MPLAB? PICkit?...
高田乡 白各庄西 三星寺 大蛇窝 青年路小区第一居委会
锋尚国际 曲鲁海乡 白石子 马家川乡 中靳家沟
澳门永利官网 威尼斯人平台 澳门大发888网上平台 澳门至尊网址 澳门葡京开户
澳门大发888网上官网 威尼斯人娱乐网址 澳门大富豪赌博 澳门葡京网站 澳门网络下注赌场
mg冰上曲棍球网站 澳门葡京注册 澳门大富豪赌博娱乐 澳门葡京娱乐平台 葡京网址
现金棋牌 网上现金斗地主 百家乐官网 真钱扑克 新濠天地赌场网站
老虎机定位器 澳门大富豪网址 现金三公注册网址 牛牛游戏下载 现金骰宝 年度十大电子游戏 大小点游戏 玩什么游戏可以挣钱 电子游戏厅 方法奇葩赌博网 巴黎人网站 pt电子游戏哪个最会爆 澳门巴黎人游戏 澳门龙虎斗注册 澳门大富豪网站 押大小排行 真钱打牌 明升网站 十三水技巧 电子游戏下载 二十一点平台 现金网游戏开户平台 澳门百老汇游戏官网 皇博压大小 真钱捕鱼 跑马机游戏 赌博技巧 巴比伦赌场官网 现金三公 地下网址 捕鱼游戏技巧 英皇网站 手机玩游戏赚钱平台 现金网排行 pt电子游戏注册 赌博技巧 电脑玩游戏赚钱平台 海立方游戏 ag电子游戏排行 希尔顿官网 太阳网上压大小 现金赌钱游戏 现金棋牌游戏 真人网站网址 地下开户 九五至尊娱乐网址 澳门梭哈游戏官网 奇葩袖赌博网 鸿胜国际压大小 博狗扑克游戏 德州扑克游戏规则 庄闲代理 奔驰宝马老虎机下载 现金三公开户注册 免费试玩电子游戏 GT压大小 新濠天地注册 现金老虎机网站 纸牌赌博种类 乐天堂开户 澳门永利平台 电脑版捕鱼达人 玩电子游戏入门 斗牛游戏 bbin压大小 网上电子游戏网址 澳门网络下注平台 明升国际网址 明升娱乐 捕鱼达人电子游戏 mg电子游戏试玩 二十一点游戏赌场 澳门万利赌场官网 大小对比网站 现金电子游戏 电子游戏实用技术 老虎机破解器 澳门梭哈官网 澳门百老汇赌场注册 千炮捕鱼兑换现金 网上合法赌场 PT电子游戏 波克棋牌官方下载 天天棋牌 凤凰棋牌 美少女战士电子游戏 什么游戏可以赚人民币 银河国际娱乐 澳门番摊官网 澳门梭哈官网 胜博发电子游戏 电子游戏打鱼机 澳门现金网 大三巴网站 PT电子游戏 澳门银河国际娱乐