arm笔记
文章平均质量分 62
IT_FAVORITE
这个作者很懒,什么都没留下…
展开
-
ARM的商业模式和ARM各种版本号区分
一. ARM的商业模式ARM公司商业模型:IP授权为核心的无晶圆半导体公司与Intel不同,ARM公司也是Fabless无晶圆半导体,这一点跟NVIDIA以及卖掉晶圆厂之后的AMD是一样的,不过ARM公司自己不产任何处理器,主要是提供IP授权给半导体合作伙伴(高通、苹果、AMD及三星等),后者使用ARM的架构、设计以及开发工具推出自己的处理器,然后再供应给OEM客户(各种手机、平板厂商就是这样的),原创 2017-12-10 15:17:04 · 3803 阅读 · 0 评论 -
S5PV210的启动过程详解
内存: SRAM (静态内存) 容量小、价格高,优点是不需要软件初始化上电就能用 DRAM(动态内存) 容量大、价格低,缺点就是上电后不能直接使用,需要软件初始化后才能使用。外存: NorFlash:特点是容量小,价格高,优点是可以和CPU直接总线式相连,CPU上电后可以直接读取,原创 2017-12-16 13:58:29 · 330 阅读 · 0 评论 -
ARM异常处理方式简单介绍
什么是异常1.正常工作之外的流程都叫异常 2.异常会打断正在执行的工作,并且一般我们希望异常处理完成后继续回来执行原来的工作 3.中断是异常的一种异常向量表1.所有的CPU都有异常向量表,这是CPU设计时就设定好的,是硬件决定的。 2.当异常发生时,CPU会自动动作(PC跳转到异常向量处处理异常,有时伴有一些辅助动作) 3.异常向量表是硬件向软件提供的处理异常的支持。ARM的异常处理机制当异原创 2017-12-17 20:25:19 · 410 阅读 · 0 评论 -
ARM的37个寄存器详解
ARM共有37个寄存器,都是32位长度 37个寄存器中30个为“通用”型,1个固定用作PC,一个固定用作CPSR,5个固定用作5种异常模式下的SPSR。注意:System模式使用User模式寄存器。当ARM从用户模式(User)切换到快速中断模式(FIQ),寄存器r0~r7,r15是不变的,FIQ的寄存器r8~r14切换User模式下的同名寄存器。其它几种模式之间切换同理。ARM总共有37个寄存器原创 2017-12-17 19:55:15 · 4599 阅读 · 0 评论 -
ARM编程模式和7种模式
ARM采用的是32位架构ARM阅读--Byte: 8 bits--Halfword: 16 bits(2 byte) 半字--Word: 32 bits(4 byte)大部分ARM core提供: core(核心)–ARM指令集(32 bit) (有些占内存、时间快)–Thumb指令集(16 bit) (省内存、但是浪费时间)–Thu转载 2017-12-16 19:58:44 · 834 阅读 · 0 评论 -
NorFlash和NandFlash
Flash编程原理都是只能将1写为0,而不能将0写成1.所以在Flash编程之前,必须将对应的块擦除,而擦除的过程就是将所有位都写为1的过程,块内的所有字节变为0xFF.因此可以说,编程是将相应位写0的过程,而擦除是将相应位写1的过程,两者的执行过程完全相反.SoC常用外存:一.NorFlash:总线式访问,接到SROM bank,优点是可以直接总线访问,一般用来启动。 NandFlash:(SL原创 2017-12-16 12:45:46 · 370 阅读 · 0 评论 -
ARM汇编指令级
一.指令与伪指令指令:CPU机器指令的助记符,经过编译后会得到一串10组成的机器码,可以由CPU读取执行。 伪指令:本质上不是指令(只是和指令代码一起写在代码中),它是编译器环境提供的,目的是用来指导编译过程,经过编译后伪指令最终不会生成机器码。二:ARM汇编特点:2.1:LDR/STR架构ARM采用RISC架构,CPU本身不能直接读取内存,而需要先将内存中内容加载入CPU中通用寄存器中才能被CP原创 2017-12-23 14:22:59 · 477 阅读 · 0 评论 -
统一编址和独立编址
一.什么是IO?什么是内存? IO是输入输出接口,是CPU和其它外部设备之间的通道。一般的,IO就是指CPU的各种内部或外部外设。二.内存的访问方式 内存通过CPU的地址总线来寻址定位,然后通过CPU数据总线来读写。三.IO的访问方式 IO指的是与CPU连接的各种外设。CPU访问外设有两种方式,一种类似于访问内存的方式,即把外设的寄存器当作一个内存地址来读写,从而以访问内存相同的方式来操作外设原创 2017-12-12 09:27:03 · 1681 阅读 · 0 评论 -
可编程器件的编程原理
一.从源代码到CPU的执行过程 源代码通过编译器编译、汇编,生成Elf格式二进制可执行文件,将该生成的文件拷贝到flash中,然后CPU通过总线将数据和代码拷贝到内存,然后CPU通过总线在内存取指令,先解码,然后执行。然后再解码,再执行。直到指令执行结束。二.汇编语言的实质 汇编的实质是机器指令的助记符 举例:汇编:RLA(左移) 机器指令:10101101010 RLA就是助记符机器指令:原创 2017-12-12 08:05:07 · 419 阅读 · 0 评论 -
CPU的设计原理,数据总线和地址总线
如上图: SOC中包含了CPU,Flash,串口和内存 在嵌入式平台工作时,编译好的二进制文件先放在flash里面(暂存作用),开机的时候,CPU把二进制文件从flash拷贝到内存运行。总线:地址总线和数据总线 CPU说的32位就是数据总线的位数为32位,单次通信数量为2的32次方注意:CPU的位数指的是数据总线位数,而决定最大支持内存的则是地址总线位数。举例:内存为4G,地址总线位数为32,原创 2017-12-10 16:07:13 · 13982 阅读 · 1 评论 -
SoC和CPU的区别
SoC:(英语:System on Chip,缩写:SoC)是一个将电脑或其他电子系统集成到单一芯片的集成电路。系统芯片可以处理数字信号、模拟信号、混合信号甚至更高频率的信号。系统芯片常常应用在嵌入式系统中。系统芯片的集成规模很大,一般达到几百万门到几千万门。(摘自维基百科) 如上图:SoC:SoC里CPU和控制器都放在芯片里,运行速度很快,现在的外设可以叫内部外设,即在芯片内部的外设 SoC里原创 2017-12-10 15:44:32 · 19093 阅读 · 0 评论 -
ARM相关伪指令
一. 伪指令的意义 伪指令不是指令,伪指令和指令的根本区别是经过编译后不会生成机器码 伪指令的意义在于指导编译过程 一般的伪指令是以.标号开头的二. .号在gnu汇编中表示当前指令的地址 1.汇编中的标号_TEXT_BASE: .word TEXT_BASE_TEXT_BASE为一个标号,可以通过标号访问.word TEXT_BASE定义的地址,类似int a,通过...原创 2018-03-18 10:34:31 · 424 阅读 · 0 评论