老莫

看电影说技术之“气态电路”简史——兼论“微电子”与集成电路的关系

1
阅读(5190) 评论(32)

好久没有说这个系列了,今天突然有了一点灵感。

在前面的文章中,我说过有“固态电路”是不是有“液态电路”和“气态电路”。“液态电路”有没有我不知道,但是这个“气态电路”啊,还真的有。这就是曾经制霸电子信息技术几十年,为电子技术做出过不可磨灭贡献的“电子管”。不太熟悉电子管的朋友们呢,可以推荐先看一部电影叫《密战》。这部电影其实就是翻拍的经典电影《永不消失的电波》,我们的郭富城郭天王在里面饰演了一位地下党的电台工作人员。武可翻墙爬云梯,文可手路电报机。如果抛开一些神剧的元素不谈,这部电影里面表现的早期电报机的一些结构,尤其是电报机中那一个小灯泡一样的真空电子管还是给我留下了很深刻的印象。

鉴于目前优酷上面这个电影还没有免费,而各位又不一定都是会员。这个坑先挖在这里,等过一段时间再来填。(其实是我需要去查一些关于真空电子管方面的资料先……)

  1. @老莫   
    @AlexZhou   
    @老莫   
    尤其是这两个问题:
    1. 单片机是否就是一个小型计算机?---原谅我计算机知识极差。

    2. 前人的电路拓扑,最爱是是如何构思出来的?

    如果您知道,烦请帮忙解答一下。不知道也无妨,毕竟谁都不是圣人。谢谢

    1. 单片机的可以认为就是一个小型的计算机,但也是一种简化版的计算机(相对于现代计算机而言)。

    2. 前人的电路拓扑是经过无数人多次迭代,并随着技术的发展逐步积累出来的。期间还是经历了无数的试错和调整。如果你仔细去读过这方面的技术演进历史,就不会觉得这个是凭空得到的。IEEE电路与系统学会的主席写了一本书来总结模拟电路发展的历史,里面总结了模拟电路一些重要的技术节点。不过目前这本书还没有在国内出版,他还在找合适的人翻译。

    好的,非常感谢!

  2. @AlexZhou   
    @老莫   
    尤其是这两个问题:
    1. 单片机是否就是一个小型计算机?---原谅我计算机知识极差。

    2. 前人的电路拓扑,最爱是是如何构思出来的?

    如果您知道,烦请帮忙解答一下。不知道也无妨,毕竟谁都不是圣人。谢谢

    1. 单片机的可以认为就是一个小型的计算机,但也是一种简化版的计算机(相对于现代计算机而言)。

    2. 前人的电路拓扑是经过无数人多次迭代,并随着技术的发展逐步积累出来的。期间还是经历了无数的试错和调整。如果你仔细去读过这方面的技术演进历史,就不会觉得这个是凭空得到的。IEEE电路与系统学会的主席写了一本书来总结模拟电路发展的历史,里面总结了模拟电路一些重要的技术节点。不过目前这本书还没有在国内出版,他还在找合适的人翻译。

  3. @老莫   
    尤其是这两个问题:
    1. 单片机是否就是一个小型计算机?---原谅我计算机知识极差。

    2. 前人的电路拓扑,最爱是是如何构思出来的?

    如果您知道,烦请帮忙解答一下。不知道也无妨,毕竟谁都不是圣人。谢谢

  4. @老莫   
    期望您能够回答我“提问时间”下面的几个问题,这些对我加深知识理解很有帮助,也是我一直期望知道的,也谢谢您。


  5. @AlexZhou   
    @老莫   
    其实,这也体现出了一种工程设计思路和设计方法学,我们设计电路不是为了苛求完美,而是本着一个原则:够用就行。一个电路的设计,如果耗费的人力成本,时间成本,材料成本过高,还不如用比较成熟的,快速的,速度和稳定性稍微次一些的办法。毕竟,工程设计是为了快速推出产品。
    比如说,其实在工程中,及时发展到今天,FPGA如此成熟了,但是与或非的基本逻辑单元依然在被大量应用。(黄老师没在企业工作过,不知道是否了解这一点?),因为与或非门的逻辑电路便宜!---对于企业而言,一台机器便宜一百块,一千万台机器便宜多少?而FPGA一般是被用在构建大型数字逻辑系统的时候才会用得上---enough is fine!
    那么,什么情况下会需要对电路设计苛求完美呢?----科学研究
    PS:另外,现在可编程的微处理器(MCU)功能变得越来越强大,其实很多时候,我个人觉得,纯粹从功能上讲,数字逻辑门能够做的事情,我用MCU一样可以用软件做。我个人感觉单片机其实就是一个小型的计算机系统,他的工作原理就是计算机的工作原理(可能有争议?请行黄老师指正?我的计算机基础知识很匮乏)。其实,电路发展到如今,基本拓扑已经很成熟了。


    说的比较多,总结得都很对。

    就针对最后这一段回答一下。如果只是从逻辑功能来说,用单片机和用FPGA是可以等价的。如果不考虑速度的要求。用单片机执行一条条指令最后算出来一个逻辑电平值,在功能上是绝对等效的。

    但是在真正的应用中完全不考虑速度的场合也是很少的,必然有靠单片机算力不够的领域。这个时候就要依靠别的方法来做。

    任何一种技术,必然有其适用范围,离开了这个适用范围的探讨是没有什么意义的。所以才会有单片机、嵌入式处理器、FPGA、DSP、GPU这些形形色色的数字电路存在,不然某种技术部就应该消亡了嘛。

    把握正确的需求,能够并在考虑成本、开发时间、功耗、可靠性多方面限制的前提下制定出最适合的技术路线,这个就是工程师的价值所在。

  6. @AlexZhou   
    @老莫   
    显然,这里出现了一个问题,既然我们的模拟电路可以采用只关注MOS管的方式构建出满足条件的电路,那么我们的模拟电路是否可以呢?答案是既可以又不可以。可以是因为这种方法从逻辑和原理上是可行的,既然你可以设计出一个电路放大信号,我又为何不可以设计一个电路对信号实现逻辑代数运算,而不采用已有的成熟电路呢?这不就是我们的“全定制方案”设计吗?每一个MOS管重新考虑,每一个栅的宽长比重新设计,甚至每一个沟道重新选择。如果有足够多的时间,足够多的金钱,在足够理想的情况下,足够多的团队人员,考虑所有的串扰,花大量的人力物力财力去设计出一个为了工程目的最顶尖的,最优质的,无法继续优化的电路。可不可以,当然可以!但是,这样的代价实在太大了,而且设计周期实在是太长了。等你把电路设计出来,或许工艺已经进步,电路已经进入nm级别,器件也许也不再采用MOS管了。--这种设计方案对于模拟电路这种只有上百个晶体管的电路,采用团队公关的方式去做全定制的设计还是可行的。但是对于数字电路,这种高到上亿个晶体管的电路而言,显然,这是做不到的。---所以数字电路只能采用已经设计好的逻辑门去构建出整块电路结构。

    那我们的数字电路是否可行呢?修改“模拟”为“数字”。

  7. @老莫   
    电路结构成熟后,前人为我们奠定了很高的平台。我一直有一种观点,模拟和RF电路的设计,才是真正的电子工程,数字逻辑设计或者MCU 的开发,其实已经是软件工程了(可能不认同?)。
    模拟和RF,尤其是RF电路的设计,相比于数字逻辑设计,也更考验设计工程师的经验和直觉。Razavi的模拟cmos电路设计里面有一句话,模拟电路设计师科学与艺术的结合,这话真没有说错。有时候一种新的电路结构,甚至只是灵机一动,甚至是没有固定方法和模板可寻的。

    提问时间:
    1. 我以上分析,是否哪里理解有错误,烦请指出并加以解释;

    2. 电路能够实现的功能,无论模拟和数字(尤其模拟),是否均可以用MCU去实现?数字肯定可以,模拟的是否也可以?--微波应该还不行

    3. 前人所构思出来的那些精巧的模拟电路,是如何构思出来的,分别是什么人想出来的?这些构思是否有方法和技巧在里面?这些您是否知道,请展开说。

    4. 如果问题2成立,那在速度要求不是特别高的情况下,是否几乎所有的工程场合都采用MCU?那数字电路设计方法学是否又要发生一次新的革命?

    5. MCU 的工作原理是否就是计算机?---单片机原理里面讲单片机内部结构,感觉好像。就是一个最小计算机系统。

  8. @老莫   
    其实,这也体现出了一种工程设计思路和设计方法学,我们设计电路不是为了苛求完美,而是本着一个原则:够用就行。一个电路的设计,如果耗费的人力成本,时间成本,材料成本过高,还不如用比较成熟的,快速的,速度和稳定性稍微次一些的办法。毕竟,工程设计是为了快速推出产品。
    比如说,其实在工程中,及时发展到今天,FPGA如此成熟了,但是与或非的基本逻辑单元依然在被大量应用。(黄老师没在企业工作过,不知道是否了解这一点?),因为与或非门的逻辑电路便宜!---对于企业而言,一台机器便宜一百块,一千万台机器便宜多少?而FPGA一般是被用在构建大型数字逻辑系统的时候才会用得上---enough is fine!
    那么,什么情况下会需要对电路设计苛求完美呢?----科学研究
    PS:另外,现在可编程的微处理器(MCU)功能变得越来越强大,其实很多时候,我个人觉得,纯粹从功能上讲,数字逻辑门能够做的事情,我用MCU一样可以用软件做。我个人感觉单片机其实就是一个小型的计算机系统,他的工作原理就是计算机的工作原理(可能有争议?请行黄老师指正?我的计算机基础知识很匮乏)。其实,电路发展到如今,基本拓扑已经很成熟了。


  9. @老莫   
    显然,这里出现了一个问题,既然我们的模拟电路可以采用只关注MOS管的方式构建出满足条件的电路,那么我们的模拟电路是否可以呢?答案是既可以又不可以。可以是因为这种方法从逻辑和原理上是可行的,既然你可以设计出一个电路放大信号,我又为何不可以设计一个电路对信号实现逻辑代数运算,而不采用已有的成熟电路呢?这不就是我们的“全定制方案”设计吗?每一个MOS管重新考虑,每一个栅的宽长比重新设计,甚至每一个沟道重新选择。如果有足够多的时间,足够多的金钱,在足够理想的情况下,足够多的团队人员,考虑所有的串扰,花大量的人力物力财力去设计出一个为了工程目的最顶尖的,最优质的,无法继续优化的电路。可不可以,当然可以!但是,这样的代价实在太大了,而且设计周期实在是太长了。等你把电路设计出来,或许工艺已经进步,电路已经进入nm级别,器件也许也不再采用MOS管了。--这种设计方案对于模拟电路这种只有上百个晶体管的电路,采用团队公关的方式去做全定制的设计还是可行的。但是对于数字电路,这种高到上亿个晶体管的电路而言,显然,这是做不到的。---所以数字电路只能采用已经设计好的逻辑门去构建出整块电路结构。
  10. @老莫   
    面积需要达到多大,这些问题,灵活性过高,无法套用像数字电路一样套用现成的模块。比如说,我的一个工程问题需要实现Y=A&&B 这样一个简单的功能,数字电路中有一个现成的与门,拿来即用。但是模拟电路中有时候需要考虑的问题比数字电路中复杂得多,前面说过的成本,功耗,面积等等一系列问题,都是需要取舍的。数字电路中,我们通过控制逻辑门电路的排列组合来得到一个我们需要的输出,那模拟电路中呢?我们的被控原件是半导体器件,在现在的主流工艺下,由于现在的主流工艺均是基于CMOS工艺,所以我们的被控原件是MOS管,MOS管有一个很好的特性,可以通过控制栅极电压从而控制源级和漏极的电流(具体设计到半导体器件和半导体物理,感兴趣的自学)。所以,我们可以通过大量MOS管的排列组合,相互连接,构建出一个起作用的具体电路,可以起到放大,电流镜,运算,AD转换,采样等一系列的功能,从而达到我们对信号处理的目的(感慨前人真是聪明,这些像艺术品一样的电路,是如何被构思出来的)。---我们的模拟电路设计,就是在前人构建出的MOS电路上做适当的修改演进,从而得到满足我们要求的,符合我们约束条件的电路。
  11. @老莫   
    那么模拟电路呢?我个人认为用模拟的方法划分电路既好也不好,因为模拟电路实际上就是一个单个的功能电路,不管是逻辑门,还是放大,比较,运算,都是单个的电路去处理一段信号,电路的作用就是为了处理信号。既然模拟电路就是单个功能的具体电路,那么(引用黄老师的一句话)-数字电路与其说是电路设计,不如说是逻辑设计。在数字电路里面,我们真的有设计一块电路拓扑吗?显然是没有的。我们连与或非门电路长啥样都不知道,那是计算机完成的工作,前人早就设计好了与或非的电路拓扑,我们拿过来用。
    那模拟电路,或者说拓扑结构电路呢?我们依然用输入输出的观点来看待,我们给定一个信号输入,比如说2mA的型号,期望能够得到一个我们想要的输出,比如放大为20mA的信号。我们自然想到,既然数字电路中有拿来即用的电路,那我实现信号放大,可以拿来即用吗?---这个问题,如何回答呢?有,但是也没有。有是因为电子工程领域发展如此多年,肯定前人已经积累的大量的放大电路模块,没有,是因为这些模块不一定符合你的要求。你的输入电压是多少,输入电压是多少,是电流放大还是电压放大还是功率放大,增益是多少,噪声容限是多少,成本如何控制,


  12. @老莫   
    所以,计算机取代了人选择具体门电路并连线的工作,连线也对应着固定的逻辑和方法,哪一个门的哪一个端口的输入,在特定的约束条件下,对应着另外一个门的哪一个端口的输出,况且规模过大时,人眼睛连线也连不过来。到此,我们工程问题转化成了如何把实际问题抽象成逻辑函数的问题,因为计算机还没有这么智能,无法取代这一部分工作。那么我们的工程类问题也可以进一步被抽象,一个工程类问题必然是有输入,有输出,无论中间的问题多么复杂,无输入的工程类问题,岂不是自发动作?无输出的工程类问题,我要他又有何用?既然如此,我们可否讲这个层次也让计算机去做呢?硬件描述语言很好的解决了这个问题,我定义出一个电路的输入,输出接口,并描述出输入和输出之间的逻辑关系和逻辑表达式,在加上适当的时间约束和触发约束。就构建出了这个工程类问题的更高层次抽象程度。我直接可以用以上方法描绘出这段逻辑功能函数,让计算机自动综合出具体的逻辑函数,计算机在得到逻辑函数后,自动选取库文件里面的逻辑门电路,构建出一个完整的电路。-到此,我们的工程类问题基本转化为了输入输出接口和之间的逻辑功能的描述问题,其他部分,交给计算机去做吧!


  13. @老莫   
    总结一下
    1. 数字电路:是为了用电路去处理一段逻辑函数,完成一段逻辑功能,并在其中加上适当的约束;

      一个工程类问题可以等效为一个数学问题,一个数学问题可以用函数表示,其中,纯逻辑问题可以仅仅只用逻辑函数(布尔代数)表示,一段逻辑函数可以化简为与或非门的加减乘除,而与或非门又可以用相应的电路结构来表示,电路的输出通过放大器后又可以控制执行原件。到此,一个工程类问题的处理方式转化为了一个数字电路的设计问题。

      早期,电子工程师所做的工作是根据具体的工程类问题抽象出逻辑函数表达式,然后选择相应的与或非门电路(已经成熟的)在pcb上通过走线的方式连接起来,单个门电路构成了一块电路板。-最早期的电子工程师就是这样设计电路的,而且用的是分立元器件。

      随着计算机的进步,人们发现,一个逻辑门对应着一个或者多个门电路的表达,每种门电路有对应的优点和缺点,也有对应的适用范围和优势,如果我们已知一段逻辑函数,那么我们需要做的工作就是选择逻辑门电路通过不断的串联并联构成电路集合,对于这件事情,计算机似乎比人要拿手,毕竟计算机可以更方便存储每一种门电路的优缺点,哪一种匹配什么场合应用,计算机比人算的要快,出错率低

  14. @AlexZhou   
    @老莫  
    抱歉昨天实在太忙了,今天早上过来才看到您的消息,没问题,我也正好有这个想法,开一个专栏谈谈自己工作上的一些体会和技术问题。
    PS:另外我想问一下,您对集成电路设计(无论模拟还是数字)设计中IP核的设计了不了解?了解多少?中国大陆地区有多少公司可以独立设计IP核,尤其是模拟IP核。
    这种IP核的设计难度有多大?设计周期是否很长?对于一个集成电路公司而言,是否可以采用所有IP全部外购的方式(据我了解,国内大多数公司都是这么做的?),如果可以,那就是把别人的IP买过来拼凑了一下,这样IC产业岂不变成了劳动密集型的制造业了??--原谅我的愚钝。。


    单纯靠卖IP是很难养活一家公司的,因为市场太过间接。另外在中国这个环境下面IP授权业务其实和传统软件业务一样,有很大的“盗版风险”。第三点就是要做IP这个生意要面临比较强的竞争。现在EDA工具公司、Foundry,都有自己的IP授权业务。所以国内单纯做IP的公司早年曾经有一些,现在基本都死掉了或者转型自己去做一些专有芯片了。国外的IP授权业务是ARM一家独大,其它的都是一些很小的专用IP授权公司在市场缝隙间活着。搞一些比如NoC的IP、专用DSP的IP之类的。通用IP被EDA公司、Foundry和ARM一分,就不剩下什么了。

    第二个问题就是有钱是不是就可以做芯片,这个当然是的。当钱多到足够多的时候,可以像做山寨机一样做芯片,后面还可以请到ARM和EDA公司做足够的技术支持。只不过现在芯片也不是什么暴利行业,全买IP授权背后的成本(主要是人力支持成本)高的吓人。毕竟在芯片上整合的试错成本太高了,不能像玩电路板那样多搞几版迭代。那么即使是现成的IP要整合到一起,把功能完全打通不是那么容易的。所以,要这么玩下来做出的芯片估计那成本就足够酸爽。

    其实现在还有一种模式,非常有中国特色。就是外资给钱给技术甚至直接给版图,扶持一个“黄皮白心”的企业起来。外资用自己过时的技术打压想从低端起步的中国企业,搞“以华制华”。这几年这种模式越来越多了。


  15. @AlexZhou   
    @老莫  
    抱歉昨天实在太忙了,今天早上过来才看到您的消息,没问题,我也正好有这个想法,开一个专栏谈谈自己工作上的一些体会和技术问题。
    PS:另外我想问一下,您对集成电路设计(无论模拟还是数字)设计中IP核的设计了不了解?了解多少?中国大陆地区有多少公司可以独立设计IP核,尤其是模拟IP核。
    这种IP核的设计难度有多大?设计周期是否很长?对于一个集成电路公司而言,是否可以采用所有IP全部外购的方式(据我了解,国内大多数公司都是这么做的?),如果可以,那就是把别人的IP买过来拼凑了一下,这样IC产业岂不变成了劳动密集型的制造业了??--原谅我的愚钝。。

    单纯靠卖IP是很难养活一家公司的,因为市场太过间接。另外在中国这个环境下面IP授权业务其实和传统软件业务一样,有很大的“盗版风险”。第三点就是要做IP这个生意要面临比较强的竞争。现在EDA工具公司、Foundry,都有自己的IP授权业务。所以国内单纯做IP的公司早年曾经有一些,现在基本都死掉了或者转型自己去做一些专有芯片了。国外的IP授权业务是ARM一家独大,其它的都是一些很小的专用IP授权公司在市场缝隙间活着。搞一些比如NoC的IP、专用DSP的IP之类的。通用IP被EDA公司、Foundry和ARM一分,就不剩下什么了。

    第二个问题就是有钱是不是就可以做芯片,这个当然是的。当钱多到足够多的时候,可以像做山寨机一样做芯片,后面还可以请到ARM和EDA公司做足够的技术支持。只不过现在芯片也不是什么暴利行业,全买IP授权背后的成本(主要是人力支持成本)高的吓人。毕竟在芯片上整合的试错成本太高了,不能像玩电路板那样多搞几版迭代。那么即使是现成的IP要整合到一起,把功能完全打通不是那么容易的。所以,要这么玩下来做出的芯片估计那成本就足够酸爽。

    其实现在还有一种模式,非常有中国特色。就是外资给钱给技术甚至直接给版图,扶持一个“黄皮白心”的企业起来。外资用自己过时的技术打压想从低端起步的中国企业,搞“以华制华”。这几年这种模式越来越多了。