凡亿专栏 | 小电科普|SPICE诞生记
小电科普|SPICE诞生记

    前面小电科普讨论了电子管和晶体管的诞生,这次配合第七次重难点中推送的仿真题,应景的咱们来聊聊仿真软件的诞生吧。

86f6356fcabc0da327220b42e42324.jpg

    如今,每一天都有不知其数的半导体芯片设计公司与设计验证工程师,在用着电路仿真软件SPICE。SPICE广泛应用在仿真模拟电路,混合信号电路,精确数字电路,等等。作为最早的电子设计自动化软件,它今天仍然是最重要的软件之一。我们EDA设计课程使用的Multisim的内核也是SPICE。可以说,没有SPICE,就没有电子设计自动化这个产业,也就没有今天的半导体工业。它的市场超过上亿美元。所有这一切,都是从1970年加州大学伯克利分校电机工程系的一堂课开始的。

26a1ebbc90a1df9c952e9391893e9b.jpg3c02910c976ea1f68ef86890d7fcd3.jpg

BEGIN

da617e571cea85f3ec01ccfce6a0fd.jpg32783d0000f4418a0fd3dbdeebedfa.jpg

   时间回到1970年,在加州大学伯克利分校电机工程与计算机科学系,Ron Rohrer教授给七个研究生上“电路综合”课。

    Rohrer教授那时刚刚从仙童半导体公司返回伯克利,没有时间准备教材。所以,在第一堂课,他就宣布:学生们一起写一个电路仿真程序。他跟系里的管教学的主任Peterson教授达成一个协议:只要Peterson教授认可学生们写的仿真程序,他们就全部通过。否则的话,他们就全部不及格。

   这七个学生中有一个还是从机械系来的。他感到十分委屈:教授啊,俺啥电路都不会,俺就是来学电路的。这倒好,电路没学到,反而要去写电路仿真程序。这可咋办啊?

fdcc314d9ac84d534480ab6deea0b6.jpg

    Rohrer教授想了想,说没关系。虽然电路你不懂,但你的数值分析不是很厉害吗?OK,你就负责解方程这块吧。最后的结果证明了恰恰是学生们自己开发的解稀疏矩阵的模块是一个亮点,它使得可处理的电路规模成倍的增大。

99d6dec13fcbf8885194221faf85f7.jpg

   这七个学生推举Laurence Nagel为代表,由他负责向Peterson教授汇报结果。(下图为Nagel当年在伯克利的照片)

6298f2cd1bb89c9667dc6f069467c7.jpg

    这个结果就是CANCER。没错,它的意思就是“癌症”。它是Computer Analysis of Nonlinear Circuits, Excluding Radiation的缩写。不要忘了,那是在一个叛逆的时代。当时绝大部分的电路分析软件来自于大公司与政府/军方的合同开发。在冷战和核威胁的环境下,政府/军方要求这些软件都具有分析电路抗核辐射的能力。伯克利是反战的大本营,学生们自己开发的程序当然要跟政府/军方的要求对着干了。

3d5e9c4b83c30f7cb413f6fcc617bc.jpg

    有同学可能会问:为什么要开发一个电路仿真程序?要知道在这之前,人们分析电路,要么是用笔和纸,要么就要搭电路板。 Peterson教授就被学生们称之为“信封教授”,因为他认为电路分析用个信封的背面来做就足够了。但随着电路规模的增大,用笔纸变得越来越不可能,搭电路板又不能精确反应芯片上的电路特性,而且费用也越来越高。因此,用软件来做电路仿真就变得日益迫切了。

bf23890ecbe10c1954710092006d1d.jpg

    当课程结束,Nagel向Peterson教授汇报CANCER之后,Peterson教授给予了全心的认可。学生们都通过了!CANCER成了Nagel的硕士论文课题。它在伯克利被很多本科生及研究生使用,并且给了大量的建议去改进它。

    呵呵,都说学生是最好的“小白鼠”,这话果然不假。

4578b50d2aeb420d247600413cf17f.jpg

    再插一段话:基于这堂课的巨大成功,Rohrer教授后来又用同样的办法试了几堂课,但都失败了。他自己总结说,是因为有Nagel,伯克利的那堂课才成功了。所以,如果没有Rohrer教授那样的功力和Nagel那样天分的学生,SPICE也不可能从一堂课里诞生出来。

6a7ab1860361d661ca9754b8d52747.jpg

    到了1971年的秋天,Nagel在伯克利又开始了他的博士生生活,这一回是在Peterson教授的指导下了。

29a75e9cf593e3ebb1a40e2fd7fd1c.jpg

Peterson教授

    Peterson教授给Nagel的第一个任务是给程序起个新名字。确实,CANCER太难听了,谁都不喜欢。Nagel花了天知道多长时间才想出来这样好听的,也是我们现在还在用的名字:SPICE(Simulation Program with Integrated Circuit Emphasis)。所以,同学,如果你要写一个新程序,注册个微信号,取个QQ昵称,都要深思熟虑哦。

2aa07b6ba96a7965d28e2d80449c9c.jpg

    后来1971年被正式认定为SPICE诞生的年份。

f2e0ce9fa6a0ff59911f27025695b0.jpg

    SPICE还是开源代码的先驱。当时也有开源代码,但都没有太大的商业价值。SPICE就不同了。有人已经看到它的商业价值,但Peterson教授坚持要把代码开源(我们都得真心的感谢Peterson教授)。任何人只要花20美元的手续费,就可以得到SPICE的源代码。有人会问,那这样一来,伯克利是不是损失了一大笔钱呢?事实并非如此。伯克利的SPICE帮助数字设备公司(DEC)卖出了很多台VAX机。反过来,DEC给伯克利电子系捐赠了一千八百万美元。这么多钱可不是一个学校卖代码能获得的。所以,做好事终究还是会得到好报的。

d74435ac0861258c69c91ebf1d6300.jpg

    我们的小伙伴们中间也许也藏有像Nagel这样有天分的学生,下面是Nagel的博士论文链接,有兴趣的你可以翻翻看。

 http://www2.eecs.berkeley.edu/Pubs/TechRpts/1973/ERL-382.pdf



声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表凡亿课堂立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。
相关阅读
进入分区查看更多精彩内容>
精彩评论

暂无评论