浅谈嵌入式系统设计
来源:用户上传
作者: 杨宝平
[摘 要]嵌入式系统是以应用为中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。嵌入式系统是将先进的计算机技术、半导体技术、电子技术和具体应用相结合的产物。
[关键词]嵌入式系统 设计
[中图分类号]TP368.1[文献标识码]A[文章编号]1007-9416(2010)03-0009-01
嵌入式系统是以应用为中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。嵌入式系统是将先进的计算机技术、半导体技术、电子技术和具体应用相结合的产物。
近年来,在计算机、互联网和通信技术高速发展的同时,嵌入式系统开发技术取得迅速发展,嵌入式系统应用范围也急剧扩大。从小到电子手表、电子体温计、翻译机等,大到如冷气机、电冰箱、电视机,甚至马路上红绿灯的控制器、战斗机中的飞控系统等。嵌入式系统几乎无处不在:
1 嵌入式系统的特点
与通用计算机系统相比,嵌入式系统有其自身的特点:
(1)嵌入式系统是将先进的计算机技术、半导体技术以及电子技术与各个行业的具体应用相结合的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。
(2)嵌入式系统通常是面向用户、面向产品、面向特定应用的。
(3)嵌入式系统和具体应用相结合,其升级换代也是和具体产品同步进行的。因此嵌入式系统产品一旦进入市场,就具有较长的生命周期。
2 嵌入式系统的发展趋势
消费家电的智能化,为嵌入式系统的发展展现出美好的市场前景,也对嵌入式系统提出新的发展要求;微电子技术和系统设计方法的进步,使得嵌入式系统的发展呈现出以下趋势:
(1)随着嵌入式系统功能的增加,嵌入式系统处理的信息和数据量越来越大,系统对处理的响应时问也要求更严格,嵌入式处理器的主频会越来越高,甚至采用多核的方式来应付日益增长的性能要求。
(2)嵌入式系统在工业领域和某些特殊场合的广泛应用,要求嵌入式系统具有远程控制软件更新和故障诊断的能力。
(3)随着嵌入式系统在手持设备上的大量应用,手持设备的特点要求嵌入式系统功耗、体积更小,重量更轻。
(4)嵌入式系统将具有更加高速的通信接口,如USB2.0、千兆以太网等。
3 嵌入式系统设计流程
嵌入式系统开发分为软件开发部分和硬件开发部分。嵌入式系统开发过程一般都采用“宿主机/目标板”开发模式,即利用宿主机(PC机)上丰富的软硬件资源及良好的开发环境和调试工具来开发目标板上的软件,然后通过交叉编译环境生成目标代码和可执行文件,通过串口FUSB/以太网等方式下载到目标板上,利用交叉调试器在监控程序运行,实时分析,最后,将程序下载固化到目标机上,完成整个开发过程。当前,嵌入式开发已经逐步规范化,在遵循一般工程开发流程的基础上,嵌入式开发有其自身的一些特点,图1所示为嵌入式系统开发的一般流程。流程主要包括系统需求分析佞求有严格规范的技术要求)、体系结构设计、软硬件及机械系统设计、系统集成、系统测试、最终产品。具体情况如下:
(1)系统需求分析:确定设计任务和设计目标,并提炼出设计规格说明书,作为正式设计指导和验收的标准。系统的需求一般分功能性需求和非专题与综述功能性需求两方面。功能性需求是系统的基本功能,如输入输出信号、操作方式等;非功能需求包括系统性能、成本、功耗、体积、重量等因素。
(2)体系结构设计:描述系统如何实现所述的功能和非功能需求,包括对硬件、软件和执行装置的功能划分,以及系统的软件、硬件选型等。一个好的体系结构是设计成功与否的关键。
(3)硬件/软件协同设计:基于体系结构,对系统的软件、硬件进行详细设计。为了缩短产品开发周期,设计往往是并行的。嵌入式系统设计的工作大部分都集中在软件设计上,采用面向对象技术、软件组件技术、模块化设计是现代软件工程经常采用的方法。
(4)系统集成:
把系统的软件、硬件和执行装置集成在一起,进行调试,发现并改进单元设计过程中的错误。
(5)系统测试:对设计好的系统进行测试,看其是否满足规格说明书中给定的功能要求。
4 嵌入式系统设计面临的挑战
要求更高的应用需求推动嵌入式设计从8/16位转向功能更强大的32位MCU。这种升级给工程师带来了严峻的挑战,提出了一系列前所未有的全新问题。
(1)转变观念,需要熟悉新的开发模式。嵌入式系统应用不再是过去单一的单片机应用模式,而是越来越多样化,嵌入式系统实现的最高形式是片上系统SoC,而SoC的核心技术是重用和组合IP核构件。从单片机应用设计到片上系统设计及其中间的一系列的变化,从底层大包大揽的设计到利用FPGA和IP模块进行功能组合PSoC/SOPC设计。
(2)技术门槛提高,需要学习全新的RTOS技术。
(3)选择合适的开发工具,熟悉新的开发环境。目前从8位升级到32位的一个最大障碍就是开发工具的投入。32位开发工具要比8位开发工具复杂得多,使用的技术门槛要高得多,同时其投资也要高得多。
(4)熟悉硬件/软件协同设计和验证技术、设计管理技术。软/硬件并行设计是嵌入式系统设计的一项关键任务。在设计过程中的主要问题,是软硬件设计的同步与集成。这要求控制一致性与正确性,但随着技术细节不断增加,需要消耗大量的时间。目前,业界已经开发Polis、Cosyma及Chinook等多种方法和工具来支持集成式软硬件的协同设计。目标是提供一种统一的软硬件开发方法。它支持设计空间探索,并使系统功能可以跨越硬件和软件平台复用。团队开发的最大问题就是设计管理问题。
(5)SoC设计所面临的巨大的挑战。SoC已经开始成为新一代应用电子技术的核心,这已成为电子技术的革命标志。过去应用工程师面对的是各种ASIC电路,而现在越来越多所面对的是巨大的IP模块库,所有设计工作都是以IP模块为基础。SoC设计技术使嵌入式系统设计工程师变成了一个面向应用的电子器件设计工程师。随着SoC应用的日益普及,在测试程序生成、工程开发、硅片查错、量产等领域对SoC测试技术提出了越来越高的要求。
[参考文献]
[1] DSP技术及应用.黄仁欣.2002年出版.
[2] 单片机技术.彭永.2007年12月出版.
[3] 电子感测技术.周南山.2007年出版.
[4] 电子技术基础.韦鸿.2008年出版.
[作者简介]
杨宝平:1980年5月,男,本科学历,硕士在读,电子信息工程专业,研究方向:电子技术。
转载注明来源:https://www.xzbu.com/8/view-1064654.htm