老莫

填坑:CS大法好之二——三生三世,十里桃花!

4
阅读(23632)

今年的ASPLOS(ACM International Conference on Architectural Support for Programming Languages and Operating Systems,计算机体系结构领域的顶级会议)在西安开。于是在成都买了张火车票就跑到西安来开会来了。今天晚上是ASPLOS的欢迎鸡尾酒会,不过很尴尬的发现其实我在计算机体系结构领域就不认识几个人。这大概就是我这在集成电路领域搞计算机体系结构研究人的悲哀吧。那一瞬间我想起了那一则有关蝙蝠不是鸟的寓言……

不过惊喜往往就在不经意间发生,一位女士走到我面前主动和我攀谈起来。看起来我这风度还是可以嘛,说明胖了以后果然更有亲和力了。不过这一聊可不得了,原来这位女士是大名鼎鼎的海思“图灵小组”负责技术规划的。再深一聊,这位小姐姐是川大毕业的,她的导师川大著名的“老一辈FPGA教育工作者”汪教授。汪教授和我的导师李广军教授同属一辈人,为FPGA教育作出了不可磨灭的贡献。当年我一手操办第七届研究生电子设计大赛西南赛区的时候,汪教授做为老专家代表川大出席坐镇。

和小姐姐聊了半天啊,主要时聊了海思为什么要成立“图灵组”以及后来合作的可能性。突然间发现其实现在计算机体系结构在集成电路领域还很重要的。更关键的是我们这些做过集成电路的人再来看计算机体系结构从看法和视角上都更有共同点,不像纯计算机出身的那帮人搞的那么天马行空。但和她的一番谈话,却让我更加觉得有必要来把三生三世十里桃花这个坑赶紧填了。

分割线,正式开始填坑!——————————————————————————————————

为什么会取“三生三世,十里桃花”这个副标题?因为电子技术和计算机技术之间的关系按时间来看真可以被划分为“三生三世”,而这二者的关系还真是“暧昧不清”,加上个十里桃花也不为过。

第一世:特殊的电子产品,电子技术孕育出的计算机。

虽然早在19世纪中叶巴贝奇就尝试用机械技术设计计算机,但最终设计出的各类计算机都因计算速度和通用性的缺陷而无法真正得到实用。二战时期盟军和德国在加解密技术上的对抗加剧了对研制计算机的需求,无论是加密还是破解都愈发需要强大的计算能力。这一时期,英国的科研机构对此做了大量的工作。而现代计算机技术的奠基人——阿兰.图灵也是因为参与这一工作而获得了灵感,从而提出了设计计算机的理论构想。这部分内容在电影《模仿游戏》中有具体的表现。

计算机技术的真正突破是在二战以后。二战中对雷达和通信的需求促进了电子技术尤其是电子元器件和电路设计技术的进步,同时由于二战结束后有大量的电子元器件闲置,使得研制计算机系统的技术基础和元器件都准备充分。于是在战后有一大帮科研人员利用二战剩余的电子元器件开始研制计算机。在这一时期,如何设计并实现一个计算机是这一阶段的主题。

这一阶段可以说得上是八仙过海,各显神通。那个时代的计算机系还分为两个专业,一个叫数字计算机,另外一个叫模拟计算机。由此可见各种设计方案、实现技术都用上了。从中国计算机发展的历史上也可以看出这一点,早期的计算机研究就是在想尽各种办法来研究计算机。

而就在1950年代开始发端的半导体与集成电路技术更是给计算机的发展注入了活力,集成电路这种新的电子元器件以及在其基础上发展出来的新的电路设计技术让计算机的设计往前发展了不少。甚至有一种计算机的“断代”方法是以使用集成电路的规模来断定的。

在这一时期,基本上是“电子推着计算机走”的状态。电子技术往前进一步,计算机的设计和实现方法就往前更进一步。这和别的电子设备并无区别,而计算机无非就是一种用于计算功能的特定电子设备而已。

第二世:并行发展,计算机技术逐步“反哺”电子技术

随着电子技术尤其是集成电路技术的发展,计算机走向来微型化和集成化。这带来了两个后果:计算机的“通用化”和“元器件化”。计算机的“通用化”是以PC机的出现为标志的,到了这个阶段计算机内部的结构和组成方式已经基本确定。CPU、内存、总线、接口等已经成为标准化的固定配置。而计算机的“元器件化”则是当计算机微型化和标准化了以后,计算机被直接当成一种电子元器件被用于与电子系统的设计中。

计算机通用化了以后,使得继续研究怪异的计算机设计和实现技术已经显得毫无必要。因此在进一步提升计算机性能的基础上,计算机研制的重点更多的转向的系统软件设计和应用技术的层面。这一时代操作系统的研究突飞猛进,应用计算机去处理各种事务的研究也逐渐萌芽。例如用计算机处理文字、图像等等。

如果说系统软件和计算机应用技术的发展尚属于计算机独立发展的范畴,那么计算机的元器件化就是计算机逐步开始“反哺”电子技术的一个表现。既然计算机技术可以被用于处理各种各样的信息,那么可不可以将计算机作为电子系统的一部分呢?反正现代计算机技术和电子技术的基础都是依靠的电子学基本原理。而这种设计方法,其实就是“嵌入式系统”的发源。

所以对于这个时期的电子电路的设计者而言,他们的手中有了一种被称为“微处理器”或者“微型计算机”的“超级电子元器件”。这种电子元器件可以通过“编程”的方法来获得不同的功能,可以在程序的驱动下对输入的信号序列加以处理后再反馈到电子系统中。在更多的时候这种计算机的用法可以看作把计算机作为一种“可编程数字信号发生器”或者“可编程状态机”,根据外界输入的信号产生特定的数字信号响应。

可以说,这一阶段计算机技术和电子技术是最“和谐”的。双方各行其道,又相互扶持。然而,行业的发展可不能让这种“和谐”的局面一只持续下去。

第三世:一时瑜亮,计算机技术“反噬”电子技术

“微处理器”或者“微型计算机”这种“超级电子元器件”一旦被用起来了以后,其实就和“吸毒”差不多。由于这些超级元器件使用灵活且学习难度相对较低,在电路设计中就越用越上瘾。而电子技术尤其是集成电路技术的进步,使得这些“超级元器件”也越来越好用,功能越来越强大。

这个时候情况就发生了一些变化。本来是作为一种“元器件”的微处理器在逐步往SoC演进了以后,变成了核心元器件甚至是唯一的元器件。原本需要很多种元器件配合完成的电子系统,现在变成了以一种已经SoC化的计算机为主来加以实现。原来系统的功能或者被融合到SoC中,或者被用纯软件的方式加以实现。这样一来,计算机技术就“反噬”来电子技术。

这种“反噬”过程是以智能手机的出现为标志的。如果说以前的手机是一部嵌入了计算机的通信设备,那么智能手机就是一部加装来通信装置的微型计算机。而现在岂止是智能手机被做成了特定的计算机,几乎是所有的设备都在往自个方向发展。例如现在的“智能投影仪”,哪里还是投影仪?完全是一个带有投影功能的微型计算机而已。这样的“智能投影仪”自身具备联网、播放优盘等功能,还有专门的USB接口可以插鼠标加以操作。

如果各位还认为这种“反噬”只是停留在“智能设备”这种小玩意上,那就大错特错了。这种“反噬”已经干倒了大型的通信设备上了。前几年在四川省通信学会开会的时候,听四川电信的技术人员说过一句话:现在的通信设备啊,就是没有鼠标键盘和显示器的电脑嘛。当时还不觉得有什么。今天和海思的师姐一聊才知道现在这反噬已经倒了“丧心病狂”的地步。

有多么“丧心病狂”呢?且不说Google现在自己拉跨海光纤把自己的数据中心组网,而让运营商网络彻底沦为一个“接入网”。现在以AT&T为代表的运营商已经在自我革命,把自己的那些专用的通信交换机、路由器用插入了加速器板卡的通用服务器加以取代。那些积累了多少工程师和科学家智慧研制的通信产品,正在被逐步的扫进历史的垃圾堆里。所以华为现在才在天天提无人区,提自己很迷茫……而前一段时间华为炒得沸沸扬扬的34岁辞退,实际上辞退的就是“设备交付人员”,也就是这些交换机、路由器的安装、调试和维护人员。既然设备都已经不用了,还要养这些“交付人员”干什么呢?

在这一世,计算机技术张开了血盆大口将电子技术狠狠的咬过去。电子技术在整个信息行业中会不可避免的“边缘化”。


那么还会有第四世吗?目前还不知道。我们现在应该考虑的是如何过好这第三世。如何才能过好第三世,以及我到底从Xilinx的资料上看到了什么?下期揭晓!