更新时间:2023-04-02 15:02
机器周期也称为CPU周期。在计算机中,为了便于管理,常把一条指令的执行过程划分为若干个阶段(如取指、译码、执行等),每一阶段完成一个基本操作。完成一个基本操作所需要的时间称为机器周期。一般情况下,一个机器周期由若干个时钟周期组成。
时序是用定时单位来说明的。MCS-51的时序定时单位共有4个,从小到大依次是:节拍、状态、机器周期和指令周期。下面分别加以说明。
节拍与状态:把振荡脉冲的周期定义为节拍(用p表示)。振荡脉冲经过二分频后定义为状态。一个状态就包含两个节拍。
机器周期:MCS-51采用定时控制方式,有固定的机器周期,规定一个机器周期的宽度为6个状态,并依次表示为S1-S6。由于一个状态包括两个节拍,因此一个机器周期总共有12个节拍,分别记作S1P1、S1P2、……、S6P2。因此一个机器周期就由12个振荡脉冲周期组成。
显然,当振荡脉冲频率为12MHz时,一个机器周期为1μs,当振荡脉冲频率为6MHz时,一个机器周期为2μs。
指令周期:指令周期是最大的时序定时单位,执行一条指令所需要的时间称为指令周期。MCS-51的指令周期根据指令的不同,可分别包含有一、二、四个机器周期。
CPU每取出一条指令并执行这条指令,都要完成一系列的操作,这一系列操作所需要的时间通常叫做一个指令周期。换言之指令周期是取出一条指令并执行这条指令的时间。由于各条指令的操作功能不同,因此各种指令的指令周期是不尽相同的。例如一条加法指令的指令周期同一条乘法指令的指令周期是不相同的。
指令周期常常用若干个CPU周期数来表示,CPU周期也称为机器周期。由于CPU内部的操作速度快,而CPU访问一次内存所花的时间较长,通常用内存中读取一个指令字的最短时间来规定CPU周期。这就是说,一条指令的取出阶段(通常称为取指)需要一个CPU周期时间。而一个CPU周期时间又包含有若干个时钟周期(通常称为节拍脉冲或T周期,它是处理操作的最基本单位)。这些时钟周期的总和,决定了一个CPU周期的时间宽度。由此可知,取出和执行任何一条指令所需的最短时间为两个CPU周期。对于复杂一些的指令,则需要更多的CPU周期。
1、微处理器是在时钟信号CLK控制下按节拍工作的。8086/8088系统的时钟频率为4.77MHz,每个时钟周期约为200ns。
2、由于存贮器和I/O端口是挂接在总线上的,CPU对存贮器和I/O接口的访问,是通过总线实现的。我们通常把CPU通过总线对微处理器外部(存储器或I/O接口)进行一次访问所需时间,称为一个总线周期。
时钟周期T又称为振荡周期,由单片机片内振荡电路OSC产生,常定义为时钟脉冲频率的倒数,是时序中最小的时间单位。例如,若某单片机时钟频率为1MHz,则它的时钟周期T应为1μs。由于时钟脉冲是计算机的基本工作脉冲,它控制着计算机的工作节奏,使计算机的每一步工作都统一到它的步调上来。显然,对同一种机型的计算机,时钟频率越高,计算机的工作速度就越快。但是,由于不同的计算机硬件电路和器件的不完全相同,所以它们需要的时钟周期频率范围也不一定相同。
1、指令周期由若干个机器周期组成,而机器周期又包含若干个时钟周期,基本总线周期由4个时钟周期组成。
2、机器周期和总线周期的关系:机器周期指的是完成一个基本操作的时间,基本操作有时可能包含总线读/写,因而包含总线周期,但是有时可能与总线读/写无关,所以,并无明确的相互包含关系。