免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1176 | 回复: 0
打印 上一主题 下一主题

MCU 周期 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-21 08:43 |只看该作者 |倒序浏览
几个周期的概念
时间由长至短:
1)指令周期 (Instruction Cycle)
2)总线周期 (BUS Cycle) / 机器周期(Machine Cycle)
3)时钟周期 (Clock Cycle)

时钟周期:单片机时钟频率的倒数。e.g. 1MHZ 始终频率,时钟周期为 1 us。


8051单片机de周期
几个概念:节拍(P),状态周期(S),机器周期,指令周期,总线周期

晶振频率(crystal frequency): 外接晶振的频率。
时钟周期(clock cycle) : 1/晶振频率

8051单片机晶振频率范围:1.2MHZ ~ 12MHZ。常用晶振频率, 12MHZ,11.059 HMZ。11.059MHZ 这个奇怪的频率据说是主要为了便于设置串口通讯的波特率。

节拍:8051单片机将一个时钟周期定义为一个节拍(P)
状态周期:两个节拍定义为一个状态周期(S)
机器周期:6个状态为一个机器周期。1个机器周期 = 6个状态周期 = 12个时钟周期 = 12 秒/晶振频率

机器周期的细节:一般使用从内存中读取一个指令字所需的最短时间来计算。即,通过外部/内部总线进行一次数据传输从而完成一个或几个微操作所需的时间。

现在的8051单片机的机器周期不一定是12个时钟周期。请看:
【from http://en.wikipedia.org/wiki/Intel_MCS-51
The original 8051 core ran at 12 clock cycles per machine cycle, with most instructions executing in one or two machine cycles. .... Enhanced 8051 cores are now commonly used which run at six, four, two, or even one clock per machine cycle,...

指令周期:执行一条指令的时间。包含一个或者多个机器周期。单周期指令,双周期指令。


指令的执行时间
前提条件:
  • 单周期指令
  • 一个机器周期等于12个时钟周期
  • 晶振频率12MHz
单周期指令的执行时间 = 12 * 1/Fos = 12 * 1 /12000000 = 1/1000000 (s) = 1(μs,微妙)

Reference
MCS-51 WIKI: http://en.wikipedia.org/wiki/Intel_MCS-51
8051 Tutorial: http://www.8052.com/tuttimng.phtml
机器周期: http://wenku.baidu.com/view/b0414ca0284ac850ad024282.html

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP