您的位置 首页 汽车

随机存储器在嵌入式操作系统中的使用规划详解

随机存储器在嵌入式操作系统中的应用设计详解- 随着嵌入式产品的发展,各种嵌入式操作系统,以及嵌入式上层应用软件层出不穷。国内普遍认同的嵌入式系统定义为:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。可以这样认为,嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是是由单个程序实现整个控制逻辑。一个嵌入式系统装置一般都由嵌入式计算机系统和执行装置组成,嵌入式计算机系统是整个嵌入式系统的核心,由硬件层、中间层、系统软件层和应用软件层组成。

跟着嵌入式产品的开展,各种嵌入式操作体系,以及嵌入式上层运用软件层出不穷。国内遍及认同的嵌入式体系界说为:以运用为中心,以核算机技术为根底,软硬件可裁剪,习惯运用体系对功用、可靠性、本钱、体积、功耗等严格要求的专用核算机体系。能够这样以为,嵌入式体系是一种专用的核算机体系,作为设备或设备的一部分。一般,嵌入式体系是一个操控程序存储在ROM中的嵌入式处理器操控板。事实上,一切带有数字接口的设备,如手表、微波炉、录像机、轿车等,都运用嵌入式体系,有些嵌入式体系还包含操作体系,但大多数嵌入式体系都是是由单个程序完结整个操控逻辑。一个嵌入式体系设备一般都由嵌入式核算机体系和履行设备组成,嵌入式核算机体系是整个嵌入式体系的中心,由硬件层、中间层、体系软件层和运用软件层组成。履行设备也称为被控目标,它能够承受嵌入式核算机体系宣布的操控指令,履行所规则的操作或使命。履行设备能够很简单,如手机上的一个微小型的电机,当手机处于轰动接纳状况时翻开;也能够很杂乱,如SONY 智能机器狗,上面集成了多个微小型操控电机和多种传感器,然后能够履行各种杂乱的动作和感触各种状况信息。

1 随机存储器介绍

随机存储器首要分为静态随机存储器(SRAM)、动态随机存储器(DRAM)及SDRAM。1个SRAM单元一般由4~6个晶体管组成,当这个SRAM单元被赋予O或许1的状况之后,它会坚持这个状况直到下次被赋予新的状况或许断电之后才会更改或许消失。SRAM的读写速度相对比较快,并且比较省电,可是存储1 b的信息需求4~6只晶体管。DRAM和SDRAM有必要在必定的时刻内不停地改写才干坚持其间存储的数据,但存储1 b的信息只需1只晶体管就能够完结。RAM(随机存取存储器)RAM -random access memory 随机存储器。存储单元的内容可按需随意取出或存入,且存取的速度与存储单元的方位无关的存储器。这种存储器在断电时将丢掉其存储内容,故首要用于存储短时刻运用的程序。 依照存储信息的不同,随机存储器又分为静态随机存储器(StaTIc RAM,SRAM)和动态随机存储器(Dynamic RAM,DRAM)。在核算机的组成结构中,有一个很重要的部分,便是存储器。存储器是用来存储程序和数据的部件,关于核算机来说,有了存储器,才有回忆功用,才干确保正常作业。存储器的品种许多,按其用处可分为主存储器和辅佐存储器,主存储器又称内存储器(简称内存),辅佐存储器又称外存储器(简称外存)。外存一般是磁性介质或光盘,像硬盘,软盘,磁带,CD等,能长时刻保存信息,并且不依赖于电来保存信息,可是由机械部件带动,速度与CPU比较就显得慢的多。

2 硬件规划计划

2.1 SDRAM作业原理

SDRAM自身是由多个Bank区域构成,对SDRAM的操作实际上是通过区域片选信号对独自Bank进行的操作。SDRAM中单个Bank的读取进程如图1所示。

随机存储器在嵌入式操作体系中的运用规划详解

(1)通过地址总线将行地址传输到地址引脚;

(2)RAS(行地址使能信号)被激活,这样行地址被传送到行地址门闩线路中;

(3)行地址解码器依据接纳到的数据挑选相应的行;

(4)wE(写使能信号)引脚确认不被激活,所以SDRAM知道它不会进行写操作;

(5)列地址通过地址总线传输到地址引脚;

(6)CAS(列地址使能信号)引脚被激活,这样地址被传送到列地址门闩线路中;

(7)DQM(输出使能)引脚被激活,数据向外输出。

这就完结了一个单Bank的读操作,在读取数据的进程中队伍地址的寻址进程是通过两个时钟周期完结的,在榜首个时钟周期使能行地址,下一个时钟周期使能列地址。

SDRAM写入的进程和读取进程是根本相同的,只需求将wE信号激活。

2.2 硬件规划

关于SDRAM的硬件规划需求确认3个方面的内容:通过处理器的特性挑选SDRAM的类型;确认SDRAM地址线、数据线的衔接方法;确认SDRAM操控信号线的衔接方法。

2.2.1 SDRAM的挑选

该渠道处理器挑选Intel公司XSCALE架构的PXA255,它针关于SDRAM有4根专用的动态片选信号,能够支撑4块内存区域,如图2所示。

随机存储器在嵌入式操作体系中的运用规划详解

其间每块区域所能支撑到的最大物理地址为64 MB。并且每一块内存区域均可运用16 b或32 b的SDRAM。

在硬件规划进程中考虑到硬件运用的可调理性,选用8片16 b&TImes;4 MB&TImes;4 Bank的SDRAM,共搭建了256 MB的极限存储空间。其间,SDRAM挑选类型为三星公司的K4S561632E。

2.2.2 数据线、地址线的分配

PXA255处理器共有32位数据线和26位地址线。故在硬件规划时需求并行处理2块16 b的SDRAM,别离衔接高位和低位的16根数据线。

关于地址线的衔接,首要需求参阅SDRAM的数据手册,确认SDRAM队伍地址线的个数。其次依据处理器数据手册确认具体地址线的衔接方法。

在三星K4S561632E的数据手册中是这样给出的,如表1所示。

随机存储器在嵌入式操作体系中的运用规划详解

从表1中能够得出队伍复用13根地址线,其间行地址13根,列地址9根,共组成22根地址线的寻址空间。在处理器PXA255中,给SDRAM分配的地址线空间是从A10~A22。这样就能够彻底确认地址线和数据线的衔接方法,如图3所示。

随机存储器在嵌入式操作体系中的运用规划详解

2.2.3 操控信号线的衔接方法

关于SDRAM需求确认的操控线包含时钟信号线、区域片选信号线及Bank片选信号线。关于这三类信号线PXA255处理器是这样给出的,即:

(1)每两组内存区域运用同一组时钟信号线,即每128 MB的内存空间运用同一根时钟信号线,故在规划中运用了2组时钟信号线。

(2)共有4根区域片选信号,别离操控64 MB的物理地址空间。最大支撑到256 MB的物理地址空间。

(3)地址线的23,24位用来完结对SDRAM内部Bank的挑选。

2.3 硬件的移植

针关于PXA27x系列的高端处理器,Intel并没有对SDRAM部分做本质上的改动,仍然是4根动态片选信号,故硬件方面的规划能够彻底移植到PXA27x系列的处理器中。

3 软件规划计划

Windows CE操作体系下对内存的驱动代码首要分为两个部分,首要在BootLoader中对SDRAM进行底层初始化;其次在体系BSP包内需求将SDRAM所对应的物理地址映射为Windows CE下能够辨认的虚拟地址。

操控线的衔接方法如图4所示。

3.1 BootLoader代码的买现

BootLoader是体系运转的开始点,它包含着体系运转的榜首行代码。BootLoader自身也是一个功用完好的微型操作体系,在内部需求完结使命调度、内存办理、文件体系,以及各种必要设备驱动程序的装备。操控线的衔接方法如图4所示。

(1)频率设置

随机存储器在嵌入式操作体系中的运用规划详解

随机存储器在嵌入式操作体系中的运用规划详解

完结寄存器的复值,其间r3的挑选为F即便是0x1111,翻开4片内存区域。

(3) 改写距离设置。关于改写距离值(DIR)的核算在手册中是这样给出的:

随机存储器在嵌入式操作体系中的运用规划详解

现在公认的标准是,存储体中电容的数据有用保存期上限是64 ms,也便是说每一行改写的循环周期是64 ms。这样改写速度为:64 ms/行数量。因为行地址有13位(在MDCNFG寄存器的DRACO[1:0]中设置,需求与硬件一起)。

随机存储器在嵌入式操作体系中的运用规划详解

(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指针会从头指向这个地址。

随机存储器在嵌入式操作体系中的运用规划详解

3.2.3 软件的移植

针关于PXA27x系列的高端处理器,微软在Plat-Build 5.0中给出了相对应的内核代码虽然在内核代码的架构上有了很大的改动,但关于扩展SDRAM的思维并没有改动,首要在BootLoader中初始化所运用的SDRAM,其次在BSP内树立地址映射表。

4 结 语

介绍了在嵌入式Windows CE体系渠道上,运用大容量SDRAM作为动态存储设备的计划。具体介绍了sDRAM硬件衔接计划以及软件接口的完结。该计划现已在工程规划中投入运用,其能够在同类的嵌入式高端产品中推行运用。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qiche/103053.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部