单片机
返回首页

S3C2410存储器扩展(1)——SDRAM

2016-11-25 来源:eefocus

由于S3C2410是32位处理器(指令一次能够操作32位数据(运算器一次可以处理32位数据);通用寄存器多是32位寄存器;处理器内部数据通道也是32位的;处理器外部数据总线宽度通常是32位的,地址总线宽度只是代表CPU寻址范围大小,与CPU是多少位的无关,也即32位CPU的地址总线不一定是32根的,例如对于s3c2410,每一个Bank对应27根地址线,寻址能力为128MB,全部8个Bank总的寻址能力为1GB),所以为了最大限度的发挥其性能,内存最好也是32位(指数据宽度)的,(当然,在s3c2410的8个bank中,除了Bank0只能选择16/32数据位宽外,其余的7个Bank均可以单独选择8/16/32位宽的存储系统)然而市面上很少有32位宽度的单片SDRAM,所以一般都采取两片16位的SDRAM进行位扩展得到32位的SDRAM。

S3C2410存储器扩展(1)——SDRAM - 男儿当自强 - 男儿当自强的博客

低16位数据SDRAM连接图

S3C2410存储器扩展(1)——SDRAM - 男儿当自强 - 男儿当自强的博客

高16位数据SDRAM连接图

由上两图可见,本系统扩展后的内存系统为16M×32Bit的(此处32Bit是指数据位宽度,而非地址位,可以理解SDRAM数据位宽度与地址线的条数无关,明白数据线和地址线的区别,对于下面地址线的连接方式的理解非常重要)。

一、A0~A12地址线

首先要明白这一点,在CPU的寻址空间中,字节(8位)是表示存储容量的唯一单位。(所以为什么对于51单片机来说,其16根地址线的寻址能力为64KB,注意:其单位是Byte—字节)

而对于上述已经进行扩展了的32位SDRAM存储系统,可以认为它的每一个存储单元都是4个字节的(单位是4个字节=1个字),因此当它的地址线A1:A0=01时,处理器上对应的地址线应为A3:A2=01(因为CPU的寻址空间是以Byte为单位的)。

正因为如此,SDRAM的A0引脚接到了S3C2410的A2地址线上。

以此类推,SDRAM的A12~A1引脚依次接到了2410的A14~A3地址线上。

可以认为将CPU地址线左移两位,即乘以4(32/8)。

同样的,对于16位数据位宽的SDRAM系统而言,需要将SDRAM的A0引脚连接到2410的A1地址线上面。

二、BA0~BA1地址线

K4S561632D是4M×16Bit×4Banks,共32MB

DRAM芯片在构造上的特点是,芯片上的地址引脚是复用的。(在存取DRAM芯片的某单元时,其操作过程是将存取的地址分两次输入到芯片中,每一次都由同一组地址线输入。两次送到芯片上去的地址分别称为行地址和列地址,它们被锁存到芯片内部的行地址锁存器和列地址锁存器中。可以想象,在芯片内部,各存储单元是按照矩阵结构排列的。行地址信号通过片内译码选择一行,列地址信号通过片内译码选择一列,这样就决定了选中的单元)。 /RAS是行地址锁存信号,该信号将行地址锁存在芯片内部的行地址锁存器中;/CAS是列地址锁存信号,该信号将列地址锁存在芯片内部的列地址锁存器中。

K4S561632D共有13根地址线(A0~A12)。行地址线为A0~A12,共13根;列地址线为A0~A8,共9根,可见K4S561632D一个Bank的存储容量为213×29=222=4M。(对于DRAM来说,13根地址线的最大编址空间为226=64M,可见此处K4S561632D还是留有余量的,其最大容量可以扩充到64M)

BA0~BA1是Bank选择地址线。Banks可以理解为一片16M×16Bit 的K4S561632D内部是由4片容量为4M的16Bit SDRAM扩展而成的,即16M×16Bit =4M×4Banks×16Bit。 BA0~BA1即为该4片SDRAM的片选信号。可见BA0~BA1代表了K4S561632D的最高位。

S3C2410存储器扩展(1)——SDRAM - 男儿当自强 - 男儿当自强的博客

K4S561632D芯片管脚说明

综上,BA0~BA1代表了SDRAM的最高地址位。因为CPU的寻址空间是以字节(Byte)为单位的,本系统SDRAM容量为16MWord=64MByte,那就需要A25~A0(64M=226)地址线来寻址,所以BA1~BA0地址线应该接到2410的A25~A24引脚上。

当然,由上面分析可知,DRAM内存的地址线是行地址线与列地址线复用的,所以地址线的数目并不需要26条。

三、DQM信号


如前所述,32位的SDRAM存储单元以4Byte为单位进行数据访问的时候,内存会忽略CPU的A1和A0地址线(事实上,2410的A1和A0地址线也根本没接到SDRAM的芯片上)。


但是处理器如果需要访问地址偏移量为01的单个字节,就需要DQM(Data Mask)信号进行帮助,这个信号接在2410的nWEB线上。DQM信号由处理器根据当前的访问情况发出,如果当前的访问只需要低16字节,那么nWEB0和nWEB1线就会有效。


进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • PIC单片机控制的遥控防盗报警器电路

  • 使用ESP8266从NTP服务器获取时间并在OLED显示器上显示

  • 用NE555制作定时器

  • 如何构建一个触摸传感器电路

  • 基于ICL296的大电流开关稳压器电源电路

  • 基于TDA2003的简单低功耗汽车立体声放大器电路

    相关电子头条文章