谈谈“零”等待
由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上的高档微机,如果没有高速缓存,运行效率就很低。