7SDRAM工作原理Word格式文档下载.docx

上传人:b****3 文档编号:7590427 上传时间:2023-05-08 格式:DOCX 页数:13 大小:726.53KB
下载 相关 举报
7SDRAM工作原理Word格式文档下载.docx_第1页
第1页 / 共13页
7SDRAM工作原理Word格式文档下载.docx_第2页
第2页 / 共13页
7SDRAM工作原理Word格式文档下载.docx_第3页
第3页 / 共13页
7SDRAM工作原理Word格式文档下载.docx_第4页
第4页 / 共13页
7SDRAM工作原理Word格式文档下载.docx_第5页
第5页 / 共13页
7SDRAM工作原理Word格式文档下载.docx_第6页
第6页 / 共13页
7SDRAM工作原理Word格式文档下载.docx_第7页
第7页 / 共13页
7SDRAM工作原理Word格式文档下载.docx_第8页
第8页 / 共13页
7SDRAM工作原理Word格式文档下载.docx_第9页
第9页 / 共13页
7SDRAM工作原理Word格式文档下载.docx_第10页
第10页 / 共13页
7SDRAM工作原理Word格式文档下载.docx_第11页
第11页 / 共13页
7SDRAM工作原理Word格式文档下载.docx_第12页
第12页 / 共13页
7SDRAM工作原理Word格式文档下载.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

7SDRAM工作原理Word格式文档下载.docx

《7SDRAM工作原理Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《7SDRAM工作原理Word格式文档下载.docx(13页珍藏版)》请在冰点文库上搜索。

7SDRAM工作原理Word格式文档下载.docx

其中,SRAM芯片的引脚与图中芯片方框图中所标示,而ARM芯片的引脚则为导线上的标号。

初学者可能会有几个疑问,为什么SRAM芯片的A0地址引脚连接的是ARM芯片的A1引脚呢?

那什么情况下SRAM芯片的A0连接ARM芯片的A0引脚呢?

首先,我们分析一下图中的SRAM芯片,该芯片有A0~A15一共16根地址线,有D0~D15一共16根数据线,故其存储空间为2^16*16bit=2^17*8bit=2^17byte=128KB

我们知道,要寻址 

128KB 

需要17根地址线(128 

=2^17),然而SRAM芯片的地址引脚却只有16根,ARM端该如何给地址线呢?

由图可以看出,SRAM芯片的数据总线是16位宽,即一次传输2个字节的数据。

因此,我们可以这样理解,即一个地址空间其实对应着2个字节的数据,实际上真正的寻址空间只有64KB而已,16根地址线足够。

这样ARM端并不需要将17根地址线全部连接到SRAM芯片上,只需要给出高16位地址(A1~A16),然后,SRAM芯片即根据这16根地址找到对应的地址空间,将该地址空间的2个字节发送到数据总线上,然后ARM端根据未连接到SRAM芯片的A0的电平,来决定具体是取高字节,还是低字节。

由这些分析可以推出一个规律,即ARM端的地址线到底是A0、A1还是A2连接存储芯片的A0,取决于存储系统的数据总线位宽,如果是8位则A0->

A0,如果是16位则A1->

A0,如果是32位则A2->

A0。

大致搞清楚了上面的原理后,ARM与存储芯片的连接方法也就很清晰了,下面给几张分别描述了各种情况下的ARM与存储芯片的连接示意图(截取自s3c2440的datasheet)。

【说明】:

上图的ROM为2^16x8bit=64KB,由于数据总线为8位宽,故一个地址空间对应着1个字节,故ARM端的A0连接ROM的A0

上图中,由两片8位宽64KB的ROM构成了一个16位宽的存储系统。

上图中,由四片8位宽的ROM构成了一个32位宽的存储系统。

那么,留一个小问题供大家思考,如果将ARM的A0~A15引脚连接一个16位宽的SRAM的A0~A15引脚,会发生什么现象?

注,本文讨论的ARM芯片是没有类似SDRAMController这样的存储器控制器的ARM芯片,对于有类似SDRAMController模块的ARM芯片,它会根据寄存器配置的外接DDR芯片数据位宽,在硬件上将ARM的地址线引脚进行的左移操作,例如当数据位宽为16位时,硬件上将ARM的A1脚的电平移至A0,依次类推。

所以,这样的ARM芯片不需要根据本文的方法连接,而直接将ARM端的A0~Ax连接到存储器的A0~Ax即可。

存储芯片的写屏蔽与扩展

在上一节中,我们讲述了主控芯片(ARM)与SRAM的地址线如何连接的问题,关于存储芯片的写寻址过程以及存储芯片的扩展并没有涉及,本文着重描述这方面的知识点和需要注意的问题。

首先,我们还是看一个电路图:

由上一篇文章我们知道,这是ARM芯片与16位数据位宽的SRAM存储芯片的典型连接图,ARM芯片只需给出要访问的高16位地址,数据总线上则会出现两个字节的数据,供ARM读取,然后ARM根据A0的值来决定访问高字节还是低字节。

这只是存储芯片的读数据时的访问过程,在读数据过程中,存储芯片不需要知道ARM在某个时刻访问的是高字节还是低字节,只需要把指定地址空间处的16位数据送到数据总线即可。

但是,对于写过程,就不是这么简单了。

显然,对于向存储芯片中写数据的情况,存储芯片是需要知道当前ARM芯片到底是写的是低字节,还是高字节,还是整个字。

那么,这一项信息ARM靠什么方式通知存储芯片呢?

纵观16位的存储芯片(无论是SRAM、SDRAM还是DDR),我们可以发现,芯片一般都提供两个表征着写屏蔽的引脚。

例如SRAM芯片一般是(nLB,nUB),DDR2芯片一般是(LDM,UDM),一般,nLB、LDM标识低字节,而nUB、UDM一般标识高字节。

例如,对于SRAM芯片而言,在写时序中,只有nLB有效,才允许写低字节;

只有nUB有效,才允许写高字节。

另外,有的8位存储芯片也有这样的写屏蔽引脚,用于多片8位存储芯片的扩展,由于8位数据宽的芯片不存在高低字节,故写屏蔽引脚一般只有一个,例如有的8位DDR2芯片的写屏蔽引脚为DM。

相应地,ARM端一般也会有一些引脚,用于标识当前写时序中,正在写的是低字节、高字节还是整个字。

例如,s3c2440的相关引脚如下:

针对不同的存储芯片,使用的是不同的写屏蔽引脚,如SDRAM/DDR2则使用DQM[3:

0],SRAM则使用nBE[3:

0],而nWBE[3:

0]则是用来连接多个8位存储器扩展系统的,由于一般8位存储器只有nWE引脚,对于选通那一片进行写,则由nWBE[3:

0]来决定。

将ARM端的写屏蔽引脚与对应的存储芯片的写屏蔽引脚相连即可,一般ARM端都会设计多组写屏蔽引脚,例如s3c2440的DQM引脚有4个,用于多片存储芯片扩展的情况。

下面再讲讲存储芯片的扩展,一般都是进行数据位宽的扩展,即使用2片8位存储芯片扩展位16位存储系统,或者是2片16位存储芯片扩展位32位存储系统。

一个典型的存储芯片扩展电路图如下:

由图可以看出,该电路将两片16位宽的SRAM芯片扩展位了一个32位宽的存储系统,两片SRAM芯片的引脚连接几乎相同,那么,究竟是什么决定着左边这一片SRAM作为低字节,而右边那一片作为高字节呢?

由上面的写屏蔽的知识我们知道,就是写屏蔽位决定的,左边这片SRAM芯片连接的是nBE0~nBE1,决定了其为低2字节,而右边的nBE2~nBE3决定了其为高2字节。

SDRAM存储结构

SDRAM/DDR存储芯片的结构和寻址方式相对于ROM、SRAM、DRAM而言,还是有很大的变化和不同的,本文就着重介绍SDRAM/DDR的相关知识点和应用注意事项。

在存储结构上,SDRAM/DDR采取了多Bank方式,每一个逻辑Bank即为一个存储阵列,一般一个SDRAM芯片有2~8个Bank。

我们可以把Bank想象为一个表格,如下:

图中的Bank是一个14行17列的逻辑存储结构,假设该SDRAM芯片有4个Bank,则其存储空间为:

4x2^14x2^17 

bit=2^33bit= 

1GB

在寻址方式上,首先,多了几个Bank选择引脚,例如对于4个Bank的SDRAM,则有2个引脚(BA0~BA1)进行Bank选择。

当具体Bank选定后,再给出行列地址从而定位到具体的存储位置。

而行列地址值由相应的地址线引脚分时复用得到。

下面研究一个具体的SDRAM电路图,如下图所示,该图为ARM芯片s3c2440与SDRAM芯片HY57V561620的连接示意图。

该SDRAM芯片为HY57V561620,有4个Bank,16位宽数据线,32M的存储空间。

该芯片的引脚功能描述如下:

重点关注地址线A0~A12的说明,我们可以到,该芯片每一个Bank有13行(RA0~RA12),9列(CA0~CA8),行寻址时使用A0~A12,列寻址分时复用,只使用了CA0~CA8。

并且,相比于SRAM芯片,多了nRAS、nCAS引脚,用于标识当前是行寻址还是列寻址,从而实现地址线的分时复用。

我们可以通过下面的时序图,来更加直观地了解一下SDRAM是如何寻址的:

[第一步]选择Bank,同时给出行地址 

[第二步]给出列地址,得到数据

最后,再补充点内容,关于上面ARM芯片s3c2440与SDRAM芯片HY57V561620的连接图,有一个细节,即为什么SDRAM芯片的BA0~BA1连接的是ARM芯片的LADDR24~LADDR25引脚?

因为,HY57V561620为32MB的SDRAM芯片,我们知道,32MB的存储空间是需要25根地址线寻址的,由于BA0~BA1引脚决定了访问第几个Bank,即决定了存储空间的最高两位,因此,需要使用ARM的25根地址线中的最高两位来连接BA0~BA1,这样就可以满足寻址的映射要求了。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2