s5pv210开发与学习:1.10之裸机初始化SDRAM

1.硬件原理

2.数据手册


2.1.SDRAM引入
2.1.1、SDRAM:Syncronized Dynamic Ramdam Access Memory,同步动态随机存储器
          DDR:DDR就是DDR SDRAM,是SDRAM的升级版。(DDR:double rate,双倍速度的SDRAM)
          DDR有好多代:DDR1 DDR2 DDR3 DDR4 LPDDR

2.1.2、SDRAM的特性(容量大、价格低、掉电易失性、随机读写、总线式访问)
    SDRAM/DDR都属于动态内存(相对于静态内存SRAM),都需要先运行一段初始化代码来初始化才能使用
    不像SRAM开机上电后就可以直接运行。
类似于SDRAM和SRAM的区别的,还有NorFlash和NandFlash(硬盘)这两个。
正是因为硬件本身特性有限制,所以才导致启动代码比较怪异、比较复杂。而我们研究裸机是为了研究uboot,在uboot中就充分利用了硬件的各种特性,处理了硬件复杂性。

2.1.3、开发板上贴的内存芯片型号:N2TU1616GG-AC

SDRAM通过地址总线和数据总线接口(总线接口)与SoC通信。

开发板原理图上使用的是K4T1G164QQ,但是实际开发板上贴的不是这个,是另一款。但是这两款是完全兼容的,进行软件编程分析的时候完全可以参考K4T1G164QQ的文档。

全球做SDRAM的厂商不多,二线厂家做的产品参数都是向一线厂家(三星、KingSton)看齐,目的是兼容一线厂家的设计,然后让在意成本的厂商选择它的内存芯片替代一线厂家的内存芯片。SDRAM的这个市场特征就导致这个东西比较标准化,大部分时候细节参数官方(芯片原厂家)都会给你一个参考值。

K4T1G164QE:
K表示三星产品,4表示是DRAM,T表示产品号码,1G表示容量(1Gb,等于128MB,我们开发板X210上一共用了4片相同的内存,所以总容量是128×4=512MB)16表示单芯片是16位宽的,4表示是4bank,

三星官方的数据手册上其实没有芯片相关的参数设置信息,都是芯片选型与外观封装方面的信息,选型是给产品经理来看的,封装和电压等信息是给硬件工程师看的。软件工程师最关注的是工作参数信息,但是数据手册没有。

3.代码编写

代码仓库

4.参考资料

1. S5PV210之SDRAM初始化

2.S5PV210的内存分配研究分析

3.s5pv210——初始化SDRAM

4.《嵌入式Linux软硬件开发详解——基于S5PV210处理器》——2.2 DDR2 SDRAM芯片

5.Ubuntu下S5PV210开发板嵌入式开发环境搭建

6.s5pv210核心板原理图

7.X210CV3核心板简介.pdf

发布了56 篇原创文章 · 获赞 12 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/I_feige/article/details/103061439