小柴冲刺软考中级嵌入式系统设计师系列二、嵌入式系统硬件基础知识(2)嵌入式微处理器基础

news2024/12/28 5:43:59

目录

冯诺依曼结构

哈佛结构

一、嵌入式微处理器的结构和类型

1、8位、16位、32位处理器的体系结构特点

2、DSP处理器的体系结构特点

3、多核处理器的体系结构特点

二、嵌入式微处理器的异常与中断

1、异常

2、中断


flechazoicon-default.png?t=O83Ahttps://www.zhihu.com/people/jiu_sheng

小柴冲刺嵌入式系统设计师系列总目录icon-default.png?t=O83Ahttps://blog.csdn.net/qianshang52013/article/details/139975720?spm=1001.2014.3001.5501

嵌入式操作系统硬件架构的核心是处理器Central Processing Unit,CPU,负责从内存中取出指令,解码确定类型和操作数后再执行该指令。

冯诺依曼结构

添加图片注释,不超过 140 字(可选)

哈佛结构

 

每个CPU都有其一套可执行的专门指令集。

复杂指令集Complex Instrunction Set Computer , CISC

精简指令集Reduced Instrunction Set Computer , RISC

条目

CISC

RISC

价格

由硬件完成部分软件功能,硬件复杂性增加,芯片成本高

由软件部分完成部分硬件功能,软件复杂性增加,芯片成本低

性能

减少代码尺寸,增加指令的执行周期数

使用流水线降低指令的执行周期数,增加代码尺寸

指令集

指令系统复杂,指令数目多大200~3000条

只设置使用频度高的一些简单指令,复杂指令的功能由多条简单指令组合而实现

高级语言支持

硬件完成

软件完成

寻址方式

较多

种类较少

控制器

大多采取微程序控制器实现

用硬件实现,采用组合逻辑控制器

寄存器数量

通用寄存器较少

大量的通用寄存器

在实际使用中,人们发现:典型程序中80%的语句仅使用到指令系统中20%的指令,而且使用频率较高的指令都是简单的基本指令。

复杂指令的设计更为复杂,使得其执行速度受限。

精简指令集计算机RISC,其设计特点是简化指令集,只设置使用频度高的一些指令,复杂指令功能由多条简单指令组合来实现。

在嵌入式系统中,通过访问内存得到的指令或者数据的时间远大于CPU执行指令所花费的时间。因此在CPU内部都有一些用来保存关键变量和临时数据的寄存器。

  • 通用寄存器组

  • 以Intel 8086CPU为例,其内部包含8个16位通用寄存器

  • 通用数据寄存器AX、BX、CX、DX。

  • 基址寄存器BX、BP。

  • 寄存器间接、变址寻址功能SI、DI。

  • 堆栈指针SP

  • 运算器

  • Arithmetic&logic Unit ALU算数逻辑单元

  • 可以完成各种算数和逻辑运算,同时配合ALU工作的有暂存器。

  • 控制器

  • 构成CPU的另一个重要部件,主要有一下几种:

  • 程序计数器(Program Counter,PC),存放着下一条需要执行指令的内存地址。

  • 程序状态字(Program Status Word,PSW),存放着指令执行结果状态及一些特定标志,例如溢出标志OF、进位标志CF等。

  • 指令寄存器(Instruction Register,IR),存放当前执行指令。

  • 时序部件,用于产生所需时序信号。

随着计算机的发展,现有CPU内部还集成了高速缓存(Cache)、流水线等部件。

一、嵌入式微处理器的结构和类型

1、8位、16位、32位处理器的体系结构特点

  • 常用8位处理器的体系结构特点

    • 使用8位数据总线的微处理器。可以通过多重内存存取的方式来处理更多的数据。

    • 大部分的8位微处理器有16位的地址总线,能访问64KB的地址空间。

    • 低成本、可扩充内存及接口设备等特点,目前仍然在嵌入式系统领域得到广泛的应用。

    • 8051

  • 常用16位处理器的体系结构特点

    • 内部总线宽度为16的微处理器。

    • 目前主要应用于便携式设备、工业控制及智能仪器仪表等。

  • 常用32位处理器的体系结构特点

    • 32位的地址和数据总线,其地址空间达到了4GB。

    • ARM。是一种RISC体系结构的微处理器

    • 在每条数据处理指令当中,都控制算术逻辑单元ALU和移位器,以使ALU和移位器获得最大的利用率。

    • 自动递增和自动寻址模式,以优化程序中的循环。

    • 同时执行Load和Store多条指令,以增加数据吞吐量。

    • 所有指令都可以条件执行,以执行吞吐量。

  • ARM的数据类型:

    • 字(Word):在ARM体系结构中,字的长度为32位,而在8位/16位处理器体系结构中,子的长度一般为16位。

    • 半字(Half-Word)

    • 字节(Byte):8位

  • ARM微处理器支持7种运行模式

    • 用户模式(USR)

    • 快速中断模式(FIQ)

    • 外部中断模式(IRQ)

    • 管理模式(SVC)

    • 数据访问终止模式(ABT)

    • 系统模式(SYS)

    • 定义指令中止模式(UND)

  • MIPS处理器

    • PowerPC有三个级别

    • Book I用户指令集体系结构

    • Book II虚拟环境体系结构

    • Book III操作环境体系结构

2、DSP处理器的体系结构特点

Digital Signal Process (DSP)。数字信号处理器,内部采用程序和数据分开的哈佛结构,具有专门的硬件乘法器,广泛用于流水线操作,提供特殊的指令,可以用来快速地实现各种数字信号的处理算法。有一下特征:

  • 在一个指令周期内可完成一次乘法和一次加法。

  • 程序和数据空间分开,可以同时访问指令和数据。

  • 片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问。

  • 具有低开销或无开销循环及跳转的硬件支持。

  • 快速的中断处理和硬件I/O支持。

  • 具有在单周期内操作的多个硬件地址产生器。

  • 可以并行执行多个操作。

  • 支持流水线操作,使取指、译码和执行可以重叠执行。

DSP的其他通用功能较弱。功耗较小。

3、多核处理器的体系结构特点

同构多核:内核相同、地位对等。反之为异构多核。

  • 同构多核处理器

    • Intel酷睿架构处理器

    • TI keystone架构

添加图片注释,不超过 140 字(可选)

  • 异构多核处理器

    • AMD独显

    • TI OMAP/Davinci处理器系列

添加图片注释,不超过 140 字(可选)

  •         Xilinx Zynq处理器

添加图片注释,不超过 140 字(可选)

二、嵌入式微处理器的异常与中断

1、异常

异常是一种形式的异常控制流,它的一部分是由应硬件实现的,一部分由操作系统实现。

异常可分为四类:

类别

原因

异步/同步

返回行为

中断(interrupt)

来自I/O设备的信号

异步

总是返回到下一条指令

陷阱(trap)

有意的异常

同步

总是返回到下一条指令

故障(fault)

潜在可恢复的错误

同步

可能返回到当前指令

中止(abort)

不可恢复的错误

同步

不会返回

2、中断

中断是异步的。

  • 硬中断和软中断

  • 硬中断是由硬件产生的

  • 软中断,软中断不会被另一个软中断抢占,可以被硬中断抢占。

  • 可屏蔽中断与不可屏蔽中断

  • INTR Interrupt Require

  • NMI Non Maskable Interrupr

  • 中断优先级

  • 查询优先级

  • 执行优先级

  • 中断控制器能对中断进行排队管理,同时支持不同优先级的配置,使得高优先级能够中断低优先级中断。

  • 中断嵌套

添加图片注释,不超过 140 字(可选)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

54 循环神经网络RNN_by《李沐:动手学深度学习v2》pytorch版

系列文章目录 文章目录 系列文章目录循环神经网络使用循环神经网络的语言模型困惑度(perplexity)梯度剪裁 循环神经网络 使用循环神经网络的语言模型 输入“你”,更新隐变量,输出“好”。 困惑度(perplexity&#xff…

【递归】8. leetcode 671 二叉树中第二小的节点

题目描述 题目链接:二叉树中第二小的节点 2 解答思路 注意这句话:该节点的值等于两个子节点中较小的一个 二叉树的根节点的值是整棵树中最小的值 本道题所要求的是二叉树中第二小的节点。因为根节点是最小的节点,那么我们只需要找到第一…

HT5169内置BOOST升压的11W I2S输入D类音频功放

1 特性 ● 电源供电 升压输入VBAT:2.5V-5.5V; 升压输出PVDD可调,最高7.5V DVDD/AVDD分辨率:3.3V ● 音频性能 9.0W (VBAT3.7V, PVDD 7.5V, RL3Ω.THDN10%) 11.0W(VBAT3.7V, PVDD 7.5V, RL2Ω.THDN10% 5.5W (VBAT3.7V, PVDD 6.5V, RL4Ω.THDN10%) ● 灵活的…

红米k60至尊版工程固件 MTK芯片 资源预览 刷写说明 与nv损坏修复去除电阻图示

红米k60至尊版机型代码为:corot。 搭载了联发科天玑9200+处理器。此固件mtk引导为MT6985。博文将简单说明此固件的一些特点与刷写注意事项。对于NV损坏的机型。展示修改校验电阻的图示。方便改写参数等 通过博文了解 1💝💝💝-----此机型工程固件的资源刷写注意事项 2…

css 中 ~ 符号、text-indent、ellipsis、ellipsis-2、text-overflow: ellipsis的使用

1、~的使用直接看代码 <script setup> </script><template><div class"container"><p><a href"javascript:;">纪检委</a><a href"javascript:;">中介为</a><a href"javascript:…

曲线图异常波形检测系统源码分享

曲线图异常波形检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Comput…

【cache】浅析四种常用的缓存淘汰算法 FIFO/LRU/LFU/W-TinyLFU

本文浅析淘汰策略与工作中结合使用、选取&#xff0c;并非针对算法本身如何实现的 文章目录 FIFOLFULRUW-TinyLFU实践与优化监控与调整 FIFO first input first output &#xff0c; 先进先出&#xff0c;即最早存入的元素最先取出&#xff0c; 典型数据结构代表&#xff1a;…

SpringCloud-Netflix第一代微服务快速入门

1.springCloud常用组件 Netflix Eureka 当我们的微服务过多的时候&#xff0c;管理服务的通信地址是一个非常麻烦的事情&#xff0c;Eureka就是用来管理微服务的通信地址清单的&#xff0c;有了Eureka之后我们通过服务的名字就能实现服务的调用。 Netflix Ribbon\Feign : 客…

Python精选200Tips:171-175

深度学习实战项目 P171--CIFAR10数据集图像分类(Image Classification)P172--MS COCO数据集物体检测(Object Detection)P173-- MNIST手写数字数据集DCGAN生成P174--基于EasyOCR的字符识别P175--基于Air Quality数据集的变分自编码器(Variational autoEncoder&#xff0c;VAE) 运…

QT版数据采集系统研发过程记录

研发目的&#xff1a;通过智能监测设备将各个变电站运行的电压、电流、温湿度等数据采集汇总到计算机中心服务器&#xff0c;通过系统软件展示各个站点对应的运行工况。 软件架构&#xff1a;使用QT开发跨平台&#xff08;Windows系统、Ubuntu20.04&#xff09;客户端软件、连…

基于MATLAB的苹果外观特征检测

摘 要 本文根据苹果分级判定标准中的两个评定指标&#xff1a;果径和果面缺陷&#xff0c;探讨如何利用MATLAB技术进行苹果外观的特征检测&#xff0c;从而提高苹果品质检测的工作效率。 关键词 MATLAB&#xff1b;苹果分级&#xff1b;果径&#xff1b;果面缺陷 0 引言 …

Pandas -----------------------基础知识(四)

自定义函数 Series 加载数据 import pandas as pd df pd.DataFrame({Age: [20, 25, 30, 35, 40]}) df # 目标: 让 Age 列 的每个元素 num1 num2 def add_nums(x,num1,num2):return x num1 num2 df[Age].apply(add_nums,num1 2,num2 3) 法二 df[Age].apply(lambda x ,num1…

大模型算法入行转行?指南来了!

最近私信问我关于入行、转行方面的问题比较多&#xff0c;就专门写一篇讲讲我的理解。 首先说明一下个人的背景和现状&#xff0c;我本人是本科学历&#xff0c;有互联网大厂搜推方向经验&#xff0c;后来跳到中厂继续做推荐&#xff0c;去年开始做大模型。现在是个小组长&…

用ChatGPT做数据分析与挖掘,爽!

导读&#xff1a;在现代数据分析中&#xff0c;Python凭借其强大的数据处理能力和丰富的库资源成为首选工具。ChatGPT&#xff0c;作为先进的自然语言处理模型&#xff0c;正逐步成为Python数据分析与挖掘的强大辅助工具。 通过ChatGPT的自然语言处理能力&#xff0c;用户可以…

模糊综合评价法详细讲解+Python代码实现

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…

敏捷开发与DevOps的有机结合

在当今快速变化的技术环境中&#xff0c;软件开发团队面临着前所未有的挑战。客户需求不断变化&#xff0c;市场竞争激烈&#xff0c;技术更新速度加快&#xff0c;这些因素都要求开发团队具备高度的敏捷性和高效的运营能力。为了应对这些挑战&#xff0c;越来越多的企业选择将…

性能调优知识点(mysql)一

Mysql 索引 索引介绍 1.索引是排好序的数据结构。他的目的是为了提升查询效率。 2.mysql存储引擎分为innodb和myisam。它是用来形容表的。 innodb支持事务、外键、行锁 myisam不支持事务、外键 3.myisam使用3个文件来存储每张表数据&#xff0c;每个文件名以表名开头&#x…

智能硬件语音交互接入大模型知识库的排错指引

前言 前篇讲了把大模型知识库接入到聆思CSK6大模型开发板的文章&#xff0c;这篇讲一下配置失败时该怎么去定位问题和解决。 阅读这篇文章前建议先看&#xff1a;三步把知识库接到智能语音硬件上-CSDN博客 一、排错流程顺序参考 二、云端鉴权问题处理 原因1&#xff1a;聆思平…

css动态边框

参考&#xff1a; Clip-path实现按钮流动边框动画_在线clip-path-CSDN博客 https://www.5axxw.com/questions/simple/9ju5yt#google_vignette <div class"bottom-top-item-centent bottom-top-item-left"><vue-seamless-scroll :data"listLeftData&q…

稿件生产业务并发竞争场景下的安全性保障

一. 背景 视频业务作为B站内容生态的心脏&#xff0c;承载了海量的视频内容和用户互动。它不仅是用户获取信息、享受娱乐的窗口&#xff0c;更是UP主展示创意、分享知识的舞台。在设计和实现视频系统时&#xff0c;我们致力于平衡用户体验、内容分发的效率&#xff0c;同时确保…