- 1、时钟周期也称为振荡周期(时钟周期=振荡周期,名称不同而已),定义为时钟频率的倒数。时钟周期是计算机中最基本的、最小的时间单位。在一个时钟周期内,CPU仅完成一个最基本的动作。
(但是当表述 时钟周期等于单片机晶振频率的倒数,如常见的外接12M晶振,那它的时钟周期=1/12M。上述表述适用于没有对晶振进行分频和倍频的单片机,因为51单片机外置12M的晶振,那么它的时钟周期就是1/12us。在51单片机中晶振频率没有分频就直接作为CPU频率使用,所以时钟周期 = 晶振周期 。)
- 2、晶振频率是晶体振荡器的固有频率,而时钟频率是以时间为准的振荡频率,一个时钟周期等于两个振荡周期,所以晶振频率等于2倍时钟频率。那么这两个频率之间有什么区别?
1、信号源不一样
时钟频率可以由晶振和PLL电路对晶振频率进行倍频或者分频来产生,而晶振频率是固有的频率不能改变。
2、用途不一样
晶振振荡频率被认为是晶体振荡器的一个恒定参考频率源,一直被用作主板上的参考频率源。
如CPU、AGP插槽、PCI插槽、硬盘接口、USB端口和PS/2端口在通信速度上有很大的差异,因此需要提供不同的时钟频率,时钟频率服务于不同的电路。
#####################################################################################################################################################################################################
指令周期 : 取出并执行一条指令的时间。
机器周期 : 又称CPU周期,CPU访问一次内存所花的时间较长,因此用从内存读取一条指令字的最短时间来定义。
时钟周期 :又叫节拍脉冲,这是CPU最小的时间单位,CPU的每一次活动至少需要一个时钟周期。时钟周期的倒数是时钟频率,一般以此作为CPU性能的评价指标之一。
CPU的最小生命单位就是时钟周期,而一个机器周期包括若干个时钟周期,至于指令周期,则包含了若干个机器周期。如果按粒度排序,指令周期>机器周期>时钟周期。
51单片机外置12M的晶振,那么它的时钟周期就是1/12us。在51单片机中晶振频率没有分频就直接作为CPU频率使用,所以时钟周期 = 晶振周期 。
在51单片机中把一个时钟周期定义为一个节拍(用P表示),二个节拍定义为一个状态周期(用S表示)。即两个时钟周期=状态周期。
取指令、存储器读、存储器写等,这每一项工作称为一个基本操作。完成一个基本操作所需要的时间称为机器周期。51单片机的一个机器周期同6个S周期(状态周期)组成,即51单片机的机器周期由6个状态周期组成,也就是
机器周期=6个状态周期=12个时钟周期=1us。
当然,现在的51单片机速度可以更快,有些一个机器周期等于6个时钟周期(6T单片机),有些一个机器周期就等于1个时钟周期(1T单片机)。
在MSP430单片机中,一个时钟周期 = MCLK晶振的倒数。如果MCLK是8M,则一个时钟周期为1/8us;
一个机器周期 = 一个时钟周期,即430每个动作都能完成一个基本操作;
一个指令周期 = 1~6个机器周期,具体根据具体指令而定。
STM32有三级流水线,指令周期不定的,arm给出的是1.25MIPS/Mhz,一个平均执行速度。 |
一般STM32系统的外置晶振为8MHz,主时钟频率为晶振时钟的9倍频,即72MHz的时钟周期。那么STM32的指令是72 * 1.25 MIPS = 90MIPS,平均指令周期是1/90M。
MIPS(Million Instructions Per Second):单字长定点指令平均执行速度 Million Instructions Per Second的缩写,每秒处理的百万级的机器语言指令数。这是衡量CPU速度的一个指标。
MIPS/MHz 表示 CPU 在每 MHz 的运行速度下可以执行多少个 MIPS ,如 10MIPS/MHz ,表示如果 CPU 运行在 1MHz 的频率下,每秒可执行一千万条指令。
MIPS = 指令数/(执行时间 * 10^6) = 指令数 / (指令数 * CPI / 时钟频率 * 10^6) = 时钟频率 / (CPI * 10^6)
流水线操作的本质是利用指令运行的不同阶段使用的CPU硬件互不相同,并发的运行多条指令,从而提高时间效率。
===========================================================================================================================================================
时钟源一般分为2大类
1.内部时钟:系统启动默认时钟
2.外部时钟:精度稳定性更高
内外部又分为高速与低速
高速时钟 芯片的主时钟
低速时钟 实时时钟及看门狗
时钟运行机制
芯片启动后默认使用内部高速时钟作为启动时钟源,启动后再选择使用外部时钟,外部时钟首先经过倍频放大再通过内部开关确认系统主时钟频率再分频给时钟线上其他外设
外设基本有3类
1.主频时钟:内核时钟/存储器/DMA
2.副频时钟:与主频同步且独立,可作为主频休眠时的时钟依据,例如休眠唤醒中断等
3.外设时钟:通信驱动器/TIM/ADC/GPIO
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
STM32时钟源
◆ HSI是高速内部时钟,RC振荡器,频率为8MHz。
◆ HSE是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,比较常用的8MHz 12MHz 25MHz。
◆ LSI是低速内部时钟,RC振荡器,频率为40kHz。
◆ LSE是低速外部时钟,接频率为32.768kHz的石英晶体。
在STM32中每个外设都有其单独的时钟,在使用某个外设之前必须打开该外设的时钟 ,为什么要这么麻烦来设置每一个外设的时钟而不是将所有外设的时钟统一打开?因为STM32的外设繁多,外设的运作所需要的最佳时钟各不相同,如果所有时钟同时运行会给MCU带来极大的负载,所以STM32为了实现低功耗,而设计的功能完善构成复杂的时钟系统,称之时钟树。使外设功能的时钟可自配置。
标签:周期,晶振,单片机,指令,频率,CPU,时钟 From: https://www.cnblogs.com/blj28/p/17103477.html