0
问答首页 最新问题 热门问题 等待回答标签广场
我要提问

电子百科

Arm9

Arm9

Arm9的特点

  •   提供 1.1MIPS/MHz 的哈佛结构.

      支持 32 位 ARM 指令集和 16 位 Thumb 指令集.

      支持 32 位的高速 AMBA 总线接口.

      全性能的 MMU,支持 Windows CE,Linux,Palm OS 等多种主流嵌入式操作系统.

      MPU 支持实时操作系统.

      支持数据 Cache 和指令 Cache, 具有更高的指令和数据处理能力. 大小都为 16K.

Arm9的应用

  •   ARM9 系列微处理器主要应用于无线设备,仪器仪表,安全系统,机顶盒,高端打印机, 数字照相机和数字摄像机等.

Arm9微处理器结构

  •   1、  RISC体系结构:RISC结构优先选取使用频最高的简单指令,避免复杂指令

      1、RISC体系结构应具有如下特点:

      - 采用固定长度的指令格式,指令归整、简单、基本寻址方式有2~3种。

      - 使用单周期指令,便于流水线操作执行。

      - 大量使用寄存器,数据处理指令只对寄存器进行操作,只有加载/ 存储指令可以访问存储器,以提高指令的执行效率。

      除此以外,ARM体系结构还采用了一些特别的技术,在保证高性能的前提下尽量缩小芯片的面积,并降低功耗:

      - 所有的指令都可根据前面的执行结果决定是否被执行,从而提高指令的执行效率。

      - 可用加载/存储指令批量传输数据,以提高数据的传输效率。

      - 可在一条数据处理指令中同时完成逻辑处理和移位处理。

      - 在循环处理中使用地址的自动增减来提高运行效率。

      2、ARM微处理器的寄存器结构

      ARM处理器共有37个寄存器,被分为若干个组(BANK),这些寄存器包括:

      - 31个通用寄存器,包括程序计数器(PC指针),均为32位的寄存器。

      - 6个状态寄存器,用以标识CPU的工作状态及程序的运行状态,均为32位,目前只使用了其中的一部分。

      同时,ARM处理器又有7种不同的处理器模式,在每一种处理器模式下均有一组相应的寄存器与 之对应。即在任意一种处理器模式下,可访问的寄存器包括15个通用寄存器(R0~R14)、一至二个状态寄存器和程序计数器。在所有的寄存器中,有些是在 7种处理器模式下共用的同一个物理寄存器,而有些寄存器则是在不同的处理器模式下有不同的物理寄存器。

      3、ARM微处理器的指令结构

      ARM微处理器的在较新的体系结构中支持两种指令集:ARM指令集和Thumb指令集。其 中,ARM指令为32位的长度,Thumb指令为16位长度。Thumb指令集为ARM指令集的功能子集,但与等价的ARM代码相比较,可节省30% ~40%以上的存储空间,同时具备32位代码的所有优点。

Arm9的启动过程

  •   1、Bootloader的启动:其一般要实现的功能如下:

      (1)初始化CPU速度、存储器、存储器配置寄存器以及串口等;

      (2)激活指令/数据Cache、建立堆栈指针、建立启动参数区、构造参数结构和标识列表;

      (3)通过上电自检,来识别存在哪些设备,并报告异常,提供对电源管理中休眠/恢复的支持;

      (4)跳转到内核起始处,系统启动。

Arm9的运行模式

  •   ARM微处理器支持7种运行模式:

      ――用户模式(usr)

      ――快速中断模式(fiq)

      ――外部中断模式(irq)

      ――管理模式(svc)

      ――数据访问中止模式(abt)

      ――系统模式(sys)

      ――未定义指令中止模式(und)

      ARM体系结构所支持的异常类型

      复位、未定义指令、软件中断、指令预取中止、数据中止、IRQ(外部中断请求)、FIQ(快速中断请求)。

      对中断的响应:

      1、将下一条指令的地址存入相应连接寄存器LR,以便程序在处理异常返回时能从正确的位置重 新开始执行。若异常是从ARM状态进入,LR寄存器中保存的是下一条指令的地址(当前PC+4或PC+8,与异常的类型有关);若异常是从Thumb状态 进入,则在LR中保存当前PC的偏移量。

      2、将CPSR复制到相应的SPSR。

      3、根据异常的类型,强制转换CPSR的运行模式位。

      4、强制PC从相关的异常向量地址取下一条指令执行,从而跳转到相应的异常处理程序处。

      各类异常的具体描述:

      FIQ异常是为了支持数据传输或者通道处理而设计的。

      IRQ属于正常的中断请求。

      ABORT意味着对存储器的访问失败

提问者:香港快捷电路科技有限公司 地点:- 浏览次数:2943 提问时间:06-05 03:34
我有更好的答案
提 交
撰写答案
提 交
1 / 3
1 / 3
相关电子百科
3D晶体管
双极性晶体管
大功率晶体管
晶体管时间继电器
光敏电阻器