首页 理论教育单片机MCS-51的时序及时钟电路

单片机MCS-51的时序及时钟电路

【摘要】:MCS-51的时序定时单位共有4个,从小到大依次是节拍、状态、机器周期和指令周期。图2-10外部方式时钟电路图由图2-11可知,ALE引脚上出现的信号是周期性的,在每个机器周期内出现两次高电平。单周期指令的执行始于S1P2,这时操作码被锁存到指令寄存器内。图2-11给出了单字节双周期指令的时序,两个机器周期内进行4次读操作码操作。图2-11MCS-51的取指/执行时序图

单片机总是按照一定的时钟节拍与时序工作。时序是指CPU在执行指令过程中,CPU的控制器所发出的一系列特定的控制信号在时间上的相互关系。时序是用定时单位来说明的。

MCS-51的时序定时单位共有4个,从小到大依次是节拍、状态、机器周期和指令周期。

1.节拍与状态

把振荡脉冲的周期定义为节拍(用P表示)。振荡脉冲经过二分频后,就是单片机的时钟信号的周期,定义为状态(用S表示)。这样,一个状态就包含两个节拍,其前半周期对应的节拍称为节拍1(P1),后半周期对应的节拍称节拍2(P2)。

2.机器周期

MCS-51单片机采用同步控制方式,因此它有固定的机器周期。一个机器周期的宽度为6个状态,并依次表示为S1~S6。由于一个状态又包括两个节拍,因此一个机器周期总共有12个节拍,分别记作S1P1,S1P2,…,S6P2。由于一个机器周期共有12个振荡脉冲周期,因此机器周期就是振荡脉冲的十二分频。

当振荡脉冲频率为12 MHz时,一个机器周期为1μs;当振荡脉冲频率为6 MHz时,一个机器周期为2μs。

3.指令周期

执行一条指令所需要的时间称为指令周期。不同的指令所需要的机器周期数也不相同,通常分为包含一个机器周期的单周期指令,包含两个机器周期的双周期指令和包含4个机器周期的四机器周期指令。四周期指令只有乘法和除法两条指令,其余均为单周期和双周期指令。指令的运算速度与指令所包含的机器周期有关,机器周期数越少的指令执行速度越快。(www.chuimin.cn)

单片机执行任何一条指令时都可以分为取指令阶段和执行指令阶段。MCS-51的取指/执行时序如图2-11所示。

图2-10 外部方式时钟电路图

由图2-11可知,ALE引脚上出现的信号是周期性的,在每个机器周期内出现两次高电平。第一次出现在S1P2和S2P1期间,第二次出现在S4P2和S5P1期间。ALE信号每出现一次,CPU就进行一次取指操作,但由于不同指令的字节数和机器周期数不同,因此取指令操作也随指令不同而有小的差异。

按照指令字节数和机器周期数,8051的111条指令可分为6类,分别是单字节单周期指令、单字节双周期指令、单字节四周期指令、双字节单周期指令、双字节双周期指令和三字节双周期指令。

图2-11(a)(b)分别给出了单字节单周期和双字节单周期指令的时序。单周期指令的执行始于S1P2,这时操作码被锁存到指令寄存器内。若是双字节,则在同一机器周期的S4读第二字节。若是单字节指令,则在S4仍有读操作,但被读入的字节无效,且程序计数器PC并不增量。图2-11(c)给出了单字节双周期指令的时序,两个机器周期内进行4次读操作码操作。因为是单字节指令,所以后三次读操作都是无效的。

图2-11 MCS-51的取指/执行时序图