首页 > 其他分享 >嵌入式硬件学习(一)

嵌入式硬件学习(一)

时间:2024-11-15 20:16:50浏览次数:3  
标签:学习 存储 ROM RAM 总线 嵌入式 硬件 寄存器 ARM

文章目录

一、ARM介绍

1、ARM公司

(1)主要设计ARM系列RISC处理器内核
(2)授权ARM内核给生产和销售半导体的合作伙伴,自己不生产芯片
(3)提供基于ARM架构的开发设计技术

2、ARM各系列

(1)A——特点:高性能、支持多核,应用场景:手机、电脑
(2)R——特点:实时性强,应用场景:汽车电子
(3)M——特点:低功耗、低延迟,应用场景:嵌入式系统、工业自动化

二、SOC概念

SOC构成
(1)SOC包括:kernal、总线、存储器、片内外设。
(2)kernal包括
算术逻辑单元(ALU)、
寄存器(R0-R12)、
内存管理单元(MMU)——负责将RAM映射为虚拟内存、
高速缓存——i.cache、d.cache、
pc、lr、sp寄存器。
(3)内部总线包括
AHB总线:高速总线,挂载存储器、LCD等高速设备。
APB总线:低速总线,挂载Timer、UART、I2C等。
(4)最小系统:电源、时钟、复位、ROM、RAM。

三、ROM和RAM的分类

RAM介绍
sram用晶体管存储0和1,速度快,成本高,存储密度小
dram动态存储,用电容充放电存储0和1,功耗大,速度慢,成本低,存储密度大
sdram增加了同步电路,提高了读写速度
ddr ram(double data rate sdram),为sdram的下一代
iram并非真正意义上的ram,通常iram就是sram,通常在soc内部,所以叫iram
ROM介绍
rom非易失性存储器,最早只读不写
promprogrammable rom,可编程的rom。能够写入一次
eprom可擦写的prom,可以重复擦写,需要特殊工具
eeprom电可擦写的prom
flash新一代非易失性存储器,分为nor flash(可以寻址)和nand flash(不能寻址)

四、编译流程

在这里插入图片描述

五、大小端

大小端是指数据在内存中的存储方法
1、大端:高位字节在低地址,低位字节在高地址。
2、小端:低位字节在低地址,高位字节在高地址。

六、ARM的工作模式

ARM有7种基本工作模式:
1、User:非特权模式
2、FIQ:高优先级(fast)中断产生
3、IRQ:低优先级(normal)中断产生
4、Abort:存取异常产生
5、Supervisor:复位或者软中断指令执行
6、Undef:执行未定义指令
7、System:和User模式相同的寄存器集特权模式

七、ARM寄存器基本介绍

1、ARM有37个32bits长的寄存器:PC、CPSR、5个SPSR、30个通用寄存器
2、Cortex有40个32bits长的寄存器。
3、sp寄存器:栈指针寄存器,主要用于临时存储局部变量、函数形参和返回地址。
4、lr寄存器:用于存储函数调用的返回地址。
5、pc寄存器:指向cpu执行的下一条指令。
在这里插入图片描述

八、判断一个数是不是立即数

判断条件有以下三点:
(1)如果这个数的范围在0-255之间,那么这个数一定是立即数;
(2)如果超出,需要把这个数展开成二进制,从高位依次向下第一个1和和最后一个1之间如果位数不超过8位(包含这两个1),如果超过了一定不是;
(3)如果不超过八位,还要看最低位1后面的零是否为偶数,如果是偶数,则是立即数。

标签:学习,存储,ROM,RAM,总线,嵌入式,硬件,寄存器,ARM
From: https://blog.csdn.net/qq_51405411/article/details/143781265

相关文章

  • 多种智能优化算法优化正则化极限机器学习机(RELM)的数据回归预测
     正则化极限学习机(RELM)通过引入正则化项来约束模型复杂度,从而提高模型的泛化能力。然而,优化RELM的最优权值(即隐藏层到输出层的权重)仍然是提升其性能的关键。通过多种智能优化算法来优化RELM的最优权值,可以显著提升其在数据回归预测任务中的性能。以下是相关过程的基本原理和示......
  • 大数据学习15之Scala集合与泛型
    1.概述        大部分编程语言都提供了数据结构对应的编程库,并称之为集合库(CollectionLibrary),Scala也不例外,且它还拥有以下优点:易用:灵活组合运用集合库提供的方法,可以解决大部分集合问题简洁:拜类型推断和函数式编程所赐,帮助程序员写出更简洁,更优雅的代码安全:......
  • 【深度学习目标检测|YOLO算法5-2-3】YOLO家族进化史:从YOLOv1到YOLOv11的架构创新、性
    【深度学习目标检测|YOLO算法5-2-3】YOLO家族进化史:从YOLOv1到YOLOv11的架构创新、性能优化与行业应用全解析…【深度学习目标检测|YOLO算法5-2-3】YOLO家族进化史:从YOLOv1到YOLOv11的架构创新、性能优化与行业应用全解析…文章目录【深度学习目标检测|YOLO算法5-2-3......
  • 前端技术对html5的新特性学习
    html5新元素目录html5新元素语义化元素音频标签视频标签语义化元素<article>:代表页面或应用中的一个独立内容区域,如博客帖子、论坛帖子或用户评论。它通常包含标题(<header>)、内容(段落、图片等)和页脚(<footer>)。<aside>:表示与页面主要内容稍微独立的内容区域,如侧边栏、广告、......
  • 2024-2025-1 20241401 《计算机基础与程序设计》 第八周学习总结
    班级链接2024计算机基础与程序设计作业要求第八周作业作业目标①功能设计与面向对象设计②面向对象设计过程③面向对象语言三要素④汇编、编译、解释、执行教材学习内容总结《计算机科学概论》第9章面向对象方法:介绍了面向对象(OOD)的基本概念,包括类和对......
  • 【SpringBoot每日学习 - 第二天】SpringApplication 启动类:方法篇一
    SpringApplication类是SpringBoot应用程序的核心类之一,负责启动和初始化整个SpringBoot应用。通过调用SpringApplication.run()方法,SpringBoot会启动嵌入式的Web服务器(如Tomcat)并创建Spring容器。SpringApplication类具有一系列方法和配置项,允许开发者自定......
  • 【SpringBoot每日学习 - 第一天】SpringApplication 启动类:属性篇
    SpringApplication类是SpringBoot应用启动的核心类之一,包含了大量的属性,控制着应用启动的各个方面。这些属性涵盖了从配置环境、应用上下文类型、Banner显示、启动日志、事件监听等多个方面。以下是SpringApplication类中重要属性的详细说明及其用途:静态属性DEFAUL......
  • C语言经典100题 学习笔记(更新中)
    第一题:有1、2、3、4四个数字,能组成多少互不相同且无重复数字的三位数?都是多少?#include<stdio.h>//有1、2、3、4四个数字//能组成多少互不相同且无重复数字的三位数?都是多少?intmain01(){ inta=0; intb=0; intc=0; intcount=0; for(a=1;a<5;a++) {......
  • 论文风向变了【迁移学习+多模态融合】才是王道
    2024发论文&模型涨点之——迁移学习+多模态融合当迁移学习和多模态融合相结合时,主要是利用迁移学习的优势来提升多模态融合模型的性能,或者利用多模态数据进行更有效的迁移学习。例如,在一个既有图像又有文本的多模态情感分析任务中,可以先在一个大规模的单模态(如图像情感分类或......
  • 大数据项目-Django基于机器学习实现的音乐推荐系统
    《[含文档+PPT+源码等]精品Django基于机器学习实现的音乐推荐系统》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、包运行成功以及课程答疑与微信售后交流群、送查重系统不限次数免费查重等福利!数据库管理工具:phpstudy/Navicat或者phpstudy/sqlyog后台管理系统涉......