Chinaunix首页 | 论坛 | 博客
  • 博客访问: 496778
  • 博文数量: 59
  • 博客积分: 2968
  • 博客等级: 少校
  • 技术积分: 648
  • 用 户 组: 普通用户
  • 注册时间: 2009-04-23 22:20
个人简介

IT圈泥瓦匠一枚,混迹过国产处理器圈,从事Linux BSP开发混一软件经理职务,现漂浮在云端从事OpenStack-Nova相关设计工作。

文章分类

全部博文(59)

文章存档

2014年(1)

2013年(2)

2012年(7)

2011年(26)

2010年(9)

2009年(14)

我的朋友

分类: LINUX

2011-02-23 16:10:11


前端总线频率(FSB)及DDR内存频率详解

外频
   外频是由主板为CPU提供的基准时钟频率,一般常见的有100、133、166、200。
FSB
   FSB(Front System Bus)指的是系统前端总线,它是处理器与主板北桥芯片或内存控制集线器之间的数据通道,常见频率有400、333、533、800。

几个常用公式:
   主频 = 外频*倍频(MHz)
   IntelCPU前端总线 = 外频*4(MHz)
   AMDCPU前端总线 = 外频*2(MHz)
   CPU数据带宽 = 前端总线*8(MB/s)
   内存带宽 = 内存等效工作频率*8(MB/s)

前端总线频率
   总线是将信息以一个或多个源部件传送到一个或多个目的部件的一组传输线。通俗的说,就是多个部件间的公共连线,用于在各个部件之间传输信息。人们常常以MHz表示的速度来描述总线频率。总线的种类很多,前端总线的英文名字是Front Side Bus,通常用FSB表示,是将CPU连接到北桥芯片的总线。计算机的前端总线频率是由CPU和北桥芯片共同决定的。

   北桥芯片负责联系内存、显卡等数据吞吐量最大的部件,并和南桥芯片连接。CPU就是通过前端总线(FSB)连接到北桥芯片,进而通过北桥芯片和内存、显卡交换数据。前端总线是CPU和外界交换数据的最主要通道,因此前端总线的数据传输能力对计算机整体性能作用很大,如果没足够快的前端总线,再强的CPU也不能明显提高计算机整体速度。数据传输最大带宽取决于所有同时传输的数据的宽度和传输频率,即数据带宽=(总线频率×数据位宽)÷8。目前PC机上所能达到的前端总线频率有266MHz、333MHz、400MHz、533MHz、800MHz几种,最高到1066MHz。前端总线频率越大,代表着CPU与北桥芯片之间的数据传输能力越大,更能充分发挥出CPU的功能。现在的CPU技术发展很快,运算速度提高很快,而足够大的前端总线可以保障有足够的数据供给给CPU,较低的前端总线将无法供给足够的数据给CPU,这样就限制了CPU性能得发挥,成为系统瓶颈。

外频与前端总线频率的区别
   前端总线的速度指的是CPU和北桥芯片间总线的速度,更实质性的表示了CPU和外界数据传输的速度。而外频的概念是建立在数字脉冲信号震荡速度基础之上的,也就是说,100MHz外频特指数字脉冲信号在每秒钟震荡一万万次,它更多的影响了PCI及其他总线的频率。之所以前端总线与外频这两个概念容易混淆,主要的原因是在以前的很长一段时间里(主要是在Pentium 4出现之前和刚出现Pentium 4时),前端总线频率与外频是相同的,因此往往直接称前端总线为外频,最终造成这样的误会。随着计算机技术的发展,人们发现前端总线频率需要高于外频,因此采用了QDR(Quad Date Rate)技术,或者其他类似的技术实现这个目的。这些技术的原理类似于AGP的2X或者4X,它们使得前端总线的频率成为外频的2倍、4倍甚至更高,从此之后前端总线和外频的区别才开始被人们重视起来,目前的主流产品均采用这些技术。

DDR、DDR2、DDR3内存

DDR传输标准 
   严格的说DDR应该叫DDR SDRAM,人们习惯称为DDR,部分初学者也常看到DDR SDRAM,就认为是SDRAM。DDR SDRAM是Double Data Rate SDRAM的缩写,是双倍速率同步动态随机存储器的意思。DDR内存是在SDRAM内存基础上发展而来的,仍然沿用SDRAM生产体系,因此对于内存厂商而言,只需对制造普通SDRAM的设备稍加改进,即可实现DDR内存的生产,可有效的降低成本。
   SDRAM在一个时钟周期内只传输一次数据,它是在时钟的上升期进行数据传输;而DDR内存则是一个时钟周期内传输两次次数据,它能够在时钟的上升期和下降期各传输一次数据,因此称为双倍速率同步动态随机存储器。DDR内存可以在与SDRAM相同的总线频率下达到更高的数据传输率。 与SDRAM相比:DDR运用了更先进的同步电路,使指定地址、数据的输送和输出主要步骤既独立执行,又保持与CPU完全同步;DDR使用了DLL(Delay Locked Loop,延时锁定回路提供一个数据滤波信号)技术,当数据有效时,存储控制器可使用这个数据滤波信号来精确定位数据,每16次输出一次,并重新同步来自不同存储器模块的数据。DDR本质上不需要提高时钟频率就能加倍提高SDRAM的速度,它允许在时钟脉冲的上升沿和下降沿读出数据,因而其速度是标准SDRA的两倍。

   从外形体积上DDR与SDRAM相比差别并不大,他们具有同样的尺寸和同样的针脚距离。但DDR为184针脚,比SDRAM多出了16个针脚,主要包含了新的控制、时钟、电源和接地等信号。DDR内存采用的是支持2.5V电压的SSTL2标准,而不是SDRAM使用的3.3V电压的LVTTL标准。

   DDR内存的频率可以用工作频率和等效频率两种方式表示,工作频率是内存颗粒实际的工作频率,但是由于DDR内存可以在脉冲的上升和下降沿都传输数据,因此传输数据的等效频率是工作频率的两倍。

   PC1600如果按照传统习惯传输标准的命名,PC1600(DDR200)应该是PC200。在当时DDR内存正在与RDRAM内存进行下一代内存标准之争,此时的RDRAM按照频率命名应该叫PC600和PC800。这样对于不是很了解的人来说,自然会认为PC200远远落后于PC600,而JEDEC基于市场竞争的考虑,将DDR内存的命名规范进行了调整。传统习惯是按照内存工作频率来命名,而DDR内存则以内存传输速率命名。因此才有了今天的PC1600、PC2100、PC2700、PC3200、PC3500等(在用CPU-Z工具查看机器时,在SPD中显示的最大带宽)。

   PC1600的实际工作频率是100 MHz,而等效工作频率是200 MHz,那么它的数据传输率就为“数据传输率=频率*每次传输的数据位数”,就是200MHz*64bit=12800Mb/s,再除以8就换算为MB为单位,就是1600MB/s,从而命名为PC1600。

DDR2传输标准

   DDR2可以看作是DDR技术标准的一种升级和扩展:DDR的核心频率与时钟频率相等,但数据频率为时钟频率的两倍,也就是说在一个时钟周期内必须传输两次数据。而DDR2采用“4 bit Prefetch(4位预取)”机制,核心频率仅为时钟频率的一半、时钟频率再为数据频率的一半,这样即使核心频率还在200MHz,DDR2内存的数据频率也能达到800MHz—也就是所谓的DDR2 800。

   目前,已有的标准DDR2内存分为DDR2 400和DDR2 533,DDR2 667和DDR2 800,其核心频率分别为100MHz、133MHz、166MHz和200MHz,其总线频率(时钟频率)分别为200MHz、266MHz、333MHz和400MHz,等效的数据传输频率分别为400MHz、533MHz、667MHz和800MHz,其对应的内存传输带宽分别为3.2GB/sec、4.3GB/sec、5.3GB/sec和6.4GB/sec,按照其内存传输带宽分别标注为PC2 3200、PC2 4300、PC2 5300和PC2 6400。

DDR的带宽计算

   内存带宽计算公式:带宽=内存核心频率×内存总线位数×倍增系数。

   先容我从DDR的技术说起,DDR采用时钟脉冲上升、下降沿各传一次数据,1个时钟信号可以传输2倍于SDRAM的数据,所以又称为双倍速率SDRAM。它的倍增系数就是2。

   DDR2仍然采用时钟脉冲上升、下降支各传一次数据的技术(不是传2次),但是一次预读4bit数据,是DDR一次预读2bit的2倍,因此,它的倍增系数是2X2=4。

   DDR3作为DDR2的升级版,最重要的改变是一次预读8bit,是DDR2的2倍,DDR的4倍,所以,它的倍增系数是2X2X2=8。

   需要补充的一点是,内存有三种不同的频率指标,它们分别是核心频率、时钟频率和有效数据传输频率。核心频率即为内存Cell阵列(Memory Cell Array)的工作频率,它是内存的真实运行频率;时钟频率即I/O Buffer(输入/输出缓存)的传输频率;而有效数据传输频率则是指数据传送的频率。DDR3内存一次从存储单元预取8Bit的数据,在I/OBuffer(输入/输出缓存)上升和下降中同时传输,因此有效的数据传输频率达到了存储单元核心频率的8倍。同时DDR3内存的时钟频率提高到了存储单元核心的4倍。也就是说DDR3-800内存的核心频率只有100MHz,其I/O频率为400MHz,有效数据传输频率则为800MHz。

   从SDRAM-DDR时代,数据总线位宽时钟没有改变,都为64bit,但是采用双通道技术,可以获得64X2=128bit的位宽。

   下面计算一下一条标称DDR3 1066的内存条在默认频率下的带宽:

   1066是指有效数据传输频率,除以8才是核心频率。一条内存只用采用单通道模式,位宽为64bit。所以

内存带宽=(1066/8)×64×8=68224Mbit。由此可知,如果内存工作在标称频率的时候,可以直接用标称频率×位宽,简化公式。

再根据8bit(位)=1Byte(字节),得68224/8=8528MByte=8.328125GB。

再以两条标称1066超频到1200的DDR3内存,组成双通道后的带宽:

超频到1200后,内存核心频率应为1200/8=150MHz,而双通道的位宽=128bit:

带宽=150×128×8=153600Mbit=18.75GB
阅读(4504) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~