介绍处理器高速缓存的有关知识

2019-2-18 14:45:00
  • 80486以及更高档微处理器的一个显著特点是处理器芯片内集成了SRAM作为Cache,由于这些Cache装在芯片内,因此称为片内Cache。486芯片内Cache的容量通常为8K。

所谓高速缓存通常指的是Level2高速缓存,或外部高速缓存。L2高速缓存一直都属于 速度极快而价格也相当昂贵的一类内存,称为SRAM(静态RAM),用来存放那些被CPU频繁使 用的数据,以便使CPU不必依赖于速度较慢的DRAM。 最简单形式的SRAM采用的是异步设计,即CPU将地址发送给高速缓存,由缓存查找这个地址,然后返回数据。每次访问的开始都需要额外消耗一个时钟周期用于查找特征位。这样,异步高速缓存在66MHz总线上所能达到的最快响应时间为3-2-2-2,而通常只能达到4-2-2-2。同步高速缓存用来缓存传送来的地址,以便把按地址进行查找的过程分配到两个或更多个时钟周期上完成。SRAM在第一个时钟周期内将被要求的地址存放到一个寄存器中。在第二个时钟周期内,SRAM把数据传送给CPU。由于地址已被保存在一个寄存器中,所以接下来同步SRAM就可以在CPU读取前一次请求的数据同时接收下一个数据地址。这样同步SRAM可以不必另花时间来接收和译码来自芯片集的附加地址,就“喷出”连续的数据元素。优化 的响应时间在66MHz总线上可以减小为2-1-1-1。 另一种类型的同步SRAM称为流水线突发式(pipelined burst)。流水线实际上是增加了一个用来缓存从内存地址读取的数据的输出级,以便能够快速地访问从内存中读取的连续数据,而省去查找内存阵列来获取下一数据元素过程中的延迟。流水线对于顺序访问模式,如高速缓存的行填充(linefill)最为高效。

什么是ECC内存 ECC是Error Correction Coding或Error Cheching and_Correcting的缩写,它代表具有自动纠错功能的内存。目前的ECC存储器一般只能纠正一位二进制数的错误。由于实际上存储器出错的情况不会经常发生,所以一般的家用计算机不必采用ECC内存,还有不少控制电路芯片不能支持ECC内存,所以有不少主机是不宜安装ECC内存的,用户应注意对ECC内存不要盲从。

SDRAM能与EDO RAM混用吗 SDRAM是新一代的动态存储器,又称为同步动态存储器或同步DRAM。它可以与CPU总线使用同一个时钟,而EDO和FPM存储器则与CPU总线是异步的。目前SDRAM存储器的读写周期一般为5-1-1-1。相比之下,EDO内存器一般为6-2-2-2。也就是说,SDRAM的读写周期比EDO少4个,大约节省存储器读写时间28%,但实际上由于计算机内其它设备的制约,使用SDRAM的计算机大约可提高性能5~10%。 虽然有不少主机支持SDRAM与EDO内存混合安装方式,但是最好不要混用。原因是多数SDRAM只能在3.3V下工作,而EDO内存则多数在5V下工作。虽然主机板上对DIMM和SIMM分别供电,但它们的数据线总是要连在一起的,如果SIMM(72线内存)与DIMM(168线SDRAM)混用,尽管开始系统可以正常工作,但可能在使用一段时间后,会造成SDRAM的数据输入端被损坏。 当然,如果你的SDRAM是宽电压(3V~5V)工作的产品,就不会出现这种损坏情况。目前T1和SUMSUNG的某些SDRAM产品支持宽电压工作方式,可以与EDO内存混用。

高速缓存--Cache介绍Cache的分级随着CPU的速度的加快,它与动态存储器DRAM配合工作时往往需要插入等待状态,这样难以发挥出CPU的高速度,也难以提高整机的性能。如果采用静态存储器,虽可以解决该问题,但SRAM价格高。在同样容量下,SARM的价格是DRAM的4倍。而且SRAM体积大,集成 度低。为解决这个问题,在386DX以上的主板中采用了高速缓冲存储器--Cache技术。其基本思想是用少量的SRAM作为CPU与DRAM存储系统之间的缓冲区,即Cache系统。80486以及更高档微处理器的一个显著特点是处理器芯片内集成了SRAM作为Cache,由于这些Cache装在芯片内,因此称为片内Cache。486芯片内Cache的容量通常为8K。高档芯片 如Pentium为16KB,PowerPC可达32KB。Pentium微处理器进一步改进片内Cache,采用数据和双通道Cache技术,相对而言,片内Cache的容量不大,但是非常灵活、方便,极大地提高了微处理器的性能。片内Cache也称为一级Cache。由于486,586等高档处理器的时钟频率很高,一旦出现一级Cache未命中的情况,性能将明显恶化。在这种情况下采用的办法是在处理器芯片之外再加Cache,称为二级Cache。二级Cache实际上是CPU和主存之间的真正缓冲。由于系统板上的响应时间远低于CPU的速度,如果没有二级Cache就不可能达到486,586等高档处理器的理想速度。二级Cache的容量通常应比一级Cache大一个数量级以上。在系统设置中,常要求用户确定二级Cache是否安装及尺寸大小等。二级Cache的大小一般为128KB、256KB或512KB。在486以上档次的微机中,普遍采用256KB或512KB同步Cache。所谓同步是指Cache和CPU采用了相同的时钟周期,以相同的速度同步工作。相对于异步Cache,性能可提高30%_以上。

什么是CACHE存储器所谓Cache,即高速缓冲存储器,是位于CPU和主存储器DRAM(Dynamic RAM)之间的规模较小的但速度很高的存储器,通常由SRAM组成。SRAM(Static RAM)是静态存储器的英文缩写。由于SRAM采用了与制作CPU相同的半导体工艺,因此与动态存储器DRAM比较,SRAM的存取速度快,但体积较大,价格很高。由于动态RAM组成的主存储器的读写速度低于CPU的速度,而CPU每执行一条指令都要访问一次或多次主存,所以CPU总是要处于等待状态,严重地降低了系统的效率。采用Cache之后,在Cache中保存着主存储器内容的部分副本,CPU在读写数据时,首先访问Cache。由于Cache的速度与CPU相当,因此CPU就能在零等待状态下迅速地完成数据的读写。只有Cache中不含有CPU所需的数据时,CPU才去访问主存。CPU在访问Cache时找到所需的数据称为命中,否则称为未命中。因此,访问Cache的命中率则成了提高效率的关键。而提高命中率则取决于Cache存储器的映象方式和Cache内容替换的算法等一系列因素。