单片机的机器周期和时钟周期分别怎么算的,还请举例说明下?
单片机的机器周期=12秒/晶振频率,时钟周期=振荡周期,等于单片机晶振频率的倒数,如常见的外接12M晶振,那它的时钟周期=1/12M。
时钟周期以时间动作重复的最小周期来度量,度量单位采用时间单位。在单个时钟周期内(现代非嵌入式微处理器的这个时间一般都短于1纳秒),逻辑零状态与逻辑一状态来回切换。由于发热和电气规格的限制,周期里逻辑零状态的持续时间历来要长于逻辑一状态。
一般情况下,一个机器周期由若干个S周期(状态周期)组成。通常用内存中读取一个指令字的最短时间来规定CPU周期,(也就是 计算机通过内部或外部总线进行一次信息传输从而完成一个或几个微操作所需要的时间)),它一般由12个时钟周期(振荡周期)组成,也是由6个状态周期组成。
扩展资料
在一个时钟周期内,CPU仅完成一个最基本的动作。由于时钟脉冲是计算机的基本工作脉冲,它控制着计算机的工作节奏(使计算机的每一步都统一到它的步调上来)。显然,对同一种机型的计算机,时钟频率越高,计算机的工作速度就越快。
但是,由于不同的计算机硬件电路和器件的不完全相同,所以其所需要的时钟周频率范围也不一定相同。我们学习的 8051单片机的时钟范围是1.2MHz-12MHz。
一个机器周期包含六个状态周期(用S表示)。一个状态周期有两个节拍(用P1、P2表示)。8051系列单片机的一个机器周期同6 个S周期(状态周期)组成。也就是说一个机器周期=6个状态周期=12个振荡周期(即时钟周期)。
参考资料来源:百度百科-时钟周期
参考资料来源:百度百科-机器周期
手打不易,如有帮助请采纳,或点击右上角的满意,谢谢!!
不好意思,这个 时钟周期是1/6M=1/6us中,又是M,又是us ,具体该怎么理解它?还请不吝赐教,谢谢
6MHz就是6兆Hz,即6*10^6Hz,它的倒数就是时钟周期,即1/6*10^6=1/6 *10^-6秒=1/6us(us即微秒)。
如有帮助请采纳,或点击右上角的满意,谢谢!!
外部晶振为12Mhz , 振荡周期 = 时钟周期 = 12Mhz
机器周期为12个时钟周期,即1Mhz。
周期是时间的倒数,即一个机器周期1/1Mhz=1us
指令周期:因为51是复杂指令集,执行一条指令需要1~3个机器周期(根据指令不同而不同)
假如振荡频率是6MHz的话,时钟周期是1/6M=1/6us,这又是为什么,和你的又有何不同呢?
时钟周期是1/6Mhz
机器周期是(1/6Mhz)*12=2us