一种在tornado开发环境下SDRAM的测试方法
2017-05-17王鹏
王鹏
摘要:根据嵌入式操作系统特点,提出了一种基于TORNADO开发环境的测试方法,通过对SDRAM写入、读出多种数据,测试它的状态,该测试方法具有简介、直观的特点。
关键词:RTOS;tornado/VxWorks;C++;SDRAM
中图分类号:TP333 文献标识码:A 文章编号:1007-9416(2017)03-0182-02
随着计算机技术的发展和芯片制造工艺的不断进步,嵌入式实时操作系统(Embedded Real-time Operation System,RTOS)的应用日益广泛,在嵌入式系统的开发应用中,采用嵌入式实时操作系统(简称RTOS),包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等。它能够有效管理越来越复杂的系统资源、能够把硬件虚拟化,能够支持多任务、使得程序开发调试更加容易、便于维护,同时能够提高系统的稳定性和可靠性。嵌入式操作系统的核心是嵌入式微处理器,嵌入式微处理器对实时性和多任务有很强的支持能力,具有很强的存储区保护功能,可扩展的处理器结构,以及极低的能耗,从八十年代Ready System发展了世界上第一个商业嵌入式实时内核(VRTX32),到今天已经三十多年了,进入九十年代,现代操作系统的设计思想,如微内核设计技术和模块化设计思想,新一代的RTOS厂家逐步推出了VxWorks等开发系统、主流的微处理器主要有ARM、PowerPc、MIPS等。
SDRAM(Synchronize Dynamic Random Access Memory)简称同步动态随机存储器,它是同步的动态随机存储器,它在工作时需要同步时钟,内部命令的发送和数据的传输都以一个时钟作为基准,它的所有信号都和时钟信号同步,通过时钟信号来控制数据输入输出,能以流水线的方式访问存储阵列,在带宽上也有了很大的改善,而且具有高速稳定性,是目前市场的主流。
1 tornado/VxWorks调试环境介绍
VxWorks是专门为实时嵌入式系统设计开发的操作系统软件,从设计成功以来,经过了广泛验证,成功的应用在航空、航天、舰船、通信、医疗等领域。该操作系统具有良好的持续发展能力。
Tornado集成开发环境是嵌入式实时操作领域中最新一代开发调试环境,是实现嵌入式应用程序的完整软件开发平台,是开发调试Vxworks系统不可缺少的组成部分,Tornado本身包括了功能非常强大的开发以及调试工具,非常适用于面对大量问题的嵌入式开发, 这些工具包括C和C++远程源级调试器、目标和工具管理、系统目标跟踪,内存使用和自动配置,另外,所有这些工具能很方便的同时运行。
2 设计介绍
本设计中嵌入式微处理器采用PowerPc的8245,SDRAM采用SPANSION的AM29LV320D,设计目的是对SDRAM进行读写操作;对申请测试使用的4M空间进行写入全零、全1、1010、0101等四种数值,然后再将写入的数值读出;通过对写入、读出数值进行比较,测试SDRAM的工作状态是否良好,该方法实现起来非常的方便、简捷、直观。现仅给出读写全零的代码,其余类似。
#include
#dedine SDRAM_SPACE 0X10000000
#dedine DATA0 0x0
#define DATA1 0xFFFFFFFF
#define DATA2 0x55555555
#define DATA3 0xAAAAAAAA
Int cpu8245test (void)
{
Int *psdram,*psdramBase;
Int data;
Int i ;
Int error;
Psdram=(int*)malloc(SDRAM_SPACE); /*申请空间*/
If (psdram==0)
{
Printf(“\n SDRAM malloc failure!\n); /*申请空间失败*/
Return -1;
}
Else
{
PSDRAMBase =Psaram;
}
Error=0;
Printf(“\n write 0 test……”);
}
/*write 0*/
Printf(“\n write 0 sdram……”);
For (i=0;I { *psdrma=DATA0; Psdram++; } Psdram=psdramBase; /*read 0 from sdram */ Printf(“\n read data from sdram……”); For (i=0;I { Data=*psdram; If(data!=DATA0) Error++ Psdram++; } Printf(“\n sdram(write 0) error=%x\n,error); Free(psdramBase) Return 0; } 3 測试程序的编译和运行 测试程序函数名为cpu8245test.c;编译后名字为cpu8245test.o;将编译后的文件加载,然后运行,操作如图1。 测试结果如图2。 4 结语 仿真测试在TORNADO2.0开发环境下进行,该测试方法实现起来非常简单、测试结果直接明了,具有很好的实用效果。 参考文献 [1]王金刚,宫霄霖,熊辉.VxWorks网络程序员指南,2003. [2]周启平,张扬,吴琼.VxWorks开发指南与Tornado实用手册,2004.