捉鬼记-3/4

发布时间:2012-3-27 10:28    发布者:绝对好文
关键词: debug , 捉鬼
作者:merlin2007

打鬼

现在的问题是知道了原因,未必就有办法。

这是个两年前完成的设计,板子上的电源及控制状态都已经固定,不可能再动,要动就成了修改设计了。所以前面所说的1,2,3条都办不到。但是第4条却是可以动动手脚。在这个板子上,是由一个大型ASIC直接驱动这两个QDR存储器。其时钟在ASIC的直接控制下。如果通过软件控制ASIC内部的相关寄存器在加电后先切断时钟输出一段时间,然后再开通,不就符合第4条的要求了吗。为了证实此方法的可行,我又去查那个ASIC的技术文件。那是个有数百个管脚的芯片,几千页的文件浩如烟海。好在我的目标明确,直奔主题,很快查清,确有一个寄存器可以用来控制这个时钟的输出。此计可行!剩下的就是具体实施。但这却是不在我的掌控之中了。

这部分软件修改涉及到ASIC的驱动程序,而这个驱动程序又被测试和应用两大系统使用,相关的软件开发团队有几百人,遍布全球。每个新版本的含盖内容及要处理的问题早已排好了计划,容不得我一个搞硬件的插手。我只能找相关的软件工程师帮忙了。负责这部分的人远在西部的SAN JOSE, 不能面谈,还有三个小时的时差。只能通过电邮联系了。 急忙写好邮件,说清原委,指出要修改的地方和方法,,,当然也少不了一番好话和感谢。

剩下的就是等着了。

这段时间我原来的部门经理休长假不上班,由另一个组的头儿麦克带管我们组,人也远在波士顿。麦克没有介入这个项目的开发过程,对情况一无所知。现在出了这样的事,平添了一股压力,颇有些紧张。因为都知道停产(LINE STOP)意味着什么。虽然说问题原因可能各种各样,但搞硬件的人肯定是首当其冲站在第一排挨*子儿的。万一问题解决不了,炒掉个把工程师是小事,他这个当经理的肯定也脱不了干系。 代管代出个这样的结果不是倒霉吗!所以他的电话和电邮就不断,又要开会,又要找人,也不知道到底要干什么,其实是有点儿麻爪儿了。我这里已经有了方案,但在未证实之前,又不想张扬,怕万一不成,没有了退路。只好先含含糊糊的应付他,最后干脆不接电话了。

挨到了快下班的时候,SAN JOSE有消息了。负责软件的那个哥们挺帮忙,按要求改好程序后给我发来过来。马上,开机,启动测试:

一遍,通过。

两遍,通过!

有门儿!

但这还不算。别忘了前面说过,有的板子是可以通过测试的,但并不能保证多次重复后还不出错。按要求必须要长时间反复测试才行。测试程序跑一遍要十几分钟,于是就写了个控制自动测试的SCRIPT,让这几块板子,加电,测试,关机,再加电,,,总之得把它们往死里折腾。。。

回到家,吃完饭,心里还是不踏实。就把笔记本电脑通过VPN接到了公司里测试用的路由器上,,,这也是典型的C公司文化。C公司为充分展示其网络设备公司的技术,和利用其自有网络的资源,早在十几年前就给每个工程师都配发了一部笔记本电脑。 在今天这个笔记本电脑都已经臭了街当白菜卖的时代,这实在不算个什么事儿。可是在当时每部还是要两三千美元的时候,就显得很奢侈了(因为办公室都还有台式机和工作站用)。而且员工在家中的上网费用由公司报销。当然这一切不是为了摆阔,目的是让你在任何时间任何地点,只要有网络存在,就能让你连到公司的任何一台服务器或者路由器上。公司的理由是:作为一个网络设备供应商,如果我们自己都不能用好自己的网络,如何能说服用户买我们的设备?这样你就没理由说“我不在实验室,不能。。。”的话。所以公司的一道风景就是,一到开会时,就见人手一机,这边说着会上的事,那边屏幕上还跑着终端上的数据。当然,也免不了时不时 的看点儿闲白儿,查查股票。当经理的也都知道,睁一只眼,闭一只眼。只有一条,你得出活儿,不能误事,,哦, 扯远了。

简短截说,由测试路由器终端返回的结果整齐而稳定:

测试完成,零错误。。。

测试完成,零错误。。。

:::

测试完成, 零错误。。。

这一行行的字符看着比美女照片都养眼啊!

基本上可以肯定,问题解决了。为了保险起见,我强按住发电邮通知的冲动,决定再等一个晚上。待明天看完结果再说。那晚上,睡得好香。。。(哦,不过说实话,我平时觉也不错,躺下就跟死狗似的)

第二天一上班,就迫不及待地检查结果,不出我所料:全部测试通过,没有任何错误。大功告成!

不过,事儿还不算完。。。

哪来的鬼?

剩下的事情就是按部就班了。把新的测试程序转给专门的测试组,由他们按规定对工厂发回来的五块板子再进行全面测试。他们要比我折腾得狠,全部测试完成要几天的时间。但我已经不担心了。

还有当然是要向有关人员通报,头一个就是麦克。这家伙听到结果后没有表现出很高兴的意思,似乎对问题的原因不太相信。不过,按照经验来说,他是对的。

一款新器件用于生产,不是拿来就用的。取得了公司器件库的编号,只意味着允许装机使用,但不意味就可以用于生产。必须要经过全面的测试验证。公司并没有专门的测试平台,哪个新产品设计选用新器件,哪个产品就要当作测试平台。选用这款器件的工程师也就同时还担负有验证的责任。测试要由独立的测试组进行(就是前面提到过的)。测试过程中要给设备加载100%的数据流量,同时升高或降低各路电源电压,时钟频率,以及环境温度。依据设计不同,这些组合有可能达到几十个,所以又称为“corner test”.,如果是因为这个器件哪一项测试通不过,那就得摘牌儿。经历了这一番历练,在所有的犄角旮旯里都能正常工作,才算通过,允许用于生产。以后如果其他设计使用时,最后也还要重复同样的测试。所以,一般情况下,设计师都愿意使用数据库中现成的器件,因为风险要小得多。

作为替代品,在这款K公司的存储器提供样品后,也经历了同样的过程:将几块已经通过测试的板子上的CYPRESS片子拆下来,再换上K公司的片子去测试。这个过程虽然是由新品工程师负责,我没经手,但通过测试的结果我是知道的。

如果器件厂家因为各种原因需要修改器件性能,变更技术文件,应该在第一时间通知用户。公司在收到通知后也会对数据库进行更新,加入新的内容。搜索器件数据库,你可以发现每个器件下都列有所有时期的技术文件,甚至有的还有扫描上去的手写的会议记录。

K公司的关键问题是后期批量生产的器件较之用于测试的样品有了变化(厂家技术文件的修改说明了这一点),可是却没有通知用户!这种情况很少见。

我向麦克说明了这些情况,并且给他发去了两个内容不同的技术文件,以及目前测试的结果。事实俱在,他终于认同了。然后马上他就表示出了一种愤怒:K公司怎么能这样!不想玩儿了吗?我要找他们!

也是,平白无故受了这么大的惊吓,搁谁也不干。再者说,想在C公司的这桶饭里挖一勺子是那么容易的吗?这就要多说两句关于C公司的元器件供应商认定过程。 因为是大型网络设备制造商,C 公司的元器件采购对各个供应商而言是块大肥肉。因为这类器件的利润要远高于用于消费类产品的器件,所以谁都希望能插上一脚。但问题是C公司并不是来者不拒,而是要对各个供应商逐一审查,包括器件性能,供货条件,甚至公司的财务状况,都要考虑。即使器件不错,可是如果不能保证供应,甚至不知哪天关门了,要东西没有了,那不坑人吗。我就知道有过为了保证器件供应,C公司甚至要给某个供应商提供财政资助的情况。由此可见,能让C公司认可不是件容易的事。而一旦被认可上了名单,不但可以应用于现有产品,在有新项目开始时,设计师也会优先考虑使用。这对供应商而言就意味着可观 的出货量和利润,任谁都不会对此掉以轻心。

说一件我亲身经历过的事做例子。就是在开始设计上面提到的这个项目时,需要一个带电切换电路(HOT SWAP)。以前的设计都是用分立器件,设计复杂,所需的空间大。我希望简化设计,到处寻找替代品。后来发现ONSEMI有个芯片接近我的要求,但还要修改才能使用。于是就和它的销售代表联系,说明了我的要求。他们满口答应同意修改。很快,新芯片出来了,完全符合我们的要求。设计简单,所需空间大大缩小。于是不但用在我的设计中,随后其他人的设计也纷纷使用。但是过了一两年后有消息说ONSEMI要停产这个产品,原因是其成品率太低,实在不赚钱。可C公司有几个产品都使用了这款器件,已经投产。这时ONSEMI如果停产不就把我们给晾这儿了吗。于是有关部门就找ONSEMI的人讨论此事。具体过程不清楚,但最后的结果是:ONSEMI继续生产这款器件,但只供C公司一家使用,以维持现有产品的生产。而新设计则建议使用其下一代产品。显然ONSEMI宁可吃点儿亏少赚点儿,也不愿意冒开罪C公司从而失去供应商的资格的风险。

像K公司这种做法,显然C公司是无法容忍的。

没让鬼吓着

麦克如何去和K公司交涉我就不关心了。那不是我的事。但我后来听他说,开了好几次电话会议,把出现这个问题的原因查了个底儿掉。K公司反复地解释了原因和解决的措施,并一再的道歉,确保不会再有此类事发生才算罢了。

几天后,全部测试完成,没有再发现任何存储器测试错误。后面的事就简单了。因为这个问题并不真正是器件的物理故障,是初始化的问题。而且目前只是在工厂测试中发现,没有出现在用户的系统中。所以不需要召回那些用户手中的设备,只要通过更新测试软件即可解决。当然,用户的应用软件也要升级以避免同样的问题,这些通过计划中的软件更新就可以了。

结果可以说皆大欢喜。麦克给我发来 一份电邮通知说,给我发了一笔奖金。通知中说:感谢你在这次处理XX产品停产事件中所作出的努力,使问题在这么短的时间内就得到了解决,。。。云云。钱不多,几百块而已。不过想起刚开始时所承受的压力,也算是个安慰吧。在这个过程中,我基本上没走弯路,对这一点我还是挺满意的。

“这么短的时间。。。你到底用了多长时间”?

不算后来测试组正式测试所用的时间,我一共用了两天,一天复现问题,一天查原因,找解决方法和测试  。

还行吗?

还行吧!

不久,我的部门经理克丝蒂回来上班了,很快也听说了这件事,但她并没有任何表示。 过了一段时间,她给我看了一份公司关于该系列产品的报表。在产品销量一栏, 我的这个产品名列榜首。而在返修率(RMA)一栏,则是孤孤零零的一个“0”。

“You should be proud of this!" 她对我说。

我可以“proud“ 吗?

路由器这玩意儿不同于时装, 也不像手机,它的销量完全取决于用户对此类产品的需求。我一个设计师是左右不了的。所以我不能把这顶高帽带在自己头上。

至于返修率的问题吗。。。呵呵,咱还要说是整个团队努力的结果,是吧?不过,既然她都让我”proud“的了,那我就先接着吧? 您说呢?
本文地址:https://www.eechina.com/thread-87830-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表