单片机指令周期的计算

 我来答
L吉吉学长
高粉答主

2019-06-21 · 专注互联网线上教育、百科普及
L吉吉学长
采纳数:1021 获赞数:234267

向TA提问 私信TA
展开全部

计算方法:PIC单片机的每四个时钟周期为一个内部指令周期,例如:8MHz的晶振,则内部指令周期为1/(8/4)= 0.5 uS

实例一:35us, 8MHz的晶振, 8位定时器, 分频比1/2 , 初值 E4

实例二:156.25us , 32768Hz的晶振, 8位定时器, 分频比1/32 , 初值 FC

计算方法一: 35 = =(256-初值)*分频*4/晶振 + 14/分频 =(256-初值)+14/2

计算方法二:0.015625 =(256-初值)*分频*4/晶振 = (256-初值)*32*4/32768

特别注意:分频比1-8 需要加上一个14/分频

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

扩展资料:

指令周期是不确定的,因为和该条指令所包含的机器周期有关。一个指令周期=1个(或2个或3个或4个)机器周期,像乘法或除法就含有4个机器周期,单指令就只含有1个机器周期。

对于大多说的51单片机来说,1个机器周期=12个时钟周期(或振荡周期)也有部分单片机时钟周期和振荡周期不相等,例如,1个时钟周期=2个振荡周期。该定义指的是执行一条指令所需要的时间,通常一个指令周期会由若干个机器周期组成。指令不同,所需的机器周期数也不同。

对于一些简单的的单字节指令,在取指令周期中,指令取出到指令寄存器后,立即译码执行,不再需要其它的机器周期。对于一些比较复杂的指令,例如转移指令、乘法指令,则需要两个或者两个以上的机器周期。通常含一个机器周期的指令称为单周期指令,包含两个机器周期的指令称为双周期指令。

参考资料来源:百度百科—计数周期

参考资料来源:百度百科—单片机系统指令

帐号已注销
高粉答主

2019-08-03 · 关注我不会让你失望
知道小有建树答主
回答量:1346
采纳率:100%
帮助的人:37.5万
展开全部

计算方法:PIC单片机的每四个时钟周期为一个内部指令周期,例如:8MHz的晶振,则内部指令周期为1/(8/4)= 0.5 uS

实例一:35us, 8MHz的晶振, 8位定时器, 分频比1/2 , 初值 E4

实例二:156.25us , 32768Hz的晶振, 8位定时器, 分频比1/32 , 初值 FC

计算方法一: 35 = =(256-初值)*分频*4/晶振 + 14/分频 =(256-初值)+14/2

计算方法二:0.015625 =(256-初值)*分频*4/晶振 = (256-初值)*32*4/32768

特别注意:分频比1-8 需要加上一个14/分频

指令周期是指令周期执行某一条指令所消耗的时间,它等于机器周期的整数倍。传统的80C51单片机的指令周期大多数是单周期指令,也就是指令周期=机器周期,少部分是双周期指令。

扩展资料


在MCS-51系统中,有单周期指令,双周期指令。四周期指令只有乘,除两条指令。指令的运算速度和它的机器周期直接相关,机器周期数较小则执行速度快。

在编程时要注意选用具有同样功能而机器周期数小的指令。每一条指令的执行都可以包括取指和执行两个阶段。在取指阶段,CPU从内部或者外部ROM中取出指令操作码及操作数,然后再执行这条指令。

在8051指令系统中,根据各种操作的繁简程度,其指令可由单字节,双字节和三字节组成。从机器执行指令的速度看,单字节和双字节指令都可能是单周期或双周期,

而三字节指令都是双周期,只有乘,除指令占四个周期,一条指令的字节数表征这条指令在存储器中所占空间大小,而周期数表征运行这条指令所花时间长短,即运行速度。

参考资料来源:百度百科—计数周期

参考资料来源:百度百科—单片机系统指令

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xinzhulang008
推荐于2017-09-27
知道答主
回答量:36
采纳率:0%
帮助的人:8.7万
展开全部
1、时钟周期

时钟周期T又称为状态周期,是时序中最小的时间单位。具体计算就是1/fosc。也就是说如果晶振为1MHz,那么时钟周期就为1us;6MHz的话,就是1/6us。

2、机器周期

机器周期定义为实现特定功能所需的时间,或完成某一规定操作所需的时间,通常由若干时钟周期构成。具体计算为:时钟周期 X cycles。如果单片机是12周期的话,那么机器周期就是T×12。假设晶振频率为12M,单片机为12周期的话,那么机器周期就是1us。

3、指令周期

置零周期是时序中的最大时间单位,定义为执行一条指令所需的时间。通常,包含一个机器周期的指令成为单周期指令,比如CLR,MOV等等。包含两个机器周期的指令称为双周期指令。另外还有4周期指令,比如乘法和除法指令。

而我现在使用的晶振为22.1184MHz,单片机为4时钟周期,所以机器周期为1/5.5296 us。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2015-12-29
展开全部
该定义指的是执行一条指令所需要的时间,通常一个指令周期会由若干个机器周期组成。指令不同,所需的机器周期数也不同。

对于一些简单的的单字节指令,在取指令周期中,指令取出到指令寄存器后,立即译码执行,不再需要其它的机器周期。对于一些比较复杂的指令,例如转移指令、乘法指令,则需要两个或者两个以上的机器周期。通常含一个机器周期的指令称为单周期指令,包含两个机器周期的指令称为双周期指令。
参考资料来源:吴鉴鹰吧
贡献文档:百度文库《吴鉴鹰单片机项目实战精讲》
参考实例:吴鉴鹰单片机开发板
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gongwan33
2011-06-08 · TA获得超过149个赞
知道小有建树答主
回答量:180
采纳率:100%
帮助的人:87.5万
展开全部
pdf上明明白的清清楚楚地都有标注滴亲
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式