指令周期,机器周期,时钟周期与存储周期的关系

指令周期,机器周期,时钟周期与存储周期的关系如上 不是很理解存储周期 看的书里说是存储两次独立的存储操作所需的最小间隔时间,这里
1.这个周期大小是固定的吗,一次存储的数据量是固定的吗
2.它和各类机器周期的关系是什么,谁包括谁

首先周期的单位是时间 s ms ns,倒数是频率。针对上图,说明几点:

1:本图以 MIPS 汇编为例。

2:一个机器周期具体是几个时钟周期,要看CPU流水线的设计,但至少是一个,时钟周期是最小的单位,时钟周期的倒数为 CPU 的频率,比如 3GHz,意思就是 3*10^9 个时钟周期 / s。

3:一条指令一般=一条汇编,但在CPU维度上,指令仍然不是最小的执行单位(x86中还有微指令),如上图,一条加法指令需要5个流水线指令:取指,译码,执行ALU,访存,回写寄存器。虽然不一定每个环节都用到,但为了实现流水线作业,所以都得执行。

4:同样为了实现流水线方便,每条流水线指令(取指、译码...) 会在一个机器周期内完成。且在单周期流水线的设计中机器周期长度都都相等,一般会让机器周期=存储周期 (时间长度上相等,概念不一样)原因是流水线指令中,访存指令(读内存或者写内存)最耗时。

5:存储周期的简单解释,两次内存的读或者写之间的最短时间间隔,之所以这样定义,是因为内存(一般为DRAM) 的读操作,属于破坏性读出,读完每个存储单元,数据会暂时丢失,需要花时间刷新存储单元来恢复数据。所以可粗略的认为存储周期=读取时间+恢复时间。之所以粗略,是因为,读取数据的时间,还和总线传输时间有关。。。所以用两次访存的时间间隔定义,最为简单和精确。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-12-16

    周期:取决于"晶振频率",固定。但是因为工艺的关系,每个单元之间会有一定范围内的异同,"超频"就是这个道理,说到底还是"工艺";数据量:一次存取的最大二进制数据量肯定固定。因为引脚数目肯定是固定的。

    参考百度百科"机器周期":指令周期(Instruction Cycle):取出并执行一条指令的时间。总线周期(BUS Cycle):也就是一个访存储器或I/O端口操作所用的时间。时钟周期(Clock Cycle):处理操作的最基本单位,晶振频率的倒数。指令周期、总线周期和时钟周期之间的关系:一个指令周期由若干个总线周期组成,而一个总线周期时间又包含有若干个时钟周期。一个总线周期包含一个(只有取址周期)或多个机器周期。

本回答被网友采纳
相似回答