当前位置: 首页 > news >正文

单片机中的机器周期、指令周期、总线周期的联系和区别

目录

一、核心概念速览

二、详细分解说明

1. 总线周期

2. 机器周期

3. 指令周期

三、三者的联系与层级关系

四、如果这篇文章能帮助到你,请点个赞鼓励一下吧ξ( ✿>◡❛)~


一、核心概念速览

        首先,想象一个​​中央厨房(CPU)​​ 为顾客(系统)准备菜肴(执行任务):

概念

类比

说明

​指令周期​

​完成一道菜的所有步骤​

CPU执行一条完整指令所需的时间

​机器周期​

​完成一个特定步骤​

完成一个基本操作(如取料、翻炒)的时间

​总线周期​

​从仓库取送食材的过程​

CPU通过总线与内存/外设交换一次数据的时间

        核心关系:指令周期 ≥ 机器周期 ≥ 总线周期≈时钟周期​

二、详细分解说明

1. 总线周期

​        定义​​:CPU通过​​系统总线​​(地址、数据、控制总线)与存储器或I/O端口进行一次数据读写所需的时间。

​        工作内容​​:完成一次物理上的数据传输。例如,从内存的某个地址读取一个字节的数据,或者将一个字节的数据写入某个端口。

​        特点​​:这是最底层的、硬件级别的操作周期,由系统时钟驱动。

​        举例​​:在51单片机中,一个典型的​​总线周期​​可能需要​​2个系统时钟周期​​。

2. 机器周期

​        定义​​:CPU完成一个​​基本操作​​所需的时间。一个机器周期通常由若干个总线周期构成

        工作内容​​:一条指令的执行被分解为多个阶段,每个阶段就是一个机器周期。最常见的划分是​​取指、译码、执行​​。

        取指周期​​:将指令从内存读到指令寄存器。

​        译码周期​​:分析指令是什么操作。

​        执行周期​​:执行指令规定的操作(可能包含多个总线周期)。

​        特点​​:是衡量指令执行速度的一个传统单位(如老式51单片机的1个机器周期包含12个时钟周期)。

​        举例​​:在经典的8051架构中,​​1个机器周期 = 12个时钟周期​​。

3. 指令周期

        ​​定义​​:CPU​​取出并执行一条完整指令​​所需的全部时间。

​        工作内容​​:包括从内存中取出指令操作码、对指令译码、执行指令操作(可能包含多次内存读写),最后将结果写回。

​        特点​​:时间不固定​​:不同指令的复杂程度不同,其指令周期长度也不同。一条指令的指令周期由​​1个或多个机器周期​​组成。

​        举例​​:短指令​​:如NOP(空操作)指令,可能只需要​​1个机器周期​​。长指令​​:如MUL(乘法)指令,可能需要​​4个机器周期​​。

三、三者的联系与层级关系

​包含关系​​:​​指令周期 > 机器周期 > 总线周期 ≈ 时钟周期

现代架构的演变​​:

        在现代的ARM Cortex-M等高级单片机中,这种严格的层级关系已经模糊,普遍采用​​流水线​​和​​单周期指令​​技术。

​        流水线​​:在执行当前指令的同时,已经开始取下一条指令并译码,大大提高了吞吐率。

​        单周期指令​​:很多简单指令可以在​​1个时钟周期​​内完成,此时​​指令周期 = 机器周期 = 总线周期 = 1个时钟周期​​。

四、如果这篇文章能帮助到你,请点个赞鼓励一下吧ξ( ✿>◡❛)~

http://www.dtcms.com/a/515153.html

相关文章:

  • spring微服务宏观概念
  • 在阿里云通过docker部署srs流媒体服务器(支持webrtc、http-flv)
  • 【WAF】 Nginx如何集成安全检测服务
  • nginx安装和使用
  • 茂名市建设银行网站今天哈尔滨最新通告
  • 快飞建站月夜直播免费版
  • Windows 11 25H2 更新补丁导致鼠标键盘失灵,紧急更新补丁已推出
  • 移动端 (RN) - 键盘弹出, 不遮挡输入框 (和 底部按钮)的处理方案
  • 【C++闯关笔记】深究继承
  • Python爬虫抓取豆瓣TOP250数据
  • AWS Elemental MediaConvert:视频转码不再难
  • 华为OD最新机试真题-乘坐保密电梯-OD统一考试(C卷)
  • SpringBoot 如何实现零拷贝:深度解析零拷贝技术
  • 问卷调查网站怎么做做百度推广
  • Jenkins 持续集成与部署指南
  • 新书速览|DeepSeek高效数据分析:从数据清洗到行业案例
  • 搜索百科(5):Easysearch — 自主可控的国产分布式搜索引擎
  • 自己建商城型网站做设计的软件
  • # 模型量化(二):基于BERT的量化代码实战
  • 网站没有备案会怎样资源网官网
  • 【C++:继承】面向对象编程精要:C++继承机制深度解析与最佳实践
  • Python访问者模式实战指南:从基础到高级应用
  • 《数组和函数的实践游戏---扫雷游戏(基础版附源码)》
  • 专门做网站的软件是网站着陆页怎么做
  • 南京专业网站制作公司如何申请免费网站空间
  • 【乌班图】远程连接(向日葵/ToDesk)显示成功却无桌面的问题解析与解决
  • 异或的应用
  • c++语法——字符串(10.23讲课)
  • AI大事记13:GPT 与 BERT 的范式之争(上)
  • wordpress安装后查看站点失败网站创建多少年了