ARM基础知识教程(一):ARM简介

来源:互联网 发布:摇奖软件破解版 编辑:程序博客网 时间:2024/04/29 17:55

 

  ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。技术具有性能高、成本低和能耗省的特点。适用于多种领域,比如嵌入控制、消费/教育类多媒体、DSP和移动式应用等。
  ARM将其技术授权给世界上许多著名的半导体、软件和OEM厂商,每个厂商得到的都是一套独一无二的ARM相关技术及服务。利用这种合伙关系,ARM很快成为许多全球性RISC标准的缔造者。
  目前,总共有30家半导体公司与ARM签订了硬件技术使用许可协议,其中包括Intel、IBM、LG半导体、NEC、SONY、菲利浦和国民半导体这样的大公司。至于软件系统的合伙人,则包括微软、升阳和MRI等一系列知名公司。
  ARM架构是面向低预算市场设计的第一款RISC微处理器。


  2.产品介绍
  ARM提供一系列内核、体系扩展、微处理器和系统芯片方案。
由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品中运行(理论上如此)。典型的产品如下。
   (1)CPU内核
   --ARM7:小型、快速、低能耗、集成式RISC内核,用于移动通信。
  -- ARM7TDMI(Thumb):这是公司授权用户最多的一项产品,将ARM7指令集同Thumb扩展组合在一起,以减少内存容量和系统成本。
    同时,它还利用嵌入式ICE调试技术来简化系统设计,并用一个DSP增强扩展来改进性能。该产品的典型用途是数字蜂窝电话和硬盘驱动器。
  --ARM9TDMI:采用5阶段管道化ARM9内核,同时配备Thumb扩展、调试和Harvard总线。在生产工艺相同的情况下,性能可达ARM7TDMI的两倍之多。常用于连网和顶置盒。
  (2)体系扩展
  -- Thumb:以16位系统的成本,提供32位RISC性能,特别注意的是它所需的内存容量非常小。
  (3)嵌入式ICE调试
  由于集成了类似于ICE的CPU内核调试技术,所以原型设计和系统芯片的调试得到了极大的简化。
  (4)微处理器
  --ARM710系列,包括ARM710、ARM710T、ARM720T和ARM740T:低价、低能耗、封装式常规系统微型处理器,配有高速缓存
(Cache)、内存管理、写缓冲和JTAG。广泛应用于手持式计算、数据通信和消费类多媒体。
   --ARM940T、920T系列:低价、低能耗、高性能系统微处理器,配有Cache、内存管理和写缓冲。应用于高级引擎管理、保安系统、顶置盒、便携计算机和高档打印机。
  --StrongARM:性能很高、同时满足常规应用需要的一种微处理器技术,与DEC联合研制,后来授权给Intel。SA110处理器、SA1100 PDA系统芯片和SA1500多媒体处理器芯片均采用了这一技术。
  --ARM7500和ARM7500FE:高度集成的单芯片RISC计算机,基于一个缓存式ARM7 32位内核,拥有内存和I/O控制器、3个DMA通道、片上视频控制器和调色板以及立体声端口;ARM7500FE则增加了一个浮点运算单元以及对EDO DRAM的支持。特别适合电视顶置盒和网络计算机(NC)。
    Windows CE的Pocket PC只支持ARMWindows CE可支持多种嵌入式处理器,但基于Windows CE的Pocket PC则只支持ARM一种。微软在对SH3、MIPS、ARM等嵌入式处理器做了评估后认为,ARM是一种性价比较好的选择。由于目前ARM在手持设备市场占有90%以上的份额,只支持ARM,可以有效地缩短应用程序开发与测试的时间,也降低了研发费用。由于ARM开放其处理器授权,因此,用户在市场上可以在多家整机厂商中进行选择,从而保证了这一市场的竞争性。

ARM结构简介
    ARM系列是英国先进RISC机器公司(Advanced RISC Machines,ARM)公司的产品[1]。第一个基于RISC指令集的ARM芯片是在1985年开始设计的,采用的是典型的32位RISC体系结构,其指令拥有4位的寄存器地址域,可以访问R0-R15这16个寄存器。而其他的寄存器只有在特殊的情况下才可以访问到。ARM使用了标准的、固定长度的32位指令格式,所有的ARM指令使用了4位的条件码来决定该指令是否应当执行,这种方式可以解决一些条件分支的问题,从而对代码的密度和性能都有好处.

    由于体系结构设计以及器件技术上的特点,使得ARM处理器可以与一些复杂得多的微处理器相抗衡,特别是在需要很少能耗的嵌入式处理场合。

    1990年,ARM公司成立了。在ARM7中,将ARM体系结构完全扩展到32位(原来的ARM处理器只有26位的地址空间),并将主频提升到40MHz,另外还集成了一个8KB的Cache。比较有趣的是,ARM7可以支持一种称为"Thumb"的模式,可以运行新的16位指令。这主要是通过在ARM7芯片的指令预取阶段增加一个硬件,完成Thumb指令到正常的32位RISC指令的转换来达到目的的。通过引入Thumb模式,只需要付出很少的硬件代价,就可以将代码的密度提升大约25%-35%,并使得应用的运行更为迅速。
1995年,ARM、Apple、DEC公司联合声明将开发一种用于PDA的高性能、低功耗的微处理器,主要是基于ARM体系结构的。DEC将自己在MPU设计上的优势带入ARM芯片设计中。一年后,StrongARM SA-110问世了,并成为嵌入式微处理器设计的一个里程碑。
   StrongARM SA-110可以工作在200MHz,而能耗不到1瓦。在体系结构上,
StrongARM将原来ARM中的三级流水线扩展到五级,在器件工艺上,大量采用了最新的体系结构和器件技术,大大降低了芯片工作时的能耗。

    StrongARM的出现并不是ARM发展历程上的唯一分支。1996年,ARM8发布了,采用同样的五级流水线,并在72MHz条件下,达到了84MIPS的指标。而在1997年,ARM9内核采用了与StrongARM相同的五级流水线。ARM9TDMI在0.25um工艺条件下,可以在200MHz达到220MIPS的性能。ARM9的另外一个版本ARM9E对SIMD做了增强,包括8位和16位SIMD加法和减法,16位和32位乘法,以及相应的算术操作等.

    1997年,Intel接管了StrongARM,并开发了几个后续产品。1998年,Intel开始用0.18um工艺生产StrongARM处理器。在1999年度嵌入式微处理器论坛上,Intel宣布将在其第二代StrongARM中采用7级流水线,并在0.18um工艺条件下,达到600MHz的速度,而能耗将仅仅为不到0.5瓦,同时,将新的微处理器命名为StrongARM Xscale[8]。

    ARM9EJ是ARM9E在Java支持上的增强版本。它采用了类似Thumb的机制,通过很少的硬件代价,使大多数Java虚拟机字节码可以加速执行,更为复杂的Java虚拟机字节码可以通过软件的方式执行。这样,使得Java虚拟机字节码的执行速度提升了大约8倍左右。这对于嵌入式场合的Java应用无疑是极其有效的。

    ARM的成功在于它极高的性能以及极低的能耗,使得它能够与高端的MIPS和PowerPC嵌入式微处理器相抗衡。另外,根据市场需要进行功能的扩展,也是ARM取得成功的一个重要因素。随着更多厂商的支持和加入,可以预见,在将来一段时间之内,ARM仍将主宰32位嵌入式微处理器市场。

  ARM取得了极大的成功,世界上几乎所有主要的半导体厂商都从ARM公司购买ARM ISA许可。目前ARM系列芯片已经被广泛的应用于移动电话、手持式计算机以及各种各样的嵌入式应用领域,成为世界上销量最大的32位微处理器。

    最新的市场调查表明,ARM占据了整个32位嵌入式微处理器市场的90%。

 

  ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。技术具有性能高、成本低和能耗省的特点。适用于多种领域,比如嵌入控制、消费/教育类多媒体、DSP和移动式应用等。
  ARM将其技术授权给世界上许多著名的半导体、软件和OEM厂商,每个厂商得到的都是一套独一无二的ARM相关技术及服务。利用这种合伙关系,ARM很快成为许多全球性RISC标准的缔造者。
  目前,总共有30家半导体公司与ARM签订了硬件技术使用许可协议,其中包括Intel、IBM、LG半导体、NEC、SONY、菲利浦和国民半导体这样的大公司。至于软件系统的合伙人,则包括微软、升阳和MRI等一系列知名公司。
  ARM架构是面向低预算市场设计的第一款RISC微处理器。


  2.产品介绍
  ARM提供一系列内核、体系扩展、微处理器和系统芯片方案。
由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品中运行(理论上如此)。典型的产品如下。
   (1)CPU内核
   --ARM7:小型、快速、低能耗、集成式RISC内核,用于移动通信。
  -- ARM7TDMI(Thumb):这是公司授权用户最多的一项产品,将ARM7指令集同Thumb扩展组合在一起,以减少内存容量和系统成本。
    同时,它还利用嵌入式ICE调试技术来简化系统设计,并用一个DSP增强扩展来改进性能。该产品的典型用途是数字蜂窝电话和硬盘驱动器。
  --ARM9TDMI:采用5阶段管道化ARM9内核,同时配备Thumb扩展、调试和Harvard总线。在生产工艺相同的情况下,性能可达ARM7TDMI的两倍之多。常用于连网和顶置盒。
  (2)体系扩展
  -- Thumb:以16位系统的成本,提供32位RISC性能,特别注意的是它所需的内存容量非常小。
  (3)嵌入式ICE调试
  由于集成了类似于ICE的CPU内核调试技术,所以原型设计和系统芯片的调试得到了极大的简化。
  (4)微处理器
  --ARM710系列,包括ARM710、ARM710T、ARM720T和ARM740T:低价、低能耗、封装式常规系统微型处理器,配有高速缓存
(Cache)、内存管理、写缓冲和JTAG。广泛应用于手持式计算、数据通信和消费类多媒体。
   --ARM940T、920T系列:低价、低能耗、高性能系统微处理器,配有Cache、内存管理和写缓冲。应用于高级引擎管理、保安系统、顶置盒、便携计算机和高档打印机。
  --StrongARM:性能很高、同时满足常规应用需要的一种微处理器技术,与DEC联合研制,后来授权给Intel。SA110处理器、SA1100 PDA系统芯片和SA1500多媒体处理器芯片均采用了这一技术。
  --ARM7500和ARM7500FE:高度集成的单芯片RISC计算机,基于一个缓存式ARM7 32位内核,拥有内存和I/O控制器、3个DMA通道、片上视频控制器和调色板以及立体声端口;ARM7500FE则增加了一个浮点运算单元以及对EDO DRAM的支持。特别适合电视顶置盒和网络计算机(NC)。
    Windows CE的Pocket PC只支持ARMWindows CE可支持多种嵌入式处理器,但基于Windows CE的Pocket PC则只支持ARM一种。微软在对SH3、MIPS、ARM等嵌入式处理器做了评估后认为,ARM是一种性价比较好的选择。由于目前ARM在手持设备市场占有90%以上的份额,只支持ARM,可以有效地缩短应用程序开发与测试的时间,也降低了研发费用。由于ARM开放其处理器授权,因此,用户在市场上可以在多家整机厂商中进行选择,从而保证了这一市场的竞争性。

ARM结构简介
    ARM系列是英国先进RISC机器公司(Advanced RISC Machines,ARM)公司的产品[1]。第一个基于RISC指令集的ARM芯片是在1985年开始设计的,采用的是典型的32位RISC体系结构,其指令拥有4位的寄存器地址域,可以访问R0-R15这16个寄存器。而其他的寄存器只有在特殊的情况下才可以访问到。ARM使用了标准的、固定长度的32位指令格式,所有的ARM指令使用了4位的条件码来决定该指令是否应当执行,这种方式可以解决一些条件分支的问题,从而对代码的密度和性能都有好处.

    由于体系结构设计以及器件技术上的特点,使得ARM处理器可以与一些复杂得多的微处理器相抗衡,特别是在需要很少能耗的嵌入式处理场合。

    1990年,ARM公司成立了。在ARM7中,将ARM体系结构完全扩展到32位(原来的ARM处理器只有26位的地址空间),并将主频提升到40MHz,另外还集成了一个8KB的Cache。比较有趣的是,ARM7可以支持一种称为"Thumb"的模式,可以运行新的16位指令。这主要是通过在ARM7芯片的指令预取阶段增加一个硬件,完成Thumb指令到正常的32位RISC指令的转换来达到目的的。通过引入Thumb模式,只需要付出很少的硬件代价,就可以将代码的密度提升大约25%-35%,并使得应用的运行更为迅速。
1995年,ARM、Apple、DEC公司联合声明将开发一种用于PDA的高性能、低功耗的微处理器,主要是基于ARM体系结构的。DEC将自己在MPU设计上的优势带入ARM芯片设计中。一年后,StrongARM SA-110问世了,并成为嵌入式微处理器设计的一个里程碑。
   StrongARM SA-110可以工作在200MHz,而能耗不到1瓦。在体系结构上,
StrongARM将原来ARM中的三级流水线扩展到五级,在器件工艺上,大量采用了最新的体系结构和器件技术,大大降低了芯片工作时的能耗。

    StrongARM的出现并不是ARM发展历程上的唯一分支。1996年,ARM8发布了,采用同样的五级流水线,并在72MHz条件下,达到了84MIPS的指标。而在1997年,ARM9内核采用了与StrongARM相同的五级流水线。ARM9TDMI在0.25um工艺条件下,可以在200MHz达到220MIPS的性能。ARM9的另外一个版本ARM9E对SIMD做了增强,包括8位和16位SIMD加法和减法,16位和32位乘法,以及相应的算术操作等.

    1997年,Intel接管了StrongARM,并开发了几个后续产品。1998年,Intel开始用0.18um工艺生产StrongARM处理器。在1999年度嵌入式微处理器论坛上,Intel宣布将在其第二代StrongARM中采用7级流水线,并在0.18um工艺条件下,达到600MHz的速度,而能耗将仅仅为不到0.5瓦,同时,将新的微处理器命名为StrongARM Xscale[8]。

    ARM9EJ是ARM9E在Java支持上的增强版本。它采用了类似Thumb的机制,通过很少的硬件代价,使大多数Java虚拟机字节码可以加速执行,更为复杂的Java虚拟机字节码可以通过软件的方式执行。这样,使得Java虚拟机字节码的执行速度提升了大约8倍左右。这对于嵌入式场合的Java应用无疑是极其有效的。

    ARM的成功在于它极高的性能以及极低的能耗,使得它能够与高端的MIPS和PowerPC嵌入式微处理器相抗衡。另外,根据市场需要进行功能的扩展,也是ARM取得成功的一个重要因素。随着更多厂商的支持和加入,可以预见,在将来一段时间之内,ARM仍将主宰32位嵌入式微处理器市场。

  ARM取得了极大的成功,世界上几乎所有主要的半导体厂商都从ARM公司购买ARM ISA许可。目前ARM系列芯片已经被广泛的应用于移动电话、手持式计算机以及各种各样的嵌入式应用领域,成为世界上销量最大的32位微处理器。

    最新的市场调查表明,ARM占据了整个32位嵌入式微处理器市场的90%。