美国TI数模混合验证工程师的10年回顾

本文内容是一个在美国TI公司做了10年数模混合验证工程师的大牛严俊(Jason)分享的他的职业生涯历程,以及对混合信号设计验证(DV)的看法和经验。他的职业生涯经验对我们年轻的学生有非常好的借鉴意义,怎么样去选择一个合适方向、一个提供成长机会的平台、结合个人的努力,最终成为行业大牛。关于DV方面的看法和经验,对整个业界也有很大价值。haikun01公号的作者认为,目前DV的力量在国内还较为薄弱,目前集成电路设计方向正在风口上,资本涌入,草创时期,三个人,五条枪,凭着聪明才智、拼搏和冒险的精神,也能干成一番事业。但长远来看,这种小作坊的工作方式迟早是需要精细化的,当芯片规模大到一定程度、流片成本高到一点程度,就不是拼搏和冒险能解决的问题了,必须使用科学化的验证方式,才有可能跟世界顶尖企业在一条线上竞争。到了那个时候,可以预见的是,DV方向将出现大量的人才缺口,甚至比纯设计缺口更大。因此,Jason在这个时候来分享DV方面的经验,可谓意义重大。

美国TI数模混合验证工程师的10年回顾休闲区蓝鸢梦想 - Www.slyday.coM

我是Jason,今年是在TI美国总部Dallas工作的第十年,其中2年做模拟芯片设计,8年做数模混合芯片的验证。四个月前,当还在TI是的大老板在开部门会议时提到有谁谁谁在TI已经待了十年,竟然有我的名字,但是还没意识到自己一晃在TI待了这么久。印象中自己好像还刚加入公司跟其他的华人老前辈请教工作生活上的问题,以为自己还是新人,一下子就晃老了。两个月前刚离开TI,回想在TI工作的十年,颇有感悟。想跟大家分享一下,一是我自己在TI的故事,二是我自己对模电混合的个人见解。另外,贾教授是我高中同学,也多谢借此宝地发表文章。

我是2009年从华中科大电子系毕业,来美国德州农工大学(Texas A&M University, College Station)读模电设计的硕士,2011开始在TI实习,后来2012年正式加入TI。当时正好赶上半导体行业经过2008年经济危机后复苏的时候,各个公司都大量招人。跟其他的所有的中国同学一样,我只找模电设计的职位,也有幸经硕士老板的推荐进了TI做芯片设计。当时的看法是:做设计多牛呀,做测试,做仿真的工作听起来就很低端。我在TI的Hard disk drive组做设计做了两年,那个芯片及其复杂,刚进公司的我都是在打杂,帮其他的大牛们跑跑仿真,在实验室里测测芯片,根本没有机会去从头学习设计电路。后来我们组倒闭关门了,我们组的人都要被分流到其他组,由于其他组做设计的职位不多,很多设计工程师要转方向。因为当时TI的混合验证工程师(DV)的需求增加的很快,领导们希望大家都能去填这些坑。当时有一个工作5年的美国人不愿意转,跟大老板甩门了,立马被炒了。我还没这个能耐去抗争,就顺着时代转了DV,虽然开始不愿意,但这后来被证明是我职业上很正确的选择。

给大家对DV一个简单的解释。假如一个芯片有10个模块,9个模拟模块(LDO,vibias, oscillator, EEPROM, buck/boost, gate driver, current sense...)由9个模拟设计师做,1个数字模块由一个数字工程师做。每个人都把自己模块验证了,都声称没问题,但把他们拼在一起就没问题吗?DV就是解决这个问题,把整个芯片作为一个DUT来做测试,看是否能满足datasheet中功能要求。DV的工作说白了就是给大家挑毛病,找bug。

我2014年加入了TI的motor drive组,做汽车功能安全(automotive functional safety),ASIL-D级别的,芯片相当复杂,当时我是第一个组里的DV。当时我们组刚刚成立不久,当时TI日本解散,我们从日本那边接手功能安全的芯片时,第一代芯片已经流片,被测出一大堆bugs。为什么问题会这么多,就是没有好的方法去做DV。我看过他们当时的DV设置,每一个test都搭一个单独的testbench,再加一堆杂七杂八的analoglib components。很难看懂,也根本没办法跑regression。那我接手后该如何做呢?当时我自己一个人做DV,于是陷入了深深的迷茫,一度感觉没有出路。

TI在业界也叫Training Institute,半导体的黄埔军校。TI是拥有一个在芯片行业成长的非常好的平台,非常多的资源。在TI走技术路线要爬tech ladder,意思是每年一帮有tech ladder头衔的人给另一帮候选人投票,看你能有多少专利,发多少papers,做的IP或者tool其他多少组在用,被选上的就能涨职称,所以大家都很愿意分享。话说回来,我当时需要帮助,有一大堆的人排着队要帮助我,有的人假意,跟我敷衍的讲半个小时他们组在做什么,也有的人很用心,当时在TI的DV第一人Scott花了半年时间来指导我,每星期开会1~2个小时,他每次会问我想讨论什么。我就把我工作上最棘手的问题跟他讨论,他也每次都能教我很多。那半年成长的特别快,也很感谢他。

想成长就一定得折腾,也不要怕麻烦人。我当时为了学DV,找遍了TI做DV做出名气的组。好像是2015年的时候当时Scott说服了TI高层开了一个Verification conference,整个TI做DV的人都去了,有做数字的,有做数模混合的,各个做DV的组都想蹭这个机会出出风头,把自己的好东西拿来分享。我当时也屁颠屁颠的跑过去,这里那里听一听,问一问。当时从来没想过自己的职业路径,也没想发过paper。不过那次会议让我还真大开眼界,没想到DV的东西还有这样那样的玩法。从那之后,我才开始正式想自己的DV生涯要往那个方向发展。

由于我一直负责汽车功能安全芯片的项目,到离开TI时一直做了5代,各种各样的挑战,fault injection simulation, Pin-FMEA, qualification test。有些问题其他组已经有解决方法了,可以拿过来直接用。有的问题整个TI都没有好的方法。那怎么办呢?其实挑战就是机会,赶着DV在TI发展的黄金时期,也赶着汽车电子在TI发展的黄金时期,我除了自己做了一些verification 的IP,同时也自学了Python,自己或者和同事做了好几个DV的工具,其中有一个PinFMEA的工具和另一个自动化DV结果报告的工具TI分别有5个组用,一个qualification test和ATE co-sim的tool TI所有analog的至少20个组都在用。从2018年起到2021年,我在TI内部各个等级的conference/journal和CadenceLive上发了20几篇文章,也大大小小的会议中present了50多次。其中在TI等级最高(技术要有一定级别才被邀请)的TI Technical Leadership Conference发了6篇,Verification的文章每年总共才选4~5篇。我也在2020年时上了tech ladder,也是motor drive部门里10几个DV中的唯一一个有tech ladder头衔的。

再回到我负责的功能安全的芯片,由于我使用DV的方法和技术的提升,每一代芯片的functional bugs越来越少。我最得意的项目还是TI的DRV3255, 48V mild hybrid application,这也是TI最近推广很火的明星产品之一。当时我带着印度的2个DV contractor没日没夜的做了4个月,找了100多个design bugs。不仅做了最基本的functional test,也用verification去仿真ATE,validation, qualification,application的测试,然后用DV的结果去帮助参加这个项目的每一个工程师完成他们的工作。最后做出来后第一个流片没有一个functional bug。单单就做这一个产品,我就发了8篇文章。

在TI做了10年,也有了很多的人脉和广泛的认可,除了自己发文章,也在各个会议中去review别人的文章。一切本好,但因某些原因,最后还是决定离开了TI,去了另一个芯片大厂,新的公司做DV的人比TI少很多,也有一些DV做的很好的组,没人认识我,一切从零开始干。虽然还是喜欢挑战,但也突然发现面对挑战时自己的冲劲比以前不知不觉少了些。同时我也想到自己除了在工作上做,自己对做DV的这一套还是有些存货的。DV相对其他的半导体工种来说还是比较新的,美国很多其他的公司近几年也越来越意识到DV的重要性,也都在抢人。在中国的公司也开始意识到DV的重要性,但DV有经验的人确实太少了。我写这篇文章也是给学芯片设计的同学们一个新的思路,DV可能也会是一个不错的选择。

我想继续借贾教授的公众号发几期关于DV的技术讨论问题。大家可以就自己感兴趣的话题发我邮箱yanjundv@gmail.com。我会在文章中做出解答。

Q1:公司为什么要DV?

你是想芯片流片测试后看到几个或者几十后bug再改一代,两代,三代呢?还是想在设计的过程中就把所有的bug找出来,芯片流片后测试没有问题就直接寄给顾客,然后批量生产呢?这就是DV的作用。因为DV的缘故,TI的各个组都在拼1p0 success(芯片流片后不需要任何修改直接生产)或者1p1 success(芯片生流片后有芯片金属走线上小的修改后直接生产)。另外,芯片越复杂,越容易出architecture或者模块连接之间的问题,就越需要DV。一般来说一个常见的DV比例是2~4个设计工程师配一个DV。

Q2: DV有哪些种类,各有什么特点?

DV是design verification,一般而言,是讲数字验证,或者digital verification,特别是在一些大型数字芯片像CPU公司,Intel, Nvidia都有很多数字验证工程师,他们的数量甚至不比数字设计的人少。我在文章里讲的DV主要是mixed signal verification,或者top level verification, ams verification。这个工种主要是用在纯模拟或者模电混合的芯片,大概在10年前开始兴起,TI也是做的最早的,也是当前业界做的最好的。我估计TI做mixed signal verification可能有100到150人之前,很多TI的人离开后也帮很多不同的公司搭建他们的verifcation methodology。除此之外,我们也有block level verification,是用ams的电压源,电流源,电容,电阻,开关,montiors之类的去验证一个单独的模块。这一部分有的组是模拟设计工程师做,有的是DV的组做。

Q3:做DV需要学什么技能?

DV是硬件中的软件,需要学很多语言。做数模混合验证一定得会verilogams,最好也要会SystemVerilog。我个人做一些测试ip(比如ams的电压电流源)的做法是的analog functionality用verilogams做,外面包一层systemverilog 的wrapper配上不同的task去控制这个IP。除此外,也要读的懂模拟电路和数字RTL,不然你的测试出问题了很难去debug。需要使用的工具有Cadence Virtuoso, ADE, Maestro, Simvision之类的, 有的数字比较多的电路会用vManager去跑regression。另外一个不是必须,但很重要的技能是编程,我个人用的比较多的是Python和VBAScript(Excel编程),偶尔用Cadence的SKILL。Makefile也常常用于在command line跑DV测试。我以前学过Tcl和Perl,但自己不是很喜欢,也就没用了。

Q4:做DV需要学UVM吗?

在美国找DV的工作,基本上每个职位都说要UVM。这是一个很有误导的信息。UVM在纯数字的DV用的很多,但在模电混合验证中其实不多。UVM的好处是它提供一个很标准化的架构,这样像Cadence这样的供应商会提供很多不同协议的UVM测试IP,可以卖给芯片设计公司拿来直接使用。但问题是UVM实在太难学,我在TI一个使用UVM的DV大组待过短暂几个月的时间,里面有10几个DV工程师,只有2个真正懂UVM可以把UVM的架构从零搭起来。其他的人在UVM的环境下写测试不需要懂UVM。所以在TI做数模混合验证的70%的不用UVM,只有30%用UVM,而这些用UVM的组大多建组的人都是从数字验证转过来的。所以我个人建议如果你做的芯片是以模拟为主的话,就不要折腾UVM。

Q5:什么人可以转DV?

我见到很多人从模拟设计转过来,也有从数字设计/验证转过来。在TI也见到一个印度同事做ATE测试10年后转来做DV。

Q6:中小型芯片设计公司如何做DV?

DV还是很吃经验的。做模拟电路的经验拼的是深度,你硕士博士把LDO或者ADC研究透彻了,去公司后可以凭自己的经验按照新的指标把电路做出来,自己想不出方法看papers也会有很多的思路。做DV拼的是广度,需要各种各样的技能。这个技能学校教的少,去小公司也没人会教你。自己没经验,setup出了一点点问题就没辙了。要学DV,我个人很喜欢Cadence提供的training视频,还有lab让你可以自己尝试搭建DV的测试平台。如果国内有大学或者机构能提供DV的课程也会帮助很多。

美国TI数模混合验证工程师的10年回顾休闲区蓝鸢梦想 - Www.slyday.coM

附上作者帅照一张

(严俊 yanjundv@gmail.com)

大家可以就感兴趣的话题发他的邮箱yanjundv@gmail.com,Jason会在后续的文章中做出解答。

相关推荐

  • 友情链接:
  • PHPCMSX
  • 智慧景区
  • 微信扫一扫

    微信扫一扫
    返回顶部

    显示

    忘记密码?

    显示

    显示

    获取验证码

    Close