SDRAM

注:以下内容学习于韦东山老师arm裸机第一期视频教程

辅线1_硬件知识 SDRAM的设置

CPU发送地址给内存控制,由内存控制去访问外面SDRAM

SDRAM逻辑结构图

SDRAM_第1张图片

  • SDRAM 有4个块 BANK 0 、BANK 1、 BANK2、BANK3,上图所示每块里面的每个格子表示的是16位数据

  • 先发出片选信号选择整个芯片,然后选中bankn,然后发出行信号、列信号

例:执行下面的命令

	LDR R0 , = 0x3000,0000
	LDR R1 , [R0]
	
### 读内存操作
	cpu将地址0x3000,0000 发个内存控制器
	内存控制器拿到地址
		1、发出 nGCS6(片选型号)
		2、根据类型拆分地址(SDRAM)
			- BANK 地址
			- 行地址
			- 列地址
		3、读数据

如何拆分行地址几条线,列地址几条线,都需要设置寄存器

wait信号:内存控制器发出所有信号,而内存芯片没有准备好数据的时候,可以向内存控制发出一个wait芯片

设置寄存器

SDRAM_第2张图片
2440 用了2个16位SDRAM芯片组成一个32位的(看J2440的原理图)

bank7 和bank6 设置成一样

设置BANKCON 寄存器

SDRAM_第3张图片

设置REFREE寄存器

我们的SDRAM不像静态内存那么可靠,需要不断的刷新,否者数据会丢失
SDRAM_第4张图片

SDRAM_第5张图片

SDRAM_第6张图片

你可能感兴趣的:(韦东山嵌入式笔记)