嵌入式系统原理及接口技术 ARM9体系结构

嵌入式系统期末复习 第一章 嵌入式系统概论 1.嵌入式系统定义 从技术的角度定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 2.嵌入式系统特点 嵌入式系统中运行的任务是专用而确定的; 嵌入式系统都是实时系统,有实时性的要求; 系统可靠性要求高(因为使用环境可能很恶劣); 具有功耗约束; 系统资源紧缺; 3.risc 与cisc区别 CISC适用于通用计算机,RISC使用于嵌入式系统。 4.嵌入式系统组成 硬件包括微处理器、外围硬件设备、嵌入式操作系统,以及用 阅读详情

一、ARM微处理器系列介绍

1.1 ARM的版本号含义

不同的体系结构对应着不同的指令集,ARM公司给这些在不同阶段体系结构中使用的指令集定义了版本号,版本号的名称为ARMvx(符号x代表数字,即1,2,3,…)。

1.2 ARM系列中的一些符号含义

以“ARM”字符为前缀的微处理器核名称中,还经常会出现以下一些符号:
(1)T:支持高密度16位的压缩Thumb指令集。
(2)D:支持片上调试。
(3)M:支持64位除法。
(4)I:具有Embeded-ICE(即嵌入式的ICE),支持片上断点。
(5)E:增强性,具有Java,DSP等增强的处理功能。
(6)S:表示综合处理器。
(7)J:表示具有Jazelle技术,该技术支持。

1.3 Cortex系列中的一些符号含义

Cortex系列是ARM公司对新的微处理器核的命名前缀,它所对应的指令集版本号是ARMv7。

Cortex系列的微处理器核名称中,还经常会出现以下一些符号:
(1)M:针对微控制器和低成本应用提供优化的系列。
(2)R:针对实时系统应用的系列。
(3)A:针对面向高端的应用,支持基于虚拟内存的操作系统。

二、ARM9微处理器特征

ARM9系列微处理器是目前在我国用得最广泛的、拥有高性价比的一种嵌入式微处理器,其采用了低功耗的32位RISC结构,非常适合应用在要求低成本、低功耗的消费类产品中。

2.1 ARM9的指令流水

ARM920T微处理器的指令流水采用了典型的RISC 5级流水线结构,将指令的处理过程分为取指、译码、执行、访存和写回5个步骤。5级流水线结构采用分离指令缓存和数据缓存的结构,即哈佛结构,将每一条指令处理分配到3个或者5个时钟周期内完成,也就是说,在每一个时钟周期内同时可能有5条指令在处理,消除了指令处理的性能瓶颈,加快了指令处理速度。

2.2 ARM9指令集特点

ARM920T的指令集是基于精简指令集计算机(RISC)原理,RISC指令集计算机机与复杂指令集计算机(CISC)相比较而言,译码机制简单,从而使RISC指令集的微处理器具有以下一些优点:
(1)较高的指令吞吐率。
(2)实时中断响应性能好。
(3)具有体积小、性价比高的处理器宏单元。

2.3 ARM9的工作模式

ARM9微处理器核共支持7种工作模式,在不同的工作模式下,算术运算及逻辑运算等操作所使用的通用寄存器组不同。ARM9处理器核中每组通用寄存器有16个,整个ARM9核共有31个通用寄存器。

处理器模式 模式符号 意义
用户模式 Usr 正常执行程序时的处理器模式
系统模式 Sys 运行特权操作系统任务时的模式
管理模式 Svc 操作系统的保护模式
中止模式 Abt 指令或数据预取操作中止时的模式,该模式下实现虚拟存储器或存储器保护
未定义模式 Und 当执行未定义的指令时进入该模式
IRQ模式 Irq 响应普通中断时的处理模式
FIQ模式 Fiq 响应快速中断时的处理模式

7种模式中,对于除用户模式外的其他6种工作模式统称为特权模式,其中,又把管理模式、中止模式、未定义模式、IRQ模式、FIQ模式5种工作模式统称为异常模式。

ARM9微处理器核的工作模式是可以通过软件控制来改变的,而且外部中断信号或系统异常处理也可以使工作模式发生改变。

通常情况下,系统的应用程序是在用户模式下执行。当工作在用户模式下,ARM9微处理器核所执行的程序不能访问呢那些被保护的系统资源,也不能改变为处理器核的工作模式。但是,当系统发生异常时,ARM9微处理器核的工作模式就会改变。

三、ARM9的存储组织结构

3.1 ARM9中的地址特征

ARM9微处理器核的每个地址是对应于一个存储字节而不是一个存储字,但ARM9微处理器核可以访问存储字。访问存储字时,其地址应该是字对准的,即字地址可以被4整除。

ARM9微处理器核中的PC寄存器是32位的,地址通常是无符号的整数形式,因此地址计算时会产生在地址空间中上溢或下溢的情况。若产生地址上溢或下溢,PC寄存器中的值又会从0x00000000开始。

目的地址的计算公式:

目的地址=PC
D1. 计算机基础-ARM体系结构与接口技术-嵌入式学习LV9 嵌入式学习LV9-ARM体系结构与接口技术- D1. 计算机基础 阅读详情

相关推荐

ARM裸机全集之ARM体系结构(学习笔记)

ARM裸机全集之ARM体系结构

没有梦想,和咸鱼有什么区别! 5285

嵌入式系统原理及接口技术:ARM9体系结构详解

ARM9体系结构是由ARM公司设计的一种32位处理器架构,广泛应用于各种嵌入式系统中。ARM9处理器具有较高的性能和较低的功耗,适用于需要处理较复杂任务的应用。嵌入式系统的发展已经成为了当今科技领域的重要方向,而ARM9体系结构作为一种广泛应用于嵌入式系统中的处理器架构,具有高性能、低功耗和丰富的外设接口等特点,因而备受关注。本文将详细介绍ARM9体系结构的原理及接口技术,并提供相应的源代码示例。以上代码演示了如何使用ARM9处理器的GPIO接口来控制外部的通用输入输出设备。一、ARM9体系结构概述。

WangWEel的博客 946

ARM嵌入式体系结构与接口技术CortexA9习题答案:从MMU到中断的实战解析

ARM嵌入式开发中,体系结构与接口技术是工程师进阶应用处理器必须跨越的门槛。CortexA9作为ARMv7-A架构的典型代表,其MMU虚拟内存管理、Cache一致性协议、异常中断处理机制与ARM/Thumb指令集切换,构成了嵌入式系统底层设计的核心知识体系。理解这些原理不仅有助于应对考试,更直接关系到Linux驱动开发、BSP移植等真实工程场景。从通用概念出发,本文结合习题答案,梳理了CortexA9存储系统、中断控制器GIC及UART、SPI等接口技术的实践要点,帮助读者建立从寄存器操作到驱动视角的完整认

weixin_33805992的博客 409

ARM9嵌入式系统基础:第1章全面入门指南

嵌入式系统是专为执行独立、特定功能而设计的计算机系统,广泛应用于工业控制、消费电子产品、汽车电子等领域。其硬件通常包括处理器、内存和输入/输出设备等基础组件,而软件则依赖于操作系统、应用程序和固件的组合。接下来,我们通过一个简单的案例来说明这一流程。假设我们需要开发一个基于ARM9的温度监控系统。需求分析:系统需要读取温度传感器的数据,并通过LCD显示当前温度,当温度超过设定阈值时,通过蜂鸣器发出警告。系统设计:设计一个模块化系统,包含温度读取模块、显示模块和报警模块。

weixin_42372837的博客 1183

ARM9嵌入式系统设计从入门到实战

ARM9 是基于 RISC(精简指令集计算)架构的一类高性能、低功耗嵌入式处理器,广泛应用于工业控制、消费电子、通信设备等多个领域。其架构设计采用了五级流水线、哈佛结构、分离式缓存等关键技术,有效提升了指令执行效率与系统响应速度。作为 ARMv4T 架构的主要实现之一,ARM9 支持 32 位 ARM 指令和 16 位 Thumb 指令,兼顾性能与代码密度。

weixin_42668301的博客 1228

”COMSOL“竟然如此简单!我悟了!!

COMSOL Multiphysics具有强大的多物理场全耦合仿真分析功能、高效的计算性能,可以保证数值仿真的高度精确,已被广泛应用于各个学科领域,近年来运用COMSOL来解决电化学实际工程问题也越来越普遍。

C1012562281的博客 3447

FAST-LIO2实战:如何在无人机上部署并实现厘米级定位(附ROS配置全流程)

本文详细介绍了如何在无人机上部署FAST-LIO2激光雷达惯性里程计系统,以实现厘米级精确定位。内容涵盖从硬件选型(如激光雷达与机载计算机)、软件环境配置(ROS Noetic)、传感器标定,到FAST-LIO2参数调优、与PX4飞控集成以及实际飞行测试的全流程。重点解决了实时定位中的外参标定、数据同步等关键问题,为无人机在无GPS或复杂光照环境下提供稳定可靠的定位解决方案。

weixin_29062865的博客 250

FT601Q芯片深度解析:从USB3.0引脚定义到FPGA FIFO协议实战选型

本文深入解析FT601Q芯片在USB3.0接口设计与FPGA协议栈开发中的应用,详细介绍了USB3.0引脚定义、FT601Q芯片架构、245同步FIFO模式及硬件设计要点,帮助工程师实现高速数据传输系统。

weixin_30607659的博客 447

利用腾讯云轻量服务器快速搭建网站CDN

腾讯云的轻量最近在主机和站长中间可谓是占尽来风头,优秀的线路,低廉的价格使得越来越多的人开始使用腾讯云的轻量级服务器来部署应用。由于腾讯云轻量服务器的海外服务器电信走的是CN2GIA线路带宽30m挺适合做CDN的,我就记录一下如何利用腾讯云香港的轻量服务器搭建一个CDN。 购买服务器 首先选购服务器,最近腾讯云在做活动,力度很大国内备案用户可以选用国内的服务器最低128元/年,未备案的可以选用香港或者新加坡的服务器。 购买链接 服务器系统选Debian、Ubuntu、centos都可以 一键脚

demo_top的博客 2565

【RViz2】导入urdf模型时报错:Could not load resource xxx,Unable to open file xxx,Error retrieving file xxx

初学ROS2,想要在RViz2中显示urdf模型。其中.urdf文件引用了外部的meshes文件夹。

qq_43557907的博客 9487

ROS实践(四)机器人SLAM建图(gmapping)

本文介绍了SLAM技术及其实现方法。SLAM(同步定位与地图构建)让机器人在未知环境中通过传感器数据自主定位并构建地图。文章详细讲解了激光雷达、RGBD相机等常用传感器,以及gmapping和map_server这两个ROS功能包的使用方法。重点阐述了SLAM建图实验步骤:配置gmapping节点参数、启动机器人仿真、运行gmapping节点、使用rviz可视化工具、通过键盘遥控机器人完成地图构建并保存。实验结果表明,该方法能有效实现机器人自主建图功能,为后续导航等应用奠定基础。

qq_1033275663的博客 4331

uniapp:实现APP获取陀螺仪数据、加速传感器、线性加速传感器,uniApp实时监听陀螺仪【XYZ】数据及停止监听与资源释放等功能示例源码,根据需求做功能(完美兼容Android安卓、苹果ios)

uniapp陀螺仪,uniapp加速传感器,uniapp线性加速传感器,APP陀螺仪数据,uniapp app 端获取陀螺仪数据示例代码,手机中获取陀螺仪的数据,uniApp实时获取陀螺仪xyz数据,android陀螺仪方向,获得陀螺仪传感器,处理传感器数据,停止监听与资源释放,Android使用陀螺仪,uniapp苹果ios陀螺仪,uni-app设备之(加速计,罗盘,陀螺仪)插件安卓/IOS APP提供了获取陀螺仪数据的能力,手机陀螺仪传感器获得手机自身旋转的角度,陀螺仪获取旋转角度,陀螺仪、加速度传感器

✅ 精选推荐文章 4266

【置顶】TEE从入门到精通-[目录]

此专栏讲解包含不限于optee、商用TEE、常规的安全业务设计。但主要基于optee最新代码,深度讲解和剖析各项原理和机制...

baron-周贺贺-代码改变世界ctw 6426

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

上一篇: 信息安全技术及应用 系统安全防护技术
下一篇: Codeforces Round #375 (Div. 2)
JinbaoSite0144
博客等级 码龄12年 231粉丝 157原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值