ARM Cortex-M3的SRAM单元故障软件的自检测研究

发布者:atech123最新更新时间:2013-10-26 来源: 21ic关键字:ARM  Cortex-M3  SRAM单元  故障软件 手机看文章 扫描二维码
随时随地手机看文章

  引言

  目前,对于存储单元SRAM的研究都是基于硬件电路来完成,而且这些方法都是运用在生产过程中,但是生产过程并不能完全杜绝SRAM的硬件故障。在其使用过程中,如果SRAM硬件出错,将导致程序出错而且很难被发现。因此在运用的阶段,为防止存储单元损坏而导致系统出错,通过软件的方式对SRAM进行检测是必要的。

  1 SRAM运行状态分析

  SRAM是存储非CONSTANT变量(如RW),它具有掉电即失的特点。由Cortex—M3的启动步骤可知,系统上电后,首先执行复位的5个步骤:

  ①NVIC复位,控制内核;

  ②NVIC从复位中释放内核;

  ③内核配置堆栈;

  ④内核设置PC和LR;

  ⑤运行复位程序。

  可以看出,不能在调入C环境之后检测SRAM,必须在Cortex—M3复位之前和启动之后进行检测。

  在执行系统复位的最后一个步骤之前,系统都没有对SRAM执行任何相关的数据传送动作。第⑤步运行复位程序,在ST公司Cortex-M3处理器内核的STM32系列微控制器的启动代码中有一段复位子程序:

在这个子程序里导入了__main,__main是C库文件的入口地址。它执行下面3个步骤:

  ①复制非root(RW、RO)从Flash到SRAM;

  ②分配ZI区,并且初始化为0;

  ③跳转到堆栈初始化子程序接口__rt_entry。

  由__main的第一步可以得出,在跳入__main之后,系统对SRAM进行了相关数据转移的操作。因此,检测SRAM必须在此步骤之前,否则将会覆盖SRAM从Flash中转移过来的数据。

  2 SRAM检测方案设计

  在复位子程序跳入__main之前,设计另一个程序入口SRAM_Check,使PC指针指向该SRAM进行硬件单元检测程序(SRAM_Check)的入口。在SRAM_check里,首先将PC指针指向SRAM的首地址并写入0xFF,读回该地址的值到通用寄存器Rn1,并对Rn1里的值进行加1操作,然后将Rn1和256做比较,得出SRAM硬件是否损坏。这种操作可以避免因SRAM硬件一直为1或0而出现算法本身错误。由于Cortex—M3复位后默认的时钟为HSI,是一个内部RC振荡器,因此精度不高。如果需要更准和快速的时钟,就必须在跳入SRAM_Check之前对相关的寄存器进行操作。[page]

  3 SRAM检测软件设计

  图1为本文设计的SRAM检测软件程序流程。

  4 在线调试结果及分析

  上电复位后,在线调试PC指针指向Reset_Handler入口地址时的SRAM初始数值如图2所示。可以看到,当系统复位时每个SRAM单元的数值均为0x00。

  在线调试下,图3为对所有的SRAM地址进行检测后SRAM的数值,完全符合程序设计要求。

SRAM测试通过后,释放所有的SRAM,还原为0x00,如图4所示。

  5 结论

  本文提出了一种基于软件的SRAM单元故障自检测方法,通过在线调试得到的结果,可知该方法是完全可行的。在实际运用中,该方法能够确保系统正常地运行在可靠的环境之上。如果SRAM单元有生产或运输等损坏,也可以通过该方法方便地检测出来,大大减少了系统排除故障的时间。

关键字:ARM  Cortex-M3  SRAM单元  故障软件 引用地址:ARM Cortex-M3的SRAM单元故障软件的自检测研究

上一篇:基于嵌入式Linux的3G无线视频终端的设计与实现
下一篇:嵌入式网络收音机的ARM实现

推荐阅读最新更新时间:2024-03-16 13:29

Cortex-M3 (NXP LPC1788)之EEPROM存储器
EEPROM是一种非易失性存储器,主要用于存储相对少量的数据,如存储一些系统的配置信息。通过系统的EEPROM控制模块可以轻松的进行EERPOM的存储控制。 要正确使用EPPROM需要配置掉电寄存器EEPWRDWN确定EEPROM的工作模式,配置EEPROM时钟分频器寄存器,使EPPROM工作在375KHZ。下面对EPPROM的读和写数据进行介绍。 EEPROM存储器的访问有三种操作方式:读、写、擦除/编程。对EPPROM中写数据分成两个单独的操作:写和擦除/编程。第一步写操作并不是真正把数据写入EPPROM的存储介质中,而只是更新被称作 页寄存器 的临时数据寄存器。只有执行下一步 擦除/编程 操作才会真正
[单片机]
<font color='red'>Cortex-M3</font> (NXP LPC1788)之EEPROM存储器
基于ARM微处理器的嵌入式温度调节器设计
本文针对无影照明系统中色温控制的难题,设计了一种基于ARM微处理器的嵌入式温度调节器,整个智能温度控制器由微控制器、数字显示模块、温度传感器、PWM加热模块、时钟电路等多个部件组成,设计了其中的PID调节电路、串口通信电路、微控制器外围通信接口、PWM加热控制电路以及软件模块,并搭建起整个软硬件系统。最后进行了实验和验证,结果表明,该嵌入式PID温度控制器能够满足设计要求,具有良好的调节精度,并保持恒温控制特性,可以投入实际应用。 温度控制器是一种重要的控制设备,在性能要求敏感的家用电器中,温度控制器是必备的控制系统之一,其在大型工业和日常生活等领域都具有广阔的应用前景。很多应用领域,需要精度较高的恒温控制,例如,根据
[单片机]
基于<font color='red'>ARM</font>微处理器的嵌入式温度调节器设计
MDK-ARM(Keil uVision V4.72)上STM32开发环境配置
以前我都是在Eclipse上面和arm-none-eabi交叉编译环境来开发STM32应用程序的。 现在改用MDK-ARM比较专业的工具搭建一个开发环境。 新建一个指定STM32微控制器型号的工程: 为了生成编译文件,勾选如下复选框: 配置编译项: STM32F4XX, USE_STDPERIPH_DRIVER 添加库编译符号,和语言/代码生成级别 其中最关键的头文件包含目录: 首先要添加包含工程目录,因为固件库会查找 stm32f4xx_conf.h 配置头文件,中断服务例程实现文件可能也会调用main.h中的函数。 再添加包含 xxxySTM32F4_LibLibrariesCMSISIn
[单片机]
MDK-<font color='red'>ARM</font>(Keil uVision V4.72)上STM32开发环境配置
EEWORLD总编随笔第三期:ARM会走向垄断吗?
这个世界上有些公司被贴上了“垄断”的标签,无论其怎样辩解都不能改变人们的想法,比如说英特尔。而ARM就是抓住了这一点,在英特尔大举杀进嵌入式领域时强调商业模式在这场战争中的重要性,所谓“得道多助,失道寡助”。长久以来,根深蒂固的信息是:ARM是一家做IP的公司,在嵌入式领域,ARM帮助众多的公司更快、更好地推出自己的产品。这是一家致力于打造良好生态环境,不会和客户争利益的公司,绝不会像英特尔那样无情地攫取下游的利润。 但是在不久前参加完IIC-China后,我突然产生了很大的忧虑:当条件成熟后,ARM会不会也走向垄断?给我很大震撼的是对ST和NXP的两场采访,当我问ST的一位工作人员:如今围绕着Cortex-M3的竞
[向农视角]
基于ARM的高速数据采集卡
1 引言 随着现代工业生产和科学研究对数据采集要求的日益提高,在瞬态信号测量、图像处理等一些高速、高精度的测量中,需要高速采集数据。现在通用的高速数据采集卡一般多是PCI卡或ISA卡,存在以下缺点:安装复杂,价格昂贵,受计算机插槽数量、地址、中断资源限制,可扩展性差,在一些电磁干扰性强的测试现场,无法专门对其做电磁屏蔽,导致采集的数据失真。 本数据采集卡采用Philips公司的LPC2142微控制器(基于ARM7内核,内置了宽范围的USB 2.0串行通信接口),有效地解决了传统高速数据采集卡的缺陷。 2 基于ARM的数据采集卡原理 本系统主要由双通道模/数转换器AD9238、ARM微控制器及FPGA器件EP1C3T100组
[应用]
ARM:产品间“信任关系”是物联网成败关键
    台湾科技每到十一月,都是国际科技大厂的年度技术论坛举办的时间点,ARM身为全球半导体主要的矽智财(IP)供应商,也于台湾时间11/19假喜来登饭店举办ARM Tech Symposia 2015论坛。 ARM处理器事业部总经理James McNiven ARM在近期发表了许多重要技术,像是64位元架构的Cortex-A35,以及专为MCU(微控制器)打造的TrustZone ARMv8-M实体IP等。不过,大体上,ARM所阐述的重点方向,仍是大家所熟知的物联网。 ARM处理器事业部总经理James McNiven以游戏主机为例,它可以衍生出相当多的周边装置,自然就会产生对应的生态系统。但重点在于,产品之间的连线
[手机便携]
ARM 处理器的几个相关术语
生产ARM的厂商很多,自然ARM处理器的名字就五花八门。但是,它们有些共同点,那就是:架构和核心。 架构这个概念太宽不太懂,一般不同的架构会有不同的指令集,在不同的架构下面还可以有多种核心。核心就是指处理器中ALU等几个关键部件的集合。可以参看百度百科中的arm条目,在相同的架构下,有多个核心,有的MMU不同,有的MIPS不同。 如果从软件角度看,主要应该关心这个处理器支持的指令集。如果知道了arm的核心,也就知道了它的架构和指令集。
[单片机]
双声道音箱放出5.1效果,谭军笑说SRS小儿科
  ARM原中国区总经理谭军博士近日再现江湖时,已变身为英国一家名不见经传的音频技术公司Sontia的亚太区总经理。那么,这家公司到底拥有什么魔力竟能使得谭军从名震全球半导体业的ARM公司来屈身俯就呢?让我们先看一下这家成为于2004年的小公司的创始人背景。   这家有风险投资支持的Sontia公司的创始人是英国一位资深音乐人Chris Vernon,他是一个录音工程师和获奖的音频技术讲师,拥有多项国际专利,而且还是George Martin爵士的英国国家音乐教程中的技术组长。他认为Dolby Digital、THX、QSOUND、SRS和DTS的技术都不能达到中高端高保真音响公司所感兴趣的高保真音效,因此创立了这家公司来弥补业
[手机便携]
双声道音箱放出5.1效果,谭军笑说SRS小儿科
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved