摘要: 常常能看到ARM7,ARM9,ARM11,以及armv6k等不同的表达。且在GCC编译中,常常要用到 -march, -mcpu等。他们分别表达什么涵义呢?Sam自己也不很清楚,只是大概有个模糊的概念。今天就仔细研究一下。ARM(Advanced RISC Machines)是微处理器行业的一家知名企业。设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。1985年,第一个ARM原型在英国剑桥诞生。ARM公司的特点是只设计芯片,而不生产。ARM将其技术授权给世界上许多著名的半导体、软件和OEM厂商,每个厂商得到的都是一套独一无二的ARM相关技术及服务。利用这种合伙关系,ARM很快成 阅读全文
posted @ 2012-11-26 21:31 雪中飞 阅读(1096) 评论(0) 推荐(0) 编辑
摘要: 一、ARM工作状态下的寄存器组织ARM微处理器共有37个32位寄存器,其中31个为通用寄存器,6个位状态寄存器。但是这些寄存器不能被同时访问,具体哪些寄存器是可以访问的,取决ARM处理器的工作状态及具体的运行模式。但在任何时候,通用寄存器R14~R0、程序计数器PC(即R15)、一个状态寄存器都是可访问的。通用寄存器通用寄存器包括R0~R15,可以分为3类:(1)未分组寄存器R0~R7(2)分组寄存器R8~R14(3)程序计数器PC(R15)1.未分组寄存器R0~R7在所有运行模式下,未分组寄存器都指向同一个物理寄存器,它们未被系统用作特殊的用途.因此在中断或异常处理进行运行模式转换时,由于不 阅读全文
posted @ 2012-11-26 21:28 雪中飞 阅读(1157) 评论(0) 推荐(0) 编辑
摘要: 一、存储器格式(字对齐):Arm体系结构将存储器看做是从零地址开始的字节的线性组合。从零字节到三字节放置第一个存储的字(32位)数据,从第四个字节到第七个字节放置第二个存储的字数据,一次排列。作为32位的微处理器,arm体系结构所支持的最大寻址空间为4GB。存储器格式 1、大端格式:高字节在低地址,低字节在高地址; 2、小端格式:高字节在高地址,低字节在低地址;指令长度:Arm微处理器的指令长度是32位的,也可以为16位(thumb状态下)。Arm微处理器中支持字节(8位),半字(16位),字(32位)三种数据类型,其中,字需要4字节对齐,半字需要2字节对齐。注:所谓的指令长度是一条完整的指令 阅读全文
posted @ 2012-11-26 20:44 雪中飞 阅读(11676) 评论(0) 推荐(1) 编辑
摘要: 精简指令集与复杂指令集 我们可以思考得到一个缓存器A的数据转移至令一个缓存器B,只需将缓存器A开启成读的状态,然后将缓存器B开启成写的状态,两个步骤即可。但是要求CPU在内存中某个区段搜寻某个字,微指令的编码就必须多安排一些。因此,微处理随着微指令的复杂度可分为精简指令集计算机RISC(Reduce Instruction Set Computer)及复杂指令集计算机CISC(Complex Instruction Set Computer)。复杂指令集计算机(CISC) 长期来,计算机性能的提高往往是通过增加硬件的复杂性来获得.随着集成电路技术.特别是VLSI(超大规模集成电路)技术的... 阅读全文
posted @ 2012-11-26 20:11 雪中飞 阅读(347) 评论(0) 推荐(0) 编辑