硬件基础知识

CPU制作

cpu组成原理

  1. CPU (Central Processing Unit - 中央处理单元): CPU 是计算机的核心,负责解释和执行程序指令以及处理数据。它由几个关键部分组成,如算术逻辑单元(ALU)、寄存器、和控制单元(CU),这些都是执行计算和处理指令所必需的。
  2. ALU (Arithmetic Logic Unit - 算术逻辑单元): ALU 是 CPU 的一部分,负责执行所有的算术运算(如加减乘除)和逻辑运算(如比较大小)。
  3. Registers (寄存器): 这些是小容量的存储设备,位于 CPU 内部,用于存储立即需要的数据和指令,以便快速访问。
  4. CU (Control Unit - 控制单元): 控制单元指导计算机的其他部分如何响应程序的指令。
  5. MMU (Memory Management Unit - 内存管理单元): MMU 负责管理 CPU 访问主内存的过程,包括地址转换、内存保护、缓存控制等。
  6. Cache (缓存): 这是一种速度非常快的内存,用来存储经常访问的数据和指令,从而减少访问主内存的次数,提高处理速度。
  7. PC (Program Counter - 程序计数器): PC 是 CPU 的一个寄存器,用来存储下一个要执行的指令的地址。
  8. IO Bridge (输入输出桥接器): 它是一种硬件,允许 CPU 与其他计算机组件(如内存和 I/O 设备)进行通信。
  9. 内存: 通常指的是主存储或随机访问存储器(RAM),这是计算机的临时存储,用于存储运行程序和当前正在使用的数据。
  10. IO 设备 (输入输出设备): 包括 USB、硬盘等设备,它们与计算机的其它部分进行数据交换。
  11. USB (Universal Serial Bus - 通用串行总线): 一个外部设备接口,用于连接各种外设,如键盘、鼠标、存储设备等。
  12. 硬盘: 计算机的主要存储设备,用于永久性存储数据和程序。

超线程

  1. CPU: 图中的大蓝色方块代表 CPU,是执行指令和处理数据的中心处理单元。
  2. ALU (Arithmetic Logic Unit - 算术逻辑单元): 在 CPU 内部,负责执行算术运算和逻辑运算。
  3. Registers (寄存器): CPU 内的小存储单元,用于快速访问和存储执行指令所需的数据和地址。
  4. PC (Program Counter - 程序计数器): 寄存器的一种,用来存储下一条要执行的指令的地址。
  5. Thread 1, Thread 2, ..., Thread n: 这些表示不同的线程,线程是程序执行流的最小单元。在现代操作系统中,一个程序可以分为多个线程,每个线程可以独立执行。
  6. Context Switch (上下文切换): 当 CPU 从执行一个线程切换到另一个线程时,它需要保存当前线程的状态(寄存器和程序计数器的内容),并加载另一个线程的状态,这个过程就是上下文切换。

超线程技术通过允许两个线程共享同一个核心的资源,但各自维护独立的线程状态(如寄存器和程序计数器),使得当一个线程等待时,另一个线程可以使用那些空闲的资源执行另一套指令。

存储器的层次结构

计算机存储层级结构

这张图描述了现代计算机存储的层级结构,从最快的寄存器到最慢的辅助存储设备。

  • L0: 寄存器,它们是最快的存储,CPU 直接访问。
  • L1, L2, L3: 这些是不同级别的缓存,其中 L1 是最快的缓存,L3 通常是共享缓存。
  • L4: 有些系统可能还会有 L4 缓存,位于 CPU 和主内存之间。
  • L5: 主内存,速度比缓存慢,但容量大。
  • L6: 辅助存储,如硬盘或固态硬盘,存储大量数据,但速度最慢。

存访问时间对比

这张图比较了不同存储级别的访问时间。

  • 寄存器: 访问时间少于 1 纳秒,最快的存储。
  • L1 缓存: 访问时间约为 1 纳秒。
  • L2 缓存: 访问时间约为 3 纳秒。
  • L3 缓存: 访问时间约为 15 纳秒。
  • 主内存: 访问时间约为 80 纳秒,比缓存慢,但比硬盘快。

多核 CPU 结构

这张图展示了一个多核 CPU 的内部结构。在这个例子中,CPU 有四个核心。

  • 核心1和核心2:每个核心都包含自己的 ALU(算术逻辑单元)、寄存器集和程序计数器(PC)。这些是处理计算任务和执行程序指令所必需的基本组成部分。
  • L1 和 L2 缓存:每个核心都有自己的 L1 和 L2 缓存,这些高速缓存是 CPU 用来临时存储数据和指令,以减少访问主内存的次数。
  • L3 缓存:这通常是共享缓存,所有核心都可以访问。它比 L1 和 L2 缓存慢一些,但比主内存快得多。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/519932.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

游戏攻略|基于Springboot和vue的游戏分享平台系统设计与实现(源码+数据库+文档)

游戏攻略分享平台目录 基于Springboot的在线考试管理系统设计与实现 一、前言 二、系统设计 三、系统功能设计 1、前台: 2、后台 5.2.1管理员功能模块 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取: …

国际体育日,一起运动起来吧

今天是国际体育日,是时候动一动,燃烧我们的卡路里啦!说到运动,我得提提最近刚入手华为WATCH GT4,真心不赖! 这个手表特别适合喜欢运动的人,它有100的运动模式,无论你是喜欢跑步、…

数据结构初阶:顺序表和链表

线性表 线性表 ( linear list ) 是 n 个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使 用的数据结构,常见的线性表:顺序表、链表、栈、队列、字符串 ... 线性表在逻辑上是线性结构,也就说是连续的一条直线。但是在物理结构上并不一定是连续的, 线性…

Excel列匹配VLookUp功能使用

生活中很多关于excel多列数据进行匹配计算等场景,其中最常用的一个函数就是VLookUp了,下面直接上图: 得到结果如下: 得到结果如下: 注意: 1.在需要把计算完的数据粘贴到另一列或者另个sheet时,复制后,不要直接ctrlv粘贴,这样会把计算公式粘贴到对应的列.正确做法是:右键粘贴,选…

蓝桥杯每日一题:斐波那契(矩阵乘法)

在斐波那契数列中,Fib00,Fib11,FibnFibn−1Fibn−2(n>1) 给定整数 n,求 Fibnmod10000。 输入格式 输入包含不超过 100100 组测试用例。 每个测试用例占一行,包含一个整数 当输入用例 n−1时,表示输入终止,且该…

Python环境搭建—安装PyCharm开发工具

🥇作者简介:CSDN内容合伙人、新星计划第三季Python赛道Top1 🔥本文已收录于Python系列专栏: 零基础学Python 💬订阅专栏后可私信博主进入Python学习交流群,进群可领取Python视频教程以及Python相关电子书合…

JS详解-设计模式

工厂模式: 单例模式: // 1、定义一个类class SingleTon{// 2、添加私有静态属性static #instance// 3、添加静态方法static getInstance(){// 4、判断实例是否存在if(!this.#instance){// 5、实例不存在,创建实例this.#instance new Single…

rust项目组织结构和集成测试举例

概述 在学习rust的过程中,当项目结构略微复杂的时候,写集成测试的时候发现总是不能引用项目中的代码,导致编写测试用例失败。查阅了教程,一般举例都很简单。查阅了谷歌和百度以及ai,也没有找到满意的答案。这里记录一…

Spring Boot 接入 Redis

Spring Boot 接入 Redis 简介 Redis 是一种访问速度非常快的内存数据结构存储,用作数据库、缓存、消息代理和流引擎。提供 strings、hashes、lists、sets 等数据结构。可以解决会话缓存、消息队列、分布式锁、定期将数据集存储到硬盘等功能。 通过 Redis 设计实现…

win11 安全中心打开黑屏\白屏\打不开有效解决

文章目录 问题和解决思路解决方法 问题和解决思路 问题:在重装和或者初次安装系统后,win11安全中心无法成功启动解决思路:直接重装安全中心,解决问题(作者尝试了修复和重置的功能–无效)视频教程参考WIN11…

攻防世界:mfw[WriteUP]

根据题目提示考虑是git库泄露 这里在地址栏后加.git也可以验证是git库泄露 使用GitHack工具对git库进行恢复重建 在templates目录下存在flag.php文件&#xff0c;但里面并没有flag 有内容的只有主目录下的index.php index.php源码&#xff1a; <?phpif (isset($_GET[page…

Photoshop 2024 中文---专业图像处理软件的又一次飞跃

Photoshop 2024是一款功能强大的图像处理软件&#xff0c;广泛应用于创意设计和图像处理领域。它提供了丰富的绘画和编辑工具&#xff0c;包括画笔、铅笔、颜色替换、混合器画笔等&#xff0c;使用户能够轻松进行图片编辑、合成、校色、抠图等操作&#xff0c;实现各种视觉效果…

Nature正刊重磅!热带雨林正接近临界温度阈值:气候变化可能会使热带森林太热而无法进行光合作用

2023年8月23日&#xff0c;美国北亚利桑那大学生态信息学Doughty, Christopher E. 副教授及其研究组人员在国际知名学术期刊《Nature》发表了一项题为“Tropical forests are approaching critical temperature thresholds”的研究。提出了热带雨林正接近临界温度阈值的新见解。…

vivado 有关 SVF 链的操作

按正确顺序创建反映所有器件及其配置存储器的 SVF 链之后 &#xff0c; 即可开始向 SVF 链中的器件添加编程操作。 例如&#xff0c; 您可右键单击链中的赛灵思 a200t 器件 &#xff0c; 然后选择“添加器件编程操作 (Add Program Device Operation) ”对话 框&#xff0c; …

数据导出实践:Spring Boot实现高效的千万数据导出

当数据量达到千万级别时&#xff0c;传统的导出方式往往效率低下&#xff0c;甚至可能导致系统崩溃。 数据导出的挑战 在实现千万数据导出功能时&#xff0c;常常会面临以下挑战&#xff1a; 内存占用过高&#xff1a;传统的导出方式往往需要将所有数据加载到内存中&#xff0…

【airtest】自动化入门教程(四)Poco元素定位

目录 一、基础操作 1、通过属性名等方式 2、通过属性组合 3、子节点方式 4、子节点加属性组合方式 5、孙节点offspring 6、兄弟节点sibling 7、父节点parent 8、正则表达式 9、直到某个元素出现 10、直到某个元素消失 二、通过局部坐标定位 1、使用局部坐标系的cli…

这下 package.json 里面的字段就清楚了

npm package.json 文件的详细说明。 Version:9.8.1 本文档包含了关于 package.json 文件中所需内容的所有信息。它必须是有效的 JSON 格式&#xff0c;而不仅仅是 JavaScript 对象字面量。 1. name 如果您计划发布您的包&#xff0c;那么 package.json 文件中最重要的字段是 n…

美食分享|基于Springboot和vue的地方美食分享网站系统设计与实现(源码+数据库+文档)

地方美食分享网站系统 目录 基于Springboot和vue的地方美食分享网站系统设计与实现 一、前言 二、系统设计 三、系统功能设计 1、前台&#xff1a; 2、后台 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 博主介…

HTTP协议报文的结构

如图在要将数据传输给服务器时&#xff0c;通常会将用到上图中的GEA等请求。 GET请求&#xff0c;通常会将要传给服务器的数据&#xff0c;加到url的query string中body中 还有POST请求&#xff0c;通常把要传给服务器的数据加入到body中。 上述都是习惯用法&#xff08;都是…

蓝桥集训之斐波那契数列

蓝桥集训之斐波那契数列 核心思想&#xff1a;矩阵乘法 将原本O(n)的递推算法优化为O(log2n) 构造1x2矩阵f和2x2矩阵a 发现f(n1) f(n) * a 则f(n1) f(1) * an可以用快速幂优化 #include <iostream>#include <cstring>#include <algorithm>using na…