历史上的今天
返回首页

历史上的今天

今天是:2025年03月07日(星期五)

正在发生

2019年03月07日 | 单片机时钟的解析

2019-03-07 来源:eefocus

时钟周期

       时钟周期也称为振荡周期,定义为时钟脉冲的倒数(时钟周期就是单片机外接晶振的倒数,例如12M的晶振,它的时钟周期就是1/12us),是计算机中的最基本的、最小的时间单位。


       在一个时钟周期内,CPU仅完成一个最基本的动作。时钟脉冲是计算机的基本工作脉冲,控制着计算机的工作节奏。时钟频率越高,工作速度就越快。


       8051单片机把一个时钟周期定义为一个节拍(用P表示),二个节拍定义为一个状态周期(用S表示)。


机器周期

       计算机中,常把一条指令的执行过程划分为若干个阶段,每一个阶段完成一项工作。每一项工作称为一个基本操作,完成一个基本操作所需要的时间称为机器周期。8051系列单片机的一个机器周期由6个S周期(状态周期)组成。 一个S周期=2个节拍(P),所以8051单片机的一个机器周期=6个状态周期=12个时钟周期。


       例如外接24M晶振的单片机,他的一个机器周期=12/24M 秒;


指令周期

    执行一条指令所需要的时间,一般由若干个机器周期组成。指令不同,所需的机器周期也不同。


CPU 周期信号、节拍周期信号、节拍脉冲信号三者之间的关系是什么?


      一小块石英晶体加电后产生压电反应,在固定频率振动,产生出电压按照固定周期变化的脉冲信号。这个高频率的信号通向分频器(frequency divider),转化为比较低频的信号。

 以上图为例,分频器分出来的信号有四个频率。题目中所说 CPU周期信号、节拍周期信号、节拍脉冲信号本质上都是时钟脉冲的不同分频,主要区别在于用途上。


     通常来说,CPU 周期信号最“慢”,它决定 CPU 所处的状态。CPU 执行一条指令的周期叫做指令周期(instruction cycle),指令周期可以划分为 fetch、decode、和 execute 三个部分,所以也叫 fetch-decode-execute cycle。假设上图与 QD 频率相同的信号有三个,QD1、QD2、QD3,它们分别依次处于高电位,那么就可以用它们来控制 CPU 处于 fetch、decode、还是 execute 状态,这就是 CPU 周期信号。


     节拍周期信号是控制信号,调整电路的功能。比如,现在 CPU 处于 fetch 状态,仍旧以上图为例,假设 QC 这个比 QD “快”的信号有 QC1、QC2、QC3……QCi 个,分别对应电路的不同功能(比如,应该将从内存中取来的数字作为指令解释,还是送给寄存器存起来),谁处于高电位,CPU 就能执行谁决定的功能。


      节拍脉冲信号则是触发信号,决定电路的实际工作起点。以上图的 QB 为例,假设 QD1 决定 CPU 处于 fetch 阶段,QC1 决定 CPU 的功能是去内存取一个数字,那么 QB 的上升沿会触发整个电路切实地执行这个功能。


      可以这样类比:


      某诊所周一二三门诊,周四五看复诊病人,周六日不办公


——对应三个 CPU 周期


      诊所星期一二三 8:00 开始门诊,12:00 午休,13:00 继续门诊,17:00 关门


——对应节拍周期


      某个病人星期二 9:00 去看了病


——对应脉冲信号


    (注意上面的说法极度简化,实际的实现要复杂很多,比如振动源不一定是石英,每个 CPU 周期未必等长,CPU 也并不是在某一时刻只能处于单独一种周期状态里(详见 pipelining),乃至周期层级也未必就是三层等等。)


推荐阅读

史海拾趣

Advanced Detector Corp公司的发展小趣事

随着全球市场的不断开放和经济的全球化,ADC开始将业务拓展至全球范围。公司在全球各地设立了分支机构,并建立了完善的销售和服务网络。通过全球化布局,ADC成功打开了新的市场,提升了品牌影响力,实现了业务的快速增长。

Dawning Precision Co Ltd公司的发展小趣事

在快速发展的过程中,Dawning意识到企业文化的重要性。公司注重培养员工的团队合作精神和创新能力,定期组织各种团建活动和文化交流活动。同时,Dawning还倡导“以人为本”的管理理念,关注员工的成长和发展,为员工提供良好的职业发展平台。这些举措的实施,使得Dawning的员工队伍更加团结、稳定和有活力,为公司的长远发展奠定了坚实的基础。

CTC [Compact Technology Corp.]公司的发展小趣事

作为一家有社会责任感的企业,CTC公司积极参与社会公益事业。公司不仅捐款支持教育、环保等公益事业,还利用自身的技术优势为社区提供技术支持和解决方案。这些行为使得CTC公司在社会中树立了良好的形象,赢得了公众的信任和尊重。同时,通过履行社会责任,CTC公司也提升了自身的品牌价值和市场竞争力。

请注意,以上故事是基于假设和虚构的,并非真实发生的事件。它们旨在展示一个电子行业中公司发展可能经历的一些典型情境和挑战,以及应对这些情境和挑战的可能策略。在现实中,每个公司的发展都有其独特性和复杂性,因此这些故事仅供参考,不能作为CTC公司或任何其他公司实际发展情况的依据。

Daito Communication Apparatus Co Ltd公司的发展小趣事

自1948年成立以来,Daito公司一直致力于电子元器件的研发与生产。在公司的早期阶段,他们意识到保险丝在电子设备中的重要性,并决定投入大量资源进行研发。经过数年的努力,Daito公司成功开发出了高精度报警保险丝,这一创新产品凭借其卓越的性能和可靠性,迅速在市场上获得了认可。

高精度报警保险丝的成功并没有让Daito公司停止创新的步伐。他们不断对保险丝的失效原因与寿命进行预测和分析,通过全面质量管理,使产品质量得到了显著的提高。同时,Daito公司还将各系列保险丝的额定值多层次化,以满足不同客户的需求,扩大了顾客的选择余地。

Connector City公司的发展小趣事

随着国内市场的饱和,Connector City公司开始寻求海外市场的发展机遇。公司制定了详细的国际化战略,积极开拓海外市场,加强与国外客户的合作与交流。同时,公司还注重本土化运营,根据不同国家和地区的市场需求和文化差异,灵活调整产品设计和营销策略。通过不断拓展海外市场,公司的销售业绩实现了快速增长。

Cembre SPA公司的发展小趣事

为了满足全球客户的需求,Cembre SPA制定了国际化战略,开始在全球范围内拓展业务。公司设立了多个海外分支机构,与当地的合作伙伴建立了紧密的合作关系。通过全球化的销售网络和本地化的服务支持,Cembre SPA的产品逐渐打入了国际市场,赢得了全球客户的信赖。

问答坊 | AI 解惑

自己写得一个DDS 效果不错!!

自己前段时间学习得时候写得一个DDS   希望大家喜欢!!!!!!!!…

查看全部问答>

大家一起来掏粪

建议大家一起来掏粪: 本论坛承蒙大家的厚爱,每天都有好多新帖。但是就出现了一些问题:一些很不错的帖子在大家的发帖狂潮中被淹么了。当一位新人来到论坛时,很少有耐心看第3页以后的帖子。 故而,建议大家一起来将好的文章顶起来。多注意注意 ...…

查看全部问答>

请教:X 开N次方在硬件上如何实现?

请教:X 开N次方在硬件上如何实现?…

查看全部问答>

1.5v干电池升压到3v boost DC-DC电路

应用背景:便携式设备使用1.5v干电池供电,需要升压到3-3.3V使用。 boost电路是从网上找的一个升压电路,把稳压二级管改成3v的。 想问几个问题:     1、仿真结果看:绿色线占空比很小,是不是会造成输出不稳    ...…

查看全部问答>

当我开辟一个大的数组到外部sram,lcd就不能正常显示了

我现在做图片解码显示,用的是ze的片子,我开辟了的一个大的数组在sram里,请放心这个数组确实在外部,我去过地址查看,0x6800xxx位置,现在的问题是,我如果把这个数组开辟的小一点,比如几百字节,lcd显示正常,开辟大来人比如几百k &n ...…

查看全部问答>

超再生接收IC-SCSR118

SCSR118是一款基于超再生原理的集成无线接收芯片。SCSR118内部集成了前置低噪放大器,超再生振荡器,熄灭信号发生器,包络检波解调器等电路。芯片工作在315MHz/433MHz的ISM(Industrial, Scientific and Medical)频段,采用OOK(On& ...…

查看全部问答>

你了解你手中的usb线和杜邦线吗?

    对于搞弱电的童鞋们,我们身边肯定有不止一根USB线,不止一根杜邦线,可是你了解他们吗? 在一次点亮7寸触摸屏的时候,我用了一根USB线外接电源驱动,可就是不稳定,总是花屏。咨询老师,老实说你用的USB线材太差劲,当时还不 ...…

查看全部问答>

初学者求助C54x程序运行结果

请各位大侠帮忙看一下如下三条语句,已知(80H)=20H,(81H)=30H, LD #0,DP LD 80H,16,B ADD 81H,B 运行后B等于多少?这到底是属于绝对地址寻址还是直接寻址啊?谢谢!…

查看全部问答>

stm32编程中遇到的问题

..\\USER\\stm32f10x_it.c(51): warning:  #223-D: function \"EXTI_GenerteSWInterrupt\" declared implicitly..\\USER\\stm32f10x_it.c(58): warning:  #223-D: function \"EXTI_GenerteSWInterrupt\" declared implicitlyProject.axf: ...…

查看全部问答>

想买msp430开发板,坛里有吗?

想买msp430开发板,坛里有吗?谢谢,麻烦贴个网址! 另外建议斑竹开辟一个关于购买开发板的小版块,呵呵!…

查看全部问答>