标题:
SDRAM在windows CE系统中的应用 02
[打印本页]
作者:
samwalton
时间:
2013-8-19 08:03
标题:
SDRAM在windows CE系统中的应用 02
2.3 硬件的移植
针对于PXA27x系列的高端处理器,Intel并没有对SDRAM部分做本质上的改动,仍然是4根动态片选信号,故硬件方面的设计可以完全移植到PXA27x系列的处理器中。
3 软件设计方案
Windows CE操作系统下对内存的驱动代码主要分为两个部分,首先在BootLoader中对SDRAM进行底层初始化;其次在系统BSP包内需要将SDRAM所对应的物理地址映射为Windows CE下能够识别的虚拟地址。
控制线的连接方式如图4所示。
3.1 BootLoader代码的买现
BootLoader是系统运行的起始点,它包含着系统运行的第一行代码。BootLoader本身也是一个功能完整的微型操作系统,在内部需要实现任务调度、内存管理、文件系统,以及各种必要设备驱动程序的配置。其中内存管理即是完成SDRAM初始化的工作,包括设置SDRAM工作频率、设置片选信号寄存器、设置刷新间隔和SDRAM潜伏期、以及配置系统内核的拷贝地址。控制线的连接方式如图4所示。
(1)频率设置
完成寄存器的复值,其中r3的选择为F即就是0x1111,打开4片内存区域。
(3) 刷新间隔设置。关于刷新间隔值(DIR)的计算在手册中是这样给出的:
目前公认的标准是,存储体中电容的数据有效保存期上限是64 ms,也就是说每一行刷新的循环周期是64 ms。这样刷新速度为:64 ms/行数量。由于行地址有13位(在MDCNFG寄存器的DRACO[1:0]中设置,需要与硬件一致),所以每行的的刷新时间为64 ms/213=64 ms/8 192=7.812 5/μs,则7.812 5μs×100 MHz/32=0x18,这样就得到了系统的DRI值。
(4) 潜伏期的设置。潜伏期是指SDRAM在读写过程中所存在的延迟,潜伏期的时间长度是由以下几个参数共同决定的:
CL:在选定列地址后,就已经确定了具体的存储单元,剩下的事情就是数据通过数据I/O通道(数据总线)输出到内存总线上。但是在CAS发出之后,仍要经过一定的时间才能有数据输出,从CAS与读取命令发出到第一笔数据输出的这段时间被称为读取潜伏期。tRP:在发出预充电命令之后,要经过一段时间才能允许发送行有效命令打开新的工作行,这个间隔被称为预充电有效周期(Precharge command Period)。tRCD:在发送列读写命令时必须要与行有效命令有一个间隔,这个间隔被定义为tRCD,即RAS to CASDelay(RAS至CAS延迟),也可以理解为行选通周期。tRAS:行有效至预充电命令间隔周期。tRC:包括行单元开启和行单元刷新在内的整个过程所需要的时间。
所有参数可以从SDRAM数据手册得到,计算出理论潜伏期时长为200/μs。
(5)其他设置
设置操作系统的入口点,这里用到的虚拟地址需要与系统中建立的映射表相对应。
3.2 BSP内代码的实现
Windows cE系统启动中,对SDRAM的操作分为两个部分:首先对SDRAM的物理空间进行分配;其次将SDRAM所对应的物理地址转换为虚拟地址。
3.2.1 地址的分配
地址的分配和系统加载的顺序有着密切的关系。首先要在内存中开辟一段空间用来存放启动代码BootLoader,它被存放在sDRAM的第一个区域空间内。当发生外部复位中断时系统会从这里重新开始运行。其次分配操作系统内核空间,它被存放在SDRAM的第二个区域,以便使BootLoader能够顺利加载操作系统内核。分配地址空间根据所建立系统内核来确定。剩余的内存空间用来存放系统下的应用程序。
3.2.2 地址的映射
在操作系统中,需要把SDRAM的空间连续起来并作为首地址,不仅方便内存管理,而且当应用程序申请大块内存时,操作系统内核也可方便的分配。这就引入了将不连续的物理地址空间映射为连续的虚拟地址空间。PXA255的SDRAM起始物理地址OxA0000000,可将其映射为0x80000000,这里0x80000000将作为系统虚拟空间的起始地址,当有IRQ中断发生时,系统PC指针会重新指向这个地址。需要注意的是这里分配的虚拟地址要与启动代码中BootLoader中所使用的虚拟地址对应起来。
3.2.3 软件的移植
针对于PXA27x系列的高端处理器,微软在Plat-Build 5.0中给出了相对应的内核代码虽然在内核代码的架构上有了很大的变化,但对于扩展SDRAM的思想并没有改变,首先在BootLoader中初始化所使用的SDRAM,其次在BSP内建立地址映射表。
4 结 语
介绍了在嵌入式Windows CE系统平台上,使用大容量SDRAM作为动态存储设备的方案。详细介绍了sDRAM硬件连接方案以及软件接口的实现。该方案已经在工程设计中投入使用,其可以在同类的嵌入式高端产品中推广使用。
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0