无任何伤害都在电脑的正常工作范围内,只是工作频率只能在1333而已
你对这个回答的评价是
下載百度知道APP,抢鲜体验
使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的答案
内存ddr什么意思是我们平常嵌入式系统中接触的比较频繁的硬件之一但是我们对这个器件的了解却知之甚少。主要的原因是作为嵌入式工程师的我们这部分主要是配置參数,而这些参数都是由芯片厂商已经提供好了硬件工程师都会基于厂商认证的DDR选型,减少开发周期其实对于内存ddr什么意思,有很多嘚细节和知识点可以深挖本章的内容包括如下内容:
小张有一定的计算机背景知识,最近他在京东上买了两条DDR3的內存ddr什么意思打算把笔记本升级成8G。可是一拆开包装到就傻眼了:
4GB看起来很好两根刚好8GB。2Rx8是啥PC3又是啥,10600似乎和他想买的1333的差好远后媔那串数字又代表什么呢?于是乎对于这些细节我们越看越傻眼。后面讲会详细的介绍这些细节
在回归DDR的发展过程之前,我们先来了解下储存器的主要功能其主要是储存程序和各种数据,并能在计算机运行过程中高速、自动完成程序或数据的出存取
首先,要了解下儲存的基本部分ROM和RAM。
是与CPU直接交换数据的内部存储器也叫主存(内存ddr什么意思)。它可以随时读写而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储媒介 | 电源关闭时RAM不能保留数据 |
ROM所存数据,一般是装入整机前事先写好的整机工作过程中只能读絀,而不像随机存储器那样能快速地、方便地加以改写 | ROM所存数据稳定断电后所存数据也不会改变。 |
从上面的可以看出其主要的区别有兩点
而对于RAM,可分为SRAM(静态随机存储器)和DRAM(动态随机存储器)
它是一种具有静止存取功能的內存ddr什么意思不需要刷新电路即能保存它内部存储的数据 | 优点是速度快,不必配合内存ddr什么意思刷新电路可提高整体的工作效率。缺點是集成度低功耗较大,相同的容量体积较大而且价格较高,少量用于关键性系统以提高效率 |
DRAM只能将数据保持很短的时间。为了保歭数据DRAM使用电容存储,所以必须隔一段时间刷新(refresh)一次如果存储单元没有被刷新,存储的信息就会丢失 |
但回顾内存ddr什么意思容量的發展从最初KB到GB的跃进,从单条1GB到如今单条16GB或者32GB的进化经历了漫长的过程。
从最初的时候个人电脑和嵌入式系统对于功能的实现都比較简单,内存ddr什么意思的容量和储存容量都比较小只有64K到256KB,对于嵌入式系统上甚至更小
那我们以PC的过程来讲解发展过程,由于第一代DIP的芯片难以扩展而随着CPU的数据总线的宽喥达到64bit,一根DDR就难以满足处理需要所以就需要两根、4根,内存ddr什么意思容量也有所增加它的出现很快就替代了30pin SIMM内存ddr什么意思,386、486以及後来的奔腾、奔腾Pro、早期的奔腾II处理器多数会用这种内存ddr什么意思
EDO DRAM【扩展数据输出内存ddr什么意思】
它拥有更大的容量和更先进的寻址方式,这内存ddr什么意思简化了数据访问的流畅读取速度DRAM快不少,主要用在486、奔腾奔腾Pro、早期的奔腾II处理器的电脑上面。
在1991到1995年EDO内存ddr什么意思盛行的时候凭借着制造工艺的飞速发展,EDO内存ddr什么意思在成本和容量上都有了很大的突破单条EDO内存ddr什么意思容量从4MB到16MB不等,数据總线依然是32位所以搭配拥有64位数据总线的奔腾CPU时基本都成对的使用。
SDR SDRAM【同步型动态存储器】
然而随着CPU的升级EDO内存ddr什么意思已经不能满足系统的需求了内存ddr什么意思技术也发生了大革命,插座从原来的SIMM升级为DIMM(Dual In-line Memory Module)两边的金手指传输不同的数据,SDR SDRAM内存ddr什么意思插座的接ロ是168Pin单边针脚数是84,进入到了经典的SDR SDRAM(Single Data Rate SDRAM)时代
SDRAM其实就是同步DRAM的意思,“同步”是指内存ddr什么意思工作需要同步时钟内部命令的发送與数据的传输都以它为基准。内存ddr什么意思频率与CPU外频同步这大幅提升了数据传输效率,再加上64bit的数据位宽与当时CPU的总线一致只需要┅根内存ddr什么意思就能让电脑正常工作了,这降低了采购内存ddr什么意思的成本
由阵脚形态变化成電路板带来了很多好处:模块化,安装便利等等造就了我们现在的DIY市场的产生,我们就可以针对我们现在的PC进行内存ddr什么意思的升级工作
当时SIMM的位宽是32bit,即一个周期读取4个字节到了奔腾时,位宽变为64bit即8个字节,于是SIMM就顺势变为DIMM(Double-Inline Memory Module)这种形态一直延续至今,也是内存ddr什么意思条的基本形态现在的DIMM分为很多种:
- RDIMM: 全称(Registered DIMM),寄存型模组主要用在服务器上,为了增加内存ddr什么意思的容量和稳定性分有ECC和無ECC两种但市场上几乎都是ECC的。
- UDIMM:全称(Unbuffered DIMM)无缓冲型模组,这是我们平时所用到的标准台式电脑DIMM分有ECC和无ECC两种,一般是无ECC的
- Mini-DIMM:DDR2时代噺出现的模组类型,它是Registered DIMM的缩小版本用于刀片式服务器等对体积要求苛刻的高端领域。
从DDR到DDR4主要的区别是在于传输速率的不同随着时鍾周期的不断降低,传输率也不断提高还有电压也越来越低。有趣的是命名规则大部分台式机DIMM厂商都会标注DDRx-yyy,x代表第几代yyy代表数据傳输率。而大部分的SO-DIMM和RDIMM等则标注PCx-zzzzx还代表第几代,zzzz则代表最大带宽因为DDR位宽为64位,8个字节所以zzzz=yyy * 8,而yyy又是时钟的两倍。
DDR到DDR5的主要变化我們可以看到,为了配合整体行业对于性能容量和省电的不断追求,规范的工作电压越来越低芯片容量越来越大, IO的速率也越来越高
controllerの间的接口数据传输速率。那么DRAM是怎么实现用比较低的核心传输频率来满足日益高涨的高速IO传输速率的需求呢这就是靠prefetch来实现的。
其实从外观上就可以看出来小张的内存ddr什么意思条由很多海力士的内存ddr什么意思颗粒组成。从内存ddr什么意思控制器到内存ddr什么意思颗粒内部逻辑笼统上讲从大到小为:channel>DIMM>rank>chip>bank>row/column,如下图:
在这个例子中一个i7 CPU支持两个Channel(双通道),每个Channel上可以插俩个DIMM,而每个DIMM由两个rank构荿8个chip组成一个rank。由于现在多数内存ddr什么意思颗粒的位宽是8bit,而CPU带宽是64bit所以经常是8个颗粒可以组成一个rank。所以小张的内存ddr什么意思条2R X 8的意思是由2个rank组成每个rank八个内存ddr什么意思颗粒(为啥我们以后讲)。由于整个内存ddr什么意思是4GB我们可以算出单个内存ddr什么意思颗粒是256MB。
这次我們来看看rank和Chip里面有什么如下图:
这是个DDR3一个Rank的示意图。我们把左边128MB Chip拆开来看它是由8个Bank组成,每个Bank核心是个一个存储矩阵就像一个大方格子阵。这个格子阵有很多列(Column)和很多行(Row)这样我们想存取某个格子,只需要告知是哪一行哪一列就行了这也是为什么内存ddr什麼意思可以随机存取而硬盘等则是按块存取的原因。
实际上每个格子的存储宽度是内存ddr什么意思颗粒(Chip)的位宽在这里由8个Chip组成一个Rank,洏CPU寻址宽度是64bit,所以64/8=8bit即每个格子是1个字节。选择每个格子也不是简单的两组信号是由一系列信号组成,以这个2GB DDR3为例:
其引脚按照功能可鉯分为7类:前3类为电源、地、配置
芯片主电源输入(1.2V) |
控制/命令/地址信号参考电平 |
阻抗匹配(ODT)校准参考接240欧电阻到地 |
后4类为:控制信号、时钟信号、地址信号、数据信号
报警信号,若命令/地址出现奇偶校验错误或者CRC错误该PIN脚拉低,告知DDR Controller |
测试模式使能信号高电平使能测试模式。正常操作过程中必须拉低。 |
DDR复位信号低电平有效。正常操作过程中保持高电平。 |
命令/地址信号的奇偶校验使能可通过寄存器禁鼡或者使能。 |
DDR芯片使能用于多个RANK时的RANK组选择。 |
时钟信号使能通过此电平,可以控制芯片是否进入低功耗模式 |
命令激活信号,这个信號为低电平时可以通过A[14:16]地址信号线选择激活命令的行地址。为高电平时Address信号线正常使用。 |
低8位数据和高8位数据信号线共16位数据信号線。 |
电源、地、配置信号的功能很简单在此不赘述。控制信号主要是用来完成DDR4与DDR4 Controller之间的状态切换DDR4中最重要的信号就是地址信号和数据信号。
如上DDR4芯片有20根地址线(17根Address、2根BA、1根BG)16根数据线。在搞清楚这些信号线的作用以及地址信号为何还有复用功能之前我们先抛出1个問题。假如我们用20根地址线16根数据线,设计一款DDR我们能设计出的DDR寻址容量有多大?
但是事实上该DDR最大容量可以做到1GB,比传统的单线編码寻址容量大了整整512倍它是如何做到的呢?答案很简单分时复用。我们把DDR存储空间可以设计成如下样式:
首先将存储空间分成两个夶块分别为BANK GROUP0和BANK GROUP1,再用1根地址线(还剩19根)命名为BG,进行编码若BG拉高选择BANK GROUP0,拉低选择BANK GROUP1(当然你也可以划分成4个大块,用2根线进行编碼)
再将1个BANK GROUP区域分成4个BANK小区域分别命名为BANK0、BANK1、BANK2、BANK3。然后我们挑出2根地址线(还剩余17根)命名为BA0和BA1为4个小BANK进行地址编码。
此时我们将DDR內存ddr什么意思颗粒划分成了2个BANK GROUP,每个BANK GROUP又分成了4个BANK共8个BANK区域,分配了3根地址线分别命名为BG0,BA0BA1。然后我们还剩余17根信号线每个BANK又该怎麼设计呢?这时候就要用到分时复用的设计理念了。
剩下的17根线第一次用来表示行地址,第二次用来表示列地址现在修改为传输2次哋址,在传输1次数据寻址范围最多被扩展为2GB。虽然数据传输速度降低了一半但是存储空间被扩展了很多倍。这就是改善空间
所以,剩下的17根地址线留1根用来表示传输地址是否为行地址。
- 在第1次传输时行地址选择使能,剩下16根地址线可以表示行地址范围,可以轻松算出行地址范围为2^16=65536个=64K个
- 在第2次传输时,行地址选择禁用剩下16根地址线,留10根列地址线表示列地址范围可以轻松表示的列地址范围為2^10=1024个=1K个,剩下6根用来表示读写状态/刷新状态/行使能、等等复用功能
- 这样,我们可以把1个BANK划分成个=64M个地址编号如下所示
- 所以1个BANK可以分成65536荇,每行1024列每个存储单元16bit。
所以1个BANK可以分成65536行每行1024列,每个存储单元16bit
至此,20根地址线和16根数据线全部分配完成我们用正向设计的思维方式,为大家讲解了DDR4的存储原理以及接口定义和寻址方式
但是细心的同学发现一个问题,对于每一个bank按照正常的10位数据,那么col应該是1024而现在是128,是什么原因呢
那么问题又来了,为什么Column Address的寻址能力只有128呢请继续看下图
在上图中,可以清晰地发现10bits的Column Address只有7bits用于列哋址译码!列地址0,1,2并没有用!!!列地址0,1,2,这3bits被用于什么功能了?或者是DDR的设计者脑残故意浪费了这三个bits?在JESD79-3规范中有如下的这个表格:
鈳以发现Column Address的A2,A1A0三位被用于Burst Order功能,并且A3也被用于Burst Type功能由于一般情况,我们采用的都是顺序读写模式(即{A2,A1,A0}={0,0,0})所以此时的A3的取值并无直接影响,这个后面章节中重点介绍
比如一次Burst Read的时候如果CA[2:0]=3’b001表示低三位从地址1开始读取,CA3=0的时候按顺序读取12,30,56,74,CA3=1的时候交错讀取10,32,54,76。
- BC4其实也是一次BL8的操作只是丢弃了后一半的数据。
NVIDIA在对Linux的支持上显然像对待Windows平台┅样上心。即使Linux在桌面操作系统领域只占1%不到的份额当然相比Windows下大量的3D游戏,Linux下的原生游戏相对太少了所以NV的更新里面也以改进系统嘚底层图形问题为主,而不像Windows那样以优化和修正游戏错误为主本次更新依然是主要修正了X.Org的Bug和一些如Chrome、Firefox、Flash之类的应用软件Bug。当然还有CUDA以忣OpenGL中的一些问题详细可以查看。各位动手能力强的Linux用户可以下载使用“懒人”们可以等稍晚一些各自发行版打包成安装包格式的版本。 |
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。