ARM9开发文档..doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ARM9开发文档.

ARM开发文档 ARM微处理器是一种高性能、低功耗的32位微处器,它被广泛应用中。ARM9代表了ARM公司主流的处理器,已经在手持电话、机顶盒、数码相机、GPS、以及因特网设备等方面有了广泛的应用。新一代的ARM9处理器,通过全新的设计,采用了更多的晶体管,能够达到两倍以上于ARM7处理器的处理能力。这种处理能力的提高是通过增加和减少指令执行周期实现的 1 硬件需求分析 处理性能 技术指标和成本 功耗 操作系统和软件支持工具的选择 2 软件需求分析 实时性 系统的功能 开发的难度 成本 3 系统移植 这个阶段根据不同的软件设计方案可能不同。对于无操作系统的应用该阶段的主要目的是设计启动代码。对于有操作系统的应用则包括bootloader的移植和操作系统系统的移植。 4 启动代码 由于ARM软件编程一般采用高级语言,如C语言,因此在系统启动后必须有一段程序能够将CPU带入到能够运行C语言的状态,这段程序就是启动代码。 启动代码通常用汇编语言完成,并在系统复位入口点(ARM系统中为0地址)运行。 在嵌入式系统中系统复位入口点所在的硬件通常是Flash等芯片,存储在这些芯片中的数据即使掉电也能够保存,而且这个地方的硬件的访问宽度是由硬件设计决定,软件不能更改,这样就能保证上电后该地址的数据有效。 5 应用程序设计调试 1)图形用户界面: VxWorks下的WindML Linux下的QT Embedded、MicroWindows等 Windows CE的用户界面则保持传统的Windows风格界面 2)实时性:在应用程序设计中同样也要考虑。 3)功耗:在应用程序设计时须充分考虑系统功耗,在不影响系统功能的同时将功耗降到最低。 4)程序大小 二、ARM9汇编指令总结 1、ARM指令集? 基本格式? opcode{cond}{S}??Rd,Rn{,opcode2}? 其中,内的项是必须的,{}内的项是可选的,如opcode是指令助记符,是须的,而{cond}为指令执行条件,是可选的,如果不写则使用默认条件AL(无条件执行)。 2、ARM数据处理指令? ??? 数据处理指令大致可分为3类;数据传送指令(如MOV、MVN),算术逻辑运算指令(如ADD,SUM,AND),比较指令(如CMP,TST).数据处理指令只能对寄存器的内容进行操作.所有ARM数据处理指令均可选择使用S后缀,以影响状态标志.比较指令CMP,CMN,TST和TEQ不需要后缀S,它们会直接影响状态标志 数据传送指令: MOV?:数据传送指令.将8位图立即数或寄存器(operant2)传送到目标寄存器Rd,可用于移位运算等操作 MVN?:数据非传送指令.将8位图立即数或寄存器(operand2)按位取反后传送到目标寄存器(Rd),因为其具有取反功能,所以可以装载范围更广的立即数 算术逻辑运算指令: ADD?:加法运算指令.将operand2数据与Rn的值相加,结果保存到Rd寄存器 ADC?:带进位加法指令.将operand2的数据与Rn的值相加,再加上CPSR中的C条件标志位.结果保存到Rd寄存器 SUB?:减法运算指令.用寄存器Rn减去operand2.结果保存到Rd中 SBC?:带进位减法指令。用寄存器Rn减去operand2,再减去CPSR中的C条标志位的非(即若C标志清零,则结果减去1),结果保存到Rd中 RSC?:带进位逆向减法指令.用寄存器operand2减去Rn,再减去CPSR中的C条件标志位,结果保存到Rd中 AND?:逻辑与操作指令.将operand2值与寄存器Rn的值按位作逻辑与操作,结果保存到Rd中 ORR?:逻辑或操作指令.将operand2的值与寄存器Rn的值按位作逻辑或操作,结果保存到Rd中 EOR?:逻辑异或操作指令.将operand2的值与寄存器Rn的值按位作逻辑异或操作,结果保存到Rd中 BIC?:位清除指令.将寄存器Rn的值与operand2的值的反码按位作逻辑与操作,结果保存到Rd中 比较指令: CMP?:比较指令.指令使用寄存器Rn的值减去operand2的值,根据操作的结果理新CPSR中的相应条件标志位,以便后面的指令根据相应的条件标志来判断是否执行 CMN?:负数比较指令.指令使用寄存器Rn与值加上operand2的值,根据操作的结果理新CPSR中的相应条件标志位,以便后面的指令根据相应的条件标志来判断是否执行 TST?:位测试指令.指令将寄存器Rn的值与operand2的值按位作逻辑与操作,根据操作的结果理新CPSR中相应的条件标志位,以便后面指令根据相应的条件标志来判断是否执行 TEQ?:相等测试指令.指令寄存器Rn的值与operand2的值按位作逻辑异或操作,根据操作的结果理新CPSR中相应条件标志位,以便后

文档评论(0)

dashewan + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档