ARM系统体系架构
- 格式:docx
- 大小:579.06 KB
- 文档页数:5
arm体系结构的特点ARM体系结构是一种基于RISC(精简指令集电脑)的微型计算机体系结构,它以其高效性和低功耗的特点,成为现代移动设备、智能家居、嵌入式系统等领域的首选芯片。
ARM体系结构的特点如下:1. RISC(精简指令集电脑)体系结构:ARM体系结构以RISC体系结构为基础,相对于CISC(复杂指令集电脑)体系结构而言,指令集更加精简,每个指令执行时间更短。
这种短指令集的优点是更易于实现,并且需要更少的晶体管,从而降低了芯片成本和能源消耗。
2.可扩展型:ARM芯片的内存和外设都可以进行扩展,这使得ARM芯片非常灵活。
用户可以根据实际需求自由添加外围设备和扩展内存,以满足具体的应用要求。
3.处理速度快:ARM芯片通常是多核心的,每个核心都可以执行多个指令,具有各自的缓存,这使得ARM芯片的速度非常快。
在一些高效的应用场合,ARM芯片的速度甚至可以与桌面计算机的处理器相媲美。
4.低功耗:ARM体系结构的低功耗性质也是其的一大特点。
ARM芯片处理器消耗的能量非常少,由于嵌入式系统、移动设备等对能源的限制,ARM低功率处理器在这些设备中应用广泛。
5.易于编程:ARM处理器可以执行任何基本的计算机操作,比如移位、逻辑操作等,这使得编写程序变得简单易行。
在一些专门为ARM芯片设计的编程平台上,开发者很容易编写出高效率的代码。
6.架构标准一致:ARM芯片的设计标准化非常高,这使得基于ARM芯片设计的设备之间的兼容性极高。
如果您在设计设备时使用ARM芯片,您可以放心,您的设备可以与大多数其他ARM芯片的设备以及开发板互通。
7.多种寄存器存储器模式:不同于其他流行的体系结构,ARM体系结构支持多种寄存器存储器模式,从而可以有效地存储更多数据。
这是ARM芯片与其他芯片最显著的不同之处之一。
总之,ARM体系结构作为一种低功耗、高效、易于编程的微型计算机体系结构,成为多种领域的首选芯片。
随着技术的不断发展,ARM芯片的性能和价格都在不断提升,这将进一步拓展ARM芯片的应用范围。
ARM体系结构与编程
一、ARM体系结构
ARM(Advanced RISC Machine)是由英国ARM公司开发的一种低功耗、超低成本的处理器架构,是移动设备的首选处理器。
ARM架构的处理器有ARM7、ARM9、ARM11、 Cortex-A8 、Cortex-A15等,它们核心架构特点为以下几点:
1.保护模式。
ARM架构的处理器能够在用户模式和两个高级的保护模式之间来回切换。
2.对齐式存储。
ARM架构的处理器采用对齐方式,其二进制指令必须按照固定的位置排列,以便提高存储空间的利用率。
3.浮点处理单元。
ARM架构的处理器具有浮点数处理功能,使数值运算能够高效率地完成。
4.多级缓存。
ARM架构的处理器将原始数据复制到不同级别的快速缓存中,以便快速访问。
二、ARM程序的编程
1、ARM程序的编写
ARM程序的编写可以使用C语言编写,程序开发者需要掌握ARM架构各种中央处理器扩展指令集的使用方法,以便获得更好的效率。
2、编译ARM程序
ARM程序的编译是使用GNU的gcc编译器进行的,它可以将C语言编写的程序编译成ARM架构的机器码,并可以在ARM架构的处理器上运行。
3、调试ARM程序
ARM程序的调试使用GDB程序调试,它可以提供丰富的调试工具,可以跟踪程序执行的步骤,提供全面的程序反馈信息,可以帮助开发者快速定位程序运行出错的地方。
三、总结。
ARM体统体系架构
ARM平台可以采用核心主板加扩展板的设计方式,基于ARM微处理器芯片的核心主板,能将ARM所有的I/O全部引出,在核心主板上面只提供最基本的接口;而对于一些
特殊用途的USB接口、以太网接口、LCD接口,以扩展板形式提供。
ARM模块部分是其一个重要的组成部分,在系统中ARM模块主要负责系统控制部分,其硬件体系结构灵活、接口丰富。
核心包括嵌入式ARM CPU及必需的SDRAM和Hash 等器件,通过表贴封装的双排插针将各信号线及控制线引出。
这样,只需要设计不同的扩展板即可实现不同的系统功能,节约了开发成本并提高了平台的灵活性。
软件开发方面,如果采用Linux开放源代码进行开发,可以大大降低开发成本,加快软件的开发过程,并有利于后期开发。
1.硬件体系结构
嵌入式系统硬件平台结构主要分为2大部分:一部分为系统主板,为基于ARM的最小系统,包括ARM CPU、∏ash、SDRAM、串口、键盘等最基本部分;另一部分为系统扩展板,提供了用于完成各个不同硬件的功能模块。
常用的嵌入式外围设备则有存储设备、通信设各和显示设备三类。
相关支撑硬件包括显示卡、存储介质(ROM和RAM等)、通信设备、IC卡或信用卡的读取设备等。
嵌入式系统有别于一般的计算机处理系统,它不具备像硬盘那样大容量的存储介质,而大多使用闪存(∏ash Memory)作为存储介质。
整个系统硬件结构如图1所示,主要组成部分及其功能如表1所示。
图1 ARM嵌入式硬件平台
表1 系统硬件主要组成及其功能描述
另外,系统总线扩展引出数据总线、地址总线和必需的控制总线,便于用户根据自身的特定需求,扩展外围电路。
在选择嵌入式系统的硬件时,最重要的是要先选择ARM处理器类型,因为ARM处理器不仅决定整个系统的性能,而且影响其他硬件的选用,以及操作系统和软件代码的配置。
一个设计好的ARM核心板硬件如图2所示。
图2 ARM核心板硬件图
软件体系结构
嵌入式软件包括与硬件相关的底层软件、操作系统、图形界面、通信协议、数据库系统、标准化浏览器和应用软件等。
其中,嵌入式操作系统是用来支持嵌入式应用的系统软件,通常包括与硬件柑关的底层驱动程序、系统内核、设备驱动接口、通信协议、图形用户界面(GUI)等。
1.开发环境及工具
目前流行的嵌入式操作系统主要有VxWorks,WindowsCE,Linux等,由于Linux
的源码开放性、内核可裁剪性、在图像处理、文件管理及多任务支持等诸多方面的特点,使得它成为一款应用比较广泛的嵌入式操作系统。
考虑到以上几个方面的原因,以及应用于对实时性要求不是很高的场合,可以选用嵌入式Linux作为此平台的操作系统.Linux与商业用的嵌八式操作系统比较,好处如表2所示。
表2 Linux作为嵌入式系统开发的好处
有些观点认为Linux过于庞大不宜用于嵌入式系统,这种观点比较片面。
面向PC的Linux标准发行版(如Fedora,Mandrake,Debian)包括服务器、工作站版本,这些版本在功能上是一个工作站和服务器的应用平台的超集,许多功能大大超出了一个嵌入式操作系统的需求。
同时,由于Linux操作系统的核心和应用程序是分离的,整个系统有较好的
模块化设计,并且它上面各种程序(包括核心本身)的源代码是公开的。
因此,可以在各个层次上,对Linux进行精心的定制和开发,以提供一个基本的运行平台和开发环境`以便
于针对特定应用可以开发出一个具有实用性的嵌入式应用系统。
在开发环境方面,ARM ADS或SDT在没有硬件环境的情况下,可以提供软件模拟硬件环境进行软件开发,即ARMulate模式在计算机上模拟调试。
利用这种模式,可以在没
有仿真器的情况下,编写MemTest汇编测试程序,然后利用简易的JATG探头将目标文
件下载到硬件开发板进行调试。
如果经过测试,核心硬件板达到设计的各方面要求,在稳定时钟频率下运行正常,数据及程序空间全部可访问,即可满足嵌入Linux的硬件要求。
2.硬件驱动程序
底层硬件驱动程序是嵌入式系统软件开发的第一个环节,它紧密地将软硬件衔接在一起,涉及许多硬件相关的知识。
对底层硬件驱动程序的了解,是深入理解嵌入式系统工作原理最有效的手段,同时也是进一步开发基于嵌入式操作系统的设备驱动程序的基础。
Linux的设备驱动程序,对于各个体系结构而言基本框架都是一样的,所以只需要学会如何在PC上编写设备驱动,就可以很容易编写基于ARM Linux的设备驱动。