浅谈模拟混合信号设计验证(analog/mix-signal design verifica
时间:12-12
整理:3721RD
点击:
在大家纷纷觉得金融最挣钱/互联网码农薪水高/ic已死的这种舆论浪潮里面,我今天不仅八一八ic,而且八的是ic中的模拟ic,这个工资落后,而且是模拟ic里面的验证(dv-design verification),当然为了显得高大上一些,也把mix signal给拉了进来,我这也是做好了那个什么什么不怕沸水烫的准备。
什么是模拟/混合信号设计验证(analog/mix-signal design verification)呢?说的高大上点,就是在项目一开始阶段,就对spec负责,利用top-down的思路,建立模型,建立test bench,尽可能的实现各种check自动化,来对芯片进行验证的一个工种。说的人话一点,简单而言,很多人一耳朵听进去的也对,就是一个跑仿真的。那和目前的analog/mix signal design有啥差别呢?第一是,目前很多analog都是bottom up的设计思路,dv呢,是top down,是对系统和应用负责的,里面可以是一个黑盒子,可以是自己预先建立的模型(听起来类似于test 哈?也对,test是拿到具体芯片来测试的,dv是流片之前来测试的)。第二是,覆盖全/自动化,尽量将checker写的完善,尽量将test bench建立全面,然后打包起来,自动化起来,使得在大规模的pvt(工艺电压温度)变化的时候,能快速准确的拿到结果;使得在design在update design的时候,能够快速准确的拿到结果。什么自动化?工具不是天天在帮助人自动化么?Cadence的AE不是经常来support么?是啊,但是你老板乐意经常让Cadence看我们的database么?你自己乐意有个啥问题还得变着花样打包一下/再送出去给Cadence么?(哎呀呀,我没有收Cadence的广告费哈,我没有收任何一家EDA的广告费哈,我只是觉得它确实是用的多啊)如果不太乐意,就找dv哈。虽然兵乓球员中打羽毛球最好的,羽毛球员中打乒乓球最好的,这句话不好听,可是dv目前就是类似于这种的,懂design但是不需要有design那么多,懂code懂工具但是没有EDA那么多,没事,交叉型人才嘛,才能更好的发挥作用。不管是否听明白了,反正就是解释到这里了。好了,马上有人提问了,看着这和design差别不是那么大哈,而且有技术含量么?回答:是啊,目前差别不大,但是这是以后分工越来越细的趋势。有技术含量么,我问layout 有技术含量不,test有技术含量不?你认为有的话,这个也有。你要是认为没有,也可以认为这个没有把。(我就是一个应试教育出身的人,可是我越发喜欢发散性/自由性答案,呵呵呵呵)
这个职位到底有没有必要?让我们来通过历史了解未来吧。
先说一个历史上有跨时代意义的事情吧,虽然和ic看着关联不大,但是这是全世界的福音:福特汽车流水生产线的发明。一开始时候福特汽车开始的生产效率极低,后来通过历史性的创新和改革,1913年发展了流水线,生产效率一下子提高很多。当时也遭到好多人的反对:有经验的人反对这样子,因为体现不出来他们的经验了;没有经验的人也反对这样子,因为他们可能觉得失去了机会,最重要的是生产线把人当成螺丝钉一样,一下子减少了很多发挥人类主动性的机会。事情后来怎么回事呢?金钱虽然是万恶了,但是也绝对是驱动人类生产力提高的好东西:1914年给工人大规模增长工资,好了,o了,捂住了所有人的嘴巴。后来也一直沿用这种方式,所以现在才可能了汽车可以走进千家万户,不再高高在上。
咱们再来看看我们高大上的计算机半导体行业吧。以前计算机卖整机,后来变成了按照自己喜好组装各个零件(当然也出现了中关村一些老手们高价骗人的事情);灵活性提高了,但是还是不能满足一些人/一些应用场合的要求。现在活跃在国内好多厂商做不同芯片的整体方案,例如通信芯片,Audio,电源芯片等等,客户根据自己需要买买就能组装成小孩玩具,穿戴手环等(作为娃妈的我,花了158块大洋,买了一个火火兔,其实就是一个mp3,我感觉那火火兔真是暴利啊)。那么芯片内部呢?以前一些ip/协议要自己开发代码,自己搭建模块,现在可以去Synopsys和Cadence 以及一些小企业(例如望京就开了一家,好吧,我承认这是我刚刚好撞上从而知道的公司)去买IP。为啥?快啊,省成本啊,术业有专攻,这就是类似于把不同的人定义在流水线的不同位置哈。以前数字设计,后来数字有了digital dv。以前模拟设计,现在一些公司有了模拟dv,混合信号呢?更需要dv。
自打我开始工作,就听到过黑人老外说他经常看到各个小的sub system工作的挺好的,结果流片回来,大的top动都不动。 很多公司说,啊?再养这样子一个人,公司没有预算……芯片流片回来,debug的时间和人力不是成本?再一次流片不是时间和成本?能够在流片前找dv专员测试下看看有没有bug,不是件好事?好了,有些人说想让芯片没有bug很难,尤其是model不准确的模拟和射频。那也行,加了dv,至少能缩短研发周期,为什么呢?项目拿到spec之后,design的TB bottom up走,dv的TB top down走,底层设计好了,直接套top dv的TB,两者结合,并行工作,肯定比串行要快的。还有一种情况,就是培养一个优秀的模拟工程师,需要很长时间,那么对于一些不太顶尖的模拟工程师,如果有dv专门给他做的东西做check,也可以减少他们的不自信,和top应用时候的可信度。当然,dv工程师也需要培养,他们也可能会报出来的bug其实是TB搭的有问题,他们也可能需要在电路和coding的路上不断锤炼;但是感觉上门槛没有单纯的模拟工程师那么高。另外,还有一些工程师,确实非常牛,但是如果一个超大的项目接到手里,还是有时候会觉得有压力的,top架构,下面模块,外围应用环境和寄生,等等。如果这个时候,有专门一个dv的职位,就对spec负责,那么design lead的压力也会减小一些;模拟电路的规模也可以做的或许再大一些,就像数字越来越复杂。总之,思路缕顺了,长期投入产出比是可以看出来的。
好了,各位老板们是不是觉得心思动了、觉得也行哈?(不动也没事哈)资本家永远追逐的是利益最大化嘛,好来设置这个岗位。哇塞,怎么很难招到人呢? 好的,让我来好人做到底。下面让我来说服像我一样的从设计转DV的小兵兵。
以前有layout职位么?我觉得最最最早模拟的时候,肯定design把layout的活给做了(好吧,我研究生在实验室的时候,就是自己画的layout,为了赶流片,还搞了通宵),但是现在呢?几乎每个公司,都设置了专门的layout职位,曾有一段layout缺人,开的薪水比design还高。为啥呢?因为人家专业画layout的人,手被训练的画的特别快了,熟能生巧绝对是管用的;而且他们干的多了知道哪些地方需要注意,有过什么陷阱,自然而然的绕过去之后,经验就十足了,layout也大牛辈出。大家能接受layout,能接受test职位,为何设置一个design verification职位显得目前难以接受呢?数字后端很多时候就是在用工具,模拟layout现在component本身就集成很多,画起来轻松很多了。可能这就是一种情怀问题,抑或是新鲜事物出现总是需要一段接收和消化的过程。不少人觉得总是design是最最好的职位;曾经听说过有招聘layout,给的“大饼”就是以后有机会可以转design;而事情接下来发展的话,是确实有了机会可以转design,也转了design,但是其转折难度和跨度,已经不是一个三四十岁了/生活在北上广大城市/还的考虑一家老小的人所能够跨越的鸿沟了,最后也不了了之了。很简答啊:在layout职位积累了好多经验,也不少公司能够开出来足够吸引人的薪水,何苦要从design的小兵当起来呢?情怀的东西,可能是以前年代的“学好数理化,走遍天下都不怕”,以至于一些学习不好数理化/走了文科路线的人,可能内心有一股隐隐约约的自卑,但是谁又能证明这句话是对的呢?那种学习好了语言,跑着全球谈生意/顾着一群数理化很好的人在呵呵笑;那些沟通能力强/得维护客户关系/很会销售技能的人也在呵呵笑。所以情怀和接受程度,可能某些时候代表了当下的观点,但是未来这种观点有多大的正确性还有待考究。
什么是模拟/混合信号设计验证(analog/mix-signal design verification)呢?说的高大上点,就是在项目一开始阶段,就对spec负责,利用top-down的思路,建立模型,建立test bench,尽可能的实现各种check自动化,来对芯片进行验证的一个工种。说的人话一点,简单而言,很多人一耳朵听进去的也对,就是一个跑仿真的。那和目前的analog/mix signal design有啥差别呢?第一是,目前很多analog都是bottom up的设计思路,dv呢,是top down,是对系统和应用负责的,里面可以是一个黑盒子,可以是自己预先建立的模型(听起来类似于test 哈?也对,test是拿到具体芯片来测试的,dv是流片之前来测试的)。第二是,覆盖全/自动化,尽量将checker写的完善,尽量将test bench建立全面,然后打包起来,自动化起来,使得在大规模的pvt(工艺电压温度)变化的时候,能快速准确的拿到结果;使得在design在update design的时候,能够快速准确的拿到结果。什么自动化?工具不是天天在帮助人自动化么?Cadence的AE不是经常来support么?是啊,但是你老板乐意经常让Cadence看我们的database么?你自己乐意有个啥问题还得变着花样打包一下/再送出去给Cadence么?(哎呀呀,我没有收Cadence的广告费哈,我没有收任何一家EDA的广告费哈,我只是觉得它确实是用的多啊)如果不太乐意,就找dv哈。虽然兵乓球员中打羽毛球最好的,羽毛球员中打乒乓球最好的,这句话不好听,可是dv目前就是类似于这种的,懂design但是不需要有design那么多,懂code懂工具但是没有EDA那么多,没事,交叉型人才嘛,才能更好的发挥作用。不管是否听明白了,反正就是解释到这里了。好了,马上有人提问了,看着这和design差别不是那么大哈,而且有技术含量么?回答:是啊,目前差别不大,但是这是以后分工越来越细的趋势。有技术含量么,我问layout 有技术含量不,test有技术含量不?你认为有的话,这个也有。你要是认为没有,也可以认为这个没有把。(我就是一个应试教育出身的人,可是我越发喜欢发散性/自由性答案,呵呵呵呵)
这个职位到底有没有必要?让我们来通过历史了解未来吧。
先说一个历史上有跨时代意义的事情吧,虽然和ic看着关联不大,但是这是全世界的福音:福特汽车流水生产线的发明。一开始时候福特汽车开始的生产效率极低,后来通过历史性的创新和改革,1913年发展了流水线,生产效率一下子提高很多。当时也遭到好多人的反对:有经验的人反对这样子,因为体现不出来他们的经验了;没有经验的人也反对这样子,因为他们可能觉得失去了机会,最重要的是生产线把人当成螺丝钉一样,一下子减少了很多发挥人类主动性的机会。事情后来怎么回事呢?金钱虽然是万恶了,但是也绝对是驱动人类生产力提高的好东西:1914年给工人大规模增长工资,好了,o了,捂住了所有人的嘴巴。后来也一直沿用这种方式,所以现在才可能了汽车可以走进千家万户,不再高高在上。
咱们再来看看我们高大上的计算机半导体行业吧。以前计算机卖整机,后来变成了按照自己喜好组装各个零件(当然也出现了中关村一些老手们高价骗人的事情);灵活性提高了,但是还是不能满足一些人/一些应用场合的要求。现在活跃在国内好多厂商做不同芯片的整体方案,例如通信芯片,Audio,电源芯片等等,客户根据自己需要买买就能组装成小孩玩具,穿戴手环等(作为娃妈的我,花了158块大洋,买了一个火火兔,其实就是一个mp3,我感觉那火火兔真是暴利啊)。那么芯片内部呢?以前一些ip/协议要自己开发代码,自己搭建模块,现在可以去Synopsys和Cadence 以及一些小企业(例如望京就开了一家,好吧,我承认这是我刚刚好撞上从而知道的公司)去买IP。为啥?快啊,省成本啊,术业有专攻,这就是类似于把不同的人定义在流水线的不同位置哈。以前数字设计,后来数字有了digital dv。以前模拟设计,现在一些公司有了模拟dv,混合信号呢?更需要dv。
自打我开始工作,就听到过黑人老外说他经常看到各个小的sub system工作的挺好的,结果流片回来,大的top动都不动。 很多公司说,啊?再养这样子一个人,公司没有预算……芯片流片回来,debug的时间和人力不是成本?再一次流片不是时间和成本?能够在流片前找dv专员测试下看看有没有bug,不是件好事?好了,有些人说想让芯片没有bug很难,尤其是model不准确的模拟和射频。那也行,加了dv,至少能缩短研发周期,为什么呢?项目拿到spec之后,design的TB bottom up走,dv的TB top down走,底层设计好了,直接套top dv的TB,两者结合,并行工作,肯定比串行要快的。还有一种情况,就是培养一个优秀的模拟工程师,需要很长时间,那么对于一些不太顶尖的模拟工程师,如果有dv专门给他做的东西做check,也可以减少他们的不自信,和top应用时候的可信度。当然,dv工程师也需要培养,他们也可能会报出来的bug其实是TB搭的有问题,他们也可能需要在电路和coding的路上不断锤炼;但是感觉上门槛没有单纯的模拟工程师那么高。另外,还有一些工程师,确实非常牛,但是如果一个超大的项目接到手里,还是有时候会觉得有压力的,top架构,下面模块,外围应用环境和寄生,等等。如果这个时候,有专门一个dv的职位,就对spec负责,那么design lead的压力也会减小一些;模拟电路的规模也可以做的或许再大一些,就像数字越来越复杂。总之,思路缕顺了,长期投入产出比是可以看出来的。
好了,各位老板们是不是觉得心思动了、觉得也行哈?(不动也没事哈)资本家永远追逐的是利益最大化嘛,好来设置这个岗位。哇塞,怎么很难招到人呢? 好的,让我来好人做到底。下面让我来说服像我一样的从设计转DV的小兵兵。
以前有layout职位么?我觉得最最最早模拟的时候,肯定design把layout的活给做了(好吧,我研究生在实验室的时候,就是自己画的layout,为了赶流片,还搞了通宵),但是现在呢?几乎每个公司,都设置了专门的layout职位,曾有一段layout缺人,开的薪水比design还高。为啥呢?因为人家专业画layout的人,手被训练的画的特别快了,熟能生巧绝对是管用的;而且他们干的多了知道哪些地方需要注意,有过什么陷阱,自然而然的绕过去之后,经验就十足了,layout也大牛辈出。大家能接受layout,能接受test职位,为何设置一个design verification职位显得目前难以接受呢?数字后端很多时候就是在用工具,模拟layout现在component本身就集成很多,画起来轻松很多了。可能这就是一种情怀问题,抑或是新鲜事物出现总是需要一段接收和消化的过程。不少人觉得总是design是最最好的职位;曾经听说过有招聘layout,给的“大饼”就是以后有机会可以转design;而事情接下来发展的话,是确实有了机会可以转design,也转了design,但是其转折难度和跨度,已经不是一个三四十岁了/生活在北上广大城市/还的考虑一家老小的人所能够跨越的鸿沟了,最后也不了了之了。很简答啊:在layout职位积累了好多经验,也不少公司能够开出来足够吸引人的薪水,何苦要从design的小兵当起来呢?情怀的东西,可能是以前年代的“学好数理化,走遍天下都不怕”,以至于一些学习不好数理化/走了文科路线的人,可能内心有一股隐隐约约的自卑,但是谁又能证明这句话是对的呢?那种学习好了语言,跑着全球谈生意/顾着一群数理化很好的人在呵呵笑;那些沟通能力强/得维护客户关系/很会销售技能的人也在呵呵笑。所以情怀和接受程度,可能某些时候代表了当下的观点,但是未来这种观点有多大的正确性还有待考究。