历史上的今天
返回首页

历史上的今天

今天是:2025年04月01日(星期二)

正在发生

2021年04月01日 | MSP430的时钟周期、机器周期、指令周期之间的关系

2021-04-01 来源:eefocus

时钟周期也称为振荡周期:定义为时钟脉冲的倒数(时钟周期就是直接供内部CPU使用的晶振的倒数,例如12M的晶振,它的时钟周期就是1/12us),是计算机中的最基本的、最小的时间单位。在一个时钟周期内,CPU仅完成一个最基本的动作。时钟脉冲是计算机的基本工作脉冲,控制着计算机的工作节奏。时钟频率越高,工作速度就越快。


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


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


专用知识:


在430中,一个时钟周期 = MCLK晶振的倒数。如果MCLK是8M,则一个时钟周期为1/8us;


一个机器周期 = 一个时钟周期,即430每个动作都能完成一个基本操作;


一个指令周期 = 1~6个机器周期,具体根据具体指令而定。


另:指令长度,只是一个存储单位与时间没有必然关系。


MSP430根据型号的不同最多可以选择使用3个振荡器。我们可以根据需要选择合适的振荡频率,并可以在不需要时随时关闭振荡器,以节省功耗。这3个振荡器分别为:


(1)DCO 数控RC振荡器。它在芯片内部,不用时可以关闭。DCO的振荡频率会受周围环境温度和MSP430工作电压的影响,且同一型号的芯片所产生的频率也不相同。但DCO的调节功能可以改善它的性能,他的调节分为以下3步:a:选择BCSCTL1.RSELx 确定时钟的标称频率;b:选择DCOCTL.DCOx在标称频率基础上分段粗调;c:选择DCOCTL.MODx的值进行细调。


(2)LFXT1 接低频振荡器。典型为接32768HZ的时钟振荡器,此时振荡器不需要接负载电容。也可以接450KHZ~8MHZ的标准晶体振荡器,此时需要接负载电容。


(3)XT2 接450KHZ~8MHZ的标准晶体振荡器。此时需要接负载电容,不用时可以关闭。


低频振荡器主要用来降低能量消耗,如使用电池供电的系统,高频振荡器用来对事件做出快速反应或者供CPU进行大量运算。当然高端430还有锁频环(FLL)及FLL+等模块,但是初步不用考虑那么多。


MSP430的3种时钟信号:MCLK系统主时钟;SMCLK系统子时钟;ACLK辅助时钟。


(1)MCLK系统主时钟。除了CPU运算使用此时钟以外,外围模块也可以使用。MCLK可以选择任何一个振荡器所产生的时钟信号并进行1、2、4、8分频作为其信号源。


(2)SMCLK系统子时钟。供外围模块使用。并在使用前可以通过各模块的寄存器实现分频。SMCLK可以选择任何一个振荡器所产生的时钟信号并进行1、2、4、8分频作为其信号源。


(3)ACLK辅助时钟。供外围模块使用。并在使用前可以通过各模块的寄存器实现分频。但ACLK只能由LFXT1进行1、2、4、8分频作为信号源。


PUC复位后,MCLK和SMCLK的信号源为DCO,DCO的振荡频率默认为800KHZ。ACLK的信号源为LFXT1。


MSP430内部含有晶体振荡器失效监测电路,监测LFXT1(工作在高频模式)和XT2输出的时钟信号。当时钟信号丢失50us时,监测电路捕捉到振荡器失效。如果MCLK信号来自LFXT1或者XT2,那么MSP430自动把MCLK的信号切换为DCO,这样可以保证程序继续运行。但MSP430不对工作在低频模式的LFXT1进行监测。


为了实现具体的时钟可以设置跟时钟相关的寄存器,在低端430中是DCOCTL、 BCSCTL1和BCSCTL2三个寄存器。而对于高端的430,则要考虑SCFI0、SCFQCTL、FLL_CTL0、FLL_CTL1和BTCTL 等几个寄存器。具体设置,参看DataSheet。


推荐阅读

史海拾趣

Amptek Inc公司的发展小趣事

Amptek Inc 是一家专注于放射性测量和分析仪器的公司,提供各种 X 射线和伽马射线探测器以及相关的测试设备和软件。以下是 Amptek 公司发展的五个相关故事:

  1. 公司成立与早期发展:Amptek 公司于1987年成立,总部位于美国马萨诸塞州贝弗利市。公司成立初期,主要从事于放射性测量仪器的研发和生产。创始人团队在核物理和仪器设计领域拥有丰富的经验,致力于提供高性能、高精度的测量和分析解决方案。

  2. 技术创新与产品升级:随着技术的不断进步,Amptek 公司持续进行技术创新和产品升级。公司引入先进的探测器技术和数据处理算法,不断提升产品的性能和精度。公司的 X 射线和伽马射线探测器在放射性测量和分析领域具有很高的声誉,被广泛应用于科学研究、医学诊断、工业检测等领域。

  3. 全球市场拓展:Amptek 公司在全球范围内建立了广泛的销售网络和服务体系。除了在美国设立销售和服务中心外,公司还在欧洲、亚洲等地设立了分支机构和代理商,为全球客户提供及时的技术支持和售后服务。公司的产品远销全球,赢得了国内外客户的信赖和好评。

  4. 科研合作与应用推广:Amptek 公司与世界各地的科研机构、大学和实验室保持着紧密的合作关系,共同开展科研项目和应用研究。公司的产品被广泛应用于粒子物理、天体物理、材料科学、核医学等领域的实验和研究中,为科学家和研究人员提供了强大的实验工具和数据支持。

  5. 持续发展与未来展望:Amptek 公司将继续致力于技术创新和产品研发,不断提升产品的性能和功能,满足客户不断增长的需求。公司将继续拓展国际市场,加强与客户的合作关系,进一步巩固在放射性测量和分析领域的领先地位。同时,公司还将关注新兴市场和新技术的发展趋势,积极布局未来的发展方向。

Deltron / DEM Manufacturing公司的发展小趣事

DEM Manufacturing一直注重技术创新和产品升级。在合并后的几年里,公司投入大量资源用于研发,推出了一系列具有创新性的电子产品。这些产品不仅满足了市场的多样化需求,还为公司赢得了良好的口碑和广泛的客户基础。

Everbuild公司的发展小趣事

为了进一步扩大市场份额,Everbuild开始积极拓展国际市场。公司派遣专业的团队参加国际电子产品展览会,与国际知名厂商进行技术交流和合作。同时,Everbuild还针对不同国家和地区的市场需求,推出了定制化的电子产品解决方案。这些努力使Everbuild的产品逐渐进入国际市场,并赢得了越来越多客户的信任和支持。

Deutron Electronics Corp公司的发展小趣事

Deutron Electronics Corp的创立之初,就致力于通过技术创新在电子行业中立足。公司创始人是一位资深的电子工程师,他带领研发团队开发出了当时市场上领先的半导体芯片。这一技术突破不仅为公司赢得了第一笔大额订单,也为后续的产品线扩展奠定了坚实的基础。随着技术的不断进步,Deutron Electronics Corp逐渐在半导体领域树立了技术领先的形象。

普芯达电子(Chipswinner)公司的发展小趣事

普芯达电子的“中国风”系列产品是公司发展历程中的一个重要里程碑。该系列产品经过严格的质量控制和品质检测,以其优异的性能和可靠的品质赢得了市场的广泛认可。通过一系列的市场推广活动,“中国风”品牌逐渐深入人心,成为国产集成电路产品的代表之一。同时,普芯达电子还通过不断创新和优化产品,满足了客户日益增长的需求,进一步巩固了市场地位。

迦美信芯(CanaanTek)公司的发展小趣事

在导航芯片领域,迦美信芯也取得了显著成就。由公司董事长兼CTO倪文海主导开发的兼容“GPS+北斗导航”的射频芯片,被国内主要基带厂商广泛采用,占据了北斗细分市场60%的份额。这一成就不仅彰显了迦美信芯在导航芯片领域的强大实力,也为其在物联网和汽车电子等领域的应用奠定了坚实基础。

问答坊 | AI 解惑

DSP和FPGA在汽车电子中的广泛应用

1 引言   20世纪末,全球范围内兴起的信息革命浪潮,为汽车工业的突破性发展提供了千载难逢的机遇,信息技术的广泛应用是解决汽车带来的诸如交通拥挤、交通安全、环境污染、能源枯竭等问题的最佳途径。同时,随着汽车电子技术的发展,电子组件 ...…

查看全部问答>

毕业设计之97电子设计大赛直流稳压电源设计

本帖最后由 paulhyde 于 2014-9-15 03:54 编辑 请各位好心的师兄师姐们帮帮小妹了 在此表示不甚感激 谢谢  …

查看全部问答>

呵呵,那位坛友手中有多余一套LM3S8962开发板,或者闲着不用的,砸个过来

坛友们,您们谁有多余的或者不用的,有偿转让一下呵呵,本人近期有时间想认真学习一下,谢谢啦嘿嘿 本人的QQ是282574314,嘿嘿或者想学STM32的互换一下。…

查看全部问答>

vxworks6.6

有谁使用过了vxworks6.6及其开发workbench的,一起来分享啊。 我先自己说下自己的使用后的感受吧,vxworks6.6的系统启动代码和5.5区别还是很大,而对与新的平台的使用我用的也不是很爽,之中遇到了很多的问题。 哎~ 又要开始一个新的痛苦的学习过 ...…

查看全部问答>

【再次求助】2440 睡眠唤醒后串口输出乱码、usb不能用

如题。搞了好久也没解决。感觉是唤醒后要重新初始化下。串口跟USB的有好多源码。不知道从哪儿下手。望高手们指点一下!!!…

查看全部问答>

51开发时,关于AD转换芯片7135的转换结果的问题

用51板做东西的时候,AD转换芯片用的是ICL7135(双积分AD转换芯片)。我看见一些资料上面写着 用计数器对积分阶段进行计数,最后得到的计数减去1001就是AD的转换结果。     我有一点不明白:计数器的结果-1001就直接是AD 转换的数字结果 ...…

查看全部问答>

谈谈你的MSP430是如何入门的

咱们版块上经常有新人进来,常常会有想接触MSP430或者刚开始学习MSP430的朋友们问到如何学习MSP430.很多坛友们也会问,学习MSP430需要用哪一本书或者哪一本教材,该了解哪些知识,该做哪些实验....在我们自己刚起步学习MSP430的时候何尝不是有过相 ...…

查看全部问答>

关于组合反馈

复制代码reg [1:0] stat_action; always@(*) begin case({is_luma, blk_type}) {1\'b1, `DC_ONLY}: if(scan_done) stat_action = `FIFO_COMMIT; else stat_action = `FI ...…

查看全部问答>

ccs中使用sprintf编译总是出错是怎么回事

ccs中使用sprintf编译总是出错是怎么回事?…

查看全部问答>