总线周期:存储器和I/O端口是挂接在总线上的,CPU对存储器和I/O接口的访问通过总线实现。把CPU通过总线对微处理器外部(存储器或I/O接口)进行一次访问所需时间称为一个总线周期。
存取周期:存储周期包含存取时间和恢复时间。指两次独立访问存储器操作之间的最小间隔。
存取时间指从启动一次存储器操作到完成该操作所经历的时间。
在我的理解里,对于上述两种周期,存取周期大于总线周期,因为总线传输周期是将数据传输cpu或者将cpu的数据传到存储器中,而存取周期除了一个操作还要进行其他操作,比如恢复周期。
在上面的基础下,我们来看低位并行
低位并行是分别使用不同的存储体,可以将M0-M3看作是不同的存储体,它们能分别进行操作互不影响。而一个存取周期除了包含总线传输周期外还要进行其他的操作,如果只有一个存储体,假如要存取两个字,进行第二次存取之前必须要执行完第一次存取的操作,也就是总线传输周期+其他操作的时间。而低位并行就是将其他操作的时间利用起来相当于M0在执行存储周期的时候,执行完总线周期,将数据传完过后,后面一大半时间都是空闲的,这时候就可以利用其他存储体M1执行传输数据(总线传输周期),当M1传输数据完成过后,它的存取周期还没有完结,因为还有其他的操作要执行,这时候M0,M1都在执行其他操作,而M2和M3存储体是空闲的,这时候重复上面的操作,再执行M2的总线传输周期,M3类比。
换句话说,存取周期为100ms,总线传输周期为30ms,当一个存取操作执行时,它会执行30ms的总线传输周期来传递数据,其他70ms发呆(doge),100ms执行完整才会存取一个字。所以M0需要等70ms才能执行下一个存取操作,这时候还有其他空闲的存储体M1,所以70ms的前30ms就用M1来操作传输数据,然后M1也要等100-30=70ms才能执行下一个存取字,M0也要等70-30=40ms才能存储下一个字。这时还有空闲的存储体M2可以用来操作,依次类推
比如下面这个题目(蓝线是我自己理解的解法)
第一次发文,知识浅薄,有问题可以提醒我,觉得好的也可以点点赞辣。