浅谈高速缓冲存储器

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

浅谈高速缓冲存储器

缓冲存储器用在两个工作速度不同的硬件之间,在交换信息过程中起到缓冲作用。它能提高计算机系统的工作效益。下面主要谈谈两种高速缓冲存储器、它的作用及发展趋势。一、高速缓冲存储器Cache 我们通常都认为计算机的速度是由CPU决定的,但是还要有其它的硬件或软件来充分发挥它的速度。我们知道要使用的软件都要通过主存储器(内存)才能运行,而主存储器的运行速度和CPU之间有一个数量级的差距,这就限制了CPU速度潜力的发挥,为了弥补这个差距,人们在主存储器和CPU之间设置一种高速缓冲存储器Cache。高速缓冲存储器Cache的运行速度高于主存储器数倍,与CPU速度差不多,容量较小。高速缓冲存储器Cache中的数据是主存储器的副本,在程序运行中,当需要取指令或数据时,CPU先检查高速缓冲存储器Cache中是否有内容,若有就从Cache中取出,否则从主存储器取出,这样就充分发挥了CPU的潜力。在486的机种中经常配备高速缓冲存储器Cache,与主存储器相比,它的工作性质是不同的。简单地说,Cache是针对CPU作输入输出动作的,而主存储器是针对总线作输入输出动作的,因此Cache比主存储器的速度快。现在486机型一般配置有256K的Cache,Cache并不是越大越好,一般有256K就足够了。另外,如果机器本身没有配备硬件Cache,可以使用某些工具软件(如PC TOOLS,NORTON等)控制的Cache功能,也能达到同样的效果。二、磁盘高速缓冲存储器SMARTDRV SMARTDRV.EXE是DOS 6.2中的外部设备驱动程序。用此程序可启动或设置磁盘高速缓冲存储器。与

Cache不同,Cache是充分发挥了CPU的速度,而SMAR TDRV是加快了磁盘的读写速度。在实际应用中,SMAR TDRV.EXT高速缓存驱动程序将记住每次应用程序使用磁盘的磁盘扇区数据,不用再访问磁盘驱动器,而是访问内存中已包含这些数据的区域。磁盘高速缓冲存储器SMARTDRV速度比磁盘快得多,但它也使用了一定数量的内存用于存放高速缓存驱动程序和高速缓冲存储器本身。为减少磁盘高速缓存占用内存的数量,磁盘高速缓冲存储器SMARTDRV是建立在扩展内存中的。当使用磁盘高速缓存时,SMARTDRV可以在系统提示符下、AUTOEX-EC.BAT或CONFIG.SYS文件中装入。

读取命中率:CPU在Cache中找到有用的数据被称为命中,当Cache中没有CPU所需的数据时(这时称为未命中),CPU才访问内存。从理论上讲,在一颗拥有2级Cache的CPU中,读取L1Cache 的命中率为80%。也就是说CPU从L1Cache中找到的有用数据占数据总量的80%,剩下的20%从L2Cache读取。由于不能准确预测将要执行的数据,读取L2的命中率也在80%左右(从L2读到有用的数据占总数据的16%)。那么还有的数据就不得不从内存调用,但这已经是一个相当小的比例了。在一些高端领域的CPU(像Intel的Itanium)中,我们常听到L3Cache,它是为读取L2Cache后未命中的数据设计的—种Cache,在拥有L3Cache的CPU中,只有约5%的数据需要从内存中调用,这进一步提高了CPU的效率。

为了保证CPU访问时有较高的命中率,Cache中的内容应该按一定的算法替换。一种较常用的算法是“最近最少使用算法”(LRU算

法),它是将最近一段时间内最少被访问过的行淘汰出局。因此需要为每行设置一个计数器,LRU算法是把命中行的计数器清零,其他各行计数器加1。当需要替换时淘汰行计数器计数值最大的数据行出局。这是一种高效、科学的算法,其计数器清零过程可以把一些频繁调用后再不需要的数据淘汰出Cache,提高Cache的利用率。

高速缓冲存储器的技术发展:总之,在传输速度有较大差异的设备间都可以利用高速缓冲存储器作为匹配来调节差距,或者说是这些设备的传输通道。在显示系统、硬盘和光驱,以及网络通讯中,都需要使用Cache技术。但Cache均由静态RAM组成,结构复杂,成本不菲,使用现有工艺在有限的面积内不可能做得很大,不过,这也正是技术前进的源动力,有需要才有进步!

相关文档
最新文档