ARM
文章平均质量分 86
cr2066
与其在叹气中度过一生,不如在阳光中奔跑一生。
展开
-
S3C2440A地址空间
首先,说明如下:ARM按字节寻址,即对存储的最小访问单元是字节;存储单元按字节对齐。地址空间从高到底分为两部分:主存储区(包括静态存储区(存放img)和动态存储区(就是我们通常说的运行代码的内存))和外设寄存器区。而主存储区又会分为很多bank,目的是为了让更少的地址总线寻址更多的地址(128MB*8 = 1GB)即片选+地址总线模式。研究启动过程关心的是主存储区的静态转载 2016-07-18 21:28:50 · 1205 阅读 · 1 评论 -
arm汇编align伪指令详解
一个值得讨论的伪指令是.align,它可能在很多时候不被人注意,但是不恰当的使用将导致程序无法运行,这种可能性在ARM系统上几乎是百分之百的发生。.align的作用在于对指令或者数据的存放地址进行对齐,有些CPU架构要求固定的指令长度并且存放地址相对于2的幂指数圆整,否则程序无法正常运行,比如ARM;有些系统却不需要,如果不遵循地址的圆整规则,程序依然可以正确执行,只是降低了一些执原创 2016-07-19 21:20:44 · 13741 阅读 · 1 评论 -
几个常用(伪)汇编指令详解
SDRAM例程:从Nand Flash启动CPU时,CPU会自动将Nand Flash开始的4K数据复制到4KB的内部Ram中(起始地址0),然后地址0开始执行。本例程先用汇编设置好SDRAM,将程序从内部Ram复制到SDRAM,然后跳转到SDRAM执行。源代码包括sdram.S、gpio.c、s3c2440.h,编译为二进制文件后烧写到NandFlash运行。sdram.原创 2016-07-19 21:33:16 · 3680 阅读 · 0 评论