cpu控制器怎么工作
cpu控制器怎么工作
我们都是CPU是电脑的核心,电脑的大脑,控制整台电脑的运行,但是CPU控制器如何工作的呢?下面就让小编来告诉大家CPU控制器如何工作。
CPU控制器怎么工作
内存控制器,是计算机系统内部控制内存,并且通过内存控制器使内存与CPU之间交换数据的重要组成部分。内存控制器决定了计算机系统所能使用的最大内存容量、内存BANK数、内存类型和速度、内存颗粒数据深度和数据宽度等等重要参数,也就是说决定了计算机系统的内存性能,从而也对计算机系统的整体性能产生较大影响。随着计算机技术发展,内存控制器分为传统型和整合型两种。
传统型
传统计算机系统其内存控制器位于主板芯片组北桥芯片内部,CPU要与内存进行数据交换,需要经过“CPU--北桥--内存--北桥--CPU”5个步骤,在该模式下数据经由多级传输,数据延迟显然比较大从而影响计算机系统整体性能;
整合型
集成内存控制器,就是在CPU的基板上内置一个内存控制器,先说说没有内存控制器时系统是如何工作的。26个数据A~Z,要传送到CPU,这时候CPU就向北桥发出指令(因为内存控制器是集成在北桥上,说所以要经过北桥),内存通过内存控制器接受到了指令,这个指令就是把内存上b单元的A~Z数据传送到CPU,内存这个时候开始取数据,也就是平常所说的寻址。当内存找到了这个数据,而这26个数据每个数据为500MB,所有数据总和就约为12GB,假设内存为双通道R2 800,数据传输率就为800MHZ乘以128BIT除以8比特每字节=12GB每秒,通过分析,认为只需一秒就能传送到CPU,此时的数据在一秒的时间内只传送到了北桥,内存控制器在北桥,在北桥的数据如何传送到CPU呢,这就要通过FSB前端总线了,假设FSB的频率为800MHZ,那么数据传输率就为800MHZ乘以64BIT除以8比特每秒=6.4GB每秒,从北桥到CPU要2秒,所以数据传送到CPU的总时间为3秒,接下来再来看看CPU集成内存控制器的时候系统是如何工作的;数据从内存传输到控制器后,同样为1秒,所不同的是这个时候不用再通过慢吞吞的前端总线了,CPU直接从内存控制器读取数据就行了,因为内存控制器在CPU的门口罗,打个比方,一件东西在你门口的时候,大家就可以直接拿了,就是这个原理,算了一下,集成内存控制器的CPU读取12GB的数据是才用了1秒的时间,所以大大节省了运算时间,也充分发挥了CPU的性能。
最后总结一下:CPU没有内存控制器时:数据以内存控制器---北桥----CPU的方式传输有内存控制器时:数据以内存控制器------CPU的方式传输,一步到位。
工作原理
CPU内部整合内存控制器的优点,就是可以有效控制内存控制器工作在与CPU核心同样的频率上,而且由于内存与CPU之间的数据交换无需经过北桥,可以有效降低传输延迟。打个比方,这就如同将货物仓库直接搬到了加工车间旁边,大大减少原材料和制成品在货物仓库与加工车间之间往返运输所需要的时间,极大地提高了生产效率。这样一来系统的整体性能也得到了提升。
内存频率
和CPU一样,内存也有自己的工作频率,频率以MHz为单位内存主频越高在一定程度上代表着内存所能达到的速度越快。内存主频决定着该内存最高能在什么样的频率正常工作。最为主流的内存频率为DDR2-800和DDR3-1333,作为DDR2的替代者,DDR3内存的频率已经在向3000MHz进发。
内存容量
内存的容量不但是影响内存价格的因素,同时也是影响到整机系统性能的因素。过去Windows XP平台,512M的内存还是主流,1GB已经是大容量;64位系统开始普及,Windows Vista、Windows 7越来越多人使用,没有2GB左右的内存都不一定能保证操作的流畅度。单根内存的容量主要有1GB、2GB、4GB,最高已经达到单根8GB。
工作电压
内存正常工作所需要的电压值,不同类型的内存电压也不同,但各自均有自己的规格,超出其规格,容易造成内存损坏。DDR2内存的工作电压一般在1.8V左右,而DDR3内存则在1.6V左右。有的高频内存需要工作在高于标准的电压值下,具体到每种品牌、每种型号的内存,则要看厂家了。只要在允许的范围内浮动,略微提高内存电压,有利于内存超频,但是同时发热量大大增加,因此有损坏硬件的风险。
时序参数
tCL : CAS Latency Control(tCL)
一般我们在查阅内存的时序参数时,如“8-8-8-24”这一类的数字序列,上述数字序列分别对应的参数是“CL-tRCD-tRP-tRAS”。这个第一个“8”就是第1个参数,即CL参数。
CAS Latency Control(也被描述为tCL、CL、CAS Latency Time、CAS Timing Delay),CAS latency是“内存读写操作前列地址控制器的潜伏时间”。CAS控制从接受一个指令到执行指令之间的时间。因为CAS主要控制十六进制的地址,或者说是内存矩阵中的列地址,所以它是最为重要的参数,在稳定的前提下应该尽可能设低。
内存是根据行和列寻址的,当请求触发后,最初是tRAS(Activeto Precharge Delay),预充电后,内存才真正开始初始化RAS。一旦tRAS激活后,RAS(Row Address Strobe )开始进行需要数据的寻址。首先是行地址,然后初始化tRCD,周期结束,接着通过CAS访问所需数据的精确十六进制地址。期间从CAS开始到CAS结束就是CAS延迟。所以CAS是找到数据的最后一个步骤,也是内存参数中最重要的。
这个参数控制内存接收到一条数据读取指令后要等待多少个时钟周期才实际执行该指令。同时该参数也决定了在一次内存突发传送过程中完成第一部分传送所需要的时钟周期数。这个参数越小,则内存的速度越快。必须注意部分内存不能运行在较低的延迟,可能会丢失数据。而且提高延迟能使内存运行在更高的频率,所以需要对内存超频时,应该试着提高CAS延迟。
该参数对内存性能的影响最大,在保证系统稳定性的前提下,CAS值越低,则会导致更快的内存读写操作。
tRCD : RAS to CAS Delay
该值就是“8-8-8-24”内存时序参数中的第2个参数,即第2个“8”。RAS to CAS Delay(也被描述为:tRCD、RAS to CAS Delay、Active to CMD),表示"行寻址到列寻址延迟时间",数值越小,性能越好。对内存进行读、写或刷新操作时,需要在这两种脉冲信号之间插入延迟时钟周期。在JEDEC规范中,它是排在第二的参数,降低此延时,可以提高系统性能。如果你的内存的超频性能不佳,则可将此值设为内存的默认值或尝试提高tRCD值。
tRP : Row Precharge Timing(tRP)
该值就是“8-8-8-24”内存时序参数中的第3个参数,即第3个“8”。Row Precharge Timing (也被描述为:tRP、RAS Precharge、Precharge to active),表示"内存行地址控制器预充电时间",预充电参数越小则内存读写速度就越快。tRP用来设定在另一行能被激活之前,RAS需要的充电时间。
tRAS : Min RAS Active Timing
该值就是该值就是“8-8-8-24”内存时序参数中的最后一个参数,即“24”。Min RAS Active Time (也被描述为:tRAS、Active to Precharge Delay、Row Active Time、Precharge Wait State、Row Active Delay、Row Precharge Delay、RAS Active Time),表示“内存行有效至预充电的最短周期”,调整这个参数需要结合具体情况而定,一般我们最好设在24~30之间。这个参数要根据实际情况而定,并不是说越大或越小就越好。
如果tRAS的周期太长,系统会因为无谓的等待而降低性能。降低tRAS周期,则会导致已被激活的行地址会更早的进入非激活状态。如果tRAS的周期太短,则可能因缺乏足够的时间而无法完成数据的突发传输,这样会引发丢失数据或损坏数据。该值一般设定为CAS latency + tRCD + 2个时钟周期。