◆            且从光网看“光芯”   这里的“光芯”特指用于光网 (optical internet) 的芯片。虽然在光网中 信息由光作为载体来传播,但绝大多数的信息交换 (switching),路由 (routing) 都还是通过电子芯片来完成。 随着光网不断地更新和升级,对于“光芯”设计的要求也越来越严格。首先 是速度上的要求,目前广域网所普遍采用的OC-192网络协议,要求芯片能够处 理传输速率为每秒10 GBits的数据流,而正在开发中的OC-768系统更是将这个要 求提高到每秒40 GBits。 除了速度上的考虑,另一个非常重要的因素是“光芯”的可编程性。原因主 要有两方面,首先是因为在网络发展的历史上,人们曾经提出过种类繁多的网络 协议,象Frame Relay, ATM,Sonet 等等。一个设计良好的芯片应该具有比较广 泛的适用范围,能够处理多种协议。另外,各种网络协议本身也在不断地发展和 完善,而且网络新设备,新应用都会对网络协议提出新的要求。象最新的网络协 议如MPLS, Diffserv,几乎每隔几个月就会出新的版本。“光芯”只有具备了强 大的可编程能力,才可以跟上协议的发展。 遗憾的是速度和可编程性的要求常常是相冲突的,面向光纤网络的的芯片大 致上分裂成以下的三大阵营。 【网络微处理器 (Networking Processor)】 网络巨人Alctel就是这个阵营的强力支持者。在Alctel看来,目前光网最需 要的就是“智慧”,而网络微处理器则是让“光网”变得聪明 (Smart) 起来的 最好选择。 由于网络多媒体,虚拟现实等各种新应用的出现,人们已经越来越不满足仅 仅将网络视为一个简单的数据包交换和分发的网络。这些新的应用要求网络路由 器在发送数据包之前对于数据包先做出详尽的分析,并基于分析的结果对于不同 的数据包分别处理。用Alctel的话来说是“深深地去‘凝视’数据包” (look deep into the packet)。 要想详尽地分析数据包,所需算法的复杂程度则大大的增加。而且算法依赖 于网络协议。对于复杂且不断需要更改的算法,最好的方法当然是通过软件来实 现。算法变了,只需要将系统软件更新和重装即可。而网络微处理器恰恰就是用 来做这事的。网络微处理器和通用微处理器的区别仅仅在于其对于网络所做出的 优化,具有强大的IO和内存处理的功能。网络微处理器上一样地可以装上操作 系统,跑C,Java程序。其算法及软件的开发于通用CPU也没有本质区别。 然而网络微处理器在强大的编程能力之后,却往往在速度上无法做到最好。 而越向网络的中心(core)走,对于速度的要求就越来越高,这个时候人们 就想到了ASIC。 【ASIC (Application Specific Integrated Circuits)】 ASIC,顾名思义是针对具体应用设计的芯片。既然是有针对性的设计, 当然就少了可编程的能力,但是设计者却可以根据具体的要求尽量地做到优化, 比如说速度优化。而且ASIC的设计常常可以做到“物尽其用”,用尽可能少 的管子(transistor)来实现系统的功能,做到尽量的节约成本。 ASIC还有一个非常重要的优势,对于同一种芯片工艺,ASIC所能达 到的集成度是最高的。最好的ASIC所能集成的晶体管(transistor)数目可 以是相同工艺FPGA的好几倍。 因为上述的原因,ASIC被广泛地应用于最高端的路由器,交换器的设计 中。 【可编程阵列FPGA】 FPGA是介于网络微处理器和ASIC之间的芯片。可以说兼具两者之长, 当然从某种意义上讲,也可以说是兼具两者之短。 FPGA也具有可编程的能力,但其可编程性是通过硬件实现的,没有软件 编程那么灵活。FPGA的设计者们也意识到了这一点,所以最新的FPGA芯 片上可以根据用户的要求加上一个微处理器的核心(core)。FPGA行业 的的领头公司Altera在其最新推出的Excalibur系列芯片上就放 了ARMs的微处理器,而另一领头的Xilinx也声称要在其Virtex II芯 片上放上Power PC的微处理器。 除了加上微处理器的核心,FPGA芯片公司还花大力开发芯片的IO。A ltera的Mercury系列有18个高速的IO,每个可以跑在1.25 Gbps。其死对头Xilinx则干脆去买了一个专门做IO的芯片公司 Rocket Chip,准备将3.125 Gps的IO做在其Virtex II芯片系列上。 【高科技新秀们的一些想法】 除了三大主要阵营,还有一些高科技的散兵游勇也都提出了自己“古怪精灵” 的设计。 Chameleon Systems 就提出了一个可以重复设定的微处理器 (Reconfigurable Processor) 体系结构。其中包括有12套运算处理单元。而一个专门的微处理 器核心用来编程和设置这些运算处理单元。当某一件工作完成后,核心微处理器 可以将这些运算微处理器单远从新设置,用来完成后续的工作。 光纤网络吸引了目前高科技领域绝大多数的目光,可以想象这个领域的竞争 将会是异常激烈。 米老鼠是怎么说的?──演出开始了。 (于加州硅谷)