嵌入式之S5PV210地址映射详解与外部存储器的接口

一:地址映射详解
哈哈 注意不是内存映射 而是地址映射
大家都知道
S5PV210芯片是基于arm 的cortex-A8架构的
32位的cpu 拥有32位的地址总线和32位的数据总线

因为有32位的地址总线 那么表示的存储范围就应该是2的32次方(也就是4g的范围)

我们所说的地址映射就是说说这32位地址总线表示的4g地址范围分别都连接哪些区域,都是一些什么作用的

这里写图片描述

在上图中还有一些关于区域作用的信息未展示完,现在展示一些
RAM与ROM
ROM其实就相当于Flash,硬盘这些一样 只能读 不能写 的 我们这里说的不能写是指cpu不能通过地址总线数据总线进行写 而我们进行对硬盘进行修改是通过一些i/O接口进行读写的
RAM 就相当于内存了 可以进行读写操作 并且是随机读写的 而我们说的Flash是只能顺序读写的
IRAM 和IROM其中的i是指的Internal 内部的 集成到soc芯片里面的的内存区域

注意cpu设计者为什么指分配1.5g的存储区域给内存 而不是更多 是因为要考考虑cpu的性能与内存大小的匹配关系
这里写图片描述

然后我们再详细的分析一段存储区间的内部是怎么设计的 0xD000_0000到0xDFFF_FFFF这段区域

这里写图片描述

最后我们详细解释一下各个区域的特点吧

RAM(Random Access Memory)的全名为随机存取记忆体,当电源关闭时RAM不能保留数据,正因为如此,有时也将RAM称作“可变存储器”。是与CPU直接交换数据的内部存储器,也叫主存(内存)。它可以随时读写,而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储媒介。
按照存储单元的工作原理,随机存储器又分为静态随机存储器(英文:Static RAM,SRAM)和动态随机存储器(英文Dynamic RAM,DRAM)。
RAM百度内容

ROM(Read Only Memory)的全名为唯读记忆体,它相当于PC机上的硬盘,用来存储和保存数据。ROM数据不能随意更新,但是在任何时候都可以读取。即使是断电,ROM也能够保留数据。但是资料一但写入后只能用特殊方法或根本无法更改,因此ROM常在嵌入式系统中担任存放作业系统的用途。

AM和ROM相比,两者的最大区别是RAM在断电以后保存在上面的数据会自动消失,而ROM就不会。
由于ROM不易更改的特性让更新资料变得相当麻烦,因此就有了Flash Memory的发展 ,Flash Memory具有ROM不需电力维持资料的好处,又可以在需要的时候任意更改资料 ,不过单价也比普通的ROM要高。

闪存(Flash Memory)是一种长寿命的非易失性(在断电情况下仍能保持所存储的数据信息)的存储器,数据删除不是以单个的字节为单位而是以固定的区块为单位(注意:NOR Flash 为字节存储。),区块大小一般为256KB到20MB。闪存是电子可擦除只读存储器(EEPROM)的变种,闪存与EEPROM不同的是,EEPROM能在字节水平上进行删除和重写而不是整个芯片擦写,而闪存的大部分芯片需要块擦除。由于其断电时仍能保存数据,闪存通常被用来保存设置信息,如在电脑的BIOS(基本程序)、PDA(个人数字助理)、数码相机中保存资料等。

SRAM速度非常快,是目前读写最快的存储设备了,但是它也非常昂贵,所以只在要求很苛刻的地方使用,譬如CPU的一级缓冲,二级缓冲。动态RAM(Dynamic RAM/DRAM)保留数据的时间很短,速度也比SRAM慢,不过它还是比任何的ROM都要快,但从价格上来说DRAM相比SRAM要便宜很多,计算机内存就是DRAM的。

DDR RAM(Date-Rate RAM)也称作DDR SDRAM,这种改进型的RAM和SDRAM是基本一样的,不同之处在于它可以在一个时钟读写两次数据,这样就使得数据传输速度加倍了。

内存工作原理:内存是用来存放当前正在使用的(即执行中)的数据和程序,我们平常所提到的计算机的内存指的是动态内存(即DRAM),动态内存中所谓的”动态”,指的是当我们将数据写入DRAM后,经过一段时间,数据会丢失,因此需要一个额外设电路进行内存刷新操作。

FLASH存储器又称闪存,它结合了ROM和RAM的长处,不仅具备电子可擦除可编程(EEPROM)的性能,还不会断电丢失数据同时可以快速读取数据(NVRAM的优势),U盘和MP3里用的就是这种存储器。
目前Flash主要有两种NOR Flash和NADN Flash。NOR Flash的读取和我们常见的SDRAM的读取是一样,用户可以直接运行装载在NOR FLASH里面的代码,这样可以减少SRAM的容量从而节约了成本。NAND Flash没有采取内存的随机读取技术,它的读取是以一次读取一块的形式来进行的,通常是一次读取512个字节,

sdram:主要用于程序执行时的程序存储、执行或计算,类似内存。
nor flash:适合小容量的程序或数据存储,类似小硬盘;
nand flash:适合大容量数据存储,类似硬盘;
inand flash:是SanDisk公司研发的存储芯片,可以简单的看成SD卡或MMC卡芯片化。

二 外部存储器的接口
内存 内部存储器 用来运行程序的 RAM 举例(DRAM SRAM DDR)
外存 外部存储器 用来存储东西的 ROM 举例(硬盘 Flash(Nand iNand···· U盘、SSD) 光盘)

CPU连接内存和外存的连接方式不同。
内存需要直接地址访问,所以是通过地址总线&数据总线的总线式访问方式连接的(好处是直接访问,随机访问;坏处是占用CPU的地址空间,大小受限);
外存是通过CPU的外存接口来连接的(好处是不占用CPU的地址空间,坏处是访问速度没有总线式快,访问时序较复杂
对于这些接口在S5PV210里面的第五章内存详细介绍了这些外设接口的使用以及构成。

1:SoC常用外存:
falsh 电子存储访问的 嵌入式都是用的flash的

NorFlash 总线式访问,接到SROM bank就是0x8000_0000到0xAFFF_FFFF的存储区域6个bank 最大128M,优点是可以直接总线访问,一般用来启动。单位容量价格贵可靠,不用时序很快简单

以前的嵌入式系统都是norFlash做启动盘 NandFlash做硬盘 防pc机的
现在的嵌入式都可以了,可以使用NandFlash sd卡进行启动了。

下面都是NandFlash的
NandFlash: 分为SLC(容量不大价格高 稳定性高读取简单)和MLC(容量大 价格低 容易坏块稳定性低读取复杂)

eMMC/iNand/moviNand eMMC(embeded MMC)eMMC —— ——相当于内部的sd卡 iNand是SanDisk公司出产的eMMC,moviNand是三星公司出产的‘

oneNAND oneNand是三星公司出的一种Nand
SD卡/TF卡/MMC卡 都叫sd卡———— 卡本身里面就有一个cpu电路对存储区域进行管理
eSSD SSD就是固态硬盘 固态硬盘里面一定是NandFlash 一定是MLC 的那种容量大 ——e就是表embeded嵌入的 做成芯片了 可以焊到板子上来

SATA硬盘(机械式访问、磁存储原理、SATA是接口)单位存储容量便宜 用于pc机上 可靠性不高

2:S5PV210支持的外部存储器
这里写图片描述

3;X210开发板支持的外部存储器
X210有2个版本,Nand版和iNand版,分别使用Nandflash和iNand为外部存储器。我们使用的是iNand版本,板载4GB iNand
S5PV210共支持4个SD/MMC通道,其中通道0和2依次用作启动。X210开发板中SD/MMC0通道用于连接板载MMC,因此外部启动时只能使用SD/MMC2通道(注意通道3不能启动)。见《S5PV210_iROM_ApplicationNote_Preliminary_20091126.pdf》中P6
详细的我们到开发板的启动那章节细说

总结一下

RAM :随机存取存储器 主存 是与cpu直接交换数据内容的存储器
随机存取 易失 访问速度快
又分为 SRAM静态随机存储 和DRAM动态随机存储
一般大型的RAM就是DRAM
小型的就是SRAM

ROM 只读存储器 例如 计算机启动的BIOS芯片就是ROM
注意在我们前面的0xD000_0000到0xDFFF_FFFF区域
程序就是放在ROM 数据就是放在RAM

SATA硬盘 机械访问 磁存取
Flash 电子存储访问 就只是比 硬盘速度更快的外设存储器

Flash又分为很多种

NorFlash 可以通过地址&数据总线进行访问的 接到SROM bank就是0x8000_0000到0xAFFF_FFFF的存储区域6个bank 最大128M,优点是可以直接总线访问,一般用来启动。单位容量价格贵可靠,不用时序很快简单

其余的都是NandFlash

NandFlash 分为 SLC和MLC两种主攻的方向不同
SLC(容量不大价格高 稳定性高读取简单)和MLC(容量大 价格低 容易坏块稳定性低读取复杂)

SD卡/TF卡/MMC卡 :都叫sd卡———— 卡本身里面就有一个cpu电路对存储区域进行管理 就是我们常见的sd卡

eMMC/iNand/moviNand ;e就是embeded内嵌的意思 这三种其实就是内嵌的sd卡但是因为不同的公司产的就有了不同的名
iNand是SanDisk公司出产的eMMC,moviNand是三星公司出产的eMMC

oneNAND oneNand是三星公司出的一种Nand

eSSD SSD就是固态硬盘 固态硬盘里面一定是NandFlash 一定是MLC 的那种容量大 ——e就是表embeded嵌入的 做成芯片了 可以焊到板子上来

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值