谈谈“零”等待

Author: Date: 1992-05-15

        所谓“零等待”是指CPU的速度与主存的存取速度匹配,CPU不需插入等待周期即可获得需要的数据。由于内存与CPU交往最为频繁,是系统性能主要的“瓶颈”。因此,“零等待”问题对机器性能有很大影响。
        由6502CPU组成的苹果Ⅱ,由Z80组成的单片机,由8088组成的PC/XT,它们所需的“零等待”存取时间分别为500ns、200ns、450ns,当时的动态RAM(DRAM)芯片完全能满足这样要求。然而随着时代的发展,微处理器和DRAM之间的差距越来越大,今天价格适中的DRAM,存取时间为80ns,而80386/33所要求的零等待存取时间为30ns。怎么才能填补这个鸿沟呢?合量的解决办法 是采用高速缓存(Cache)技术。
        从上面的叙述中,也引出了一个购买高档微机时必须注意的一个问题。那就是必须考虑主机时钟频率(主频)与DRAM芯片的读写时间之间的匹配问题。并不是主频越高,机器速度就越快。如CPU主频为25MHz,DRAM用80ns芯片,若不加高速缓存,则在一定时钟周期内,数据来不及从内存读出,CPU必须等待一段时间,时钟电路则自动插入一个时间周期,就叫“1”等待,插入两个就叫“2”等待。有人估算过,“1”等待比“0”等待降低效率20%,“2”等待比“1”等待降低20%的效率。因此,主频在20MHz上的高档微机,如果没有高速缓存,运行效率就很低。