指令周期、总线周期和时钟周期三者有啥关系

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了指令周期、总线周期和时钟周期三者有啥关系相关的知识,希望对你有一定的参考价值。

参考技术A

关系:若将机器周期定为单位1us,则指令周期为1~4us,时钟周期为1/6us,总线周期为2/3us(一个总线周期一般包含4个时钟周期)。

指令周期:是指执行一条指令所占用的全部时间,一个指令周期通常含1~4个机器周期。

总线周期:通常把CPU通过总线对微处理器外部(存贮器或I/O接口)进行一次访问所需时间称为一个总线周期。

时钟周期:又称状态周期,是震荡周期的两倍,每个时钟的前半周期完成算数逻辑操作,在后半周期,内部寄存器与寄存器间的传输一般在此状态发生。

扩展资料:

概念辨析

机器周期和总线周期 并无明确的相互包含的关系。机器周期指的是完成一个基本操作的时间,这个基本操作有时可能包含总线读写,因而包含总线周期,但是有时可能与总线读写无关。

指令周期:是CPU的关键指标 ,指取出并执行一条指令的时间。一般以机器周期为单位,分单指令执行周期、双指令执行周期等。处理器的大部分指令(ARM、DSP)均采用单指令执行周期。

机器周期:完成一个基本操作的时间单元,如取指周期、取数周期。

时钟周期:CPU的晶振频率的倒数的。(fantaxy:晶振一次需要的时间)

一个机器周期一般是一条指令花费的时间,也有些是2个机器周期的指令,DJNZ,是双周期指令。

周期:就是时间,完成一次任务的时间。

参考资料来源:百度百科--周期

参考资料来源:百度百科--机器周期

单片机指令周期机器周期状态周期时钟周期

单片机的系统指令周期根据不同的内核架构各有区别。

8051系列单片机采用的是同步式的顺序逻辑系统,整个系统的工作完全是依赖系统内部的时脉信号。它的指令周期、机器周期等也是根据时钟脉冲信号来确定。下面说明机器周期、指令周期等的关系。

时钟周期:又叫时钟振荡周期,指晶振振荡产生的脉冲,一个脉冲表示一个时钟周期。

状态周期:在8051单片机中把一个时钟周期定义为一个节拍(用P表示),二个节拍定义为一个状态周期(用S表示)。一个状态周期等于两个时钟周期。

机器周期:一般也叫CPU周期,表示从内存读取一条指令字的最短时间,它是指令周期的最小单位。它等于单指令的周期长度。一个机器周期等于6个状态周期。

指令周期:一条指令包括1个或多个机器周期。所有的C语言代码最后都会编译成汇编代码来执行,而执行一条汇编指令需要的机器周期就叫做指令周期。

不用的指令的时钟周期不一样,同意8051内核,同一指令的时钟周期也不一样,由下图就可以知道,MOV指令将寄存器值放入累加器需要一个机器周期,MOV指令将直接地址中的值放入累加器需要两个周期;同一指令,8051和90系列单片机的指令周期也不同,8051系列执行单指令需要12个时钟周期,90系列执行单指令需要6个周期,他们都是需要一个机器周期,但是90系列一个机器周期只需要6个时钟周期。

 我们常用的NOP指令就是一个单指令,需要一个机器周期,8051需要晶振产生12个脉冲。

 

8051百度百科:8051是一种8位元的单芯片微控制器,属于MCS-51单芯片的一种,由英特尔公司于1981年制造。INTEL公司将MCS51的核心技术授权给了很多其它公司,所以有很多公司在做以8051为核心的单片机,如Atmel飞利浦、深联华等公司,相继开发了功能更多、更强大的兼容产品。

 

CORTEX-M0 M3 M4等,采用的是ARMv6-M、ARMv7-M、ARMv8-M Thumb指令集,采用的是三级流水线工艺,M3具有分支预测功能,可以预取分支目标地址的指令,使分支延迟减少到一个时钟周期。

CORTEX-M系列的指令周期是不确定的,一方面MCU从Flash取指是有延时的,另一方面Cortex的指令集不是固定周期的,特别从M3加入分支预测后,分支指令在Cortex-M不同型号上的结果都不相同。

 

完。

 

以上是关于指令周期、总线周期和时钟周期三者有啥关系的主要内容,如果未能解决你的问题,请参考以下文章

简述时钟周期、机器周期、指令周期的概念及三者之间的关系

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

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

时钟周期,机器周期,指令周期,总线周期

VS2010中 生成、生成解决方案、开始执行(不调试),这三个是啥意思,三者之间有啥联系?(C#语言)

试述指令周期 CPU周期和时钟周期之间的关系?