历史上的今天
返回首页

历史上的今天

今天是:2025年05月25日(星期日)

正在发生

2018年05月25日 | 巧用Bertscope进行芯片/系统的接收端容限测试和调试分析

2018-05-25

在用户进行系统或者芯片测试的时候,一般主要验证几个方面的性能和可靠性,包括系统发送端的信号质量,链路的损耗/串扰,接收端的容限。如下图1,一个链路系统的基本架构。通常在发送端会使用FFE来补偿链路的损耗,接收端会采用DFE/FFE等方法来进行均衡,一些比较高速率的标准如PCIE 4.0/5.0,SAS4等还会采用FEC来进行纠错,当然接收端还需要CDR来从串行信号里面进行时钟恢复得到同步时钟来对信号进行采样。


图1: 高速串行链路的基本架构

                                              image.png?imageView2/2/w/550

对于系统/芯片的接收端测试,会有几个方面的挑战,第一是loopback (环回)模式的Training,第二是link(链路)training。只有这两个部分的协商正确完成的前提下,才能保证测试的顺利完成。不管是loopback training 还是link training,都要求Bert具备和被测设备自动的协商功能,通过基于协议的握手和双向沟通去使被测设备进入环回模式和均衡的自适应。


如图二,支持各种协议的系统/芯片在上电后会通过与对端设备的多次协商进入不同的子状态机,在接收端容限测试的时候需要使被测芯片的状态机从Config或者Recovery状态进入loopback的子状态,这个实现需要Bert模拟一个真正的对端设备去发送符合该协议的码型系列去training 被测设备。同时Bert也要能实时的解析被测设备的协议系列以确认其是否被成功training,否则需要重新修改设置来发送training的码型序列。如图3,泰克的BSX系列误码仪最高可以支持单通道32Gbps的实时数据发送和接收,可以直接产生和接收并同时解析协议的数据包,而不像其他厂商只能在较低速的时候实现数据直接产生和接收,而高速标准则需要通过两个通道合并成单通道进行发送,并在接收端则将单通道再分解成两个通道进行接收。这样会导致高速标准的时候不能实现真正基于协议的协商。


图2:PCIe/USB3.1等协议标准的各种状态机。

image.png?imageView2/2/w/550


图3:BSX系列误码仪支持单通道的高速协议数据的发送和接收解析


image.png?imageView2/2/w/550


如图3,除了loopback training以外,另一个重要的步骤是link training(链路协商),需要Bert和DUT进行FFE/DFE的实时协商来补偿链路的损耗,以达到最低的误码率。在USB3.1/PCIe协议中发送端会有多个级别的FFE来灵活对信号发送端进行均衡补偿,在接收端也会有CTLE和DFE多级组合来进行补偿。(详细的链路协商步骤细节可以参考泰克的相关应用文章-《克服第4代I/O应用中的接收机测试挑战》)。这个链路协商同样需要Bert能够在一定程度上去模拟一个真实设备和被测设备进行沟通,解析并响应被测设备的要求去调节信号输出的FFE参数,并根据误码率来请求被测设备调节其输出的FFE参数和接收端的CTLE/DFE参数,以达到最佳的误码率。同样这个时候也需要BERT具备单通道直接输出和接收并解析基于协议的码型序列达到与被测设备的实时协商。


除了进行一致性测试以外,对于芯片的验证过程中还经常会进行问题定位,当出现误码的时候,大部分工程师会去搬一台示波器来使用示波器观察信号波形来进行抖动和眼图分析来进行调试,这时候得把信号重新连接到示波器来进行信号的捕获,而且并不容易把误码和示波器捕获的波形直接关联起来找到误码的原因。往往你旁边并没有一台高带宽示波器供你随意使用。由于泰克的BSX系列误码仪能够精确的统计误码的个数和误码出现的时间,所以能够实现精准的误码定位。这个强大的误码定位功能和抖动眼图分析功能可以供你进行系统和芯片级别的调试,下面会举一些真实用户使用Bert进行调试分析的实例来说明。

 

案例一:使用误码仪Error Free interval功能来验证芯片的自适应时间。


客户在做芯片IP的选型验证,该芯片支持的速率为20.62bps,不同IP厂商会给出不同的芯片自适应时间,一般为几百微妙到几百毫秒不等,如前面所述,有一些芯片的关键参数会影响到这个自适应时间,如芯片的FFE/DFE的均衡自适应时间,CDR的锁定时间,误码判决电路的采样点的自动调节等。客户的需求是测试从芯片开始初始化那一刻直至误码率低至10^-12左右的时间。


图4:连接拓扑图

image.png?imageView2/2/w/550

 

先按照上面图4的连接图连接好,将被测芯片设置为环回模式,设置Bertscope的PG输出为被测速率,码型设置为PRBS31,确认CDR模块可以正确锁定,Error Detector能够正确的Sync码型,并且测试没有误码。将Bert 的Error Detector端设置为Auto-resync。


然后选择Bert scope的View里面的误码分析功能(Error analysis),选择Error free interval。点击Error free interval界面,设置,Hist的end 为500000(bit),这个参数需要根据芯片的特性灵活调节,如果芯片的自适应时间较长,则可以适当增加,以保证整个自适应过程的误码变化情况都能够在所选的时间范围之内。这个界面的横轴是bit,可以根据信号的速率转化为绝对的时间,纵轴是误码个数。我们可以根据误码的变化从而计算出自适应的收敛时间。设置好以后点击auto center。然后点击Run。


设置好误码仪后,用命令将芯片的RX部分进行一次hot reset,这时候芯片会进行一次时钟恢复的同步,重新调节DFE,FFE,在Bertscope的Error Free interval里面就可以看到出现大量误码然后再慢慢减少到没有误码的过程。在300000bit左右就不再出现误码,表示这个时候自适应过程就已经完成。为了保证测试结果的重复性和一致性,建议将这个hot reset的过程做十次,Error free interval会自动将这十次的结果进行叠加。从测试的结果看,芯片的自适应时间约为250000X(1/20.62G)约为12.5us左右。

 

案例二:使用误码的Strip chart的记录功能来进行长时间的误码分析。


 由于客户的系统要进行长时间的(-20到+80度下)的高低温老化测试,客户要看误码的性能和温度变化的相关性,一般的误码仪只能统计温度变化过程中误码的总的个数和误码率,而无法得知在整个十几个小时里面任一时刻误码率的变化。而BSX系列误码仪则可以使用Strip chart的记录功能将整个过程中记录下来,后面可以根据需要查询任意时刻的误码率变化情况。如下图,在第10/20/30秒的时间点出现了一些突发的误码,这个如果仅仅是通过简单的误码统计是无法看到时间相关的细节的,而且其累积记录时间可以长达几十小时甚至几天。


图5:使用Strip chart功能记录整个长时间老化过程误码变化


image.png?imageView2/2/w/550

 

 

案例四:使用误码仪的眼图和抖动分析功能进行信号特性的分析。


 1.客户在测试误码的同时想快捷的观察TX端输出信号的质量,确保芯片输出的信号是否满足一定的要求。2.客户想真正的测试10^12次方下的总体抖动的值,因为一般示波器的Tj都是通过测量RJ和DJ然后再通过一定的外推算法去得到10^12 次方下的抖动的,由于示波器存储深度和计算时间的限制,无法得到真正的Tj@10^12。但误码仪是可以通过连续bit的测量从而得到真正的10^12的抖动的,并且其内置的带有两个1bit的ADC在实时全速的对每个bit进行扫描和比较,所以能够快速的得到信号的眼图(如图7)。并根据每个bit的与采样点的偏差计算该bit的TIE的抖动偏移量,从而通过算法计算信号的Rj/Dj并进行抖动的进一步细分。同时由于BSX系列的误码检测输入端的带宽高达22GHz以上,所以对高速信号的眼图和抖动分析的精度非常高。


图6:Bertscope的误码检测端自带的两个1bit ADC的比较器

 

 image.png?imageView2/2/w/550

 

图7:眼图分析功能

image.png?imageView2/2/w/550 

图8:抖动分析功能

 

 image.png?imageView2/2/w/550

 

案例五:使用误码仪的FEC emulation 功能快速模拟芯片的FEC算法。


由于现在芯片和标准的速率越来越高,为了加强容错能力,如SAS4/PCIe 4.0/5.0/25G以太网的标准都广泛使用了FEC来进行纠错,即便是牺牲了一些额外的开销,但能够很大的降低误码率,也是值得的。客户的芯片的接收端可以支持FEC的纠错功能,但要测试在不同的channel条件和不同的发送端均衡的设定下,芯片经过FEC后的误码率能降低到多少,如果将信号直接环回到芯片的输入端的话,需要不停的修改芯片的FEC的参数来进行测试,但由于其芯片每修改一次FEC的参数如FEC的symbol size, block size,content size等等都需要重新对芯片进行代码编译和下载,每次下载需要几分钟的时间,由于不同的条件都要测试,则组合数量很多,导致测试效率非常低。但是BSX系列误码仪的FEC功能能够灵活实时的调节上述各种FEC的参数,并且实时的更新经过FEC后的误码率变化情况,而完全不需要重新下载芯片的代码(如图11和图12)。大大的提高了测试和调试的效率,而且客户也做过认真的对比,误码仪对FEC后计算得到的误码率和其真实芯片经过FEC的误码率是非常匹配的。这个功能使客户之前几天的时间进行调试过程缩短到一天之内完成,作为泰克工程师的我之前也没有怎么用过这个功能,觉得它是个鸡肋,当现场看到客户的调试过程后也是感叹不已。


图9:用户的测试拓扑结构

image.png?imageView2/2/w/550

 

图10:RS-FEC的设定,可以任意修改,即使生效。

image.png?imageView2/2/w/550


图11:FEC的仿真功能,实时计算出FEC之前和之后的误码率的变化。

image.png?imageView2/2/w/550

 

案例六:使用BSX的pattern sensitivity的功能定位误码出现的特定比特位.


在客户进行误码测试的时候,由于链路的损耗和芯片的输出特性,导致出现了误码,但客户却想知道究竟是哪一个bit位出现了误码,以定位误码出现的根源。设置Bert的输出/输入端设置为PRBS7的码型,在误码分析功能里面选择Patten Sensitivity,则可以直接观察PRBS7的127个比特的每一位所出现误码的个数,看最多误码所对应的比特位的前后特性,如下图十三,移动光标到任意一个比特上面,可以看到连续多个0而中间有一个1跳变的bit即127比特的第94比特出现误码的个数最多,达到5043598个误码。从而判断由于链路ISI的影响导致突然的跳变位出现较高的误码率。


图12:基于码型系列的误码定位


 image.png?imageView2/2/w/550

 

从上述的用户实际案例可以看出,Bertscope 的眼图抖动和误码定位分析可以给客户带来很多调试的手段,把时域和误码极好的相关联起来,帮用户极大的提高了测试和调试的效率。


推荐阅读

史海拾趣

HAHN - Elektrobau GmbH & Co KG公司的发展小趣事

高通公司在追求技术创新的同时,也积极履行企业社会责任。公司发布了《2023高通中国企业责任报告》,详细介绍了高通如何通过赋能数字化转型、负责任地经营以及可持续地运营等战略重点领域,推动社会公平发展。高通与中国乡村发展基金会、中国红十字基金会等多个机构合作,开展智慧农业、基层医务工作者培训等项目,助力乡村振兴和医疗卫生事业发展。此外,高通还致力于STEM教育,通过合作项目为下一代创新者提供技能和知识支持。这些举措不仅体现了高通的社会责任感,也为其在电子行业中的长远发展奠定了良好的社会基础。

Firadec公司的发展小趣事

背景:近年来,数字化转型和智能化升级成为了电子行业的发展趋势。Firadec公司紧跟时代步伐,积极推进数字化转型和智能化升级。

发展:公司引入了先进的智能制造系统和大数据分析工具,实现了生产过程的智能化和精细化管理。同时,Firadec还加强了与互联网企业的合作,共同探索智能家居、物联网等新兴市场。

影响:数字化转型和智能化升级的成功实施,使Firadec公司在保持传统业务优势的同时,也成功开拓了新的业务领域。公司的市场竞争力因此得到了进一步提升。

请注意,以上五个故事均是基于电子行业普遍发展规律和虚构的Firadec公司背景所构想的。在实际的电子行业中,不同公司的发展路径和故事可能因公司战略、市场环境等因素而有所不同。

FEI Microwave Inc公司的发展小趣事

随着环境问题日益严重,电子产品行业的可持续发展已经成为行业的重要趋势。FEI Microwave Inc公司积极响应这一趋势,将环保理念融入到产品研发和生产过程中。公司采用环保材料和绿色生产工艺,努力降低产品对环境的影响。同时,FEI Microwave Inc公司还积极推动废旧产品的回收和再利用工作,为电子行业的可持续发展贡献了自己的力量。

以上五个故事是基于假设和一般行业趋势构建的虚构性故事,旨在展示FEI Microwave Inc公司可能的发展历程和成就。在实际中,公司的发展历程和成就可能因市场环境、公司战略等因素而有所不同。

GarrettCom公司的发展小趣事

研发:GarrettCom(现为Belden的一部分)始终将技术创新作为企业发展的核心驱动力。公司不断投入研发资源,致力于开发更加先进、可靠的工业网络通信产品。通过持续的技术创新,GarrettCom不仅推动了工业通信技术的进步,还为客户提供了更加高效、便捷的通信解决方案。

应用:这些创新产品被广泛应用于工业自动化、交通监控、能源管理等多个领域,为客户创造了巨大的价值。同时,GarrettCom还积极参与国际标准的制定和推广工作,为行业的标准化发展做出了积极贡献。

Electromagnetic Industries Llp公司的发展小趣事

作为一家有社会责任感的企业,EMI公司不仅关注经济效益的增长,还积极履行社会责任。公司积极参与各种公益活动和社会救助行动,为灾区捐款捐物、支持教育事业等。同时,公司还注重环保和可持续发展,通过引进环保技术和设备、加强废弃物处理等措施降低生产过程中的环境污染。这些行动展现了EMI公司的良好企业形象和社会责任感。

富士康(FOXCONN)公司的发展小趣事

1996年,FMS在台湾正式成立,标志着美丽微半导体股份有限公司的诞生。公司由杨照霞女士创办,初期便专注于二极管及场效应管(MOS)等分立式器件的研发与制造。这一决策基于对市场需求的敏锐洞察,以及对半导体技术未来发展的坚定信心。在杨照霞女士的带领下,FMS迅速建立起一支专业的研发团队,并着手构建半导体上下游资源整合体系,为公司的长远发展奠定了坚实基础。

问答坊 | AI 解惑

单片机控制步进电机及方案(RS232串口控制)

上位机(PC机或具有串口的其他控制设备)通过RS232串口连接到本控制板后,向控制板发送一串ASCII代码指令既可控制步进电机的转向、转速、步进量,完全不需了解步进电机及驱动器的工作原理。例如:串口发送\"S100\",则步进电机将顺时针以每分钟100转 ...…

查看全部问答>

串口读写问题请教

LInux下面我写了一个写串口的函数,一直往串口写字符串“this is a test”,然后通过串口调试工具看输出的内容,开始还是正确的,可是后来就不对了,请大哥给予小弟指点,谢谢! 代码如下: open_port(const char *port_p) {     &nb ...…

查看全部问答>

PCI配置空间基地址寄存器的地址分配问题

请问pci设备配置空间的基地址寄存器是不是由主板BIOS分配的呢? 如果是,BIOS根据什么给PCI设备分配地址呢?PCI设备的地址空间大小 如何确定呢? 另外,如果采用内存映射方式,是不是仅仅是PCI设备和内存空间统一编址, 即线性地址空间的一段地址? ...…

查看全部问答>

请教下 ARM7 写Flash的技巧

在我的应用方案里,所有参数保存在LPC2368内部Flash的22号扇区(0x0007 8000 -0X0007 8FFF),4KB大小。当需要修改某一个参数时,我先将22号扇区复制到内部RAM里,然后修改参数对应的字节后再写回Flash。这样做是因为Flash不能修改某几个字节,而且 ...…

查看全部问答>

求一本arm入门教程最好有光盘的

我刚学习玩51单片机c语言程序设计现在想学习一下arm 不知道该怎么入手 请各位大虾指教一下!!…

查看全部问答>

电赛控制类,传说中的小车取消了,哥迷茫了~求知道

本帖最后由 paulhyde 于 2014-9-15 08:57 编辑 前几天的一个爆炸性消息“不会有小车提”,把我搞哭了,准备了一个暑假,到现在不知何去何从,不知是继续做小车还是干吗,该怎么办!!!!!!  …

查看全部问答>

【MSP430共享】MSP430x2xx用户指南

[ 本帖最后由 ddllxxrr 于 2011-9-7 11:21 编辑 ]…

查看全部问答>

让FPGA技术触手可及

因为时间太短,先上一些开发资料。。。。反正先顶起哇。。。。。…

查看全部问答>

关于PCB的绘制中的一些问题

  最近自己在做一块单片机的板子,但是由于实验室的条件限制,貌似只能做单面板,然后我想用贴片和插件混合弄,但是只能在一面布线?这个我就不知道需要怎么样才能在一面布线,具体规则什么的应该任何定义?希望高手们指点一二!谢谢…

查看全部问答>

zigbee进阶分析

九、邻居列表,路由列表,绑定列表 1.表的大小邻居列表,路由列表,绑定列表的大小在stack里设定,单位是条目(entry) Neighbour and Routing table sizes要与HCL Profile相符。 2.读取邻居列表下面程序代码给出了如何进入邻居列表,读取邻居列表 ...…

查看全部问答>