当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]  嵌入式系统是整合了计算机硬件和软件的集合体,它是通过可编程器件的计算和控制能力完成特定功能的系统。越来越多的嵌入式系统要求有连接网络、多媒体信息处理和无线移动通信的能力。然而,飞速发展不断有突破的嵌入式系统硬件技术与相对发展较慢的软件技术形成明显对比。

嵌入式系统硬件与软件发展的不平衡

嵌入式系统是整合了计算机硬件和软件的集合体,它是通过可编程器件的计算和控制能力完成特定功能的系统。越来越多的嵌入式系统要求有连接网络、多媒体信息处理和无线移动通信的能力。然而,飞速发展不断有突破的嵌入式系统硬件技术与相对发展较慢的软件技术形成明显对比。

认为摩尔定律很快会遭遇物理极限的预测不断被突破,半导体工艺正在向纳米级进军,使计算器件集成度更高、速度更快、体积更小、功耗更低。随着系统芯片(SoC)技术的发展和成熟,越来越多的嵌入式系统将采用硅知识产权(SIP),利用ASIC或半定制器件(FPGA/CPLD)技术把CPU核和外围器件整合到一个芯片中。这将极大的提升硬件系统设计的灵活性、可靠性,以及提高硬件开发的速度和降低系统的成本。

硬件技术的飞速发展和体系
结构的不断改进,在很长一段时间内对嵌入式系统软件工程师而言,似乎并未产生很大影响,他们仍然沿用传统的软件设计方法和调试方法。近几年,随着硬件复杂性的增加和对系统功能和性能需求的大幅度提高,特别是要求系统具有灵活方便的网络连接、轻巧节电的无线移动和功能强大的多媒体信息处理等能力,使软件开发工作量急剧增长,甚至可以占到全部工作的70~80%以上。这样的系统不再是单枪匹马可以完成的,需要集合一个开发团队协同工作才能完成。嵌入式系统软件的开发,越来越成为制约嵌入式系统开发的瓶颈。

嵌入式系统软件的特点及其开发途径

嵌入式系统软件从简单到复杂可以千差万别,天地悬殊。虽然它们结构相对简单,但是不同系统对不同的性能往往有特定的要求,有的要求非常苛刻和严格。对简单系统可以用传统方法,从底层用汇编语言编写程序,利用在线仿真器(ICE)、在线调试器(ICD)等开发工具进行调试软件。但是对那些复杂的嵌入式系统,特别是有多个控制环路、并需要在优化级可控的情况下能预测其运行状态时,不利用实时操作系统和嵌入式系统开发平台进行开发,是很难或者几乎不可能达到预定要求的。

利用嵌入式系统开发平台开发嵌入式系统软件,往往需要针对不同的硬件编写实时操作系统内核移植代码。通过编译、链接、定址将操作系统映像固化到(EP)ROM或者Flash(闪存)中。

对于大的开发项目,可以购买商业化的实时操作系统和嵌入式系统开发套件,甚至将软件开发外包给一些专业的嵌入式软件开发商,但是这需要投入少则几万,多则上百万元人民币购买软件,有些还需要对开发出来的每一件产品再缴纳相应的授权使用费。对于更多大量的小项目而言,显然不能走这条路,使用源代码开放的嵌入式操作系统才是合适的选择。

软件编程接口规范和标准化

硬件器件与软件模块相比,具有很高的可置换性,这是因为硬件器件的功能特性、电气特性、机械特性等都有明确的定义,这种组件单元标准化的特点是硬件技术的发展始终快于软件发展的原因。在软件技术方面,中间件和面向对象技术在一定程度上正是类比硬件而发展起来的,然而还远未成熟,至今在嵌入式系统软件的开发中还没有能真正地使用起来。

在传统单片机系统软件开发时代,代码的可重用性极差,系统的开发极大程度地依赖于软件编程人员的编程技巧。这是因为软件开发的灵活性造成的。只要正确的使用编程语言和软件开发工具,不同的软件设计人员对于同一种需求会开发出不同的软件。正是这种灵活性,导致了很多的软件不具有移植性。

软件要具有优良的体系结构和良好的移植性,必须将开发的操作系统纳入一个严格定义的框架。至少需要考虑以下几个方面: 高级语言和将汇编语言模块化—为了使系统具有高的可移植性,尽量使用C或者Embedded C++来开发系统软件。

模块化——将系统功能分成模块。模块设定的合理方法是:根据硬件能力,自下而上的综合。

提供标准接口—提供了POSIX 1003.1规范的操作系统就具有了UNIX系统的标准接口。Linux和QNX就是实现了POSIX规范的操作系统。符合软件应用编程接口(API)规范,就可以比较容易地移植UNIX系统的应用软件。

严格的体系结构层次——按层次划分,依次是应用软件→操作系统→功能级抽象→寄存器级抽象→硬件。其中,寄存器级抽象层(rHAL)直接与硬件相关,它封装微控制器和外围设备的寄存器接口及其行为。一般而言,它需要定义完整的寄存器序列名称。功能抽象层(fHAL)封装硬件的功能行为,通常把其定义成若干可以执行命令的函数。

软件系统体系结构

运行于特定硬件平台的操作系统是系统资源的管理者,作为软件的操作系统也是系统资源的使用者。操作系统内核是一个自治的软件环境,不依赖于任何其他的软件模块。内核通常提供进程调度(SCHED)、内存管理(MM)、文件系统(FS)、进程间调用(IPC)和网络(NET)等功能模块。这些模块之间相互有不同程度的依赖关系。其中进程调度和内存管理处于核心地位,反映了操作系统对计算机主机资源的管理。另外,文件系统是操作系统的信息中心,反映了操作系统对计算机存储介质的管理。操作系统往往把计算机的外部设备映射到文件系统,利用统一的文件系统访问接口实现对外部设备的访问。进程间调用和网络通常是可选模块。

体系结构的各层之间有不同的功能和责任。寄存器级封装反映了实现同一个功能可用不同的元器件。针对不同的芯片要编写合适的驱动程序。这些驱动程序一般不具有可移植性,因为它们是同级,实现对不同器件的功能级接口。例如,NE2000成为以太网事实的接口标准,兼容NE2000的以太网控制器,可以使用NE2000驱动程序,而不一定要开发专门的驱动程序。如果是不兼容的以太网控制器,寄存器的布局和命令会有不同,并无法映射寄存器。折衷的办法是梳理出功能级抽象层所必需的基本操作,建立功能级的实现框架。针对不同的硬件,使用同一种实现框架可以保证功能级抽象的质量,并且可以提高移植的效率。

结语

纵观软件的发展,从批处理到面向过程的编程,到面向对象的编程,再到面向框架的编程,体现了需求的拉动和技术的发展。嵌入式系统正经历一个快速发展阶段,嵌入式系统硬件技术的发展已超过了软件技术。软件技术的滞后,造成了软件的高成本和低开发效率,这已成为制约嵌入式系统发展的瓶颈。只有建立统一的清晰的操作系统层次的标准接口,实现软件构件的可重用性,才能够大幅度提高嵌入式系统的软件的开发效率。


参考文献:
1 Red Hat Inc. ‘eCos Reference Manual.’ www.redhat.com.
2 ARM Limited. ‘ARM Firmware Suite Version 1.3 Reference Guide.’ www.arm.com.
3 Labrosse. J. J., 邵贝贝译.‘ mC/OS-II, The Real-Time Kernel. ’清华大学出版社.

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭