1,SDRAM的地址线,

我们一般用的什么SRAM啊,PSRAM啊,RAM啊,一般而言都是有多少根地址线,然后可以算出寻址空间,比如有11根地址线,那寻址空间就是2的11

次方减1。但是SDRAM是分列地址和行地址的,行、列地址线是复用的,所以有时候我们看到说寻址空间有多大多大,但是看看地址线怎么就那么几根啊,呵

呵。SDRAM一般还有2根BANK的线,分成4个BANK,在有的处理器的SDRAM控制模块中,这两根线可能映射到地址线的某两根去。一般芯片常按照

以下方式写芯片的配置,比如4Meg x 4 x 16,那这个芯片就是256Mbits。其中16指数据线是16根,中间一个4是只分4个

BANK, 每个BANK是4Meg。

2,SDRAM的初始化

SDRAM上电后使用前必须要经过一段初始化操作才可

以使用。这个操作过程是标准的过程。这个过程如下

A:   precharge

B:   auto-refresh

C:   Load Mode Register

D: Normal Read/Write

在上

电后输入初始化命令值钱,最少要100us延迟(这个其实很容易满足,呵呵)。

在输入precharge命令后,因为必须是对所有

BANK进行Precharge,所以A10这个管脚要设置成高,因此在Precharge后面要做一个读的操作,这个操作最主要的是在SDRAM的寻址

空间里设置的地址必须是A10是高的。

在输入Auto-refresh命令后,一般要跟几句空操作或者读什么之类的,反正要达到延迟的

目的,以使得SDRAM有时间来完成refresh。

之后就是要设置SDRAM的模式寄存器,这个寄存器里一般设置了burst长

度,CAS,burst类型,操作模式,还有是设置SDRAM是工作在单个读写操作还是burst操作下。而这个寄存器的设置也是通过地址线来设置的,所

以在发出Load Mode Register命令后要做一个操作可是使得在SDRAM的地址线上出线的值就是你要设置的值。这里很有必要提醒的一下的

是,这个操作是8位的操作,切记切记。

设置完模式寄存器后就进入正常操作模式。

实际上具体的操作要跟选用的处理器的

SDRAM控制模块相结合来设置。对于这些初始化命令比较直观的理解就是拿逻辑分析仪来分析。

在这里需要提醒一下CAS这个参数很重

要。还有SDRAM必须要刷新的,因此刷新频率可以按照手册算出来的,但是设置的高一点也是可以的。常常SDRAM都有工作频率,但是也可以工作在低一点

的频率上,比如PC133的,你工作到100也是可以的,设置基本不需要修改。

3,其他

我们有时候看到有的原理图上

数据线有倒过来接的,其实这个无所谓的,反过接,写进去的就是反的,但是读出又反了一下,反反两次正好没反。

延伸一下到DDR,其实

DDR就是SDRAM外面加了一个乌龟壳。因此初始化是一样的。当然DDR一是多了一个把时钟频率反相的时钟,因此有2个相位差180度的时钟。这两个一

般都是用同一个时钟源产生,一致性会比较好。还有多了2个DQS,这个也是一个时序要求,一般CPU的控制模块都有设置好了。如果你使用的CPU不含有控

制模块,那用FPGA去做一个控制模块的话,那就要好好研究时序了。

在有些处理器的控制模块中,由于EMI的设置,地址线映射关系复杂,因此推

算会比较麻烦,一般如果没有什么映射的话,还是很容易操作的

4.内存芯片的逻辑BANK

在芯片的内部,内存的数据是以位(bit)为单位写入一张大的矩阵中,每个单元我们称为CELL,只

要指定一个行(Row),再指定一个列(Column),就可以准确地定位到某个CELL,这就是内存芯片寻址的基本原理。这个阵列我们就称为内存芯片的

BANK,也称之为逻辑BANK(Logical

BANK)。由于工艺上的原因,这个阵列不可能做得太大,所以一般内存芯片中都是将内存容量分成几个阵列来制造,也就是说存在内存芯片中存在多个逻辑

BANK,随着芯片容量的不断增加,逻辑BANK数量也在不断增加,目前从32MB到1GB的芯片基本都是4个,只有早期的16Mbit和32Mbit的

芯片采用的还是2个逻辑BANK的设计,譬如三星的两种16MB芯片:K4S161622D (512K x 16Bit x 2

BANK)和K4S160822DT(1M x 8Bit x 2

BANK)。芯片组本身设计时在一个时钟周期内只允许对一个逻辑BANK进行操作(实际上芯片的位宽就是逻辑BANK的位宽),而不是芯片组对内存芯片内

所有逻辑BANK同时操作。逻辑BANK的地址线是通用的,只要再有一个逻辑BANK编号加以区别就可以了(BANK0到BANK3)。但是这个芯片的位

宽决定了一次能从它那里读出多少数据,并不是内存芯片里所有单元的数据一次全部能够读出

每个逻辑BANK有8M个单元格(CELL),一些

厂商(比如现代/三星)就把每个逻辑BANK的单元格数称为数据深度(Data

Depth),每个单元由8bit组成,那么一个逻辑BANK的总容量就是64Mbit(8M×8bit),4个逻辑BANK就是256Mbit,因此这

颗芯片的总容量就是256Mbit(32MB)。

内存芯片的容量是一般以bit为单位的。比如说32Mbit的芯片,就是说它的容量是

32Mb(b=bit=位),注意位(bit)与字节(Byte)区别,这个芯片换算成字节就是4MB(B=Byte=字节=8个bit),一般内存芯片

厂家在芯片上是标明容量的,我们可以芯片上的标识知道,这个芯片有几个逻辑BANK,每个逻辑bank的位宽是多少,每个逻辑BANK内有多少单元格

(CELL),比如64MB和128MB内存条常用的64Mbit的芯片就有如下三种结构形式:

①16 Meg x 4 (4 Meg x

4 x 4 banks) [16M╳4]

②8 Meg x 8 (2 Meg x 8 x 4 banks) [8M╳8]

③4 Meg x 16 (1 Meg x 16 x 4 banks) [4M╳16]

表示方法是:每个逻辑BANK的单元格数×逻辑

BANK数量×每个单元格的位数(芯片的位宽)。芯片逻辑BANK位宽目前的工艺水平只能最多做到16位,因此大家看到几乎所有的芯片逻辑BANK位宽只

可能4/8/16三者之一。以前16Mbit的芯片基本采用的单个芯片两个逻辑BANK,但是到了64Mbit基本就都是4个逻辑BANK设计了

sdram 时钟相位_SDRAM小结 — Windows Live相关推荐

  1. sdram 时钟相位_零基础学FPGA (二十五)必会! 从静态时序分析到SDRAM时序收敛(下篇)...

    七.SDRAM工作时钟相位偏移计算本文引用地址:http://www.eepw.com.cn/article/279083.htm 从上篇文章中我们知道,我们的数据是要经过一定的延时才会到达目标器件的 ...

  2. sdram 时钟相位_Nios II 和SDRAM时钟相位计算

    SDRAM Clock通常是E0输出或者C2输出,E0和C2都是PLL专用于输出外部时钟的,有比较小的抖动.由于一个FPGA中通常有若干个PLL,综合后使用哪个PLL是由输入时钟Extern Cloc ...

  3. sdram 时钟相位_stm32f429主频大于160MHz时,sdram数据不稳定

    stm32f429主频为180MHz, sdramz做lcd缓存时,刷完一帧图片,部分像素点颜色发送了变化,如下图.但将主频设置为160MHz时图片显示又很稳定,后来测试了一下sdram,发现主频大于 ...

  4. 电脑的时钟相位怎样设置

    电脑的时钟相位怎样设置 2011-06-16 14:21pgwy370  分类:Windows |浏览 2766 次  电脑操作系统 分享到: 2011-06-16 14:50提问者采纳 你看看你显示 ...

  5. SPI时钟极性、时钟相位及片选

    SPI协议是一个 4 线.全双工的串口协议.根据串口时钟SCLK的相位SCPH和极性SCPOL的不同,有 4 种组合. 1.在主设备处于不使能或者空闲的状态下,主设备输出的从设备选择信号CS保持高电平 ...

  6. 时钟极性和时钟相位概念

    时钟极性(CPOL)对传输协议没有重大的影响.如果CPOL=0,串行同步时钟的空闲状态为低电平:如果CPOL=1,串行同步时钟的空闲状态为高电平.时钟相位(CPHA)能够配置用于选择两种不同的传输协议 ...

  7. 【转载】SDRAM时钟相移估算

    转帖自特权(吴厚航)哥的博文. http://blog.ednchina.com/ilove314/955999/message.aspx SDRAM时钟相移估算 <Quartus II Han ...

  8. 时钟服务器工作原理,Windows 时间服务的工作原理

    Windows 时间服务的工作原理 05/08/2018 本文内容 适用于:Windows Server 2016.Windows Server 2012 R2.Windows Server 2012 ...

  9. 您计算机处于状态或者您计算机时钟设置,您的Windows 10时间不正确? 这是如何固定时钟 | MOS86...

    当Windows 10计算机上的时间总是错误或不断变化时,原因可能是电池电量耗尽到设置错误. 我们向您展示为什么您的计算机时钟关闭,以及如何重新设置它. 立即解锁" Windows键盘快捷键 ...

最新文章

  1. asp.net网页出现名称以无效字符开头的解决方法
  2. Apache24 + wsgi + Flask on Python3.8部署实践
  3. iOS 9 学习系列: Xcode Code Coverage
  4. 【转载】【Python-ML】SKlearn库谱聚类SpectralClustering模型
  5. yum安装docker(阿里镜像源)及docker-compose二进制安装
  6. matlab中计算不等式的解,大神们,求个解多元一次不等式的代码,要所有整数解...
  7. filter动态参数 maven_使用Profile和Resources Filter隔离测试环境
  8. ios系统定义的url
  9. 【机器学习笔记】使用lightgbm画并保存Feature Importance
  10. keil4和烧录软件的基本使用
  11. PPT图形绘制:端午节PPT模板背景
  12. RNA 23. SCI文章中表达基因Cox模型的风险因子关联图(ggrisk)
  13. python中清除文件内容用什么函数_数据清洗的基本流程_怎样清除excel中的公式
  14. 中台核心秘密:建设过程中的组织架构
  15. 读论文,第十六天:FrownOnError: Interrupting Responses from Smart Speakers by Facial Expressions
  16. 怎么在笔记本电脑上弄html,笔记本电脑怎么设置wifi,小编教你笔记本电脑如何设置WIFI热点...
  17. 24个扁平风格图标的PSD格式免费下载
  18. VSTO之PPT幻灯片放映时间记录
  19. 数学建模用python分析gdp_数学建模·中国GDP趋势分析与预测
  20. 双评价技术指南2020_2020年双十一/双11购买恒温花洒套装不被挖坑的选购指南

热门文章

  1. kafka自带的zk启动_KafKa 启动
  2. 大数据技术对企业发展的作用
  3. jenkins 手动执行_Jenkins环境配置篇-节点增加
  4. android快速开发框架_【程序源代码】springboot和ssm的极速轻量快速开发框架
  5. AcWing 1843. 圆形牛棚(暴力+枚举)
  6. 向Spark的DataFrame增加一列数据
  7. caffe镜像︱window10+docker+ubuntu14.04+caffe镜像的简单尝试
  8. Transformer的学习
  9. optparse命令解析模块
  10. zyplayer-doc 1.0.1 发布,你家所需的文档管理工具他都承包了!