观点:未来的嵌入式设计将是什么样子?
未来,一直在改变的嵌入式系统设计环境会持续的进化。开发环境该如何变化来进行适应改变呢?Cypress半导体公司的Ata Khan有一些自己的观点。
嵌入式处理器现在已经无所不在,几乎所有用电的设备都会有一个嵌入式处理器对各种应用进行控制或(和)运算。三十多年来,价格的不断下降和运算和控制能力不断的提升推动了这些处理器的繁荣昌盛和多样化。
摩尔定律、竞争的压力和消费电子设备的不断创新,使得在不久以后,我们日常用到的嵌入式处理器将与主流的计算机处理器具备一样的处理能力。
许多的这些创新都是由人们的消费行为所推动的,人类的行为一般会忽视线性的改进,而是倾向于指数级的改进,因此驱使出更多功能和更加复杂的强大系统。正因为这样,如今的消费电子设备需要配备一个三倍MIPS于需要的处理能力的嵌入式处理器,上G容量的内存,并且要求通过所有流行的通信协议连接至网络,这要求硬件(处理器)、软件开发工具、 *** 作系统或者编译器不能出问题。另外,嵌入式设计者本身也需要理解最新的硬件和软件并利用它们设计出可以市场化的应用。
然而,必须看到一个实际的问题是人类的设计能力“带宽”远远跟不上处理能力上升的程度。因此,复杂度的提高使设计被延期,简单的增加人手并不能解决生产力提升的问题,正如一些书籍里面指出的那样,比如畅销已久的著作《The Mythical MAN-MONTH》一书。
目前设计的形势
设计一个现代嵌入式系统是件复杂的多任务工作。第一步是定义该产品的潜在用户的行为需求,并了解竞争的前景和应对的方案。
下一步是决定公司已有的资源是否能减轻或关联能够实现的系统规格,比如软件、工具、处理器和其他需要的元器件。这些工作在实际软硬件工作开始之前必须完成。
一旦确定设计起步的前期工作完成了,最为艰巨的硬件和软件设计就要开始了。有代表性的,嵌入式设计包括三个主要的模块:处理运算、数字(外围和逻辑)、模拟(传感和控制的物理接口)。
一个系统多半是由以上三个模块的各种元器件构成,这三个模块由硬件和软件的接口进行联系。一旦一个设计在软件和硬件上“定型”了,再要改变的话很困难且需要花费时间和金钱,因为系统模块之间的软硬件具备互 *** 作性。
嵌入式设计者需要抢在竞争对手之前将产品上市,以取得市场先机并充分重新利用投资、知识产权和工具,他们选择的架构和设计平台必须灵活并可修改。
这些工具和器件必须具备很强的灵活性来应对变化(事实上,变化无时无刻不发生),同时需要利用产业生态系统来获得大的开发社群和标准组织的支持。
这些挑战集合的结果是开发周期越长,设计需要变更的可能性就越大,这同时又让开发周期变得更长,从而形成恶性循环。因此快速的产品开发不仅能提供成本的优势,还能降低开发风险并提供最及时的用户反馈并领先于市场。
新的设计思路
假定一个典型的嵌入式系统包括处理、数字、模拟三个模块,而该系统需要合适的软件将各个模块联系起来,开发者一般会提出下面的问题:
1. 我们如何确定我们正在加速整个系统的设计进程?Amdahl定律进行了解释,整个项目进程中的一个个连续的部分的状态决定了全部的有潜力的改进。因此,一些基础的流程必须进行改变。
2. 我们如何加速学习的进程来聚焦于让设计更快的市场化?经验告诉我们采用阶梯式的细致工作比到最后再进行测试更加有效。这样的必然结果是bug越早被找出来,改进的成本就越低。
3. 如何降低总体设计的工作量?换句话来说,系统的哪些部分可以被智能的重复使用来节省时间和工作量。
4. 我们如何在所有的设计流程中执行设计变更?在设计初期的设计变更比较容易进行执行。因为整个设计流程的互相联系,在设计定型之后再进行设计变更往往就不太容易了。
5. 如何进行硬件和软件的升级?因为各种通信端口的缘故,软件更新相对更加简单,另外软件更新已经非常普遍了,并且被消费者作为一种用户体验所接受。难的是硬件功能的更新。比如,如果某个状态机需要改变,或者该状态机需要在不同的时间执行不同的任务该怎么办?
6. 我们如何利用标准的工具?因为编译器和调试器不断进化,在工具方面需要学习和改进的很多(而且往往要花钱)。新的嵌入式设计技术必须支持工业标准的工具,来提升改进的空间并降低设计的投资。
7. 我们会提供一个平台吗?本质上,采用一个被充分定义了的硬件和软件架构的可升级的平台,可以保证该设计针对一个应用的规模化,并可以重复使用以前的工作(无论硬件还是软件)。
因此一个理想的嵌入式平台需要具备一个基础的功能架构,该架构是灵活的和可动态配置的。该平台除了为嵌入式设计者创造针对特定应用的代码,还需要自动执行开发周期的所有的流程。
该架构还需要具备高度的可升级性,来支持技术和工具的重复使用,并能到大的产业生态系统的标准开发工具的支持。另外,还必须具备系统级的集成和采用高级半导体工艺的低功耗和小体积特性,这样能让客户的效率最优化并降低功耗。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)