嵌入式系统的应用已经相当的广泛,曾有专家预言——嵌入式系统的明天就相当于PC的今天,如今从某种程度上讲预言已经实现,嵌入式系统被广泛应用于工业设备、汽车航空、医疗电子、消费电子等领域,与此同时市场竞争也愈加激烈,如何快速地将符合需求的产品投入市场成为在竞争中保持一席之地的关键。然而,随着系统构架的日益复杂化——多核多任务的环境,MPU、DSP和FPGA混合编程,以及处理器和开发工具的多样化——给嵌入式系统开发人员带来了很大的挑战。第三方独立市场预测机构Embedded Market Forecasters (EMF) 在对900多名嵌入式系统开发人员进行调研后指出,超过50%的嵌入式设计比预期时间晚上市,而平均延迟时间高达近4个月;并且在已发布的产品中,有近30%的设计未达到预期的功能和指标。
因此必须采取一定的措施来加快设计流程,提高设计质量,一种解决方案是采取现成可用的商业化平台。在开发一个嵌入式设备时,除了考虑处理器架构、 *** 作系统性能、以及其它组件之外,开发人员必须决定系统的哪些部分需要设计、哪些部分需要购买现成设备。如果采用自行设计的方案,其优势在于可以全面地自定义最终的解决方案并优化成本,但是任何设计规格的更改或疏忽都将导致漫长且成本高昂的延期。与此相对的,使用商业现成的平台将增加产品的销售成本,或者可能为一些不需要的特性而花费成本,但是通常来说,现成的系统提供了更快的验证周期,因而也就具有更为快捷的设计流程,从而在更短的上市时间内保证设计的质量。本文阐述了用于开发嵌入式系统的两种方式——自行设计或使用现成平台——并且讨论了与这两种方式相关的技术和经济风险。
1. 方式一:自行设计在开发之前,需要为系统的核心控制部分选择一种处理器技术。例如下面所列举的五种技术:
微处理器-和微控制器相比,微处理器的时钟速率更高且通常具有外部存储接口,因而性能和扩展性并不成问题。但是应用程序可能需要进行复杂的驱动开发,因为微处理器通常并不带有片上模拟外围设备。此外,微处理器可能需要高密度的封装技术,例如球栅阵列封装(ball-grid array,即BGA),这将导致较复杂的制造流程,增添了更为困难的硬件调试工作。
数字信号处理器(DSP)-DSP是一种专用的微处理器,它提供额外的指令以优化特定的数学函数,例如乘法和累加 *** 作。DSP对于计算繁重的应用场合来说是极为有用的,但是通常需要专业的知识来利用它的软件性能。
专用集成电路(ASIC)-ASIC芯片是专为某个特定的应用而设计的,不具有通用性。对于解决诸如功耗和产品成本等问题,ASIC被广泛认为是一种极好的方案。但是,极为昂贵的ASIC开发和制造流程通常让人望而却步,一般仅限于具有极大产量的产品。
现场可编程门阵列(FPGA)-FPGA在自定义的ASIC设计和现成的技术之间提供了极好的平衡。它们具有高度的专有化性能,同时可以通过编程重新配置逻辑模块,因而其开发成本与ASIC相比要低得多。虽然FPGA可以被应用于各种场合,但是一般来说复杂的FPGA设计并不常见,因为对于大部分习惯于使用C语言进行顺序编程的嵌入式软件开发者来说,VHDL编程格式显得十分陌生。
在许多情况下,单一的处理器技术并不足以解决应用的需求,因此,混合式架构逐渐成为发展的方向。如图1所示,实时处理器用来管理网络通信和用户界面,而FPGA则负责与I/O模块的接口和高速控制等任务。这种混合式架构在嵌入式系统设计中变得十分普遍。
图1、混合式架构在嵌入式系统设计中变得十分普遍。在这种混合式架构中,实时处理器用来管理网络通信和用户界面,而FPGA则负责与I/O部件的接口和高速控制任务
在确定了使用何种处理器技术之后,设计人员还需要完成I/O电路的开发。如果嵌入式系统中存在任何的模拟信号,那么就需要使用模数转换器(ADC)、数模转换器(DAC)、以及相应的软件驱动。模拟电路的设计同样会遇到很多复杂的问题,限于篇幅本文不再赘述。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)