SRAM运行状态分析步骤详解.doc

上传人:白大夫 文档编号:3273361 上传时间:2019-08-07 格式:DOC 页数:2 大小:13.50KB
返回 下载 相关 举报
SRAM运行状态分析步骤详解.doc_第1页
第1页 / 共2页
亲,该文档总共2页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《SRAM运行状态分析步骤详解.doc》由会员分享,可在线阅读,更多相关《SRAM运行状态分析步骤详解.doc(2页珍藏版)》请在三一文库上搜索。

1、SRAM运行状态分析步骤详解目前,对于存储单元SRAM的研究都是基于硬件电路来完成,而且这些方法都是运用在生产过程中,但是生产过程并不能完全杜绝SRAM的硬件故障。在其使用过程中,如果SRAM硬件出错,将导致程序出错而且很难被发现。因此在运用的阶段,为防止存储单元损坏而导致系统出错,通过软件的方式对SRAM进行检测是必要的。1 SRAM运行状态分析SRAM是存储非CONSTANT变量(如RW),它具有掉电即失的特点。由CortexM3的启动步骤可知,系统上电后,首先执行复位的5个步骤:NVIC复位,控制内核;NVIC从复位中释放内核;内核配置堆栈;内核设置PC和LR;运行复位程序。可以看出,不

2、能在调入C环境之后检测SRAM,必须在CortexM3复位之前和启动之后进行检测。在执行系统复位的最后一个步骤之前,系统都没有对SRAM执行任何相关的数据传送动作。第步运行复位程序,在ST公司Cortex-M3处理器内核的STM32系列微控制器的启动代码中有一段复位子程序:在这个子程序里导入了_main,_main是C库文件的入口地址。它执行下面3个步骤:复制非root(RW、RO)从Flash到SRAM;分配ZI区,并且初始化为0;跳转到堆栈初始化子程序接口_rt_entry。由_ _main的第一步可以得出,在跳入_ _main之后,系统对SRAM进行了相关数据转移的操作。因此,检测SRA

3、M必须在此步骤之前,否则将会覆盖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而出现算法本身错误。由于CortexM3复位后默认的时钟为HSI,是一个内部RC振荡器,因此精度不高。如果需要更准和快速的时钟,就必须在跳入SRAM_Check之前对相关的寄存器进行操作。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1