0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CPU内部到底是如何工作的呢?

h1654155971.8456 来源:巢影字幕组 作者:巢影字幕组 2021-04-04 14:36 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

众所周知CPU是中央处理器,它是控制处理中心,我们的电脑手机等电子产品都离不开CPU。

那么,CPU内部到底是如何工作的呢?我们一起来看看。

1

当我们用电脑拼命工作的时候,殊不知电脑也在拼命的工作。

我们打开机箱,就会看见电脑的主板,也可以看到风扇在不停地转动,风扇下面就是CPU,它不停地在和内存进行数据的通讯,就像我们的大脑。

CPU是由很多很多晶体管构成的,主要有控制器,运算器,寄存器几个部分。而寄存器又分为数字寄存器,指令寄存器,指令地址寄存器。假设有四个数字寄存器,它们可以存放临时的数据。右边的是内存,还有16个存储位置,每个位置有8位bit。

2

CPU和内存之间究竟是如何工作的呢?

当我们启动电脑时,所有的寄存器都从零开始。假设内存存放了一个简单的计算机程序,CPU操作的第一阶段为“取指令”,也就是我们获得第一个指令的过程。

首先,指定地址寄存器连到内存,寄存器的值为零。内存返回地址0中的值00101110。该值复制到指定寄存器中,然后由CPU开始解析该指令,以便执行什么样的操作。这个步骤称它为“解码”。

该指定前四位为操作代码,后四位为操作代码来自哪里?由于前四位为操作代码0010,对应我们的指令集,0010是读内存放入寄存器A中,后四位是内存的地址1110。即十进制的数字14。

3fb4a33e-8cec-11eb-8b86-12bb97331649.gif

接着,用一些逻辑门电路来检查该操作码是否与0010匹配,输出为1,表示匹配成功。接下来执行该指令,也就是执行过程。

通过逻辑门电路检查电路输出,打开内存的读取线,找到内存1110的地址14,读取该地址的值00000011,下一步把该值存储到寄存器A中,我们通过数据线连接到4个数字寄存器,CPU通过指令开启数据寄存器A允许写入。该数据被写入到寄存器A中,我们已完成了该指令。

408617a2-8cec-11eb-8b86-12bb97331649.gif

现在关掉所有的线,准备从内存中读取下一条指令。指令地址增加1,内存返回地址1的值00011111,复制到指令寄存器。再到解码的过程,通过指定集,指定前四位0001,它表示读内存存储到寄存器B中,这次内存地址是1111,对应十进制尾数为15,到执行的过程,开启内存读取线,找到内存15地址,读取该地址的值。并通过数据线把该值00001110存储到寄存器B中,最后将指定地址寄存器增加1,关闭所有的线。

现在内存返回地址2的值10000100放入指令寄存器CPU从指定集开始解码,操作码1000是加法指令。添加两个寄存器存储到第二个存储器中,该指定有两种,前两位01对应的寄存器B,后两位00对应寄存器A,因此10000100是指寄存器B中的值添加到寄存器A中。

40f97de6-8cec-11eb-8b86-12bb97331649.gif

将寄存器A、B连接到运算器的输入端,运算器执行加法运算,关闭运算器输出的结果保存在寄存器A中。00010001就是输入的值是3和14两个值的和等于17,接下来指定地址增加1,完成这个过程,找到内存地址3的值。

我们打开指令集开始解码,0100表示读A寄存器到内存,1101对应内存地址是13,然后将寄存器A的值,通过数据线送到内存13的地址上。

413fd3fe-8cec-11eb-8b86-12bb97331649.gif

3

我们刚刚运行的计算机的程序,它从内存中加载两个值相加,然后把结果放入内存,也就是CPU的取指令、解码、执行过程。我们电脑的系统是要很多很多的小程序组成,CPU也就不断的在循环这个过程。

每个CPU执行这个过程的速度不一样,这个速度是由CPU主频即CPU工作频率决定,它决定着CPU的快慢。

原文标题:CPU是如何做到数据通信的?

文章出处:【微信公众号:EDA365】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    11378

    浏览量

    226479
  • 通信
    +关注

    关注

    18

    文章

    6490

    浏览量

    140372
  • 中央处理器
    +关注

    关注

    1

    文章

    126

    浏览量

    17141

原文标题:CPU是如何做到数据通信的?

文章出处:【微信号:eda365wx,微信公众号:EDA365电子论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    CPU、GPU、NPU到底有什么区别? 嵌入式/工控/选型一次讲透!!

    CPU、GPU、NPU到底有什么区别?嵌入式/工控/选型一次讲透做嵌入式开发、折腾工控板、调试端侧AI的朋友,几乎都纠结过同一个问题:同样是芯片,为什么有的板子胜在CPU稳定、有的赢在GPU显示
    的头像 发表于 05-25 14:40 100次阅读
    <b class='flag-5'>CPU</b>、GPU、NPU<b class='flag-5'>到底</b>有什么区别?  嵌入式/工控/选型一次讲透!!

    这个电路干啥用的?它的工作原理是怎么样?

    很多工程师认为圈起来的这个电路不能工作,我刚开始看到这个电路也是这么认为的!这个圈起来的三极管(PNP)电路到底能不能工作,怎么样的工作
    发表于 04-15 11:03

    UPS 整流与逆变原理深度解析:不间断电源的核心技术到底是什么?

    到底如何工作、为什么能做到市电与电池之间无缝切换、电力从输入到输出经历了怎样的变化。事实上,UPS所有功能的实现,都离不开两个最基础、最核心的技术环节——整流与逆
    的头像 发表于 03-16 09:25 491次阅读
    UPS 整流与逆变原理深度解析:不间断电源的核心技术<b class='flag-5'>到底是</b>什么?

    UPS 整流与逆变原理深度解析:不间断电源的核心技术到底是什么?

    了解它内部到底如何工作、为什么能做到市电与电池之间无缝切换、电力从输入到输出经历了怎样的变化。 事实上,UPS 所有功能的实现,都离不开两个最基础、最核心的技术环节 —— 整流 与 逆变 。可以说,没有整流与逆变,UPS 就无法
    的头像 发表于 03-16 09:11 645次阅读
    UPS 整流与逆变原理深度解析:不间断电源的核心技术<b class='flag-5'>到底是</b>什么?

    MOS管到底是什么?和三极管、继电器有什么本质区别?

    MOS管到底是什么?和三极管、继电器有什么本质区别?在电子设备的“心脏”部位,藏着许多默默工作的“开关选手”。它们操控着电流的通断,决定着设备的效率与稳定性。其中,MOS管作为近年来高频
    的头像 发表于 01-07 13:46 1205次阅读
    MOS管<b class='flag-5'>到底是</b>什么?和三极管、继电器有什么本质区别?

    那么龙芯CPU性能如何

    龙芯系列CPU的最新动态 以下是龙芯系列CPU的最新动态(截至2025年10月): 龙芯CPU的性能如何? 以下是龙芯CPU性能的详细分析,结合最新产品与技术动态: 一、桌面处理器性能
    的头像 发表于 12-03 13:42 1727次阅读

    Stack栈到底用来干嘛的

    Stack_Size就是栈大小,0x00000400就是代表有1K(0x400/1024)的大小。 那这个栈到底用来干嘛的? 比如说我们函数的形参、以及函数里定义的局部变量就是存储在栈里,所以
    发表于 12-01 08:04

    IGBT到底是什么?-从名称入手来带您了解

    对于工作需要用到IGBT、但从未专业学习过IGBT的人来说, IGBT到底是什么、它为什么叫IGBT、它的核心关键词是什么、要怎么理解它 等一系列问题并无法一次性在某个地方获取到,都需要查阅大量的资料,学习大量的基础才能有个初步的了解。 为了让更多的人在更少的时间内掌握I
    的头像 发表于 11-25 17:38 3217次阅读
    IGBT<b class='flag-5'>到底是</b>什么?-从名称入手来带您了解

    请问Keil中的map文件到底是什么意思?

    Keil中的map文件到底是什么意思?里面是如何进行相关执行操作的
    发表于 11-25 06:59

    单片机和嵌入式,到底是什么关系?

    的关系:什么是单片机?什么是嵌入式?它们到底是不是一回事?先说说大家最先听说的那个词——单片机(MCU)。单片机,全称是MicrocontrollerUnit,顾名思
    的头像 发表于 11-14 10:28 2277次阅读
    单片机和嵌入式,<b class='flag-5'>到底是</b>什么关系?

    单片机的差分信号到底是什么?

    差分信号到底是什么?通俗来讲,就是驱动端发送两个等值、反相的信号,接收端通过比较这两个电压的差值来判断逻辑状态“0”还是“1”。 差分信号的产生是由输入源发出信号后经过缓冲器和倒相器后,所产生
    发表于 11-12 06:44

    IEC 到底是什么?为什么它能影响全球?

    IEC 到底是什么?为什么它能影响全球?
    的头像 发表于 09-04 17:07 4066次阅读

    浮思特 | 红外激光模组工作原理:科技的神奇之处

    在现代科技快速发展的今天,红外激光模组作为一种重要的光电设备,逐渐走进了我们的生活和工作中。无论是在医疗、安防还是工业领域,红外激光模组都扮演着不可或缺的角色。那么,红外激光模组到底是如何工作
    的头像 发表于 08-05 09:58 926次阅读
    浮思特 | 红外激光模组<b class='flag-5'>工作</b>原理:科技的神奇之处

    晶振的 “负载电容” 到底是什么

    负载电容,到底是什么? 负载电容,简单来说,是指晶振的两条引线连接IC块内部及外部所有有效电容之和,我们可以将其看作晶振片在电路中串接的电容。从更专业的角度讲,它是为了使晶振能够在其标称频率下稳定
    的头像 发表于 07-25 16:26 1285次阅读

    请问编译纯rtos到底是选择Linux+rtos的sdk编译only rtos还是直接使用rtos sdk?

    编译纯rtos到底是选择Linux+rtos的sdk编译only rtos还是直接使用rtos sdk?
    发表于 07-11 07:22