导航人生,定位梦想 - arohk的BLOG http://arohk.52rd.net - 复制 - 收藏
arohk 发表于 2008-12-20 21:33:00

目前设计的形势设计一个现代嵌入式系统是件复杂的多任务工作。

第一步是定义该产品的潜在用户的行为需求,并了解竞争的前景和应对的方案。


下一步是决定公司已有的资源是否能减轻或关联能够实现的系统规格,比如软件、工具、处理器和其他需要的元器件。这些工作在实际软硬件工作开始之前必须完成。


一旦确定设计起步的前期工作完成了,最为艰巨的硬件和软件设计就要开始了。有代表性的,嵌入式设计包括三个主要的模块:处理运算、数字(外围和逻辑)、模拟(传感和控制的物理接口)。


一个系统多半是由以上三个模块的各种元器件构成,这三个模块由硬件和软件的接口进行联系。一旦一个设计在软件和硬件上“定型”了,再要改变的话很困难且需要花费时间和金钱,因为系统模块之间的软硬件具备互操作性。


嵌入式设计者需要抢在竞争对手之前将产品上市,以取得市场先机并充分重新利用投资、知识产权和工具,他们选择的架构和设计平台必须灵活并可修改。


这些工具和器件必须具备很强的灵活性来应对变化(事实上,变化无时无刻不发生),同时需要利用产业生态系统来获得大的开发社群和标准组织的支持。


这些挑战集合的结果是开发周期越长,设计需要变更的可能性就越大,这同时又让开发周期变得更长,从而形成恶性循环。因此快速的产品开发不仅能提供成本的优势,还能降低开发风险并提供最及时的用户反馈并领先于市场。


新的设计思路


假定一个典型的嵌入式系统包括处理、数字、模拟三个模块,而该系统需要合适的软件将各个模块联系起来,开发者一般会提出下面的问题:


1. 我们如何确定我们正在加速整个系统的设计进程?Amdahl定律进行了解释,整个项目进程中的一个个连续的部分的状态决定了全部的有潜力的改进。因此,一些基础的流程必须进行改变。


2. 我们如何加速学习的进程来聚焦于让设计更快的市场化?经验告诉我们采用阶梯式的细致工作比到最后再进行测试更加有效。这样的必然结果是bug越早被找出来,改进的成本就越低。


3. 如何降低总体设计的工作量?换句话来说,系统的哪些部分可以被智能的重复使用来节省时间和工作量。


4. 我们如何在所有的设计流程中执行设计变更?在设计初期的设计变更比较容易进行执行。因为整个设计流程的互相联系,在设计定型之后再进行设计变更往往就不太容易了。


5. 如何进行硬件和软件的升级?因为各种通信端口的缘故,软件更新相对更加简单,另外软件更新已经非常普遍了,并且被消费者作为一种用户体验所接受。难的是硬件功能的更新。比如,如果某个状态机需要改变,或者该状态机需要在不同的时间执行不同的任务该怎么办?


6. 我们如何利用标准的工具?因为编译器和调试器不断进化,在工具方面需要学习和改进的很多(而且往往要花钱)。新的嵌入式设计技术必须支持工业标准的工具,来提升改进的空间并降低设计的投资。


7. 我们会提供一个平台吗?本质上,采用一个被充分定义了的硬件和软件架构的可升级的平台,可以保证该设计针对一个应用的规模化,并可以重复使用以前的工作(无论硬件还是软件)。


因此一个理想的嵌入式平台需要具备一个基础的功能架构,该架构是灵活的和可动态配置的。该平台除了为嵌入式设计者创造针对特定应用的代码,还需要自动执行开发周期的所有的流程。


该架构还需要具备高度的可升级性,来支持技术和工具的重复使用,并能到大的产业生态系统的标准开发工具的支持。另外,还必须具备系统级的集成和采用高级半导体工艺的低功耗和小体积特性,这样能让客户的效率最优化并降低功耗。


    摘自《globalsources》  2008.10.28

阅读全文(574) | 评论(0)
评 论
昵 称: 匿名
验证码: 1542
博 主
进入arohk的首页
博客名称:导航人生,定位梦想
日志总数:45
评论数量:62
访问次数:67547
建立时间:2007年7月29日
导 航
日 历
«September 2010»
1234
567891011
12131415161718
19202122232425
2627282930
公 告
暂无公告...
日 志
评 论
链 接