内存芯片的BANK参数说明
内存芯片参数介绍
内存芯片参数介绍具体含义解释:例:SAMSUNG K4H280838B-TCB0主要含义:第1位——芯片功能K,代表是内存芯片。
第2位——芯片类型4,代表DRAM。
第3位——芯片的更进一步的类型说明,S代表SDRAM、H代表DDR、G代表SGRAM。
第4、5位——容量和刷新速率,容量相同的内存采用不同的刷新速率,也会使用不同的编号。
64、62、63、65、66、67、6A代表64Mbit的容量;28、27、2A代表128Mbit 的容量;56、55、57、5A代表256MBit的容量;51代表512Mbit的容量。
第6、7位——数据线引脚个数,08代表8位数据;16代表16位数据;32代表32位数据;64代表64位数据。
第11位——连线“-”。
第14、15位——芯片的速率,如60为6ns;70为7ns;7B为7.5ns (CL=3);7C 为7.5ns (CL=2) ;80为8ns;10 为10ns (66MHz)。
知道了内存颗粒编码主要数位的含义,拿到一个内存条后就非常容易计算出它的容量。
例如一条三星DDR内存,使用18片SAMSUNG K4H280838B-TCB0颗粒封装。
颗粒编号第4、5位“28”代表该颗粒是128Mbits,第6、7位“08”代表该颗粒是8位数据带宽,这样我们可以计算出该内存条的容量是128Mbits(兆数位)× 16片/8bits=256MB(兆字节)。
注:“bit”为“数位”,“B”即字节“byte”,一个字节为8位则计算时除以8。
关于内存容量的计算,文中所举的例子中有两种情况:一种是非ECC内存,每8片8位数据宽度的颗粒就可以组成一条内存;另一种ECC内存,在每64位数据之后,还增加了8位的ECC 校验码。
通过校验码,可以检测出内存数据中的两位错误,纠正一位错误。
所以在实际计算容量的过程中,不计算校验位,具有ECC功能的18片颗粒的内存条实际容量按16乘。
内存Memory Rank
Memory Rank
举例说明,单面的内存一般都是8个8bit的芯片,所以有一个物理BANK,但是双面的内存有16片8bit
的芯片,所以有两个物理BANK(16*8/64)并不是所以的单面的内存都是一个BANK,例如单面8片16bit 芯片的内存就有两个BANK,也不是所有的双面内存都是双bank,例如16片4bit的芯片的内存只有1个bank , 传统内存系统为了保证CPU的正常工作,必须一次传输完CPU在一个传输周期内所需要的数据。
而CPU 在一个传输周期能接受的数据容量就是CPU数据总线的位宽,单位是bit(位)。
当时控制内存与CPU之间数据交换的北桥芯片也因此将内存总线的数据位宽等同于CPU数据总线的位宽,而这个位宽就称之为物理(BankPhysical Bank,下文简称P-Bank)的位宽。
在一些文档中,也把P-Bank称为Rank(列)。
single rank单列dual rank双列
为了更好更简便的理解memory Rank的含义,做如下说明:
1.首先,需要知道CPU数据总线的位宽,现在一般是64bit, 这个位宽就称之为物理Bank..
2.那么memory 1RX4则表示1个64bit,X4则表示memory每颗内存颗粒的位数.从这里我们就可以很容易知道memory内存颗粒的个数为:64/4=16颗。
如果是2RX8的话内存颗粒就是:64*2/8=16颗.
3.所以无论是1RX4 ,2Rx4或者1RX8,2Rx8,代表的含义可以理解为memory的内存颗粒的个数.而不是单面或者是双面内存.。
内存芯片的BANK参数说明
内存芯片的BANK一.内存芯片的逻辑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:BANK是指内存插槽de计算单位(也有人称为记忆库),它是计算机系统与内存间资料汇流de基本运作单位
内存术语解释BANK:BANK是指内存插槽de计算单位(也有人称为记忆库),它是计算机系统与内存间资料汇流de基本运作单位.内存de速度:内存de速度是以每笔CPU与内存间数据处理耗费de时间来计算,为总线循环(bus cycle)以奈秒(ns)为单位.内存模块(Memory Module):提到内存模块是指一个印刷电路板表面上有镶嵌数个记忆体芯片chips,而这内存芯片通常是DRAM芯片,但近来系统设计也有使用快取隐藏式芯片镶嵌在内存模块上内存模块是安装在PC de主机板上de专用插槽(Slot)上镶嵌在Module 上DRAM芯片(chips)de数量和个别芯片(chips)de容量,是决定内存模块de设计de主要因素.SIMM (Single In-line Memory Module):电路板上面焊有数目不等de记忆IC,可分为以下2种型态:72PIN:72脚位de单面内存模块是用来支持32位de数据处理量.30PIN:30脚位de单面内存模块是用来支持8位de数据处理量.DIMM (Dual In-line Memory Module):(168PIN)用来支持64位或是更宽de总线,而且只用3.3伏特de电压,通常用在64位de桌上型计算机或是服务器.RIMM:RIMM模块是下一世代de内存模块主要规格之一,它是Intel公司于1999年推出芯片组所支持de内存模块,其频宽高达1.6Gbyte/sec.SO-DIMM (Small Outline Dual In-line Memory Module) (144PIN):这是一种改良型deDIMM模块,比一般deDIMM模块来得小,应用于笔记型计算机、列表机、传真机或是各种终端机等.PLL:为锁相回路,用来统一整合时脉讯号,使内存能正确de存取资料.Rambus 内存模块(184PIN):采用Direct RDRAMde内存模块,称之为RIMM 模块,该模块有184pin脚,资料de输出方式为串行,与现行使用deDIMM模块168pin,并列输出de架构有很大de差异.6层板和4层板(6 layers V.S. 4 layers):指de是电路印刷板PCB Printed Circuit Board用6层或4层de玻璃纤维做成,通常SDRAM会使用6层板,虽然会增加PCBde 成本但却可免除噪声de干扰,而4层板虽可降低PCBde成本但效能较差.Register:是缓存器de意思,其功能是能够在高速下达到同步de目de.SPD:为Serial Presence Detect de缩写,它是烧录在EEPROM内de码,以往开机时BIOS必须侦测memory,但有了SPD就不必再去作侦测de动作,而由BIOS直接读取SPD取得内存de相关资料.Parity和ECCde比较:同位检查码(parity check codes)被广泛地使用在侦错码(error detection codes)上,他们增加一个检查位给每个资料de字元(或字节),并且能够侦测到一个字符中所有奇(偶)同位de错误,但Parity有一个缺点,当计算机查到某个Byte有错误时,并不能确定错误在哪一个位,也就无法修正错误.缓冲器和无缓冲器(Buffer V.S. Unbuffer):有缓冲器deDIMM 是用来改善时序(timing)问题de一种方法无缓冲器deDIMM虽然可被设计用于系统上,但它只能支援四条DIMM.若将无缓冲器deDIMM用于速度为100Mhzde主机板上de话,将会有存取不良de影响.而有缓冲器deDIMM则可使用四条以上de内存,但是若使用de缓冲器速度不够快de话会影响其执行效果.换言之,有缓冲器deDIMM虽有速度变慢之虞,但它可以支持更多DIMMde使用.自我充电(Self-Refresh):DRAM内部具有独立且内建de充电电路于一定时间内做自我充电,通常用在笔记型计算机或可携式计算机等de省电需求高de计算机.预充电时间(CAS Latency):通常简称CL.例如CL=3,表示计算机系统自主存储器读取第一笔资料时,所需de准备时间为3个外部时脉(System clock).CL2与CL3de差异仅在第一次读取资料所需准备时间,相差一个时脉,对整个系统de效能并无显著影响.时钟信号(Clock):时钟信号是提供给同步内存做讯号同步之用,同步记忆体de存取动作必需与时钟信号同步.电子工程设计发展联合会议(JEDEC):JEDEC大部分是由从事设计、发明de制造业尤以有关计算机记忆模块所组成de一个团体财团,一般工业所生产de记忆体产品大多以JEDEC所制定de标准为评量.只读存储器ROM (Read Only Memory):ROM是一种只能读取而不能写入资料之记W体,因为这个特所以最常见de就是主机板上de BIOS (基本输入/输出系统BasicInput/Output System)因为BISO是计算机开机必备de基本硬件设定用来与外围做为低阶通信接口,所以BISO之程式烧录于ROM中以避免随意被清除资料.EEPROM (Electrically Erasable Programmable ROM):为一种将资料写入后即使在电源关闭de情况下,也可以保留一段相当长de时间,且写入资料时不需要另外提高电压,只要写入某一些句柄,就可以把资料写入内存中了.EPROM (Erasable Programmable ROM):为一种可以透过紫外线de照射将其内部de资料清除掉之后,再用烧录器之类de设备将资料烧录进EPROM内,优点为可以重复de烧录资料.程序规画de只读存储器(PROM):是一种可存程序de内存,因为只能写一次资料,所以它一旦被写入资料若有错误,是无法改变de且无法再存其它资料,所以只要写错资料这颗内存就无法回收重新使用.MASK ROM:是制造商为了要大量生产,事先制作一颗有原始数据deROM或EPROM 当作样本,然后再大量生产与样本一样de ROM,这一种做为大量生产deROM样本就是MASK ROM,而烧录在MASK ROM中de资料永远无法做修改.随机存取内存RAM ( Random Access Memory):RAM是可被读取和写入de内存,我们在写资料到RAM记忆体时也同时可从RAM读取资料,这和ROM内存有所不同.但是RAM必须由稳定流畅de电力来保持它本身de稳定性,所以一旦把电源关闭则原先在RAM 里头de资料将随之消失.动态随机存取内存DRAM (Dynamic Random Access Memory):DRAM 是Dynamic Random Access Memory de缩写,通常是计算机内de主存储器,它是而用电容来做储存动作,但因电容本身有漏电问题,所以内存内de资料须持续地存取不然(计算机网络技术)资料会不见.FPM DRAM (Fast Page Mode DRAM):是改良deDRAM,大多数为72IPN或30PINde 模块,FPM 将记忆体内部隔成许多页数Pages,从512 bite 到数Kilobytes 不等,它特色是不需等到重新读取时,就可读取各page内de资料.EDO DRAM (Extended Data Out DRAM):EDOde存取速度比传统DRAM快10%左右,比FPM快12到30倍一般为72PIN、168PINde模块.SDRAM:Synchronous DRAM 是一种新deDRAM架构de技术;它运用晶片内declock使输入及输出能同步进行.所谓clock同步是指记忆体时脉与CPUde时脉能同步存取资料.SDRAM节省执行指令及数据传输de时间,故可提升计算机效率.DDR:DDR 是一种更高速de同步内存,DDR SDRAM为168PINdeDIMM模块,它比SDRAMde传输速率更快,DDRde设计是应用在服务器、工作站及数据传输等较高速需求之系统.DDRII (Double Data Rate Synchronous DRAM):DDRII 是DDR原有deSLDRAM联盟于1999年解散后将既有de研发成果与DDR整合之后de未来新标准.DDRIIde详细规格目前尚未确定.DRDRAM (Direct Rambus DRAM):是下一代de主流内存标准之一,由Rambus 公司所设计发展出来,是将所有de接脚都连结到一个共同deBus,这样不但可以减少控制器de体积,已可以增加资料传送de效率.RDRAM (Rambus DRAM):是由Rambus公司独立设计完成,它de速度约一般DRAMde10倍以上,虽有这样强de效能,但使用后内存控制器需要相当大de改变,所以目前这一类de内存大多使用在游戏机器或者专业de图形加速适配卡上.VRAM (Video RAM):与DRAM最大de不同在于其有两组输出及输入口,所以可以同时一边读入,一边输出资料.WRAM (Window RAM):属于VRAMde改良版,其不同之处在于其控制线路有一、二十组de输入/输出控制器,并采用EDOde资料存取模式.MDRAM (Multi-Bank RAM):MIDRAM de内部分成数个各别不同de小储存库(BANK),也就是数个属立de小单位矩阵所构成.每个储存库之间以高于外部de资料速度相互连接,其应用于高速显示卡或加速卡中.静态随机处理内存SRAM (Static Random Access Memory):SRAM 是Static Random Access Memory de缩写,通常比一般de动态随机处理内存处理速度更快更稳定.所谓静态de意义是指内存资料可以常驻而不须随时存取.因为此种特性,静态随机处理内存通常被用来做高速缓存.Async SRAM:为异步SRAM这是一种较为旧型deSRAM,通常被用于电脑上de Level 2 Cache上,它在运作时独立于计算机de系统时脉外.Sync SRAM:为同步SRAM,它de工作时脉与系统是同步de.SGRAM (Synchronous Graphics RAM):是由SDRAM再改良而成以区块Block为单位,个别地取回或修改存取de资料,减少内存整体读写de次数增加绘图控制器.高速缓存(Cache Ram):为一种高速度de内存是被设计用来处理运作CPU.快取记忆体是利用SRAM de颗粒来做内存.因连接方式不同可分为一是外接方式(External)另一种为内接方式(Internal).外接方式是将内存放在主机板上也称为Level 1 Cache而内接方式是将内存放在CPU中称为Level 2 Cache.PCMCIA (Personal Computer Memory Card International Association):是一种标准de卡片型扩充接口,多半用于笔记型计算机上或是其它外围产品,其种类可以分为:Type 1:3.3mmde厚度,常作成SRAM、Flash RAM de记忆卡以及最近打印机所使用deDRAM记忆卡.Type 2:5.5mmde厚度,通常设计为笔记计算机所使用de调制解调器接口(Modem).Type 3:10.5mmde厚度,被运用为连接硬盘deATA接口.Type 4:小型dePCMCIA卡,大部用于数字相机.FLASH:Flash内存比较像是一种储存装置,因为当电源关掉后储存在Flash内存中de资料并不会流失掉,在写入资料时必须先将原本de资料清除掉,然后才能再写入新de 资料,缺点为写入资料de速度太慢.重新标示过de内存模块(Remark Memory Module):在内存市场许多商家都会贩售重新标示过de内存模块,所谓重新标示过de内存模块就是将芯片Chip上de标示变更过,使其所显示出错误de讯息以提供商家赚取更多de利润.一般说来,业者会标示成较快de速度将( -7改成-6)或将没有厂牌de改为有厂牌de.要避免购买到这方面de产品,最佳de方法就是向好声誉de供货商来购买顶级芯片制造商产品.内存de充电(Refresh):主存储器是DRAM组合而成,其电容需不断充电以保持资料de正确.一般有2K与4K Refreshde分类,而2K比4K有较快速deRefresh但2K比4K 耗电.。
内存基础知识——内存中的Bank
也许有的朋友在购买内存后发现:为什么明明在商家那里可以使用,而在自己的电脑里就不能使用了呢?其实这里面就涉及到内存Bank的问题,今天将为大家深入分析出现这种情况的原因。
内存Bank分为物理Bank和逻辑Bank。
1.物理Bank传统内存系统为了保证CPU的正常工作,必须一次传输完CPU在一个传输周期内所需要的数据。
而CPU在一个传输周期能接收的数据容量就是CPU数据总线的位宽,单位是bit(位)。
内存与CPU之间的数据交换通过主板上的北桥芯片进行,内存总线的数据位宽等同于CPU数据总线的位宽,这个位宽就称之为物理Bank(Physical Bank,简称P-Bank)的位宽。
以目前主流的DDR系统为例,CPU与内存之间的接口位宽是64bit,也就意味着CPU 在一个周期内会向内存发送或从内存读取64bit的数据,那么这一个64bit的数据集合就是一个内存条Bank。
目前绝大多数的芯片组都只能支持一条内存包含两个物理Bank。
不过以前有不少朋友都认为,内存的物理Bank是由面数决定的:即单面内存条则包含一个物理Bank,双面内存则包含两个。
其实这个看法是错误的!一条内存条的物理Bank是由所采用的内存颗粒的位宽决定的,各个芯片位宽之和为64bit就是单物理Bank;如果是128bit就是双物理Bank。
读到这里,大家也应该知道,我们可以通过两种方式来增加这种类型内存的容量。
第一种就是通过增加每一个独立模块的容量来增加Bank的容量,第二种方法就是增加Bank的数目。
由于目前内存颗粒位宽的限制,一个系统只有一个物理Bank已经不能满足容量的需要。
所以,目前新一代芯片组可以支持多个物理Bank,最少的也能支持4个物理Bank。
对于像Intel i845D这种支持4个Bank的芯片组来说,我们在选购内存时就要考虑一下插槽数与内存Bank 的分配问题了。
因为如果选购双Bank的内存,这意味着在Intel i845D芯片组上我们最多只能使用两条这样的内存,多了的话芯片组将无法识别。
DDR基础知识
DDR基础知识:1.SDRAM的基本参数:时钟频率(Data rate)、容量、工作电压、位宽、BANK数(过时)基本结构:(L-Bank)SDRAM内部L-Bank示意图,这是一个8X8的阵列,B代表L-Bank地址编号,C代表列地址编号,R代表行地址编号。
如果寻址命令是B1、R2、C6,就能确定地址是图中红格的位置位宽:(X4\X8\X16\X32\X64)存储容量计算方式:AND总结:容量=存储单元数量x位宽=2^行数x 2^列数x L-BANK数x位宽Bit/8(bit)=字节(bytes)2.信号说明:VDD、VDDQ:电源供电CLK、/CLK:差分时钟CKE:时钟使能/CS:片选信号BA0-BA1:块选择(决定哪个块进行读、写、刷新、预充电等操作) /RAS:行地址选取/CAS:列地址选取A0-A11:地址DQ0-DQ15:双向数据DQS:数据选通信号,控制I/O buffer,数据真正的同步信号/WE :读/写信号,高电平为读命令,低电平为写命令DM、/DM:数据标志位,标示当前数据是否为有效数据3.拓扑结构4.Freescale规则要求:1.所有地址线与BA0\1\2等长在+\-25MIL;2.数据线长度小于CLK;3.控制线等长在+\-25MIL;4.CLK组内等长在+\-2.5MIL;总长小于3000 MIL;看了一下DATASHEET,CLK决定于芯片支持的通道数,采用不同的通道数,支持的位数也不同每颗颗粒有8bit、16bit、32bit、64bit的不同种类6D选用的是一个通道:16bitX2颗=32位+另一个通道:16bitX2颗=32位,一共64位的组合方式。
如上图,他可以选择单通道X16/X32/X64的形式。
但是双通道只能选择RDIMM(Register DIMM也就是Buffered DIMM可寄存内存) 可以支持最大内存容量,并且支持RAS特性(RAS技术---reliability, availability, and serviceability指可靠性R、可用性A、可维修性S3个指标,是评价计算机系统性能的重要内容。
内存上面的标识解读
内存上面的标识解读(Memory Rank Single Rankx4)2011-10-28 17:29:11| 分类: | 标签:|字号订阅一组或几组Memory chips,Chips分为两种4Bits与8Bits, 由于CPU处理能力为64Bits, 如果内存要达到CPU处理能力, 就把Chips组成了Rank; 简单理解就是64Bits为1 Rank.Single Rank:1组Memory chipDual Rank: 2 组Memory chip ,one rank per sideQuad Rank: 4 组Memory chip ,two rank per sideRank并不是同时间读写, 而是使用了Memory interleaving进行读写, 这样提高了总线利用效率!解读内存中的Bank两种内存Bank的区别内存Bank分为物理Bank和逻辑Bank。
1.物理Bank传统内存系统为了保证CPU的正常工作,必须一次传输完CPU在一个传输周期内所需要的数据。
而CPU在一个传输周期能接收的数据容量就是CPU数据总线的位宽,单位是bit(位)。
内存与CPU之间的数据交换通过主板上的北桥进行,内存总线的数据位宽等同于CPU数据总线的位宽,这个位宽就称之为物理Bank(Physical Bank,简称P-Bank)的位宽。
以目前主流的DDR系统为例,CPU与内存之间的接口位宽是64bit,也就意味着CPU在一个周期内会向内存发送或从内存读取64bit的数据,那么这一个64bit的数据集合就是一个内存条Bank。
不过以前有不少朋友都认为,内存的物理Bank是由面数决定的:即单面内存条则包含一个物理Bank,双面内存则包含两个。
其实这个看法是错误的!一条内存条的物理Bank是由所采用的内存颗粒的位宽决定的,各个芯片位宽之和为64bit就是单物理Bank;如果是128bit 就是双物理Bank。
怎么理解内存Bank含义有几种意思
怎么理解内存Bank含义有几种意思在内存中一个重要概念bank,在SDRAM内存模组上,"bank 数"表示该内存的物理存储体的数量。
Bank还表示一个SDRAM设备内部的逻辑存储库的数量。
具体怎么理解呢?内存bank有几个意思Bank (内存库) 在内存行业里,Bank至少有三种意思,所以一定要注意。
1、在SDRAM内存模组上,"bank 数"表示该内存的物理存储体的数量。
(等同于"行"/Row)2、Bank还表示一个SDRAM设备内部的逻辑存储库的数量。
(现在通常是4个bank)。
3、它还表示DIMM 或SIMM连接插槽或插槽组,例如bank 1 或 bank A。
这里的BANK是内存插槽的计算单位(也叫内存库),它是电脑系统与内存之间数据总线的基本工作单位。
只有插满一个BANK,电脑才可以正常开机。
举个例子,奔腾系列的主板上,1个168线槽为一个BANK,而2个72线槽才能构成一个BANK,所以72线内存必须成对上。
原因是,168线内存的数据宽度是64位,而72线内存是32位的。
主板上的BANK编号从BANK0开始,必须插满BANK0才能开机,BANK1以后的插槽留给日后升级扩充内存用,称做内存扩充槽。
怎么理解内存Bank含义要讲清这个问题,就要提到内存的逻辑Bank,下面就给大家介绍一下物理Bank和逻辑Bank的概念。
在介绍之前,我们先简单看一下现在市场上的DRAM内存产品.现在市场上的内存主要有:SDRAM、DDR SDRAM及Rambus。
其中Rambus内存的控制器和前两者不同,且内部Bank和前两者也不同,将在后面单独介绍。
先主要介绍SDRAM和DDR SDRAM的Bank问题,因为SDRAM就内核、Bank 结构而言,和DDR SDRAM没有什么区别,这里作为一个整体来讲。
逻辑Bank及其结构内存芯片存储数据的基本单位是bit(位),而进行寻址的基本单位则是Byte(字节),一个Byte就等于8bit。
内存Bank
内存Bank文章来源:/1、内存的标号——数据深度M×数据宽度(单位bit)。
这就是一般内存芯片上**M×**的含义。
比如16×8、8×8等,包括显存也是如此。
如果芯片上没有直接标出,也可以在编号中看出,一般是在编号的中部几个数字。
2、内存芯片容量计算方法:数据深度×数据宽度。
比如16×8的芯片,就是16×8=128Mb。
8bit=1Byte,所以8Mb=1MB。
平时大家说的128M 内存,8M芯片等等都是指的MB。
所以换算成MB的话,应该这么算:数据深度×数据宽度/8=内存颗粒容量数一数内存条上有几个芯片,这条内存的总容量也就算出来了。
大家可以自己验证一下。
3、关于物理bank。
大家经常提到显存的数据位宽这个概念,比如说TNT2是128位的,Geforce256就是256位的。
内存也是如此,它是64位的,就是说cpu从内存读写数据,是64位并行。
而对于一条内存来说,数据宽度×芯片数量=数据位宽。
这个值可以是64或128,对应着这条内存就是1个或2个bank。
如:128M内存16×8格式8个芯片:8×8=64,单面内存单bank128M内存8×8格式16个芯片:8×16=128,双面内存双bank256M内存32×4格式16个芯片:4×16=64,双面内存单bank256M内存16M×16格式 8个芯片:16×8=128,单面内存双bank所以说单或双bank和内存条的单双面没有关系。
由于目前市面上的256MB双面内存常使用16Mb×8×16,单面128MB内存常使用16Mb×8×8,因此使一些市场经销商、消费者错误归纳为单面内存是单bank、双面内存是双bank的误解。
4、主板对内存支持。
(完整word版)内存芯片的BANK参数说明
内存芯片的BANK一.内存芯片的逻辑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参数说明
内存芯片的BANK参数说明BANK参数通常用于描述动态随机存取存储器(DRAM)芯片中的分组。
在DRAM中,内存芯片被划分为多个独立的BANK,每个BANK都有自己的地址空间和控制电路。
每个BANK可以独立地读写数据,而不会影响其他BANK的操作。
BANK参数的主要作用是实现并行访问。
通过将数据存储在不同的BANK中,可以同时进行多个读写操作,大大提高了内存访问的效率。
当一个BANK在读写数据时,其他BANK可以继续进行其他的访问操作,从而避免了内存访问的等待时间。
另外,BANK参数还可以影响内存的访问延迟。
由于每个BANK都有自己的控制电路,访问一个BANK的延迟与同时访问多个BANK的延迟不同。
通过合理配置BANK的数量和分布,可以降低内存的访问延迟,提高系统的响应速度。
在实际应用中,BANK参数的设置需要考虑多个因素。
首先是系统的需求,例如内存容量、带宽和延迟要求等。
其次是内存控制器的能力,包括并行访问的支持和时序控制等。
最后是成本和制造的限制,例如芯片的物理布局和尺寸等。
在PC主板中,通常会使用多个BANK的DRAM芯片来满足系统的需求。
根据主板和内存控制器的不同,银行的数量可以有所差异。
一般来说,主板上的DRAM插槽数量和内存控制器的支持能力决定了内存芯片的BANK参数。
总结起来,内存芯片的BANK参数是指内存芯片中可使用的独立存储区域的数量。
通过合理设置BANK的数量和分布,可以提高内存访问的效率和性能。
在实际应用中,需要考虑系统需求、内存控制器的能力和制造的限制等因素来确定BANK参数的值。
内存芯片的BANK参数说明
内存芯片的BANK一.内存芯片的逻辑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数量×每个单元格的位数(芯片的位宽)。
内存上面的标识解读
内存上面的标识解读(Memory Rank Single Rankx4)2011-10-28 17:29:11| 分类:技巧整合 | 标签:memory rank single r |字号订阅一组或几组Memory chips,Chips分为两种4Bits与8Bits, 由于CPU处理能力为64Bits, 如果内存要达到CPU处理能力, 就把Chips组成了Rank; 简单理解就是64Bits为1 Rank.Single Rank:1组Memory chipDual Rank: 2 组Memory chip ,one rank per sideQuad Rank: 4 组Memory chip ,two rank per sideRank并不是同时间读写, 而是使用了Memory interleaving进行读写, 这样提高了总线利用效率!解读内存中的Bank两种内存Bank的区别内存Bank分为物理Bank和逻辑Bank。
1.物理Bank传统内存系统为了保证CPU的正常工作,必须一次传输完CPU在一个传输周期内所需要的数据。
而CPU在一个传输周期能接收的数据容量就是CPU数据总线的位宽,单位是bit(位)。
内存与CPU之间的数据交换通过主板上的北桥芯片进行,内存总线的数据位宽等同于CPU数据总线的位宽,这个位宽就称之为物理Bank(Physical Bank,简称P-Bank)的位宽。
以目前主流的DDR系统为例,CPU与内存之间的接口位宽是64bit,也就意味着CPU在一个周期内会向内存发送或从内存读取64bit 的数据,那么这一个64bit的数据集合就是一个内存条Bank。
不过以前有不少朋友都认为,内存的物理Bank是由面数决定的:即单面内存条则包含一个物理Bank,双面内存则包含两个。
其实这个看法是错误的!一条内存条的物理Bank是由所采用的内存颗粒的位宽决定的,各个芯片位宽之和为64bit就是单物理Bank;如果是128bit 就是双物理Bank。
内存中的rank跟bank有什么区别
内存中的Rank是JEDEC创造的名词,系指在内存模组上的内存区块。
倘若系统资料位元宽度是64bit,则每一个Rank就必须是64bit,当内存模组上有第二组64bit内存区块时,就称此模组为Double Rank,在实务上此模组的运作与两条Single Rank模组相当。
一.内存芯片的逻辑BANK在芯片的内部,内存的数据是以位(bit)为单位写入一张大的矩阵中,每个单元我们称为CELL,只要指定一个行(Row),再指定一个列(Column),就可以准确地定位到某个CELL,这就是内存芯片寻址的基本原理。
这个阵列我们就称为内存芯片的B ANK,也称之为逻辑BANK(Logical BANK)。
由于工艺上的原因,这个阵列不可能做得太大,所以一般内存芯片中都是将内存容量分成几个阵列来制造,也就是说存在内存芯片中存在多个逻辑BANK,随着芯片容量的不断增加,逻辑BANK数量也在不断增加,目前从32MB到1GB的芯片基本都是4个,只有早期的16Mbit和32Mbit的芯片采用的还是2个逻辑BANK的设计,譬如三星的两种16MB芯片:K4S161622D (5 12K x 16Bit x 2 BANK)和K4S160822DT(1M x 8Bit x 2 BANK)。
芯片组本身设计时在一个时钟周期内只允许对一个逻辑BANK进行操作(实际上芯片的位宽就是逻辑BANK的位宽),而不是芯片组对内存芯片内所有逻辑BANK同时操作。
逻辑BAN K的地址线是通用的,只要再有一个逻辑BANK编号加以区别就可以了(BANK0到B ANK3)。
但是这个芯片的位宽决定了一次能从它那里读出多少数据,并不是内存芯片里所有单元的数据一次全部能够读出每个逻辑BANK有8M个单元格(CELL),一些厂商(比如现代/三星)就把每个逻辑BANK的单元格数称为数据深度(Data Depth),每个单元由8bit组成,那么一个逻辑BANK的总容量就是64Mbit(8M×8bit),4个逻辑BANK就是256Mbit,因此这颗芯片的总容量就是256Mbit(32MB)。
DDR3中bank,16bit和32bit等概念
DDR3中bank,16bit和32bit等概念最近在看内存相关的东东。
以前认为内存就是块资源,需要的时候,malloc出来一部分使用即可。
对内部的东东没有深入了解过。
刚开始看起来,感觉有点丈二和尚。
通过各种查询,并请教牛人,对基本概念有了个初步了解,先总结一把。
先说说bank。
看到bank首先想到了银行,然后是利率,然后是房贷...扯远了,这儿的bank是存储库的意思。
也就是说,一块内存内部划分出了多个存储库,访问的时候指定存储库编号,就可以访问指定的存储库。
具体内存中划分了多少个bank,要看地址线中有几位BA地址,如果有两位,说明有4个bank,如果有3位,说明有8个bank.DDR3的地址中有三个BA,即三个Bank Address,BA0, BA1, BA2。
所以DDR3单块内存中都是8个bank.存储库里面的内存是怎么组织的呢?存储库里面类似于一个矩阵。
有很多点,没一个点就是一个cell,也就是一个存储点,有一个电容和一个晶体管组成,通过上电与否,来表示1或0.每一个cell由一个行号和一个列号来唯一标识。
也可以这么理解,bank中分成了很多行(row),每一行又有很多列。
这样的话,给定bank编号,可以找到bank,给定row编号,可以找到所在行,给定column 编号,可以找到所在列,也就找到了要访问的cell。
一个bank中有多少行,多少列呢?这要看行和列分别有多少位来表示。
假如表示行的有A0~A14,那么单个bank中行的总量为2^15。
列类似,如果表示列的有A0~A9,单个bank中列总量为2^10.下面来看看16bit/32bit内存的概念。
这儿所说的16bit/32bit,指的是内存中以多长为单位进行存储。
16bit,即是说内存中是以16bit为单位访问内存的,也就是说,你给内存一个地址,内存会给你一个16bit的数据到数据线。
32bit的与此类似。
下面来看一个具体例子。
cuda共享内存bank机制
cuda共享内存bank机制
CUDA的共享内存Bank机制是一种针对共享内存的访问管理方式。
在CUDA中,共享内存是位于芯片上的一种稀缺资源,因此其访问速度要比全局内存快得多。
Bank 机制的作用在于优化共享内存的访问效率。
Bank机制的主要思想是将共享内存划分为同样大小的、可以同时访问的内存块,这些内存块被称为存储体(bank)。
每个SM(流式多处理器)都有一个小的低延迟内存池,这个内存池被当前正在该SM上执行的线程块中的所有线程所共享。
每个线程块开始执行时,会分配给它一定数量的共享内存。
这个内存空间的地址空间被线程块中所有的线程共享。
在理想情况下,如果每个被线程束共享内存访问的请求在一个事务中完成,那么每个存储体(bank)就可以同时处理多个访问请求。
这意味着,如果多个线程访问同一bank的不同字段,它们的访问请求将会被并行处理,从而提高了内存的访问效率。
然而,如果多个线程访问同一Bank的不同字段时,就会发生Bank冲突。
因为不同Bank可以同时访问,而当多个线程请求的内存地址被映射到了同一个Bank上时,这些请求就会变成串行的。
也就是说,它们必须按照顺序一个接一个地处理,这会降低内存的访问效率。
在实际应用中,Bank机制可以应用于许多需要频繁访问共享内存的算法中,例如矩阵乘法、向量运算等。
通过合理地管理和使用共享内存,可以显著提高GPU的计算性能。
memory中bank的概念
Memory中的Bank概念定义在计算机体系结构中,内存银行(Memory Bank)是指一组物理存储器模块,它们作为一个整体被视为计算机系统的一部分。
每个存储器模块通常包含一组存储单元,用于存储和检索数据。
内存银行可以是一块物理芯片,也可以是一个存储模块的集合。
重要性内存银行在计算机系统中起着至关重要的作用。
以下是内存银行的几个重要性方面:1. 存储容量扩展内存银行的存在使得计算机系统的存储容量能够得到扩展。
通过添加更多的内存银行,可以增加系统可以存储和处理的数据量。
这对于需要处理大量数据的应用程序非常重要,例如大规模数据库、科学计算和人工智能等领域。
2. 并行访问内存银行通常被设计成可以同时访问多个存储模块。
这种并行访问的能力可以提高计算机系统的性能,因为它允许同时进行多个内存操作。
例如,在多核处理器系统中,每个核可以独立地访问一个或多个内存银行,从而提高整体内存带宽和响应时间。
3. 冗余和容错性内存银行的冗余性设计可以提高系统的可靠性和容错性。
通过将数据复制到多个内存银行中,即使某个内存银行发生故障,系统仍然可以从其他可用的内存银行中恢复数据。
这对于关键任务和高可用性应用程序非常重要,例如金融交易系统和航空航天控制系统。
4. 内存访问优化内存银行的存在使得系统可以实施各种内存访问优化技术。
例如,可以将数据按照其在内存银行中的位置进行布局,以便更好地利用硬件缓存和预取机制。
此外,内存银行还可以支持内存映射技术,将物理地址映射到逻辑地址,从而简化内存管理和地址转换过程。
应用内存银行的概念在各种计算机系统中得到广泛应用。
以下是几个常见的应用场景:1. 服务器和数据中心在大型服务器和数据中心中,内存银行通常被用于存储和管理大量的数据。
通过使用多个内存银行,可以提高系统的存储容量和性能,以满足高负载和大规模计算的需求。
此外,内存银行的冗余和容错性设计可以保护数据免受硬件故障的影响。
2. 超级计算机超级计算机通常需要处理大规模的科学计算和模拟任务。
内存Bank是什么意思?-电脑资料
内存Bank是什么意思?-电脑资料
内存bank是什么?Bank从物理上理解为北桥芯片到内存的通道,通常每个通道为64bit,
也许有人这么认为,单面的内存即为1个Bank,双面的内存为2个Bank。
这种说法是很片面的,因为单面的内存为一个Bank是正
确的,但说双面的内存是2个Bank却是不对的。
如现在很流行的DDRSDRAM就不一定。
那如何正确区分呢?方法如下:
开机后的第二个画面可查看到内存的Bank信息,图为双Bank的SDRAM内存.用最小化系统启动计算机,即只采用主板、CPU、内存
和显卡。
在开机后的第二个画面(如图)按键盘上的Pause键暂停,如果内存是SDRAM,我们会看到:
sdramatbank:0此为单bank,
sdramatbank:0,1此为双bank.
如内存是DDRSDRAM,我们则会看到:
ddrsdramatbank:0此为单bank
ddrsdramatbank:0,1此为双bank
简单吧,这下我们就可以根据主板量体裁衣了,而不必担心花冤枉钱买多余的内存了,。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
内存芯片的BANK一.内存芯片的逻辑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设计了二.内存条的物理BANK通常主板上的每个内存插槽分为两段,这个大家从VIA主板BIOS设置中的BANK 0/1 DRAM Timing选项很容易推理得到,实际上也就是两个BANK,不过这里的BANK概念与我们前面分析芯片内部结构时提到的BANK可不一样。
简单地说这个BANK就是内存和主板上的北桥芯片之间用来交换数据的通道,目前以SDRAM系统为例,CPU与内存之间(就是CPU到DIMM槽)的接口位宽是64bit,也就意味着CPU一次会向内存发送或从内存读取64bit的数据,那么这一个64bit的数据集合就是一个内存条BANK,很多厂家的产品说明里称之为物理BANK(Physical BANK),目前绝大多数的芯片组都只能支持一根内存包含两个物理BANK,但是针对某个具体的条子,很多人想当然,认为每个DIMM插槽使用内存条的面数来区分占用几个BANK通道,单面的(16M,64M)只占用一个物理BANK,而双面的(32M,128M)则需占用两个物理BANK。
实际上物理BANK与面数是无关的,PCB电路可以设计成双面和单面,也可把全部芯片(16颗)放在一面上(至少从理论上是完全可能)。
有些内存条单面就是一个物理BANK,但有些双面才是一个物理BANK,所以不能一概而论。
256MB内存条就是一个典型的例子,虽然是双面并多达16枚芯片,但仍然是单个物理BANK的。
要准确知道内存条实际物理BANK数量,我们只要将单个芯片的逻辑BANK数量和位宽以及内存条上芯片个数搞清楚。
各个芯片位宽之和为64就是单物理BANK,如果是128就是双物理BANK。
CPU一次只能对一个物理BANK进行访问和操作(因为一个物理BANK是64bit的位宽),那么内存条要保证一个周期内向数据总线提供或接收64bit的数据,而这些数据都是分别存储在内存条的的芯片中。
那么内存条中有多个内存芯片,这64位数据到底是有一个芯片提供还是由所有芯片每个提供一部分呢?我们还是以上面的那颗256Mbit的芯片为例,根据芯片组的工作原理,目前还没有那家芯片生产厂家做出位宽16位以上的芯片,所以现在的芯片组设计时都是要求内存条上每个芯片均承担提供数据的任务,也就是说内存条上的每个芯片都要要对这64位数据做贡献,而那颗内存芯片的位宽是8位,因此用这个芯片组成内存条只需要8颗芯片即完成了64位数据并发任务,算下来,内存条的容量就是32 MB (256Mbit)×8=256MB的容量,假如是内存芯片的位宽是4位,那么需要的芯片数量必须是16颗,这时假如使用八颗位宽还是8位的64MB(512bit)芯片(单个芯片的总容量翻了一番)组装,尽管内存条上的总容量达到了256MB的要求,还是由于位宽不够是不能正常工作。
要能工作就必须采用16位位宽的64MB(512bit)芯片。
586以上电脑的数据总线宽度都是64bit,即每次读取内存为64bit,SDRAM内存条的设计带宽也是64bit,内存条的带宽为条上各个内存芯片的带宽之和,基本条件为带宽之和应等于64bit或其倍数。
假如出现了各个芯片位宽之和等于128。
则分成两个64位,当读取一个64位部分时,另一个64位部分就不能读取,通常很多厂家就分别将这两部分放在内存的两面上。
这就造成了许多人的错觉:双面是两个BANK的,单面是一个BANK的。
实际根本不能这样认识,比如大度256MB 内存,尽管两面16个芯片,但是由于内存芯片的位宽是4位(32Mbit×4),所以必须要有4×16=64才能达到系统所要求的位宽。
这时由于芯片大小的限制,不可能将16颗芯片都放在一面上,所以只能设计成双面。
对于64Mbit芯片(4M*16) 来说,芯片带宽16bit,8颗芯片带宽=16*8=128bit(即两个BANK),4颗芯片带宽=16*4=64bit(即一个BANK)。
两个物理BANK的情况只有出现在位宽超出了64位的情况下(即位宽出现了富余),由于芯片组任一时刻只能处理一个64位,所以才分成两个物理BANK。
今后随着新一代数据总线位宽的提高,也许CPU的胃口就不是一次只能64位数据了,可能是128位甚至更多。
另外我们常说的内存交错设置并不是指的物理BANK的交错。
也就是说不是内存条双面的交错,而是指内存芯片内部逻辑BANK的交错,如果芯片有4个BANK,那么就可以进行4路交错,如果只有两个BANK就只能是二路交错。
很多资料介绍的以内存条的单面或双面来决定交错是错误的,实际上就是混淆了物理BANK和逻辑BANK的区别。
三.有关内存BANK的几个常见问题释疑1.大容量内存不能为某些主板正确识别原因系统在启动时,主板的北桥芯片会侦测这些内存条的参数,如果果发现位宽不支持,则终止检测,系统就挂了。
因为位宽决定了一次CPU一次向内存芯片传递的数据量,只能一次64位数据并发。
接下来检测BANK的单元格总数,如果这个单元格的数量超出了芯片组所支持的上限,那么就按芯片组所能支持的最大限度进行操作,在确定了数据深度/位宽之后再结合逻辑BANK数量,计算出芯片的实际可用总容量。
换句话说逻辑BANK中的一些行与列可能就用不上了,假如芯片组对逻辑BANK数量不支持,那么多出来的逻辑BANK也将不起作用,后者的情况比较少见,现在的芯片组基本全是支持4BANK的。
VIA的KT133芯片组甚至明确表示支持8BANK。
我们说内存识别出现问题,主要就是卡在芯片的这三个参数上,其中又以芯片的数据深度限制最为常见。
事实上现在很多大容量内存不能为一些旧型号主板支持的主要原因就是芯片组对内存芯片的逻辑BANK数据深度有一定限制。
我们知道芯片的容量主要由三个参数决定,也就是根据第一部分介绍的公式,首先是逻辑BANK的单元格数(数据深度),其次是逻辑BANK的位数。
最后是逻辑BANK的个数。
三者相乘得到芯片的容量,大家看到大度内存256MB为什么不能在440BX上用,就是由于BX芯片组只支持内存芯片的数据深度为4M,而不是8M,所以大度条子的内存芯片在BX板上被识别成4×4×4=64Mbit(8MB),而不是本来的8×4×4=128Mbit(16MB),现在很多大容量的内存没有在BANK数和位宽上提高多少,基本都是增加芯片的数据深度,而这是需要芯片组支持的,象INTEL的LX/BX/810/815等都只能支持最大4M(INTEL想让大家去选择P4+850+RDRAM的组合),而目前VIA系列的几款芯片组支持芯片任意位宽(尽管目前大部分内存芯片的位宽最高只有16位),单个逻辑BANK的容量(数据深度)最多支持32M的容量。
从这点上大家也不难看出为什么现在VIA芯片组的主板这么火了。
2.内存条购买标准的修正大家都知道这么一个购买常识:购买内存时尽量选用单面内存。
但是这个经验是来自这样一个背景:许多不正规的小厂使用低容量芯片(比如已经过时16Mbit)来制造目前使用的高容量内存条,由于单个芯片容量小,为了达到较大的内存条容量,必然要增加芯片数目,而且这些过时的芯片很可能是一些翻新货,并且芯片之间电气参数的一致性也很差。
不过根据分析更准确地讲购买原则应该:是选择单物理BANK的内存。
以前由于大多数单面内存都是单BANK内存,所以大家一直就是这个说法,实际上通过前面的分析我们知道内存条的面数与物理BANK数是无关的。
单个物理BANK,内存只要取一组64位数据,而不需要再切换到另外一个BANK读去另外一组64位数据,切换的时间省去了,性能必然有提高。
目前由于一个DIMM插槽最多支持两个物理BANK,BIOS设置中是对同一个内存插槽的两个BANK同时进行速度调节的,比如BANK 0/1 DRAM Timing;BANK 2/3 DRAM Timing;BANK 4/5 DRAM Timing选项。