zoukankan      html  css  js  c++  java
  • 时钟周期、机器周期、指令周期

    1 时钟周期

    例如51单片机,外部晶振为12MHz,则时钟周期为1/(12M),也就是(1/12)微秒。

    2 机器周期

    用C语言写的程序,会被转换成一条一条的指令,不同的指令执行的时间不同。

    而这个时间的最小衡量单位是机器周期。

    简单指令需要一个机器周期,复杂指令可能需要两个或两个以上的机器周期。

    对于51单片机,一个机器周期等于12个时钟周期。

    也就是一个时钟周期为1us。以前用_nop();进行1us延时就是这个道理。

    3 指令周期

    不同的指令,执行的时间是不同的,但基本的衡量单位是机器周期。

    4 STM32的时钟周期、机器周期与指令周期

    STM32时钟树如下图所示。

    从时钟树可以看出,HCLK、PCLK以及FCLK都是由SYSCLK分频或倍频得到的。

    STM32时钟树里缩略词说明如下图所示。

    缩略词 英文 中文
    SYSCLK System Clock 系统时钟
    HCLK

    High Performance Bus Clock

    高性能总线时钟
    PCLK Periphral Bus Clock 外围设备总线时钟
    FCLK Free Runing Clock 自由运行时钟

    如下图所示,内核(core)的时钟为72MHz。

    正点原子:“STM32有三级流水线,指令周期不定的,arm给出的是1.25MIPS/Mhz,一个平均执行速度。”

    “就是1Mhz的频率,每秒钟可以执行1.25M指令。72M,那么就是72*1.25。”

    MIPS(Million Instructions Per Second):每秒处理1百万条指令。

    5 参考

    51、430、stm32周期和执行一条语句需要多长时间的问题

    https://blog.csdn.net/helenie/article/details/52810046

    计算机组成原理:时钟周期、机器周期和指令周期

    https://blog.csdn.net/billbonaparte1/article/details/51297189

    STM32的一个指令周期是多少个时钟周期呀?

    http://www.openedv.com/posts/list/13937.htm

  • 相关阅读:
    Java通过stream将list转换成map
    Java 标记接口
    Java的LinkedList
    Java中的数组
    Java的异常
    初识lambda
    Combining a Collection of Predicates
    重载
    svm资料收集
    向量空间及其他相关数学结构
  • 原文地址:https://www.cnblogs.com/QQ2962269558/p/12844340.html
Copyright © 2011-2022 走看看