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

嵌入式系统学习Day37(ARM)

1、什么是RISC、CISC;

CISC:complex instruction set computer 复杂指令集架构 用复杂指令覆盖更多场景(X86)
RISC:reduce instruction set computer 精简指令集架构 用简单指令提升执行速度 ARM

2、冯.诺伊曼架构和哈佛架构有何区别?ARM内核属于哪一种?

冯.诺伊曼架构: “指令与数据混合存储、共享总线访问”
哈佛架构:“指令与数据分离存储、独立总线访问”
冯?诺伊曼架构的核心是 “低成本、通用性”:通过简单结构降低硬件成本,适合通用计算场景(如 PC),即使效率稍低,也可通过 “提高时钟频率、增加缓存” 弥补;
哈佛架构的核心是 “高实时性、高吞吐量”:通过并行访问提升效率,适合专用计算场景(如 DSP 处理音频 / 视频信号),但硬件成本更高;
ARM 内核(如 Cortex-M 系列、Cortex-A 系列)的架构并非 “纯哈佛” 或 “纯冯.诺伊曼”,而是基于哈佛架构的改进设计,核心原因是 “平衡效率与灵活性”;
ARM 内核的 “改进型哈佛架构” 是场景优化的产物:既用内部分离存储保证执行效率,又用外部兼容设计降低成本,完美适配移动设备、物联网等 “既要性能又要低功耗、低成本” 的需求。

3、ARM内核中都有什么?


ARM 内核的组成遵循 “精简高效、模块化扩展” 原则:
基础模块(流水线、ALU、寄存器)保证指令高效执行;
存储管理模块(Cache、MMU/MPU)平衡速度与安全性;
异常控制和总线接口确保系统稳定与外部兼容;
特色模块(FPU、DSP)则根据场景(移动设备、嵌入式、服务器)灵活配置,这也是 ARM 能在从智能手表到数据中心的全场景中广泛应用的核心原因。

4、ARM有几种工作模式?

7个基本的工作模式
1.User:非特权模式,大部分任务执行在这种模式
2.FIQ:当一个高优先级(fast)中断产生时将会进入这种模式
3.IRQ:当一个低优先级(normal)中断产生时将会进入这种模式
4.Supervisor:当复位或软中断指令执行时将会进入这种模式
5.Abort:当存取异常时将会进入这种模式
6.Undef:当执行未定义指令时会进入这种模式
7.System:使用和User模式相同寄存器集的特权模式
Cortex-A特有模式:
Monitor:是为了安全而扩展出的用于执行安全监控代码的模式;也是一种特权模式
Hyp:是一种特殊的特权模式,专为虚拟化技术设计,主要用于支持虚拟机监控器(Hypervisor) 运行,实现对物理硬件的虚拟化管理和多操作系统的隔离运行。

5、什么是异常向量表?

在 ARM 架构中,异常向量表(Exception Vector Table) 是一组连续的、地址固定的内存单元,用于集中存放各种异常(如中断、复位、错误等)的 “入口地址” 或 “跳转指令”。
当 CPU 检测到异常时,会自动根据异常类型跳转到向量表中对应的位置,从而进入相应的异常处理流程。它是 ARM 处理器响应异常的 “导航系统”,确保系统在遇到异常时能快速找到正确的处理程序。

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

相关文章:

  • 02-Media-10-video_decoder.py 对H.264或H.265格式视频解码并在液晶屏或外接HDMI显示屏上进行显示的示例程序
  • Go面试题及详细答案120题(61-80)
  • 第二部分:VTK核心类详解(第35章:vtkDataSetAttributes数据集属性类)
  • 智能文献分析系统:让AI成为学术研究助手
  • MATLAB基于AHP-熵权法-TOPSIS的学习能力评价研究
  • Ubuntu 部署 PostgreSQL 数据库(附shell脚本一键部署↓)
  • 《数据驱动下的双样本推断:均值与比例的硬核技术实践与方法论思考》
  • Git设置单个仓库用户名和邮箱的方法
  • MongoDB Integer
  • 深度学习第二章 线性代数简介
  • HTB precious
  • 【前后端与数据库交互】从零构建 Python + Vue + MongoDB 网站
  • 对比django,flask,opencv三大
  • 【6/20】MongoDB 入门:连接数据库,实现数据存储与查询
  • 【笔记】Docker使用
  • k8s自定义CNI插件实现指南
  • 使用Docker部署Kubernetes(K8s)详解
  • 【Docker】网络
  • 磁共振成像原理(理论)8:射频回波 (RF Echoes)-三脉冲回波(1)
  • 华为云 ELB:智慧负载均衡,让您的应用永葆流畅体验
  • 【实时Linux实战系列】PM QoS 与 C/P-State 管理:功耗与时延的平衡
  • github修改repo名称
  • 使用 C# 操作 Excel 工作表:添加、删除、复制、移动、重命名
  • Python 高效实现 Excel 转 PDF: 不依赖Office
  • Ubuntu25.04通过Docker编译Sunshine记录
  • WebRTC 如何实现的低延迟和高带宽利用率
  • Python接口自动化浅析unittest单元测试原理
  • 【附源码】基于SpringBoot的新能源汽车销售管理系统的设计与实现
  • 虚拟机Ubuntu挂载共享文件夹
  • JS实现房贷计算器和购物车页面