您当前的位置:首页 > 发表论文>论文发表

嵌入式研究论文

2023-03-11 02:20 来源:学术参考网 作者:未知

嵌入式研究论文

  嵌入式技术论文篇二
  嵌入式系统应用技术

  【摘 要】本文介绍了嵌入式系统的含义、发展、现状和我国在嵌入式系统中面临的机遇,重点介绍了嵌入式系统的硬件,简要说明了嵌入式操作系统。

  【关键词】单片机;操作系统;Linux;嵌入式系统

  1.嵌入式系统的定义与市场前景

  嵌入式系统是指以应用为中心,以计算机技术为基础,软件硬件可剪裁,适应应用系统对功能、可靠性、体积、功耗严格要求的专用计算机系统。它主要由嵌入式微处理器、外围硬设备、嵌入式操作系统及应用软件等部分构成,用于实现对其他设备的控制、监视和管理等功能 。

  PC机主要应用在办公室自动化领域,而嵌入式已经渗入到人们的工作、生活中,如工业控制、交通管理、信息家电、家庭智能管理系统、POS网络及电子商务、环境监测、机器人等领域 。今天嵌入式系统带来的工业年产值已超过了1万亿美元,1997年来自美国嵌入式系统大会(Embedded System Conference)的报告指出,未来5年仅基于嵌入式计算机系统的全数字电视产品,就将在美国产生一个每年1500亿美元的新市场。美国汽车大王福特公司的高级经理也曾宣称,“福特出售的‘计算能力’已超过了IBM”,由此可以想见嵌入式计算器工业的规模和广度。1998年11月在美国加州举行的嵌入式系统大会上,基于RTOS的Embedded Internet成为一个技术新热点。 美国著名未来学家尼葛洛庞帝99年1月访华时预言,4~5年后嵌入式智能(计算机)工具将是PC和因特网之后最伟大的发明 。这就是所谓的“后PC时代”概念。

  2.嵌入式系统发展阶段

  嵌入式系统的出现至今已经30多年的历史。近几年来,计算机(Computer)、通信(Communication)、消费电子(Consumer Electron)的一体化趋势日益明显,成就了3C融合之势.纵观其发展历程,大致经历了一下几个阶段。

  第一阶段是以单芯片为核心的可编程控制器(PLC)形式的系统,具有监测、伺服、指示设备相配合的功能。这类系统大部分应用在一些专业性强的工业控制系统中,没有操作系统的支持,只通过汇编语言对其编程控制。

  第二阶段是单片机(又称微控制器 MCU Microcontroller Unit)为基础,这时候的编程语言从汇编转变成以C语言为主。这一阶段的MCU种类繁多,价格较低,现在依然发挥着重要作用。

  第三阶段是以嵌入式操作系统为标志的嵌入式系统。这时候的单片机速度越来越快,功能越来越多。这时候软件主要运行在嵌入式操作系统上。嵌入式操作系统能运行各种不同类型的单片机上,兼容性好;用户界面较友好,具有大量的应用程序接口API,开发应用程序简单。

  第四阶段是以Internet为标志的嵌入式系统。随着Internet的发展以及Internet技术与信息家电、控制技术日益结合,嵌入式系统通过各种总线形式和Internet的结合越来越密切 。

  3.嵌入式系统的核心硬件

  嵌入式系统的核心硬件是单片机,又称微控制器(MCU)它是将计算机的基本部件微型化并集成到一块芯片上的微型计算机,通常片内都含有CPU、ROM、RAM、并行I/O、串行I/O、定时器/计数器、中断控制、系统时钟及系统总线等。随着技术的发展,单片机片内集成的功能越来越强大,并朝着SoC(System on chip片上系统)方向发展。单片机有着体积小、功耗低、功能强、性能价格比高、易于推广应用等显著优点,在自动化装置、智能仪器仪表、过程控制、通信、家用电器等许多领域得到日益广泛的应用。

  目前据不完全统计,全世界嵌入式处理器的品种总量已经超过1000多种,流行体系结构有30几个系列,其中8051体系的占有多半。生产8051单片机的半导体厂家有20多个,共350多种衍生产品。通常按单片机数据总线的位数将单片机分为4位、8位、16位、32位机。

  3.1 四位单片机。四位单片机适合用于各种规模较小的家电类消费产品。一般的单片机厂家均有自己的四位单片机产品,有OKI公司的MSM64164C、MSM64481,NEC公司的75006×系列、EPSON公司的SMC62系列等。

  典型应用领域有:PC机用的输入装置(鼠标、游戏杆)、电池充电器(Ni-Cd电池、锂电池)、运动器材、带液晶显示的音、视频产品控制器、一般家用电器的控制及遥控器、玩具控制、记时器、时钟、表、计算器、多功能电话、LCD游戏机。

  3.2 八位单片机。八位单片机是目前品种最为丰富、应用最为广泛的单片机,有着体积小、功耗低、功能强、性能价格比高、易于推广应用等显著优点。目前主要分为MCS-51系列及其兼容机型和非MCS-51系列单片机。

  MCS-51兼容产品因开发工具及软硬件资源齐全而占主导地位, ATMEL、PHILIPS、WINBOND是MCS-51单片机生产的老牌厂家,CYGNAL及ST也推出新的产品,其中ST的新推出的μPSD系列片内有大容量FLASH(128/256KB)、8/32KB的SRAM、 集成A/D、看门狗、上电复位电路、两路UART、支持在系统编程ISP及在应用中编程IAP等诸多先进特性,迅速被广大51单片机用户接受 。CYGNAL推出了Soc的51系列单片机C8051F系列。集成了A/D D/A电路、看门狗,上电复位电路、I C、SPI、CAN总线、 FLASH技术、JTAG仿真调试,并且最高达到了100MIPS

  非51系列单片机在中国应用较广的有MOTOROLA68HC05/08系列、 MICROCHIP的PIC单片机以及ATMEL的AVR单片机。

  八位单片机在自动化装置、智能仪器仪表、过程控制、通信、家用电器等许多领域得到广泛应用。

  3.3 十六位单片机。十六位单片机操作速度及数据吞吐能力在性能上比8位机有较大提高。目前以INTEL的MCS-96/196系列、TI的MSP430 系列及MOTOROLA的68HC11系列为主 。

  十六位单片机主要应用于工业控制、智能仪器仪表 、便携式设备等场合。其中TI的MSP430系列以其超低功耗的特性广泛应用于低功耗场合。

  3.4 三十二位单片机。32位单片机是单片机的发展趋势,随着技术发展及开发成本和产品价格的下降将会与8位机并驾齐驱。生产32位单片机的厂家与8位机的厂家一样多。MOTOROLA、TOSHIBA、HITACH、NEC、EPSON、MITSUBISHI、SAMSUNG群雄割据, 其中以32位ARM单片机及MOTOROLA的MC683××、68K系列应用相对广泛。基于ARM核的单片机占据了2001年的32位单片机市场75%的份额。

  3.5 单片机技术的发展。从20年来单片机发展历程可以看出,单片机技术的发展以微处理器(MPU)技术及超大规模集成电路技术的发展为先导,以广泛的应用领域拉动,表现出以下技术特点。

  8位、32位单片机共同发展。这是当前单片机技术发展的另一动向。长期以来,单片机技术的发展是以8位机为主的。随着移动通讯、网络技术、多媒体技术等高科技产品进入家庭,32位单片机应用得到了长足、迅猛的发展。

  单片机速度越来越快。为提高单片机抗干扰能力,降低噪声,降低时钟频率而不牺牲运算速度是单片机技术发展之追求。一些8051单片机兼容厂商改善了单片机的内部时序,在不提高时钟频率的条件下,使运算速度提高了很多,Motorola单片机则使用了琐相环技术或内部倍频技术使内部总线速度大大高于时钟产生器的频率。68HC08单片机使用4.9MHz外部振荡器而内部时钟达32M。三星电子新近推出了1.2GHz的ARM处理器内核Halla

  低电压与低功耗。几乎所有的单片机都有Wait、Stop等省电运行方式。允许使用的电源电压范围也越来越宽。一般单片机都能在3到6V范围内工作,对电池供电的单片机不再需要对电源采取稳压措施。低电压供电的单片机电源下限已由2.7V降至2.2V、1.8V。0.9V供电的单片机已经问世。

  低噪声与高可靠性技术。为提高单片机系统的抗电磁干扰能力,使产品能适应恶劣的工作环境,满足电磁兼容性方面更高标准的要求,各单片机商家在单片机内部电路中采取了一些新的技术措施。如ST公司的μPSD系列单片机片内增加了看门狗定时器,NS的COP8单片机内部增加了抗EMI电路,增强了“看门狗”的性能。

  ISP及IAP。在片编程技术(In System Programming)及在应用中编程(In Application Programming)通过单片机上引出的编程线、串行数据、时钟线等对单片机编程,编程线与I/O线共享, 不增加单片机的额外引脚。ISP为开发调试提供了方便,并使单片机系统远程调试、升级成为现实

  4.嵌入式系统的软件

  嵌入式系统的软件从最初的汇编语言逐渐过度到C高级语言,到现在最终形成了以操作系统,出现了几十种产品,代表性的有VxWorks、QNX、Nucleus、μC/OS 、Palm OS、Windows CE以及Linux系列。在技术上有以下特征。

  (1)以为新的处理器越来越多,嵌入式系统的设计更易于移植,以便在短时间内支持多种微处理器。

  (2)Linux产品在嵌入式上获得了广泛的应用。Linux性能稳定,裁剪性好,开发和使用比较容易,适用于多种嵌入式处理器。Linux得到了相当广泛厂商的支持RT-Linux产品也取得了很大的进展。在家用电器、工业控制大有可为 。

  5.发展和应用我国自主的嵌入式系统技术

  目前,PC机的架构为Wintel所控制、垄断。在该领域,现在我们没有主动权,创新空间较小,专家估计,十年内很难有所突破。而嵌入式系统没有统一的架构,软硬件需要多种多样的组合,技术密集,市场容量大。我国在此领域有无限的创新空间 。例如“星光中国芯工程”是以数字多媒体芯片为突破口,第一次将“中国芯星光一号”率先打入国际市场的战略工程在国际上处于领先地位。在该领域已处于领导地位。在操作系统领域,有中软公司推出的“中软实时嵌入式Linux操作系统”,对外部中断可作出微秒级的响应,能提供精确的实时始终控制,实时任务和线程的并发操作和同步机制 。

  6.结束语

  上述描述了嵌入式系统的含义,以及嵌入式系统的发展历程、嵌入式系统的硬件、嵌入式操作系统,最后总结了我国在嵌入式系统中面临的机遇,为进一步学习嵌入式系统提供了参考,以期对研究该领域的人们有所帮助。

  
看了“嵌入式技术论文”的人还看:

1. 基于μC/OS的嵌入式系统应用开发研究论文

2. 浅谈JNI技术在嵌入式软件开发中的应用论文

3. 计算机科学技术论文毕业论文

4. 电子技术论文范文大全

5. 单片机技术论文

嵌入式图像处理系统特点技术及应用前景论文

嵌入式图像处理系统特点技术及应用前景论文

现今,伴随着信息技术的迅速发展与用户需求的逐年提高,嵌入式系统的应用逐年扩大,已经逐渐的融入到了国民生产的诸多方面。嵌入式系统具体讲,就是一种拥有特定功能的计算机系统。嵌入式系统与网络技术、通信技术有机结合,有效的提高了通信的智能性与灵活性。

应用嵌入式系统对图像进行处理,可以显著的提高图像处理系统的数据处理、通信等能力,进而有效的扩大图像处理技术的使用范围,以及对于不同要求与环境的适应能力。应用嵌入式系统进行图像处理,是进行图像处理的新的途径之一。当前图像处理技术应用范围十分广泛,涉及仪表检测安全、消费电子、工业自动化、医学等领域,因此图像处理技术具有十分广泛的应用前景。

1 嵌入式图像处理系统特点

1) 图像处理系统,具有系统专用的图形用户界面,同时具备运行速度快、简单易用与功能强大的特点。2) 图像基础数据库的建立,可以为智能化模式识别技术,诸如图像匹配等提供支持。3) 改变了原有的对待处理图像的处理策略与算法,可以依据具体的待处理图像的不同特点,提供有效的图像处理算法,进而提高图像处理的效率与速度。4)对于外部图像的总线结构与输入输出设备等都是采取专用的设备,进而有效的提高了外部图像输入输出设备、中央计算单元的数据交换速度。

5) 改变了原有的计算机体系结构,应用了嵌入式的专用平台,同时应用图像高速处理器,使图像处理的速度有效的.提高,同时也提高了图像处理任务的实时性。

2 图像处理系统总体设计

2.1 嵌入式图像处理系统

嵌入式图像处理系统,具体由嵌入式操作系统、图像处理算法的应用软件与硬件平台构成。系统的组成结构图具体如图1所示。硬件平台可以为图像处理提供显示、存储器与计算支持,主要采用的是MagicARM2410嵌入式开发平台,同时包括图像存储模块;显示模块;通信模块;嵌入式处理器S3C2410、SDRAM等。

2.2 图像处理过程

嵌入式操作系统,可以为底层硬件提供有效的技术支持与管理,诸如可以进行图像处理任务管理;中断管理;内存管理;任务管理;驱动支持等。首先,在系统启动后,经由引导程序启动操作系统,进而完成硬件的初始化。其次,经由操作系统的任务管理模块,进行内存的分配,同时将图像信息存储在存储器的视频缓冲区中。第三,经由软件算法,将显示缓冲区的图像信息,写入到LCD缓冲区,进而实现图像的实时显示。第四,通过图像处理的算法,进行图像的编码与处理,同时进行存储。应用软件可以实现图像处理算法,其主要是针对目标要求编写的专用程序。

2.3 系统的功能设计

嵌入式图像处理可以有效的解决在嵌入式环境下实现图像的处理。

具体的主要应用模块化设计的方式,将需要系统完成的任务进行功能模块化的设计。在每一个模块中,都包含一类图像处理的操作方法,而且在进行执行时都会调用对应的算法。系统功能模块具体如图2所示,主要分为形态运算;几何变换;图像分析;图像增强。其中图像增强的模块具体又包括:灰度变换调整;直方图修正法;直方图等,具体如图3所示。各大系统模块的下面都会细分图像的处理操作,其余的三个模块的设计形式与图像增强模块的设计具有相似性。

3 图像处理系统发展趋势

1) 在图像处理系统的内部,主要进行集成软件的开发,对于用户而讲,可以依据自己的需求开发相应的图像处理算法,可以显著的提高系统的效率。2) 图像处理系统与网络的结合性逐渐提高,进而实现了图像的远程传输与采集。3) 图形处理系统的功能不再完全借助PC与多种辅助设备,而是会集成在一个方便使用的电子设备上。4) 伴随硬件设备的进步,图像处理系统的性能逐年提高,因而价格也会逐年下降。

4 结语

在嵌入式系统的图像处理技术的基础上,使得图像处理领域中出现了人机用户界面、多种通信模式与网络接口的便捷性。图像处理技术的应用范围越来越广泛,因此,在未来的发展道路上,其必然会朝着网络化、便携性、多任务与多功能的方向发展。伴随着嵌入式操作系统的强大功能,图像处理技术的发展方向必定会更加宽广。

参考文献:

[1] 崔磊,董守平,马红莲。数字图像处理技术的发展现状与展望[M].北京:中国石油大学出版社,2003.

[2] 刘禾。数字图像处理及应用[M].北京:中国电力出版社,2005.

[3] 杨永敏。嵌入式图像处理系统的研制[D].哈尔滨工业大学硕士学位论文,2006.

[4] 杨柯。嵌入式图像处理技术研究及其应用[D].西北工业大学硕士学位论文,2003.

[5] 宋延昭。嵌入式操作系统介绍及选型原则[J].工业控制计算机,2005.

[6] 严丽平,甘岚。基于嵌入式平台的图像处理系统的研制[J].微计算机信息,2008.

[7] 杨会丽。基于嵌入式系统的图像处理平台的设计[D].河北科技大学工学硕士学位论文,2009.

嵌入式操作系统技术研究(论文)

对系统的移植和裁剪,以达到所需的系统要求
以PowerPC8xx系列处理器为例,通过对此类处理器的引导模式。引导代码的编写和调试,以及如何引导操作系统执行等问题的研究,探索嵌入式系统引导过程的一种解决方案。
关键词:MPC860嵌入式操作系统存储映射引导
嵌入式系统应用开发不同于PC机,其开发过程同时涉及软硬件,需要将硬件平台的设计。操作系统以及上层应用开发综合考虑;而PC机应用开发建立在已经定制好的硬件和操作系统平台上,开发者只需调用系统提供的接口和服务完成相应的功能。由于应用和成本约束,嵌入式系统的硬件平台需根据应用量身定制,通常所用的MPU.存储器。外围设备等有多种选择余地,而且软件调试技术特殊,使平台的引导设计变得十分复杂。因此,对于嵌入式系统开发者而言,有必要深入分析系统引导过程,将软硬件开发有效地综合,即针对不同的硬件平台和软件运行模式,正确地进行底层上电初始化,进而引导操作系统执行。这个问题的核心在于对系统的引导模式的研究。
嵌入式系统的启动代码一般由两部分构成:引导代码和操作系统执行环境的初始化代码。其中引导代码一般也由两部分构成:第一部分是板级。片级初始化代码,主要功能是通过设置寄存器初始化硬件的工作方式,如设置时钟。中断控制寄存器等,完成内存映射。初始化MMU等;第二部分是装载程序,其功能是将操作系统和应用程序的映像从只读存储器装载或者拷贝到系统的RAM中,并跳转到相应的代码处继续执行。操作系统执行环境的初始化代码主要由硬件抽象层HAL代码。设备驱动程序初始化代码和操作系统执行体初始代码三部分构成。
本文以摩托罗拉MPC860处理器和具有自主知识产权的操作系统CRTOSII为例,研究嵌入式系统引导程序的设计和实现技术。嵌入式软件的开发涉及调试模式和固化模式两种运行状态。调试模式主要解决如何在目标板上调试正确性未经验证的程序的问题;而固化模式主要解决如何引导已调试成功的程序的问题。相应地,引导代码的设计应针对两种模式分别进行。
1调试模式的系统引导
1.1调试模式引导代码的作用
1调试模式的系统引导
1.1调试模式引导代码的作用
一个完整的嵌入式软件的解决方案大致包括四方面:①硬件平台配置初始化和系统引导代码;②操作系统软件执行环境的初始化代码;③操作系统;④应用程序。
在上述四方面中,引导代码是本研究中力求解决的问题。事实上,板级初始化。操作系统硬件抽象层。设备驱动程序三者整合到一起,就构成了嵌入式系统中BSP(板级支持包)的主体。BSP的代码与具体的目标板硬件设计相关,同时也与应用程序的设计要求相关,针对应用程序提出的不同要求,例如不同设备驱动程序。不同的中断源个数。不同的中断优先级安排。是否启用MMU机制等,BSP部分应作出相应的安排。上述第四部分的应用程序是建立在前三部分正确运行的基础上,并需反复调试。
由上述分析可知,BSP和应用程序代码的正确性通过一次的编写不能得到保证,需要经历“调试——修改——调试”反复的过程,因此需要建立一个可靠的调试环境。该环境建立的基础正是调模式下的引导代码。
1.2引导代码的调试方法
本研究实验采用一种称作BDM(Background Debug Mode)的OCD(On Chip Debuging)调试技术。BMD是由Motorola公司提供的一种硬件调试方法,类似于JTAG调试。它利用处理器提供的调试端口调试。MPC860采用一种特殊的BDM——EPBDM,其运作相当于用处理器内嵌的调试模块接管中断及异常处理,用户通过设置调试许可寄存器(debug enable register)指定哪些中断或异常发生后处理器直接进入调试状态,而不是操作系统的处理程序。进入调试状态后,内嵌调试模块向外部调试通信接口发出信号,通知一直在通信接口监听的主机调试器,然后调试器便可通过调试模块使处理器执行系统指令(相当于特权态)。由于专用的片级调试接口装置(BDI2000)的支持,不需要目标端配备相应的调试代理(Monitor)软件。
1.3调试模式引导代码实现
调试模式引导代码的核心在于使用BDM协议解析微指令,通过调试接口向MPC860发送信号,初始化调试环境。由于MPC860采用RISC结构,所以初始化部分主要是设置处理器内部寄存器,这个过程包括三方面内容:
(1)对处理器相关寄存器进行初始化:主要是关于处理器状态的寄存器(MSR.SRR1.SIUMCR等),中断。时钟相关模块(SYPCR.SCCR.PLPRCR.TBSCR等)。
(2)对BDM调试端口的初始化:包括调试使能寄存器DER.支持指令断点的寄存器ICTRL等。
(3)对片级。板级内存映射的初始化:包括内部内存映射寄存器IMMR,内存控制相关寄存器OR0~0R7.BR0~BR7等。它们主要功能是地址映射。片选信号选择。内存控制器选择(UMPA.UMPB.GPCM)。如果选择UPM,由于UPM控制采用微指令方式,而这些微指令根据内存的不同(SRAM.SDRAM.DRAM等),需要设计人员自行编写代码写入MPC860内部存储区相应位置。对于需要实时刷新的存储体(如SDRAM),还需设置刷新控制微指令。
上述初始化代码得以执行,一方面依赖于目标机MPC860提供的调试接口支持,另一方面也需要宿主机GDB的支持。对于宿主机系统,可能选择Linux,在其下配置GBD;也可以选择Windows2000,使用可视化的调试工具LambdaTools GDB(Coretek公司产品,不支持硬件断点),或者使用BDI2000(支持硬件断点的仿真器)。不管使用哪种调试工具,都可以使用该调试器能够识别的脚本文伯存放初始化指令。这些脚本在功能上是等效的,指令的描述一般都采用如下格式:操作码寄存器数值如在嵌入式Linux下SDRAM初始化的代码片断为:mpcbdm spr MDR=0x1FF77C35mpcbdm spr MDR=0xEFEABC34mpcbdm spr MDR=0x1FB57C35……而在Windows2000下使用BDI2000代码为:WUPM 0x00000005 0x1FF77C35WUPM 0x00000006 0xEFEABC34WUPM 0x00000007 0x1FB57C35……脚本描述的指令执行后,MPC860按照预先的设想进入一个可以正常工作的状态,可以用装载器将程序下载到SDRAM中调试执行。这个程序主要包含中断表。操作系统和应用程序映象两部分,其格式可以为bin.elf.coff等。图1给出了下载完毕后的内存映象。
当程序下载完成后,PC指针指向Image代码段(text段)的首条指令,可以利用调试器提供的命令开始调试。
2固化模式的系统引导
2.1概述
经过调试后,OS和上层应用程序构成的Image的正确性得到了保证,但是这个Image不能自主运行。因为调试模式下,是通过BDM接口初始化处理器,并且通过BDM接口将程序下载到RAM中去运行。实际应用环境中,Image必须被存储在非易失性存储器中,如Flash.EPROM等,本文选择Flash。系统启动时,处理器执行一段引导程序替代调试模式下的调试脚本和装载程序的功能。启动代码主要考虑以下几个问题:(1)系统上电和复位时程序如何执行,需要初始化哪些寄存器,重点仍然是内存映射相关部分;(2)启动代码为几部分,每部分代码应该全部还是部分放到Flash或者RAM中执行;(3)在时间效率和空间效率的折衷。
2.2上电初始化
在两种引导模式下,上电初始化总是必要步骤。它涉及各种核心寄存器初始化。地址映射等问题的处理。
2.2.1地址映射
MPC860的复位是通过一种异常中断来处理的(可理解为CPU自己产生的中断),向量号为0x100。异常向量表的基地址加上复位向量号即为复位向量,也就是CPU开始执行指令的地方。异常向量表在内存空间的可能位置有两个:0x0000000和0xFFF00000。所以PowerPC的复位向量为0x100或0xFFF00100。假设复位向量为0xFFF00100,系统有128K字节的Flash,并准备把它映射到CPU内存空间0xFE000000开始的地址。MPC860内部的CS0片选信号是默认的系统启动片选信号,已被连接到Flash的片选线上。上电时,内存控制器会忽略所有参与征选逻辑的地址线的高17位,CS0总是有效。这样,Flash总会被选中,CPU从Flash偏移0x100的地方取指令,此时CPU的4GB内存空间的每个128KB的块都被映射到Flash。
2.2.2寄存器初始化
固化方式下的大致相同,但是不再采用脚本文件编写,而是直接将一段MPC860汇编程序存放在一个start.s文件中。与调试模式初始化程序一样,主要完成以下处理:
(1)初始化CPU核心寄存器;
(2)设置机器状态寄存器;
(3)禁止ceche;
(4)初始化IMMR;
(5)初始化系统接口单元(SIU);
(6)初始化时钟和中断控制寄存器;
(7)初始化通信处理机(CPM);
(8)初始化内存控制器(UPM);
(9)初始化C语言堆栈。
2.2.3地址空间重映射
上电时,由于只有一个片选信号有效,它选通了Flash,而RAM和其它存储设备地址无效,需要经过地址空间重映射才能访问。MPC860的地址空间重映射是通过设置0R0~OR7.BR0~BR7这十六个寄存器完成的。由于上电时4GB的地址空间均被Flash占用,所以0xFFF00100这个地址仍在Flash的偏移0x100处。在寄存器初始化过程中,需要把SDRAM.MPC860内部寄存器空间以及外设等也映射进来。在进行这些操作前,需要把Flash的位置固定下来,例如映射到0xFE000000,这个操作是通过设置OR0和BR0寄存器实现的。但在写OR0时,CPU仍然在0xFFF00000的那一块取指令,而Flash即将被映射到0xFE000000块,所以程序必定出现“跑飞”的现象,必须对程序计数器(PC)进行调整,然而PC指针对程序员是不可见的,必须用跳转指令修改它。在Flash地址映射完成后,通过设置OR1~OR7.BR1~BR7可以完成对所有存储器空间的映射,各种存储设备可映射在CPU地址空间中的任意位置,但相互之间不能冲突。
2.3引导代码的构成和运行
系统启动所涉及的代码由寄存器初始化汇编文件start.s.一个Load程序以及操作系统与应用程序的Image三部分构成,引导代码则只包含start.s和Load程序。Load程序的作用是将操作系统与应用程序的构成的Image从Flash拷贝到SDRAM中,并跳转到Image的首条指令。
调试完成后的Image有两种运行模式:
Flash-resident image:Load程序仅仅把Image中的数据段(data+bss)复制到RAM中,代码段(text)在Flash中直接运行。
Flash-based image:Load程序把Image完全搬到RAM中执行,包括image中的代码段(text)和数据段(data+bss)。
图2和图3分别描述了两种Image的存贮映象,以及从Flash到SDRAM的装载过程。
2.4时间效率和空间效率上的折衷
在嵌入式系统的应用过程中,针对不同的应用环境,对时间效率和空间效率有不同的要求,基于MPC860的启动代码对此有比较充分的解决方案。
2.4.1时间限制
时间限制主要包括两种情况:系统要求快速启动和系统启动后要求程序高速执行。
对于要求快速启动的系统,应该使在Flash中执行的初始化程序尽量简短,诸如循环语句之类的语法应该尽量减少,尽快将程序装载到RAM中执行,这样做的原因在于Flash的访存时间与RAM的访存时间存在数量级上的差距。但是必须根据代码量以及存储器的特片进行权衡。因为,虽然RAM中捃速度快,但是将Flash中的代码复制到RAM中的操作会带来一定的开销。由于可见,启动时间由Flash中引导代码的运行时间。代码从Flash拷贝到RAM的时间以及RAM中后续启动代码的运行时间三部分组成。启动时间的最小值是这三者和的最小值。
对于启动后要求程序高速执行的系统,主要受处理器。存储器特性以及I/O速度等的影响。在软件方面,应该采用了上述Flash-based image方式,使得代码段在RAM中运行,提高运行速度。
2.4.2空间限制
空间限制主要包括两种情况:Flash等非易失性存储空间有限和RAM等易失性空间有限两种系统。
对于采用高性能非易失性存储器的系统,出于成本因素,Flash等存储设备不能太大,然而它又是系统存放启动代码和操作系统Image的地方。在存放Image时,可以先使用gzip等压缩工具进行压缩,在将Image加载到RAM时采用逆向的解压缩算法解压。同时,出于实时性考虑,压缩算法不能过于复杂,否则压缩解压过程消耗大量时间将与启动时间限制发生严重冲突。采用压缩策略并不一定会增加系统启动时间,因为压缩解压过程虽然消息了一定的时间,但是由于Image体积减小,由Flash复制到RAM中的时间相应减少,有可能反而减少了时间消耗。
对于采用高性能RAM的系统,同样出于成本因素,RAM空间有一定限制,此时一般采用前文描述的Flashresident image方式:Load程序把Image中的数据段复制到RAM中,代码段在Flash中运行。折衷同样存在,因为code段在低速的Flash中运行,在节省空间的同时,却牺牲了时间。
本文介绍了基于嵌入式处理器的操作系统引导方法,重点研究嵌入式系统的引导模式以及不同类别的引导方法。以在MPC860C处理器上引导CRTOSII操作系统为例,阐述了调试模式和固化模式下引导代码的构成。作用以及执行方式,并对不同引导模式下的时空效率的折衷进行了分析。最终,借助BDI2000仿真器对编写的引导代码进行调试,成功实现了调试模式和固化模式下操作系统的引导。后续工作包括:继续研究在不同硬件平台上的操作系统引导方法,例如最流行的ARM.X86系列;在同一平台上,可以研究不同操作系统的启动方法,例如嵌入式Linux.Vxworks.WinCE等。

论嵌入式的发展历史、现状及未来发展前景

历史:
现代计算机的技术发展史

(1)始于微型机时代的嵌入式应用

电子数字计算机诞生于1946年,在其后漫长的历史进程中,计算机始终是供养在特殊的机房中,实现数值计算的大型昂贵设备。直到20世纪70年代,微处理器的出现,计算机才出现了历史性的变化。以微处理器为核心的微型计算机以其小型、价廉、高可靠性特点,迅速走出机房;基于高速数值解算能力的微型机,表现出的智能化水平引起了控制专业人士的兴趣,要求将微型机嵌入到一个对象体系中,实现对象体系的智能化控制。例如,将微型计算机经电气加固、机械加固,并配置各种外围接口电路,安装到大型舰船中构成自动驾驶仪或轮机状态监测系统。这样一来,计算机便失去了原来的形态与通用的计算机功能。为了区别于原有的通用计算机系统,把嵌入到对象体系中,实现对象体系智能化控制的计算机,称作嵌入式计算机系统。因此,嵌入式系统诞生于微型机时代,嵌入式系统的嵌入性本质是将一个计算机嵌入到一个对象体系中去,这些是理解嵌入式系统的基本出发点。

(2)现代计算机技术的两大分支

由于嵌入式计算机系统要嵌入到对象体系中,实现的是对象的智能化控制,因此,它有着与通用计算机系统完全不同的技术要求与技术发展方向。

通用计算机系统的技术要求是高速、海量的数值计算;技术发展方向是总线速度的无限提升,存储容量的无限扩大。 而嵌入式计算机系统的技术要求则是对象的智能化控制能力;技术发展方向是与对象系统密切相关的嵌入性能、控制能力与控制的可靠性。

早期,人们勉为其难地将通用计算机系统进行改装,在大型设备中实现嵌入式应用。然而,对于众多的对象系统(如家用电器、仪器仪表、工控单元……),无法嵌入通用计算机系统,况且嵌入式系统与通用计算机系统的技术发展方向完全不同,因此,必须独立地发展通用计算机系统与嵌入式计算机系统,这就形成了现代计算机技术发展的两大分支。

如果说微型机的出现,使计算机进入到现代计算机发展阶段,那么嵌入式计算机系统的诞生,则标志了计算机进入了通用计算机系统与嵌入式计算机系统两大分支并行发展时代,从而导致20世纪末,计算机的高速发展时期。

(3) 两大分支发展的里程碑事件

通用计算机系统与嵌入式计算机系统的专业化分工发展,导致20世纪末、21世纪初,计算机技术的飞速发展。计算机专业领域集中精力发展通用计算机系统的软、硬件技术,不必兼顾嵌入式应用要求,通用微处理器迅速从286、386、486到奔腾系列;操作系统则迅速扩张计算机基于高速海量的数据文件处理能力,使通用计算机系统进入到尽善尽美阶段。

嵌入式计算机系统则走上了一条完全不同的道路,这条独立发展的道路就是单芯片化道路。它动员了原有的传统电子系统领域的厂家与专业人士,接过起源于计算机领域的嵌入式系统,承担起发展与普及嵌入式系统的历史任务,迅速地将传统的电子系统发展到智能化的现代电子系统时代。

因此,现代计算机技术发展的两大分支的里程碑意义在于:它不仅形成了计算机发展的专业化分工,而且将发展计算机技术的任务扩展到传统的电子系统领域,使计算机成为进入人类社会全面智能化时代的有力工具。

现状
1 嵌入式系统的含义及分类

嵌入式系统被定义为:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

嵌入式系统是将先进的计算机技术、半导体技术和电子技术和各个行业的具体应用相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。

目前嵌入式系统除了部分为32 位处理器外,大量存在的是8 位和16 位的嵌入式微控制器(MCU) ,嵌入式系统是计算机应用的另一种形态,正如前所述它与通用计算机应用不同:嵌入式计算机是以嵌入式系统的形式隐藏在各种装置、产品和系统之中的一种软硬件高度专业化的特定计算机系统。目前根据其发展现状,嵌入式计算机可以分成下面几类:

(1) 嵌入式微处理器(Embedded MicroprocessorUnit , EMPU)

嵌入式微处理器的基础是通用计算机中的CPU。在应用中,将微处理器装配在专门设计的电路板上,只保留和嵌入式应用有关的母板功能,这样可以大幅度减小系统体积和功耗。为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。

(2) 嵌入式微控制器(Microcontroller Unit , MCU)

嵌入式微控制器又称单片机。嵌入式微控制器一般以某一种微处理器内核为核心,芯片内部集成ROMPEPROM、RAM、总线、总线逻辑、定时P计数器、WatchDog、IPO、串行口、脉宽调制输出、APD、DPA、Flash RAM、E2PROM 等各种必要功能和外设。为适应不同的应用需求,一般一个系列的单片机具有多种衍生产品,每种衍生产品的处理器内核都是一样的,不同的是存储器和外设的配置及封装。这样可以使单片机最大限度地和应用需求相匹配,功能不多不少,从而减少功耗和成本。和嵌入式微处理器相比,微控制器的最大特点是单片化,体积大大减小,从而使功耗和成本下降、可靠性提高。

(3) 嵌入式DSP 处理器( Embedded Digital SignalProcessor , EDSP)

DSP 处理器对系统结构和指令进行了特殊设计,使其适合于执行DSP 算法,编译效率较高,指令执行速度也较高。在数字滤波、FFT、谱分析等方面DSP 算法正在大量进入嵌入式领域,DSP 应用正从在通用单片机中以普通指令实现DSP 功能,过渡到采用嵌入式DSP 处理器。

(4) 嵌入式片上系统(System On Chip)

随着EDI 的推广和VLSI 设计的普及化,及半导体工艺的迅速发展,在一个硅片上实现一个更为复杂的系统的时代已来临, 这就是System On Chip(SOC) 。各种通用处理器内核将作为SOC 设计公司的标准库,和许多其它嵌入式系统外设一样,成为VLSI 设计中一种标准的器件,用标准的VHDL 等语言描述,存储在器件库中。用户只需定义出其整个应用系统,仿真通过后就可以将设计图交给半导体工厂制作样品。这样除个别无法集成的器件以外,整个嵌入式系统大部分均可集成到一块或几块芯片中去,应用系统电路板将变得很简洁,对于减小体积和功耗、提高可靠性非常有利。

2 嵌入式系统工业的特点

(1) 嵌入式系统工业是不可垄断的高度分散的工业

从某种意义上来说,通用计算机行业的技术是垄断的。占整个计算机行业90 %的PC 产业,80 %采用Intel 的8x86 体系结构,芯片基本上出自Intel ,AMD ,Cyrix 等几家公司。在几乎每台计算机必备的操作系统和文字处理器方面,Microsoft 的Windows 及Word 占80 - 90 % ,凭借操作系统还可以搭配其它应用程序。因此当代的通用计算机工业的基础被认为是由Wintel (Microsoft 和Intel 90 年代初建立的联盟)垄断的工业。

嵌入式系统则不同,它是一个分散的工业,充满了竞争、机遇与创新,没有哪一个系列的处理器和操作系统能够垄断全部市场。即便在体系结构上存在着主流,但各不相同的应用领域决定了不可能有少数公司、少数产品垄断全部市场。因此嵌入式系统领域的产品和技术,必然是高度分散的,留给各个行业的中小规模高技术公司的创新余地很大。另外,社会上的各个应用领域是在不断向前发展的,要求其中的嵌入式处理器核心也同步发展,这也构成了推动嵌入式工业发展的强大动力。

器件是嵌入式系统产业的根本,嵌入式系统工业的基础就是以应用为中心的“芯片”设计技术和面向应用的软件产品开发技术。

(2) 嵌入式系统具有的产品特征

嵌入式系统是面向用户、面向产品、面向应用的,如果独立于应用自行发展,则会失去市场。嵌入式处理器的功耗、体积、成本、可靠性、速度、处理能力、电磁兼容性等方面均受到应用要求的制约,这些也是各个半导体厂商之间竞争的热点。

和通用计算机不同,嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余,力争在同样的硅片面积上实现更高的性能,这样才能在具体应用对处理器的选择面前更具有竞争力。嵌入式处理器要针对用户的具体需求,对芯片配置进行裁剪和添加才能达到理想的性能;但同时还受用户订货量的制约。因此不同的处理器面向的用户是不一样的,可能是一般用户,行业用户或单一用户。

嵌入式系统和具体应用有机地结合在一起,它的升级换代也是和具体产品同步进行,因此嵌入式系统产品一旦进入市场,具有较长的生命周期。嵌入式系统中的软件,一般都固化在只读存储器中,而不是以磁盘为载体,可随意更换,所以嵌入式系统的应用软件生命周期也和嵌入式产品一样长。另外,各个行业的应用系统和产品,和通用计算机软件不同,很少发生突然性跳跃,嵌入式系统中的软件也因此更强调可继承性和技术衔接性,发展比较稳定。

嵌入式处理器的发展也体现出稳定性,一个体系一般要存在8 - 10 年的时间。一个体系结构及其相关的片上外设、开发工具、库函数、嵌入式应用产品是一套复杂的知识系统,用户和半导体厂商都不会轻易地放弃一种处理器。

(3) 嵌入式系统软件的特征

嵌入式处理器的应用软件是实现嵌入式系统功能的关键,对嵌入式处理器系统软件和应用软件的要求也和通用计算机有所不同。

①软件要求固态化存储
为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中,而不是存贮于磁盘等载体中。
②软件代码高质量、高可靠性
尽管半导体技术的发展使处理器速度不断提高、片上存储器容量不断增加,但在大多数应用中,存储空间仍然是宝贵的,还存在实时性的要求。为此要求程序编写和编译工具的质量要高,以减少程序二进制代码长度、提高执行速度。
③系统软件(OS) 的高实时性是基本要求
多任务嵌入式系统中,对重要性各不相同的任务进行统筹兼顾的合理调度是保证每个任务及时执行的关键,单纯通过提高处理器速度是无法完成和没有效率的,这种任务调度只能由优化编写的系统软件来完成,因此系统软件的实时性是基本要求。
④多任务操作系统是知识集成的平台和走向工业标准化道路的基础

(4) 嵌入式系统开发需要开发工具和环境

通用计算机具有完善的人机接口界面,在上面增加一些开发应用程序和环境即可进行对自身的开发。而嵌入式系统本身不具备自举开发能力,即使设计完成以后用户通常也是不能对其中的程序功能进行修改的,必须有一套开发工具和环境才能进行开发,这些工具和环境是基于通用计算机上的软硬件设备以及各种逻辑分析仪、混合信号示波器等。

(5) 嵌入式系统软件需要RTOS 开发平台

通用计算机具有完善的操作系统和应用程序接口(API) ,是计算机基本组成不可分离的一部分,应用程序的开发以及完成后的软件都在操作系统(OS) 平台上面运行,但一般不是实时的。嵌入式系统则不同,应用程序可以没有操作系统直接在芯片上运行;但是为了合理地调度多任务、利用系统资源、系统函数以及和专家库函数接口,用户必须自行选配RTOS 开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。

(6) 嵌入式系统开发人员以应用专家为主

通用计算机的开发人员一般是计算机科学或计算机工程方面的专业人士,而嵌入式系统则是要和各个不同行业的应用相结合的,要求更多的计算机以外的专业知识,其开发人员往往是各个应用领域的专家。因此开发工具的易学、易用、可靠、高效是基本要求。

前景
3 嵌入式系统的应用前景

嵌入式控制器的应用几乎无处不在:移动电话、家用电器、汽车……无不有它的踪影。嵌入控制器因其体积小、可靠性高、功能强、灵活方便等许多优点,其应用已深入到工业、农业、教育、国防、科研以及日常生活等各个领域,对各行各业的技术改造、产品更新换代、加速自动化化进程、提高生产率等方面起到了极其重要的推动作用。

嵌入式计算机在应用数量上远远超过了各种通用计算机,一台通用计算机的外部设备中就包含了5 - 10 个嵌入式微处理器。在制造工业、过程控制、网络、通讯、仪器、仪表、汽车、船舶、航空、航天、军事装备、消费类产品等方面均是嵌入式计算机的应用领域。

嵌入式系统工业是专用计算机工业,其目的就是要把一切变得更简单、更方便、更普遍、更适用;通用计算机的发展变为功能电脑,普遍进入社会,嵌入式计算机发展的目标是专用电脑,实现“普遍化计算”,因此可以称嵌入式智能芯片是构成未来世界的“数字基因”。正如我国资深嵌入式系统专家—沈绪榜院士的预言, “未来十年将会产生头大小、具有超过一亿次运算能力的嵌入式智能芯片”,将为我们提供无限的创造空间。总之“嵌入式微控制器或者说单片机好象是一个黑洞,会把当今很多技术和成果吸引进来。中国应当注意发展智力密集型产业”。

参 考 文 献

[1] 吕京建. BOL System Inc. 从嵌入式系统的可靠性与可信性看Y2K问题.
[2] 穆玉刚, 等. 嵌入式系统及其调试手段的研究JOURNAL OF SHENYANG INSTITUTE OF TECHNOLOGY(Vol 18 No. 4. 1999.
[3] 吕京建,等. 嵌入式Internet 技术及其应用. http :PPwww. bol - sys2tem. com
[4] 吕京建,肖海桥. 嵌入式处理器分类与现状. http :PPwww. bol -system. com
[5] 吕京建,肖海桥. 面向二十一世纪的嵌入式系统综述. http :PPwww. bol - system. com
[6] Clarke Esler ,TASKING Inc. And Christopher S. Sontag ,emWare《Em2bedded web for 8 - and 16 -bit MPUs》Components in Electronics.April 1999.
[7] Warren Webb. 嵌套技术促进汽车改革. http :PPwww. ednchina. com
[8] 吕京建,肖海桥. 嵌入式系统开发工具及RTOS 平台. http :PPwww. bol - system. com
[9] TASKING致力于嵌入式通信,推动Internet 和通信解决方案. ht2tp :PPwww. bol - system. com
[10] 嵌入式系统的2000 年问题. 中国台湾省行政院主计处电子处理资料中心.
[11] 何立民. 建设单片机应用平台, 实施平台开发战略. http :PPwww. bol - system. com
[12] 8 位和16 位微控制器的嵌入式Internet 接入. http :PPwww. bol -system. com
[13] 能提供C 可编程性的低成本控制器. EDN 编辑部,EDN 2000.

相关文章
学术参考网 · 手机版
https://m.lw881.com/
首页