设计与开发

51单片机指令周期 51单片机指令周期,机器周期,时钟周期详解

小编 2024-10-06 设计与开发 23 0

51单片机指令周期,机器周期,时钟周期详解

51单片机有指令周期,机器周期,时钟周期的说法,看似相近,但是又都不太一样,很容易混淆。还是详细分析一下。

本文引用地址:http://www.eepw.com.cn/article/201609/310558.htm

时钟周期:单片机外接的晶振的振荡周期就是时钟周期,时钟周期=振荡周期。比方说,80C51单片机外接了一个11.0592M的晶体振荡器,那我们就说这个单片机系统的时钟周期是1/11.0592M,这里要注意11.0592M是频率,周期是频率的倒数。

机器周期:单片机执行指令所消耗的最小时间单位。我们都知道51单片机采用的CISC(复杂指令指令集),所以有很多条指令,并且各条指令执行的时间也可能不一样(有一样的哦),但是它们执行的时间必须是机器周期的整数倍,这就是机器周期的意义所在。8051系列单片机又在这个基础上进行细分,将一个机器周期划分为6个状态周期,也就是S1-S6,每个状态周期又由两个节拍组成,P1和P2,而P1=P2=时钟周期。这也就是经常说的8051系列单片机的的时钟频率是晶振频率的12分频,或者是1/12,就是这个意思。现在(截至2012)新的单片机已经能做到不分频了,就是机器周期=时钟周期。

指令周期:指令周期执行某一条指令所消耗的时间,它等于机器周期的整数倍。传统的80C51单片机的指令周期大多数是单周期指令,也就是指令周期=机器周期,少部分是双周期指令。现在(截至2012)新的单片机已经能做到不分频了,并且尽量单指令周期,就是指令周期=机器周期=时钟周期。

来看这张8051单片机外部数据,这里ALE和$PSEN$的变化频率已经小于一个机器周期,如果使用C语言模拟这个信号是没有办法做到的一一对应的,所以只能尽量和上面的时序相同,周期延长。

51单片机时钟与周期的关系

单片机机中,有时钟周期,机器周期,指令周期,初学者往往不能弄清楚他们之间的关系,这里我就简单介绍一下.

在说明之前我首先要明确几个概念,既什么是周期和频率,相信大多数人都知道他们的含义,周期就是物体循环一周的时间,频率就是1 秒钟内循环的次数.单片机是靠脉冲工作的,既一个脉冲单片机产生一个操作.下面言归正传.

时钟周期:时钟周期也称为振荡周期,定义为时钟脉冲的倒数(可以这样来理解,时钟周期就是单片机外接晶振的倒数,例如12M的晶振,它的时间周期就是1/12 us), 既产生一个脉冲的时间,是计算机中最基本的、最小的时间单位。

在一个时钟周期内,CPU仅完成一个最基本的动作。对于某种单片机,若采用了1MHZ的时钟频率,则时钟周期为1us;若采用4MHZ的时钟频率,则时钟周期为250ns。由于时钟脉冲是计算机的基本工作脉冲,它控制着计算机的工作节奏(使计算机的每一步都统一到它的步调上来)。显然,对同一种机型的计算机,时钟频率越高,计算机的工作速度就越快。但是,由于不同的计算机硬件电路和器件的不完全相同,所以其所需要的时钟周频率范围也不一定相同。我们学习的8051单片机的时钟范围是1.2MHz-12MHz。

机器周期:单片机工作时,是一条一条地从RoM中取指令,然后一步一步地执行为了便于管理,常把一条指令的执行过程划分为若干个阶段,每一阶段完成一项工作。例如,取指令、存储器读、存储器写等,这每一项工作称

为一个基本操作,完成一个基本操作所需要的时间称为机器周期既单片机访问一次存储器的时间,称之为一个机器周期,这是一个时间基准。—个机器周期包括12个时钟周期。如果一个单片机选择了12MHZ晶振,它的时钟周期是1/12us,也是一个晶振周期。它的一个机器周期是12×(1/12)us,也就是1us。机器周期不仅对于指令执行有着重要的意义,而且机器周期也是单片机定时器和计数器的时间基准。例如一个单片机选择了12MHZ晶振,那么当定时器的数值加1时,实际经过的时间就是1us,这就是单片机的定时原理。

指令周期是执行一条指令所需要的时间,一般由若干个机器周期组成。指令不同,所需的机器周期数也不同。对于一些简单的的单字节指令,在取指令周期中,指令取出到指令寄存器后,立即译码执行,不再需要其它的机器周期。对于一些比较复杂的指令,例如转移指令、乘法指令,则需要两个或者两个以上的机器周期。

通常含一个机器周期的指令称为单周期指令,包含两个机器周期的指令称为双周期指令。

简单地说,没有晶振,就没有时钟周期,没有时钟周期,就无法执行程序代码,单片机就无法工作。

相关问答

【什么是 单片机 的机器周期、震荡周期和 指令周期 ?他们之间是...

[最佳回答]■\x09(1)振荡周期:也称时钟周期,是指为单片机提供时钟信号的振荡源的周期,一般实验板上为11.0592MHZ,12MHZ和24MHZ用的也比较多.■\x09(2)状态周期...

Mcs 51单片机 时钟周期机器 周期指令周期 是如何分配的?

12个时钟周期,是1个机器周期;在单片机中,是以机器周期的个数,作为时间的计量单位。Mcs51单片机的111条指令,执行时,所花费的时间,称为指令周期。有64条...

【知道 单片机 的频率,要求时钟 周期 和机器 周期 是多少,怎么算啊...

[最佳回答]这得看是什么单片机了:对于精简指令集性能的单片机的工作频率(1/机器周期)=时钟频率(1/时钟周期).普通的51单片机来说:频率是1MHZ,时钟周期是1/12us...

51单片机 的四个时间概念?

一、时钟周期1.时钟周期也称为振荡周期,定义为时钟脉冲的倒数(可以这样来理解,时钟周期就是单片机外接晶振的倒数,例如12M的晶振,它的时间周期就是1/12...一...

为何 51单片机 一个机器 周期 有12个时钟 周期 这话什么意思 机器...

一个机器周期=12个时钟周期是生产时就确定的,原因就是因为51的执行速度相对较慢,MCU运行时是对外部时钟进行了12分频,这个没必要纠结,执行不够快那只能慢下来。...

51 系列 单片机 的最小时间单位?

MCS—51时序中最小的时间单位是机器周期。时序是用定时单位来描述的,MCS-51的时序单位有四个,它们分别是节拍、状态、机器周期和指令周期,接下来我们分别加...

51单片机 如何延迟到250纳秒?

对于那些老型号51单片机,无论如何也搞不出来250nS程序延迟,因为它们最快的指令也需要1微秒。现在的主流51单片机都提高了主频,并且采用了流水线结构,所以,...

51单片机 码速表说明?

51单片机码速表是一种常用的51单片机指令速查表,它包含了51单片机的大部分指令及其对应的操作码、机器码、指令周期、执行时间等信息。使用51单片机码速表可以...

单片机 定时器定时的时间肿么算?-ZOL问答

51单片机,根据晶振频率,计算指令周期,设置定时器的分频,然后设置定时器的工作方式TMOD,最后设置初值TH0TL0比如用的XHZ的晶振,stc的单片机有3种模式(X/12)x/...

单片机 定时的时间怎么改变?

定时器实质是计数器。当计数脉冲周期一定时,就有定时功能。雅帆用水桶给你打个比方吧!一、向上计定时数器举例当一个255毫升的烧杯,提前放入155毫升水后,...5...

猜你喜欢