在一个电子系统中,CPU、内存、物理存储、IO这些单元必不可少,只不过有的集成在CPU内部,有的分离出来。

这里就针对系统中的内存,此处选用DRAM来进行说明,讲述下基本的原理设计,主要分为以下几个部分:

(1)DRAM芯片引用

256Mb大小SDRAM:K4S560432E

(2)DRAM引脚类型

A0-A12:地址总线

DQ0-DQ15:数据总线

CLK:系统时钟

CKE:时钟使能

RAS#:行地址锁存

CAS:列地址锁存

WE#:写使能

DQM:数据输入输出屏蔽

BA0,BA1:块地址选择

(3)DRAM原理设计

看完DRAM的接线图,有没有什么疑问?

笔者第一次看完就有疑问了,为什么DRAM的地址线A0接的是CPU的LADDR2而不是LADDR0,为什么?

几经周折,查了资料,找人讨论,终于得到了答案,请看下文:

上图中CPU是32位的数据宽度,即CPU在数据读写过程中,一次可以传输32位。那图中一片DRAM肯定是没法满足性能最大化了,即使使用一片也可以工作(降低性能),欣慰的是,可以采用两片并联的方式进行内存扩展,达到32位传输的目的。

那地址线那样接是什么意思,解释一下吧!
     CPU每次数据传输为32位4字节,即存储单元地址是以4字节递增的,如下图。若设计者想要获取地址0x0000、0x0001、0x0002、0x0003单元的字节,此时需要通过设置地址线来实现,对应A0A1为:00、01、10、11。有没有发现,这四个字节单元其所在的存储位置都是CPU可以一次进行读写的存储块。即无论你要访问的是这四个字节中的哪一个,最终CPU都是通过地址0x0000来进行操作的,最终再根据你需要的相应字节来截取出来。也就是说,A0、A1的状态对于CPU访问的物理空间是没有影响的。

现在是不是有些理解为什么图中是从LADDR2开始了。

DRAM的原理设计的更多相关文章

  1. 从底层谈WebGIS 原理设计与实现(三):WebGIS前端地图显示之根据地理范围换算出瓦片行列号的原理(转载)

    从底层谈WebGIS 原理设计与实现(三):WebGIS前端地图显示之根据地理范围换算出瓦片行列号的原理 1.前言   在上一节中我们知道了屏幕上一像素等于实际中多少单位长度(米或经纬度)的换算方法, ...

  2. 从底层谈WebGIS 原理设计与实现(六):WebGIS中地图瓦片在Canvas上的拼接显示原理

    从底层谈WebGIS 原理设计与实现(六):WebGIS中地图瓦片在Canvas上的拼接显示原理 作者:naaoveGI…    文章来源:naaoveGIS    点击数:1145    更新时间: ...

  3. 从底层谈WebGIS 原理设计与实现(五):WebGIS中通过行列号来换算出多种瓦片的URL 之在线地图

    从底层谈WebGIS 原理设计与实现(五):WebGIS中通过行列号来换算出多种瓦片的URL 之在线地图 作者:naaoveGI…    文章来源:naaoveGIS    点击数:2063    更 ...

  4. 从底层谈WebGIS 原理设计与实现(四):WebGIS中通过行列号来换算出多种瓦片的URL 之离线地图

    从底层谈WebGIS 原理设计与实现(四):WebGIS中通过行列号来换算出多种瓦片的URL 之离线地图 作者:naaoveGI…    文章来源:naaoveGIS    点击数:1759    更 ...

  5. 从底层谈WebGIS 原理设计与实现(二):探究本质,WebGIS前端地图显示之地图比例尺换算原理

    从底层谈WebGIS 原理设计与实现(二):探究本质,WebGIS前端地图显示之地图比例尺换算原理 作者:naaoveGI…    文章来源:http://www.cnblogs.com/naaove ...

  6. 从底层谈WebGIS 原理设计与实现(一):开篇

    从底层谈WebGIS 原理设计与实现(一):开篇 作者:naaoveGI…    文章来源:http://www.cnblogs.com/naaoveGIS/    点击数:4773    更新时间: ...

  7. Atitit.字节数组转字符串 base64 base16 Quoted-printable 编码原理设计 attilax 总结

    Atitit.字节数组转字符串 base64 base16 Quoted-printable 编码原理设计 attilax 总结 1. Base64编码, 1 2. Base64实现转换原理1 3.  ...

  8. SpringMVC 原理 - 设计原理、启动过程、请求处理详细解读

    SpringMVC 原理 - 设计原理.启动过程.请求处理详细解读 目录 一. 设计原理 二. 启动过程 三. 请求处理 一. 设计原理 Servlet 规范 SpringMVC 是基于 Servle ...

  9. 蓝牙固件升级(OTA升级)原理设计

    转:http://blog.csdn.net/yueqian_scut/article/details/50849033 固件空中升级(OTA)与固件二次引导的原理和设计 原创 2016年03月10日 ...

随机推荐

  1. 认识Modbus协议

    1.什么是Modbus? Modbus协议是应用于电子控制器上的一种通用语言.通过此协议,控制器相互之间,控制器经由网络(例如以太网)和其它设备之间可以通信.Modbus协议定义了一个控制器能认识使用 ...

  2. mysql5.x安装脚本

    直接贴出来: #!/bin/bash #linux安装mysql服务分两种安装方法: #①源码安装,优点是安装包比较小,只有十多M,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: #②使 ...

  3. awk和sed截取nginx和tomcat时间段日志

    1 nginx日志截取示例 日志路径:/usr/local/nginx/logs, 截取access.log中2019年3月24日17点00~02之间的日志: 写法1: cat access.log ...

  4. PostgreSQL学习笔记(二)-安装pgAdmin

    继上篇安装PostgreSQL后,我们需要安装一个PostgreSQL的图形化管理工具. pgadmin管理工具 创建Python的虚拟环境 cd /root/venv python -m venv ...

  5. redhat7初始化yum源

    1.卸载原有的yum [app@localhost ~]$ su - root Password: Last :: CST on pts/ [root@localhost ~]# cd /etc/yu ...

  6. Numpy 多维数组简介

     NumPy是一个功能强大的Python库,主要用于对多维数组执行计算.NumPy这个词来源于两个单词-- Numerical和Python.NumPy提供了大量的库函数和操作,可以帮助程序员轻松地 ...

  7. 适用于typecho0.9的评论表情插件

    依旧是寻找插件,实在是太累人,很多插件现在更新后不支持typecho0.9了,今天想给评论框加一个表情拓展,发现新版本的插件完全不兼容typecho0.9,无奈用回旧版本····· 实际上,旧版本的插 ...

  8. <A>标记onclick事件

    <script> function ss() { document.getElementById("btnPublicity").click(); }</scri ...

  9. Elasticsearch一些使用笔记(持续更新)

    这篇博客记录这一些运维ES的一些经验. 1.节点磁盘使用率过高,导致ES集群shard无法分配,丢失数据? 有两个配置,分配副本的时候 参数名称 默认值 含义 cluster.routing.allo ...

  10. 获取页面所有a标签href

    for(i=0;i<=document.getElementsByTagName("a").length;i++){ console.log(document.getElem ...