掉电保护在嵌入式系统中的设计应用

最新更新时间:2012-04-25来源: 互联网关键字:掉电保护  嵌入式系统 手机看文章 扫描二维码
随时随地手机看文章

本文介绍的方法是在用ARM7系列芯片S3C4510B和μClinux构建的嵌入式平台上实现的。整个掉电保护实现的基本思路是:产生掉电信号,捕捉掉电信号和处理掉电信号。重点介绍这个过程的具体实现。

  系统防掉电设计的目的是:采用一种机制,使得系统在意外失去供电的情况下,可以保证系统运行状态的确定性以及记录数据的完整性;当系统供电恢复后,现场数据可以及时恢复,避免应用系统产生混乱。我们知道,在嵌入式系统设计与开发中越来越多地应用嵌入式操作系统。由于操作系统的引入,数据的读写往往是通过文件的方式完成,而不是直接对存储单元地址操作。用文件读写方式操作数据,在程序的运行过程中往往将数据暂存在易失性的存储空间,如SDRAM,一旦系统意外失电,这些数据往往被丢失。因此,当系统意外失电时必须采取一定的措施进行系统的掉电保护,以避免系统产生混乱。总的说来,防掉电程序的主要思路就是:产生掉电信号,捕捉掉电信号,处理掉电信号和数据以及现场状态的恢复。

  如果不引入操作系统,直接对存储单元进行数据操作,每次操作的数据量小,可以利用中断服务的方式进行掉电保护;而用文件的方式进行数据操作,数据量一般比较大,因此基于中断服务的方式进行掉电保护已经不再可靠。本文研究的对象是基于操作系统的较为复杂的嵌入式系统设计过程中的掉电保护。

  1 掉电保护方案实现的系统基础

  掉电保护是在由ARM体系的硬件平台和μClinux嵌入式操作系统的基础上实现的。

  ARM7系列的微处理器支持八种类型的中断处理。外部中断请求会在外部中断引脚有效(一般是低电平),并且程序状态寄存器相关位(即CPSR的I控制位)设置为允许时得到处理器响应。响应后处理器进入中断工作模式,PC被装人中断向量0x00000018。在这个地址单元存放中断服务程序人口地址,中断服务程序就可以被执行。在掉电保护方案中,中断服务程序很简单,就是将表示掉电的全局变量置位即可。这样可以缩短程序执行时间。

  Flash存储器是一种可在系统(in system)进行电擦写,电后信息不丢失的存储器。它具有低功耗、大容量、可整片或分扇区在系统编程(烧写)、擦除等特点,并且可由内部嵌入的算法完成对芯片的操作,因而在各种嵌入式系统中得到了广泛的应用。作为一种非易失性存储器。Flash在系统中通常用于存放程序代码、常量表以及一些在系统掉电后需要保存的用户数据等。常用的Flash为8位或16位的数据宽度,编程电压为单3.3V。与Flash存储器相比较,SDRAM不具有掉电保持数据的特性,但其存取速度大大高于Flash存储器,且具有读/写的属性,因此,SDRAM在系统中主要用作程序的运行空间、数据及堆栈区。当系统启动时,CPU首先从复位地址0x0处读取启动代码,在完成系统的初始化后,程序代码一般应调入SDRAM中运行,以提高系统的运行速度,同时,系统及用户堆栈、运行数据也都放在SDRAM中。SDRAM的存储单元可以理解为一个电容,总是倾向于放电,为避免数据丢失,必须定时刷新(充电)。因此,要在系统中使用SDRAM,就要求微处理器具有刷新控制逻辑,或在系统中另外加入刷新控制逻辑电路,特别的情况是在系统失电后,要采取一种有效的机制确保将sDRAM中的数据写入F1ash中。

2 基于掉电保护方案的硬件设计

  图1是一种典型的嵌入式系统硬件设计方案。系统的微处理器采用S3c4510B,是基于ARM7体系结构的。SDRAM是一种易失性存储器作为程序的运行空间,类似于PC机的内存;Flash作为程序存储空间是非易失性的。程序运行过程中的数据往往缓存在sDRAM中,在系统失电时必须写往Flash。

  

 

  在系统中,需要使用5V和3.3V的直流稳压电源。其中,S3C4510B及部分外围器件需3.3V电源,另外部分器件需5V电源。为简化系统电源电路的设计,要求整个系统的输入电压为高质量的5V的直流稳压电源。有别于一般的电源回路设计,本系统的电源回路设计过程中增加了有关掉电保护的设计。包含这个设计的系统电源电路如图2所示。

  

 

  这个电源回路除了可以提供5v和3.3v的电源以外,还为系统掉电保护提供了延时及预警功能,通过软件的配合可以实现系统的掉电保护机制。正常情况下,由供电回路1给整个系统供电。当系统由于意外原因掉电时,由于输入的比较电压降低,这样MAX809 模块输出电压产生翻转为系统提供掉电中断预警信号,中断请求通过外部中断引脚XREQ0产生;同时供电回路2开始启用。通过大电容C3、c4放电,继续为系统提供一段供电电压,支持掉电中断服务程序完成。供电回路2只给最小系统供电,并不给耗电量大的外围部件供电。这样,给最小系统的供电时间足够长,可以完成敏感数据的保护操作。

  通过软件测算,电容放电可供最小系统工作时间在0.5~4.5S之间。这种测算方法很简单.编写一个掉电中断服务子程序,这个程序只是不断进行时间刷新操作。同样,可以通过软件测定在这段时间里向Flash擦写2~3MB。可见,在采用这种硬件体制的情况下,系统掉电保护能够得到可靠的保证。

关键字:掉电保护  嵌入式系统 编辑:神话 引用地址:掉电保护在嵌入式系统中的设计应用

上一篇:ARM中断向量两种设置方法
下一篇:MPC82XX的UPM方式应用

推荐阅读最新更新时间:2023-10-12 20:39

数据终端设备与无线通信模块之间串行通信链路复用协议(TS27.010)在嵌入式系统上的开发
摘要:介绍3GPP提出的一种终端设备和移动台串行通信的复用协议及嵌入式Linux系统下串行通信模块的结构和功能划分,在此基础上,提出一种实现这一复用协议的方案。目前,这一设计方案已经开发成功并广泛应用于所开发的车载移动终端产品中。 关键词:TS27.010 串行链路复用 GPRS移动终端 嵌入式Linux 随着移动通信技术的迅速发展,具备无线通信功能的移动终端也迅速发展起来。这些移动终端支持普通的话音、短消息等业务,随着GPRS网络覆盖的迅速扩大,越来越多的手持/车载移动终端也开始支持GPRS上网业务。如何在一个终端设备上整合这些业务,这是许多移动终端设备开发者面对的问题。笔者在开发一款车载移动终端过程中,采用了3GPP的TS
[工业控制]
汽车安全性能亟待升级 嵌入式系统把关护航
  汽车安全离不开安防,例如,只有通过安防措施保护制动ECU(电子控制单元)固件的完整性和真实性,才能保证汽车的制动安全,防止恶意修改固件等威胁。   安全需要安防的另一个示例是板载网络,板载网络将关键数据从传感器传输到制动ECU。只有通过安防措施防止板载网络抵御修改数据、注入消息和拒绝服务等威胁,才能保证制动ECU及时收到正确的传感器值。   人们希望在汽车中推出Android™或MeeGo™等开放的软件平台,从而出现了一个全新的安全和安防挑战:为了允许通过按钮与用户进行交互并为导航应用从汽车提取当前车速、剩余油量、行驶里程、位置等信息,软件平台及其应用程序需要参与板载汽车通信。然而,需要保护汽车不出应用故障。虚拟化以及
[嵌入式]
CEVA推深层神经网络框架,加快嵌入式系统机器学习技术应用
CDNN 软件框架结合CEVA-XM4图像和视觉DSP具有下列优势: 实时目标识别和视觉分析 用于嵌入式系统的最低功耗深层学习解决方案:与基于GPU的领先解决方案相比,功耗降低30倍,处理速度加快3倍 与典型的神经网络实施方案相比,所需平均存储带宽减少15倍 从离线预训练网络自动转换至实时嵌入就绪(embedded-ready)网络 具有支持各种神经网络结构的灵活性,包括任何层数目和层类型 DSP IP平台授权厂商CEVA公司宣布推出实时神经网络软件框架CEVA 深层神经网络(CEVA Deep Neural Network, CDNN),以简化低功耗嵌入式系统中的机器学习部署。通过利用CEV
[嵌入式]
微控制器的功耗调试:找出能量泄漏,降低嵌入式系统功耗
  功耗调试技术使软件工程师得以了解嵌入式系统的软件对系统功耗的影响。通过建立源代码和功耗之间的联系,使得测试和调整系统功耗成为可能,即所谓功耗调试。传统上,降低功耗仅是硬件工程师的设计目标;然而在实际运行的系统中,功耗不仅取决于硬件的设计,而且还与硬件如何被使用有关,而后者则是由系统软件来控制的。 图1:IAR Systems的C-SPY调试器能够在不同的视图中显示静态和动态的功耗数据。   功耗调试技术基于对功耗进行采样,并建立每个采样数据与程序的指令序列(以及源代码)之间的关联。其中的难点之一在于实现高精度的采样。理想情况下,对功耗的采样频率应该与系统时钟相同,但系统中的电容性元件会降低此类测量的可靠性。
[单片机]
微控制器的功耗调试:找出能量泄漏,降低<font color='red'>嵌入式系统</font>功耗
利用NAND Flash实现对嵌入式系统的远程更新
引言 嵌入式系统在各个领域有着广泛的应用,嵌入式系统的维护与升级也变得日益重要。由于新技术的不断涌现和对系统功能、性能等要求的不断提高,开发者必须能够针对系统进行升级和维护,以延长系统的使用周期,改善系统性能,增强系统适应性。 传统的嵌入式升级方式通常由维护人员到达设备现场进行重新烧写系统或者更换Flash存储部件,当设备数量庞大并且分布范围广泛时,这种升级维护方式的工作量将非常大,而且耗费的时间长、成本高。随着嵌入式技术的迅速发展,嵌入式系统的远程升级技术得到了快速发展。参考文献提出了一种基于GPRS的嵌入式系统软件的远程在线升级,通过GPRS网络实现对ARM嵌入式终端的系统软件进行在线升级。这种方法的不足在于无法实
[单片机]
利用NAND Flash实现对<font color='red'>嵌入式系统</font>的远程更新
基于嵌入式系统的USB(HID)设备设计
  0 引言   目前嵌入式系统在数字化电子产品领域应用越来越广泛。随着其成本的降低,大有取代单片机的趋势。USB 设备以其小巧、便携、即插即用、成本低廉等优势在当前的桌面应用中有相当的比重,尤其是HID(人机接口)设备,其免驱的特点(不用安装驱动程序)更是给用户带来极大方便。现在市场上USB 设备多是由专门的USB 控制芯片来实现其应用控制,芯片内集成了USB 协议,成本较高。PCB 板的面积较大。本文提出了仅用一片MCU(微处器-单片机)或嵌入式系统芯片来实现其与PC 机的通讯的方法。就单片机而言,多数单片机速度较慢,对事件的响应能力较弱,对全速USB 应用不是很好的选择。而嵌入式系统,由于其速度较之单片机快很多,内部RA
[嵌入式]
VDC:物联网将改写嵌入式系统开发趋势
根据Venture Development公司(VDC)最新的一项研究,在未来的几年内,物联网(Internet of things)将颠覆嵌入式系统开发厂商现有的业务模式,并将进一步推动采用更安全的新技术。 VDC在日前于《DESIGN West 》的一场小组讨论上发布其研究报告指出,当今正开发的嵌入式计划中,半数都利用了机器对机器(M2M)连接,预计在未来三年内还将增加到69%。VDC副总裁Chris Rommel表示,随着更多嵌入式系统连接到网路与智慧型手机,「75%以上的OEM认为,目前的业务模式将因为物联网的影响,而在未来三年内逐渐转型。」 对于物联网的认知程度提升 安全性是最令人担心的问题。超过70%的受
[网络通信]
VDC:物联网将改写<font color='red'>嵌入式系统</font>开发趋势
确保嵌入式系统的网络安全性
嵌入式系统设计师经常认为他们必须在安全性、可靠性和产品上市时间之间进行艰难的平衡。大多数设计师将上市时间定在第一位,“足够好的”可靠性放在第二位,之后才考虑安全性问题。 但世界处于不断变化之中。首先,安全性已经成为所有具有网络连接性能设备的必备条件,因此将其列为第三的位置不再能满足要求。其次,微处理器、操作系统和开发工具的不断进步使得更高的可靠性设计成为可能,也为产品的安全性和更快上市打下了坚实的基础。 当然要实现这个目标的前提是选择正确的架构,该架构包括处理器、操作系统和软件部分在内,并在一开始就把高可靠性作为设计目标。一般产品可靠性指标可以采用传统的架构和开发技术“在测试中达到”,但高可靠性的设计必须从一开始就加以
[嵌入式]
小广播
最新模拟电子文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved