这两个频率根本不是同一个概念,没有可比性。
CPU 主频是 CPU 内部的流水线寄存器每秒翻转次数。
内存频率是内存总线(可以粗略认为是 DIMM 接口)的时钟频率。
CPU 并不是一个主频 tick 就能够取到一条指令并且执行完,因为 CPU 内部已经把一条指令分割成了流水线上的多个阶段,一条指令可能要好几个 tick 也就是经过好几个流水线阶段才能完整执行完。
内存也不是总线上的 CLK 的每个 edge(边缘)都会传输数据,因为内存有一个叫做 CL 的时序参数,某个 CLK 的边缘发起了读数据请求,但是后续多个 CLK 的边缘时间都是处于等待状态,只有等待 n 个 tick 后数据才会送到内存总线(DRAM 的 DATA 引脚)上,这里的 n 个周期就是内存的 CL 参数,也叫 CAS Latency, 列地址选择器延迟,它表明从选通一个列地址,到这个列地址上的数据真正送到 DATA 引脚之间需要等待多少个 CLK。所以这里就能看出实际上超内存频率和超时序对内存速度本身的影响都是微乎其微的,毕竟把频率提高了,那么 cl 延迟就得调高,把 cl 延迟降低了,那么频率也得跟着降低.因为一个 DRAM 颗粒的 IO 延迟是一个物理常数(类似于 RC 电路中的 ao τ 也就是时间常数),你无论怎么精挑细选出的频率和内存时序都只是在无限逼近这个时间常数而已,而且这个时间常数其实在 DRAM 颗粒的 datasheet 上是可以查出来的,它在最大最小温度下会分别有各自的 max 和 min 值。
例如上图是 ISSI 的一片 SDRAM 内存颗粒(板载在 Terasic DE2-115 FPGA开发板),可以看到这里 AC ELECTRICAL CHARACTERISTICS 表格中标明了内存各个操作时序的最长和最短时间间隔,单位是 ns 纳秒。
CPU 因为是 SRAM,并且 SRAM 本身的容量很小,所以行列选择的寻址速度很快(行列变多了,那么行列地址线就会变长,这上面的电场建立时间就会变长,这是很容易理解的道理),并且没有DRAM 那种内部电容需要定时 refresh 操作,所以读写时不会因为遇到需要 refresh 而要等待更久时间拿到数据,这才是 CPU 缓存为什么比内存块原因。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有