我现在得出了一个结论,我们中的绝大多数人对未来科技走向毫无头绪。我们只是忙着推动科技进步,甚至连方向是否正确都不清楚。丰富的旅行经验告诉我们一个常识,长途旅行必须理清两个问题:
1. 我现在哪儿?
2. 我要去哪儿?
科技领域同理,我们需要弄清楚自己是不是正朝着正确的方向前进。所以我请TI的一些高级技术人员思索2020年IC科技尖端的水平会发展到何种程度。你也许会说我们得有十倍于双2.0的视力才能看清2020年的情况。
下面是我对这一主题的初步感想。
处理单元(Processing Element, PE)将变成单时钟域。多年来我们相信摩尔定律将带来越来越快的时钟频率。现在终于发现时钟频率并非我们的朋友。事实上,我们早在15年前就该意识到这个问题。不过随着技术的进步,处理单元将变得足以让CPU在一个时钟周期内完成所有与资源的通信。
系统将由多个处理单元构成。嵌入式系统由很多异构处理单元构成,每个处理单元都是一个“单时钟域”处理器。处理单元的布局将类似现在的FPGA。
我们将发挥三维空间的优势。通过堆叠封装技术进行整合将会像片上系统一样平常。
开发者都将用高级语言编程。开发环境可以掌控系统的所有资源,包括微处理器、DSP、加速器、外设、模拟信号处理器、模拟外设、RF无线射频等等。
IC设计将由更小的团队(5-10名设计师)完成,硬件设计及所需时间更短(6-12个月)。复用(Reuse)将会成为常态。我来解释一下复用的两种定义:
1. 我的设计工作完成的很出色,其他人以后都用它。
2. 我没时间重复设计,所以需要找到足够相近的设计以保证按时完成任务。
不幸的是现在第一种定义更为常用。小设计团队加上更紧张的时间限制迫使我们采用第二种定义,现在已经有公司这么做了。
大部分创新将在硬件基础之上的软件内完成。
硬件将成为创新设计人员实现构想的平台的组成部分。
这是我对2020年的初步看法,虽然预测未来主要依靠想象力。不过dsp显示出一些强烈的趋势,我认为未来几年的发展是可预测的。
2009年:多核已经上市。随着片上系统体系结构越来越多地被采用,单核CPU设备将越来越少。
2012年:片上网络(Network-on-Chip,NoC)到来。片上网络是一种高性能设备,通过分组点对点异步高速通信通道连接处理单元。
2010-2015年:组件式软件。一个设备上的内核数量仍然有限,“组件开发者”开发单独的软件组件用于单个计算集群单元,然后再组装为一个多核系统。基于该原则的开发工具提升了稳定性,因为软件通信体系结构(SCA,用于SDR,软件定义无线电驱动了硬件通过中间件实现虚拟化。
2015-2020 年:单程序多数据(Single program multiple data, SPMD)。内核数量达到32个以后,组件式方法将逐渐失效,继而转向高性能计算(high-performance computing , HPC)中所采用的SPMD。嵌入式软件社区负责开发SPMD方式,让程序在编译后同时运行于多个内核。最初需要通信流(communication flow)的明确解释,现在选派(pragmas)被引入激发算法的天然的并行优势,以深挖多核设备的潜能。
2015:FPGA的终结。这将是可编程性发展史的里程碑。相比组成FPGA的ALU/LUT分布式结构,小型多核CPU在显著降低功耗的同时,为复杂算法和通信模式提供了更丰富的映射选项。
2020:CPU消失。功能在多CPU上的分散处理急剧简化了每个CPU的硅成本,而基于硬件的操作系统支持可以高效管理片上网络传输。程序员无需留意CPU间通信,可以在不知晓具体有哪些独立执行单元参与的情况下进行开发、debug。编程更关注总体数据流而不是独立的部分。
2020年的产品品种和2009年相比不会有太大变化。2020年,嵌入式DSP仍将是各种CPU和加速器的多样化组合。即便程序员在编程时不再留意各设备的差异,有些设备在执行特定任务时表现更好这一现象未来不会改变。
因为片上系统的价值很大程度上建立在外围设备的悉心挑选之上,CPU和DSP制造商的差异体现在各种IP模块组合与连接方式。最后,开发工具品质和应用软件支持将决定谁能成为第一流厂商 |