首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
数字电路
» SDRAM工作原理(2)
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
SDRAM工作原理(2)
发短消息
加为好友
yuyang911220
当前离线
UID
1029342
帖子
9914
精华
0
积分
4959
阅读权限
90
在线时间
286 小时
注册时间
2014-5-22
最后登录
2017-7-24
论坛元老
UID
1029342
性别
男
1
#
打印
字体大小:
t
T
yuyang911220
发表于 2015-9-22 19:16
|
只看该作者
SDRAM工作原理(2)
工作原理
,
信号线
,
空间
S3C2440地址空间:
S3C2440对外引出了27根地址线ADDR0~ADDR26,它最多能够寻址128MB,而S3C2440的寻址空间可以达到1GB,这是由于S3C2440将1GB的地址空间分成了8个BANKS(Bank0~Bank7),其中每一个BANK对应一根片选信号线nGCS0~nGCS7,当访问BANKx的时候,nGCSx管脚电平拉低,用来选中外接设备, S3C2440通过8根选信号线和27根地址线,就可以访问1GB。如下图所示:
SDRAM存储结构:
先来介绍一下CPU提供的一组用于SDRAM的信号:
1. SDRAM的时钟有效信号SCKE;
2. SDRAM的时钟信号SCLK0,SCLK1;
3. 数据掩码信号DQM0,DQM1,DQM2,DQM3;
4. SDRAM片选信号nSCS0(它与nGCS6是同一引脚的两个功能);
5. SDRAM行地址选通脉冲信号nSRAS;
6. SDRAM列地址选通脉冲信号nSCAS;
7. 写允许信号nWE(它不是专用于SDRAM的)。
SDRAM的内部是一个存储阵列,阵列就类似于表格一样,有行、列之分,这样我们要访问(读、写)一个单元,就要先指定一个行地址,一个列地址,这样就找到了该单元,这就是SDRAM的寻址的基本原理。这里的单元我们一般称为存储单元,而整个表格称为逻辑BANK(Logical Bank, L-BANK),一般每个SDRAM都会有4个L-BANK。SDRAM的逻辑结构如下图所示:
jz2440是选用2片HY57V561620FTP-H组成64MB、32位的内存,每片32MB容量、16位数据总线。原理图如下:
在图中可以看到,行地址、列地址共用地址线ADDR2~ADDR14(BANK6位宽为32,ADDR0、1没有使用),使用nSRAS、nSCAS两个信号来区分它们。在jz2440开发板中,使用两根地址线ADDR24、ADDR25作为L-Bank的选择信号;SDRAM芯片K4S561632的行地址数为13,列地址数为9,所以当nSRAS信号有效时,ADDR2~ADDR14上发出的是行地址信号,它对应32位地址空间的bit[23:11];当nSCAS信号有效时,ADDR2~ADDR10发出的是列地址信号,它对应32位地址空间的bit[10:2]。
重点关注SDRAM芯片K4S561632地址线 A0~A12的说明:
该芯片每一个Bank有13行(RA0~RA12),9列(CA0~CA8),行寻址时使用A0~A12,列寻址分时复用,只使用了CA0~CA8。nRAS、nCAS引脚,用于标识当前是行寻址还是列寻址,从而实现地址线的分时复用。
jz2440开发板是由两块16位的SDRAM芯片并联组成32位的位宽,与CPU的32根数据线DATA0~DATA1相连。SDRAM是连接在BANK6上的,起始地址为0x30000000,所以SDRAM的访问地址为0x30000000~0x33FFFFFF,大小为64MB。
看了上面那些内容,里面有某些东西令我百思不得其解,可能是自己太笨了,不过最后还是想明白了。
1
、为什么两块SDRAM
芯片并联起来,容量大小是64MB
呢?
原因是这样的:SDRAM芯片有4个bank,每个bank的行地址数是13、列地址数是9,由两块16位的SDRAM芯片并联组成32位的位宽,与CPU的32根数据线DATA0~DATA1相连。则其存储空间为(2^13*2^9*4*32bit)/8= 2^26*8bit/ 8 = 2^26 Byte = 64MB
2
、为什么SDRAM
芯片的A0
地址引脚连接的是ARM
芯片的A2
引脚呢?
根据上一问可知,该SDRAM存储空间为64MB,S3C2440要寻址64MB需要地址线26根。由原理图可知SDRAM的数据总线位宽为32位,即一次传输4个字节的数据。因此,我们可以这样理解,
即一个地址空间其实对应着
4
个字节的数据
,实际上真正的寻址空间只有16MB而已,只需24根地址线(行地址线13根,列地址线9根,还有L-Bank选择信号的A24、A25两根地址线,总共24根)就已经足够了,这样S3C2440端并不需要将26根地址线全部连接到SDRAM芯片上,只需要给出高24位地址(A2~A25),相当于数据总线上每传输4个字节的数据,地址空间的第三位(A2)才增加1,即A0和A1可以不接。此时的A0和A1应该是低电平。然后,SDRAM芯片即根据S3C2440给的行地址、列地址和L-Bank选择信号找到对应的地址空间,将该地址空间的4个字节发送到数据总线上。以此类推,数据位宽为8位,就arm芯片的A0接SDRAM的A0,16位就A1接A0,32位就A2接A0。
还有一个细节,即为什么SDRAM
芯片的BA0~BA1
连接的是S3C2440
芯片的LADDR24~LADDR25
引脚?
因为,HY57V561620为32MB的SDRAM芯片,我们知道,32MB的存储空间是需要 25根地址线寻址的,由于BA0~BA1引脚决定了访问第几个Bank,即决定了存储空间的最高两位,因此,需要使用S3C2440的25根地址线中的最高两位来连接BA0~BA1,这样就可以满足寻址的映射要求了。
收藏
分享
评分
继承事业,薪火相传
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议