zoukankan      html  css  js  c++  java
  • ARM相关知识

    ARM7采用冯·诺依曼(Von-Neumann)结构,数据存储器和程序存储器重合在一起。 同时,此结构也被大多数计算机所采用。

    ARM7为三级流水线结构(取指,译码,执行),平均功耗为0.6mW/MHz,时钟速度为66MHz,每条指令平均执行1.9个时钟周期
    ARM7系列微处理器包括如下几种类型的核:ARM7TDMI、ARM7TDMI-S、 ARM720T、ARM7EJ

    ARM7采用的Neumann结构,取指令和取操作数都是通过一条总线分时进行,这样,在高速运算时,不但不能同时取指令和取操作数,而且还会造成传输通道上的瓶颈现象


    ARM9采用哈佛(Harvard)结构,程序存储器与数据存储器分开,提供了较大的存储器带宽。同时,大多数DSP都采用此结构
    ARM9为五级流水线(取指,译码,执行,缓冲/数据,回写),平均功耗为0.7mW/MHz。时钟速度为120MHz-200MHz,每条指令平均执行1.5个时钟周期
    ARM9系列微处理器包含ARM920T、ARM922T和ARM940T三种类型,以适用于不同的应用场合

    ARM 体系结构特点
    (1)多处理器状态模式:
    ARM体系结构定义了7种处理器模式:用户(usr)、快中断(fiq)、中断(irq)、管理(svc)、终止(abt)、未定义(und)和系统(sys),大大提高了ARM处理器的效率
    (2)两种处理器工作状态:
    ARM状态(执行32位ARM指令)和Thumb状态(执行16位Thumb指令)
    (3)嵌入式在线仿真调试
    ARM体系结构的处理器芯片都嵌入了在线仿真ICE-RT逻辑,便于通过JTAG来仿真调试芯片,省去了价格昂贵的在线仿真器
    (4)灵活方便的接口
    ARM体系结构具有协处理器接口,允许接16个协处理器。既可以使基本的ARM处理器内核尽可能小,方便地扩充ARM指令集,也可以通过未定义指令来支持协处理器的软件仿真
    (5)低电压功耗的设计
    考虑到ARM体系结构的处理器主要用于手持式嵌入式系统中,ARM体系结构在设计中就十分注意功耗的设计
    (6)RISC型处理器结构:
    ARM采用RISC结构,在简化处理器结构,减少复杂功能指令的同时,提高了处理器的速度

    ARM 数据类型
    字节(Byte):在ARM体系结构及常见的8位/16位处理器体系结构中,字节的长度均为8位
    字(Word):在ARM体系结构中,字的长度为32位,而在8位/16位处理器体系结构中,字的长度一般为16位
    半字(Half-Word):在ARM体系结构中,半字的长度为16位,与8位/16位处理器体系结构中字的长度一致
    ARM 存储格式
    ARM体系结构将存储器看作是从零地址开始的字节的线性组合。从零字节到三字节放置第一个存储的字数据,从第四个字节到第七个字节放置第二个存储的字数据,依次排列

    作为32位的微处理器,ARM体系结构所支持的最大寻址空间为4GB(232字节)
    ARM 处理器的工作模式
    ARM 有7个基本工作模式
    1、用户模式(usr):
    正常程序执行的模式,大部分任务执行在这种模式
    2、快速中断模式(fiq): 高速数据传输或通道处理
    当一个高优先级(fast)中断产生时将会进入这种模式
    3、外部中断模式(irq): 通常的中断处理
    当一个低优先级(normal)中断产生时将会进入这种模式
    4、管理模式(svc):供操作系统使用的一种保护模式
    当复位或软中断指令执行时将会进入这种模式 
    5、中止模式(abt): 虚拟存储及存储保护
    当存取异常时将会进入这种模式
    6、未定义模式(und): 软件仿真硬件协处理器
    当执行未定义指令时会进入这种模式 
    7、系统模式(sys): 特权级的操作系统任务
    供需要访问系统资源的操作系统任务使用

    ARM 异常中断
    ARM有7种异常

    1、复位
    2、未定义指令异常
    3、软件中断异常
    4、预取中止(取指令存储器中止)
    5、数据中止(访问数据存储器中止)
    6、IRQ异常
    7、FIQ异常

  • 相关阅读:
    解决取消input标签中disabled属性
    【转】jQuery源码分析-13 CSS操作-CSS-类样式-addClass+removeClass+toggleClass+hasClass
    Bigpipe学习【转】
    用户请求的生命周期[传统模式与BigPipe]
    gcc扩展语法一:在表达式中的语句和声明
    分享一个关于pthread线程栈在mm_struct里面的分布问题
    neo4j 安装步骤 转自:http://blog.csdn.net/luoluowushengmimi/article/details/19987995
    sudoers文件解析 转自:http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=1971013
    匿名union
    VMware虚拟机修改BIOS启动项
  • 原文地址:https://www.cnblogs.com/BinShao/p/3553183.html
Copyright © 2011-2022 走看看