嵌入式Linux系统设计ARM体系结构课件

上传人:磨石 文档编号:243136133 上传时间:2024-09-16 格式:PPT 页数:57 大小:642KB
返回 下载 相关 举报
嵌入式Linux系统设计ARM体系结构课件_第1页
第1页 / 共57页
嵌入式Linux系统设计ARM体系结构课件_第2页
第2页 / 共57页
嵌入式Linux系统设计ARM体系结构课件_第3页
第3页 / 共57页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,嵌入式Linux系统设计ARM体系结构,*,基于ARM的处理器体系结构,嵌入式Linux系统设计ARM体系结构,课程大纲,嵌入式处理器及其体系结构,ARM处理器,XScale体系结构,PXA系列处理器,嵌入式Linux系统设计ARM体系结构,冯.诺依曼和哈佛体系结构,冯诺依曼型计算机,嵌入式Linux系统设计ARM体系结构,冯诺依曼型计算机组成结构,处理器,使用同一个存储器,,经由同一个总线传输。,完成一条指令需要3个步骤,即:取指令、指令译码和执行指令,指令和数据共享同一总线的结构,嵌入式Linux系统设计ARM体系结构,哈佛体系结构,哈佛结构是一种将,程序指令存储和数据存储分开,的存储器结构。,中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。,程序指令存储和数据存储分开,可以,使指令和数据有不同的数据宽度,,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。,嵌入式Linux系统设计ARM体系结构,CISC与RISC,CISC (Complex Instruction Set Computer) 复杂指令集计算机,处理器在分析每一条指令之后执行一系列初级指令运算来完成所需的功能,一般CISC计算机所含的指令数目至少300条以上,有的甚至超过500条,采用CISC结构的计算机数据线和指令线是分时复用的,即所谓的冯.诺依曼结构,RISC (Riduced Instruction Set Computer) 精简指令集计算机,采用RISC结构的单片机数据线和指令线分离,即所谓的哈佛结构,计算机指令多为单字节,程序存储器的空间利用率大大提高,有利于实现超小型化,嵌入式Linux系统设计ARM体系结构,课程大纲,嵌入式处理器及其体系结构,ARM处理器,XScale体系结构,PXA系列处理器,嵌入式Linux系统设计ARM体系结构,基于ARM架构的嵌入式微处理器,在多媒体技术、网络互连和开放操作系统等方面的应用,是8位机体系结构所难以逾越的障碍,也就正好成为选择32位嵌入式系统的主要理由。,所有的ARM芯片在内核上保持高度的兼容性,这样在学习和开发嵌入式系统中就可以使用通用的开发、调试工具。,目前ARM CPU内核里面都有一个Embedded ICE逻辑模块,用于采集CPU总线信号,而对Embedded ICE以及CPU执行单元的通信是通过扫描线来进行的,所有的扫描线都受到测试访问控制端口(TAP)控制,并通过芯片与JTAG接口连接,故可保持不同CPU之间的接口控制的兼容性。调试工具只要支持TAP端口访问,就能进行ARM的系统调试。,嵌入式Linux系统设计ARM体系结构,32位体系结构的性能优势,(1),寻址空间大,在ARM的体系结构里,所有的资源,如存储器、控制寄存器、I/O端口等都是在有效地址空间内采用统一编址的,方便了程序在不同处理器间的移植。,(2),运算和数据处理强,采用了先进的CPU设计理念、多总线接口(哈佛结构)、多级流水线、高速缓存、数据处理增强等技术,这样几乎所有的通信协议栈都能在32位CPU中轻松实现。使得C、C+、Java等高级语言得到了广泛的应用空间。另外多数的微处理器都包含有DMA控制器,这样就进一步提高了整个芯片的数据能力。,嵌入式Linux系统设计ARM体系结构,32位体系结构的性能优势,(3)操作系统的支持,如果某个系统需要有多任务的调度、图形化的人机界面、文件管理系统、网络协议等需求,那么就必须使用嵌入式操作系统。一般复杂的操作系统在多进程管理中还需要有硬件存储器保护单元(MPU)或管理单元(MMU)的支持。目前ARM9以上的微处理器均有这些支持,可运行Linux、Win CE和VxWorks等众多操作系统。,嵌入式Linux系统设计ARM体系结构,基于指令集体系结构的分类版本,ARM架构处理器定义了6种不同的版本:,V1 版架构:,基本的数据处理指令(无乘法);字节、半字和字的Load /Store 指令;转移指令,包括子程序调用及链接指令;软件中断指令;寻址空间64MB(2,26,)。,V2 版架构:,在V1版上进行了扩充,例如ARM2和ARM3架构,并增加了以下功能:乘法和乘加指令;支持协处理器操作指令;快速中断模式;SWP/SWPB的基本存储器与寄存器交换指令;寻址空间64MB。,嵌入式Linux系统设计ARM体系结构,基于指令集体系结构的分类版本,V3版架构:,V3架构对ARM体系结构作了较大的改动,把寻址空间增至32位,增加了当前程序状态寄存器CPSR和存储程序状态寄存器SPSR,以便增强对异常情况的处理。增加了中止和未定义二种处理模式。ARM6就是采用该版架构。,V4版架构:,它在V3版架构上作了进一步扩充,使ARM使用更加灵活。ARM7、ARM8、ARM9 都采用该版结构。增加功能有符号化和半符号化半字及符号化字节的存取指令;增加了16位的Thumb指令集;完善了软件中断SWI指令的功能;处理器系统模式引进特权方式时使用用户寄存器操作;把一些未使用的指令空间扑获为未定义指令。,嵌入式Linux系统设计ARM体系结构,基于指令集体系结构的分类版本,V5版架构,:ARM10 和XScale都采用该版架构。新增指令有:带有连接和交换的转移BLX指令;计数前导零CLZ指令;BBK中断指令;增建了数字信号处理指令;为协处理器增加了更多可选择的指令。,V6版架构:,是在低功耗的同时,还强化了图形处理性能,追加有效进行多媒体处理的SIMD功能。于2002年推出,ARM11 采用该架构,具体新增加了以下功能:THUMB,TM,-35% 代码压缩;DSP扩充-高性能定点DSP功能;Jazelle,TM,- Java性能优化,可提高8倍;Media扩充-音/视频性能优化,可提高4倍。另外还支持多微处理器内核。,嵌入式Linux系统设计ARM体系结构,ARM微处理器系列产品及性能简介,1 )系列产品分类,ARM处理器当前有5个产品系列:ARM7、ARM9、ARM9E、ARM10和ARM11。进一步的产品来自于合作伙伴,例如Intel Xscale微体系结构和产品。,ARM7、ARM9、ARM9E和ARM10是4个通用处理器系列。每个系列提供一套特定的性能来满足设计者对功耗、性能和体积的需求。,ARM11是第5个产品系列,是专门为安全设备而设计的。性能高达1.2MIPS(Xscale微体系结构),功耗测量为W/MHz,并且所有体系结构兼容。,嵌入式Linux系统设计ARM体系结构,ARM公司是嵌入式RISC处理器的知识产权IP供应商,它为ARM架构处理器提供了ARM处理器,内核,和ARM,处理器核,。,处理器内核,只保持了最基本的组织架构。,处理器核,是在最基本的处理器内核基础上增加了Cache、存储器管理单元MMU、协处理器C15、先进微控制器总线架构AMBA接口以及EMT宏单元等部件,这样就构成了ARM处理器核。,ARM微处理器系列产品及性能简介,嵌入式Linux系统设计ARM体系结构,MPU的生产厂家简介,由集成电路厂商在处理器内核和处理器核基础上设计,嵌入各种外围和处理部件,形成各种嵌入式微处理器MPU。例如:,Intel公司:,PXA25X、27X系列微处理器(采用XScale 核);,TI公司:,OMAP59XX微处理器,(采用ARM+DSP双核);,Motorola公司:,MX1微处理器MPU(ARM922T核);,ATMEL公司,:AT91系列MPU(采用ARM7TDMI内核、ARM920T核);,Philips公司,:IPC2XXX系列(ARM7TDMI内核)等等,。,ARM微处理器系列产品及性能简介,嵌入式Linux系统设计ARM体系结构,ARM微处理器后缀命名的含义,标志,含义,说明,T,支持Thumb指令集,Thumb指令集版本1:ARMv4T,Thumb指令集版本2:ARMv5T,Thumb-2:ARMv6T,D,片上调试,Debug,M,支持长乘法,32位乘32位得到64位,32位的乘加得到64位,I,Embedded ICE,在线仿真,E,DSP指令,增加了DSP算法处理器指令:16位乘加指令,带符号数的加减法,双字数据操作,cache预取指令,J,Java加速器Jazelle,提高java代码的运行速度,S,可综合,提供VHDL或Verilog语言设计文件,嵌入式Linux系统设计ARM体系结构,ARM处理器内核/处理器核的分类(1) ARM7T和ARM7E Family,Unified Cache,内存管理,流水线级别,Thumb,DSP,Jazelle,ARM7TDMI,无,无,3,有,无,无,ARM7TDMI-S,无,无,3,有,无,无,ARM710T/720T,8k,MMU,3,有,无,无,ARM740T,8k或4k,MPU,3,有,无,无,ARM7EJ-S,无,无,3,有,有,有,嵌入式Linux系统设计ARM体系结构,乘法器,指令,解码,地址,自增器,nRESET,nMREQ,SEQ,ABORT,nIRQ,nFIQ,nRW,MAS1:0,LOCK,nCPI,CPA,CPB,nWAIT,MCLK,nOPC,BIGEND,ISYNC,nTRANS,nM4:0,D31:0,桶,移位器,32 位 ALU,DBE,写数据,寄存器,读数据,寄存器,地址寄存器,寄存器 Bank,A31:0,ABE,及,控制 逻辑,PC Update,解码站,指令,解压缩,Incrementer,P,C,A,B,u,s,B,B,u,s,A,L,U,B,u,s,ARM7TDMI内核,内核,嵌入式Linux系统设计ARM体系结构,ARM7微处理器系列主要特点,ARM7微处理器系列为低功耗的32位RISC处理器,最适合用于对价位和功耗要求较高的消费类应用。其具有如下特点:,具有嵌入式ICE-RT逻辑,调试方便。,极低的功耗(100mW左右),适合对功耗要求较高的应用,如便携式产品。,采用三级流水线。,采用ARM V4指令集,。,嵌入式Linux系统设计ARM体系结构,ARM7微处理器系列主要特点,能够提供0.9MIPS/MHZ的三级流水线结构。,兼容16位Thumb指令集;对操作系统的支持广泛,包括Win CE、Linux等 ;指令系统与ARM9、ARM10E系列兼容,便于用户的产品升级换代;主频通常为20-100MHZ。速度为0.9MIPS/MHz 。,ARM7TMDI是目前使用最广泛的32位嵌入式RISC处理器,属低端ARM处理器内核。主要性能:工艺0.35um(新近0.25um)、电压3.3V(新近1.2v)、时钟20-133MHZ、功耗87mW。,注:MPU只支持实时操作系统。,嵌入式Linux系统设计ARM体系结构,ARM7TDMI,ARM7TDMI,内核,地址,地址,数据读,AMBA接口,写,缓冲,MMU,数据写,数据,ARM7xxT,控制,逻辑,Cache,AMBA,总线,接口,JTAG 和非 AMBA 信号,CP15,带Cache的ARM7TDMI,ARM710T,8K,统一的,cache,完整的内存管理单元(,MMU,),,支持虚拟地址和存储器保护,写缓冲,ARM720T,同ARM710T,但支持 WinCE,ARM740T,8K,统一的,cache,内存管理单元,写缓冲,嵌入式Linux系统设计ARM体系结构,(2)ARM9 Family,Cache,内存管理,流水线级别,Thumb,DSP,Jazelle,ARM9TDMI,无,无,5,有,无,无,ARM920T,16K/16k,MMU,5,有,无,无,ARM922T,8k/8k,MMU,5,有,无,无,ARM940T,4k/4k,MPU,5,有,无,无,嵌入式Linux系统设计ARM体系结构,ARM9TDMI,Instruction,Fetch,Shift + ALU,Memory,Access,Reg,Write,Reg,Read,Reg,Decode,FETCH,DECODE,EXECUTE,MEMORY,WRITE,ARM9TDMI,ARM or ThumbInst Decode,Reg Select,Reg,Read,Shift,ALU,Reg,Write,Thumb,ARMdecompress,ARM decode,Instruction,Fetch,FETCH,DECODE,EXECUTE,ARM7TDMI,流水线,嵌入式Linux系统设计ARM体系结构,ARM9TDMI,ARM9TDMI,D Cache,I Cache,MMU,GLUE,外部,存储器,ARM940T,2x 4K caches,MPU,写缓冲,ARM9xxT,ARM920T,2x 16K caches,MMU,支持虚拟地址和内存保护,写缓冲,带Cache的ARM9TDMI,嵌入式Linux系统设计ARM体系结构,ARM9TDMI体系结构框图,ARM9TDMI CPU,指令接口,数据地址接口,跟踪接口,数据接口,JTAG,接口,指令地址接口,ARM9TDMI结构框图,嵌入式Linux系统设计ARM体系结构,ARM920T体系结构框图,嵌入式Linux系统设计ARM体系结构,ARM920T体系结构框图,嵌入式Linux系统设计ARM体系结构,ARM9微处理器系列主要特点,ARM9系列微处理器在高性能和低功耗特性方面提供最佳的性能,在相同的工艺下其性能是ARM7的2倍,具有以下特点:,5,级整数流水线,,工作频率一般为200MHz左右,提供1.1MIPS/MHZ的哈佛结构。,支持32位ARM指令集和16位Thumb指令集。,支持32位的高速AMBA总线接口。,采用哈佛体系结构,。,嵌入式Linux系统设计ARM体系结构,ARM9微处理器系列主要特点,全性能的MMU,,支持包括WinCE、Linux等操作系统,MPU支持实时操作系统。,支持数据Cache和指令Cache,具有更高的指令和数据处理能力。,ARM9是低价、低功耗、高性能系统处理器。,典型产品ARM9TDMI 主要性能:工艺0.25um(新近0.18um)、电压2.5V(新近1.2v)、时钟0-200MHZ、功耗150mW。,ARM9系列主要用于无线设备、仪器仪表、安全系统、机顶盒、高端打印机、数字照相机和数字摄像机等。,嵌入式Linux系统设计ARM体系结构,ARM9E Family,Cache,内存管理,流水线级别,Thumb,DSP,Jazelle,ARM9E-S,无,无,5,有,有,无,ARM946E-S,4k-1M/4k-1M,MPU,5,有,有,无,ARM966E-S,无,无,5,有,有,无,ARM968E-S,无,无,5,有,有,无,ARM9EJ-S,无,无,5/6,有,有,有,ARM926EJ-S,14k-128k/4k-128k,MMU,5/6,有,有,有,嵌入式Linux系统设计ARM体系结构,ARM9E微处理器系列主要特点,ARM9E系列微处理器为综合型处理器,使用单一的处理器内核提供了微处理器、DSP、Java应用系统的解决方案,极大地减少了芯片的面积和系统的复杂程度。具有以下特点:,嵌入式Linux系统设计ARM体系结构,ARM9E微处理器系列主要特点,支持DSP指令集,应用高速数字信号处理的场合;,5级整数流水线;,最高主频可达300MHZ,;,支持32位ARM指令集和16位Thumb指令集;,支持32位的高速AMBA总线接口;,支持VFP9浮点处理协处理器;,全性能的MMU,支持包括Win CE、Linux等操作系统,MPU支持实时操作系统。,支持数据Cache和指令Cache,具有更高的指令和数据处理能力。,ARM9E系列主要用于下一代无线设备、成像设备、工业控制、存储设备、数字消费品和网用场合。,嵌入式Linux系统设计ARM体系结构,(3) ARM10E和ARM10T Family,ARM10EJ-S,无,无,6,有,有,有,ARM1026EJ-S,0,4-128k/0,4-128k,MMU,6,有,有,有,Cache,内存管理,流水线,级别,Thumb,DSP,Jazelle,ARM10E,无,无,6,有,有,无,ARM1020E,32k/32k,MMU,6,有,有,无,ARM1022E,16k/16k,MMU,6,有,有,无,ARM10TDMI,无,无,6,有,无,无,ARM1020T,32k/32k,MMU,6,有,无,无,嵌入式Linux系统设计ARM体系结构,ARM10E 系列概述,v5TE架构,CPI, 1.3,6 级流水线,静态分支预测,32kB 指令cache和32kB数据cache,支持“,Hit under miss”,非阻塞的执行单元,每周期64 位的 LDM / STM操作,EmbeddedICE逻辑 - RT-II,支持新的 VFPv1 结构,同ARM1020E,除了cache大小为16kB,对SUDL(single user design license )有效,ARM1020E,ARM1022E,嵌入式Linux系统设计ARM体系结构,ARM10E微处理器系列主要特点,ARM10E系列微处理器由于采用了新的体系结构,与同等的ARM9处理器相比较,在同样的时钟频率下,性能提高了近50%,同时又大大减少了芯片的功耗,在相同的工艺下其性能是ARM9的2倍。具有以下特点:,嵌入式Linux系统设计ARM体系结构,ARM10E微处理器系列主要特点,支持DSP指令集,适合高速数字信号处理的场合;,6级整数流水线;,工作频率一般为400/600MHz左右;,支持32位ARM指令集和16位Thumb指令集;,支持32位的高速AMBA总线接口;,支持VFP10浮点处理协处理器;,内嵌并行读/写操作部件;,全性能的MMU,支持包括Win CE、Linux等操作系统,MPU支持实时操作系统。,支持数据Cache和指令Cache,具有更高的指令和数据处理能力。,ARM10E系列主要用于下一代无线设备、成像设备、工业控制、存储设备、数字消费品和网用场合。,嵌入式Linux系统设计ARM体系结构,ARM9 vs ARM10,流水线的对比,嵌入式Linux系统设计ARM体系结构,(4) ARM11 Family,Cache,内存管理,流水线级别,Thumb,DSP,Jazelle,浮点运算,ARM1136J-S,4-64k,MMU,8,有,有,有,无,ARM1136JF-S,4-64k,MMU,8,有,有,有,有,ARM1156T2-S,可配置,9,Thumb-2,有,无,无,ARM1156T2F-S,可配置,9,Thumb-2,有,无,有,嵌入式Linux系统设计ARM体系结构,ARM11微处理器系列主要特点,ARM11 是采用ARM V6结构,内部具有8级流水线处理、动态分支预测与返回堆栈。在0.13um工艺下, ARM11TM的运行频率高达,1000Mhz,。在1.2V电压的条件下其功耗可以低至0.4mW/Mz。,ARM11中另一个重要的结构改进,是静、动组合的跳转予判。 动态预测和静态预测的组合使ARM11处理器能达到85%的预测正确性。,ARM11包含一个64位端口、4种状态的跳转目标地址缓存。,新的ARM11支持SIMD指令,,可使某些算法的运算的速度提高2-3倍。,嵌入式Linux系统设计ARM体系结构,ARM11微处理器系列主要特点,ARM V6保持了100%的二进制向下兼容,使用户过去开发的程序可以进一步继承下去。,增加了多媒体处理指令单元扩展,单指令流多数据流(SIMD)。,增加了快速浮点运算和向量浮点运算。,目前ARM公布了三个新的ARM11系列微处理器内核系列,分别是ARM1136J内核、 ARM1156T2内核、 ARM1176JZ内核。,嵌入式Linux系统设计ARM体系结构,(5)XScale结构,Intel公司发展了新一代微处理器体系结构就是XScale处理器。XScale处理器是基于ARM v5TE(第5版)体系结构所设计的,具有协处理器接口,可以直接扩展DSP处理器。目前已使用在数字移动电话、个人数字助理和网络产品等场合。 XScale处理器是目前主要推广的一款ARM处理器。,嵌入式Linux系统设计ARM体系结构,(5)XScale结构,基于XScale PXA250微处理器性能如下:,内核工作频率:,100-400MHZ,;I-Cache 32KB和D-Cache 32KB;I-MMU + D-MMU (各32路变换后备缓冲器TLB快表);7/8级流水线,系统存储器接口:100MHZ SDRAM;4-256MB SDRAM;支持16-256MB DRAM;4个SDRAM区,每个区支持64MB存储器;支持2个PCMCIA/CF卡插槽。,外围接口:具有16个通道的DMA控制器;LCD控制器(支持被动DSTN和主动TFT显示,最大分辨率800*600*16;系统集成模块(GPIO、中断控制器、PWM);USB,3个UART,红外(FIR)、I,2,C总线接口、多媒体通信口、动态电源管理技术。,嵌入式Linux系统设计ARM体系结构,(6)典型的嵌入式处理器(中国),ARM已经与中兴、华为、东南大学、上海集成电路设计中心、中芯国际和大唐电信签订了技术授权协议。国内的微处理器系列有方舟系列 :,方舟1号,性能 166MHz,,功耗1.2瓦166MHz,0.25微米CMOS,1层多晶硅,5层金属,封装HS-BGA,272个管脚,27mm*27mm。,方舟2号:性能400MHz,功耗360mW400MHz,0.18微米CMOS,1层多晶硅,6层金属 封装PBGA,304个管脚,23mm*23mm。,龙芯系列是神州龙芯公司推出的兼顾通用和嵌入式微处理器特点的新一代32微处理器。采用0.18微米CMOS工艺制造,平均功耗0.4W。,嵌入式Linux系统设计ARM体系结构,ARM微处理器体系结构,(1)ARM微处理器的工作状态,从编程的角度看,ARM微处理器的工作状态有两种,可在两种状态之间切换:,第一种为ARM状态,此时处理器执行32位的字对齐的ARM指令;,第二种为Thumb状态,此时处理器执行16位的、半字对齐的Thumb指令。,嵌入式Linux系统设计ARM体系结构,(2)ARM微处理器存储格式,ARM的寻址空间是线性的地址空间,为2,32,=4G,Bytes 0 to 3 存储第一个word, bytes 4 to 7存储第二个word,ARM,支持大端(Big-endian)和小端(Little-endian)的内存数据方式,,可以通过硬件的方式设置(没有提供软件的方式)端模式,嵌入式Linux系统设计ARM体系结构,(2)ARM体系结构的存储器格式,大端格式,:被存放字数据的高字节存储在存储系统的低地址中,而被存放的字数据的低字节则存放在存储系统的高地址中。,小端格式,:与大端存储格式相反,在小端存储格式中,存储系统的低地址中存放的是被放字数据中的低字节内容,存储系统的高地址存放的是被存字数据中的高字节内容。,嵌入式Linux系统设计ARM体系结构,(3)处理器运行模式,ARM微处理器支持7种运行模式,分别为:,用户模式(USR):ARM处理器正常程序执行的模式。,快速中断模式( FIQ ):用于高速数据传输或通道处理,用于快速中断服务程序。当处理器的快速中断请求引脚有效,且CPSR(6位)中F位为0时(开中断),会产生FIQ异常。,外部中断模式( IRQ ):用于通用的中断处理,当处理器的外部中断请求引脚有效,且CPSR(7位)中I位为0时(开中断),会产生IRQ异常。系统的外设可通过该异常请求中断服务。,特权模式或管理员模式(SVE):操作系统使用的保护模式。当执行软件中断SWI指令和复位指令时,就进入管理模式,在对操作系统运行时工作在该模式下。,嵌入式Linux系统设计ARM体系结构,(3)处理器运行模式,数据访问中止模式(ABT):用于虚拟存储器和存储保护,当存储器数据访问无效时就进入该模式 。若处理器数据访问指令的地址不存在或该地址不允许当前指令访问时,也产生数据中止异常。,未定义指令中止模式(UND):用于支持硬件协处理器的软件仿真。当ARM处理器或协处理器遇到不能处理的指令时,就要产生未定义指令异常。用户可使用该异常机制进行软件仿真,即用软件来模拟硬件功能,比如浮点运算。,系统模式(SYS):运行具有特权的操作系统任务。与用户,模式共用使用寄存器组,但是其使用权限要比在用户模式下高。,(3)处理器运行模式,嵌入式Linux系统设计ARM体系结构,(3)处理器运行模式,除用户模式之外的其他6种处理器模式称为特权模式。,在这些模式下,程序可以访问所有的系统资源,也可以任意地进行处理器模式的切换。,其中,除系统模式外,其他5种特权模式又称异常模式,。,处理器模式可以通过软件进行切换,也可以通过外部中断或者异常处理过程进行切换。大多数用户工作在用户模式下。这时,应用程序不能够访问一些受操作系统保护的系统资源。应用程序也不能直接进行处理器模式的切换。,嵌入式Linux系统设计ARM体系结构,ARM,汇编中的文件格式,源程序文件,文件名,说,明,汇编程序文件,*.S,用,ARM,汇编语言编写的,ARM,程序或,Thumb,程序。,C,程序文件,*.C,用,C,语言编写的程序代码。,头文件,*.H,为了简化源程序,把程序中常用到的常量命名、宏定义、数据结构定义等等单独放在一个文件中,一般称为头文件。,(4),ARM源程序文件格式,嵌入式Linux系统设计ARM体系结构,(5),ARM的开发工具ADS1.2,SDT的英文全称是ARM Software Development Kit ,是ARM公司为方便用户在ARM芯片上进行应用软件开发而推出的一整套集成开发工具包。目前的最新版本是2.5.2,但从版本2.5.1开始,ARM公司宣布推出一套新的集成开发工具ARM ADS ,取而代之。,ARM SDT支持最高到ARM9的所有ARM处理器芯片的开发,包括Strong ARM。,嵌入式Linux系统设计ARM体系结构,ADS1.2开发环境,ADS1.2 (ARM Developer Suite)提供了创建ARM架构应用系统的完整的软件开发方案,是ARM公司新近推出的一套集成开发环境。用户使用ADS编辑、编译和调试C、C+ 以及汇编程序。ADS开发环境包括:,代码生成工具(Code Generation Tools),代码生成工具包括ARM和Thumb指令集的C和嵌入式C+编译器、汇编器和链接器。这些编辑器是工业中针对ARM处理器开发的,能获得比其他开发环境更紧凑的代码密度,以及更小的映像文件。,嵌入式Linux系统设计ARM体系结构,ADS开发环境,Windows平台下的集成开发环境(Code Warrior IDE),ADS提供了强大的Code Warrior IDE 来整合ARM 开发工具,提供了图形接口的项目管理器,极大地方便了用户管理复杂的工程文件,并适合通过网络进行小组开发。同时,Code Warrior IDE 还提供了对第三方调试的接口支持。,嵌入式Linux系统设计ARM体系结构,ADS开发环境,强大的调试器(Debugger),ADS包括以下2个调试器:,AXD(ARM eXtended Debugger)。AXD提供了一个专业调试软件所能提供的所有调试功能,包括简单和复杂的断点功能、观察点、支持软件和硬件目标以及便捷的图形界面接口等。,ARMSD(ARM Symbolic Debugger)。ARMSD是一个命令行方式调试器,提供了所有的基本调试功能,包括断点、观察点和软硬件目标的支持等。,嵌入式Linux系统设计ARM体系结构,ADS开发环境,指令集模拟器(Instruction Set Simulator),ADS中的指令集模拟器提供了对ARM和Thumb内核处理器的精确的模拟,允许用户在硬件条件满足前开发和测评(Benchmark)代码。,基于ROM的调试工具ARM Firmware Suit,ARM Firmware Suit 帮助用户在Integerator系统和其他ARM内核系统上快速建立应用程序和操作系统的整合。,嵌入式Linux系统设计ARM体系结构,ADS开发环境, ARM应用库,ADS中的应用库已经针对ARM和Thumb内核处理器进行了优化,并且提供了不包含在标准C、C+库中的功能函数及代码,给用户的开发提供了方便。,支持各种ARM核和处理器:ARM9E、ARM10、Jazelle、StrongARM和Intel Xscale;完整的在线文档;支持实时调试和跟踪。,代码生成工具、Code Warrior IDE、调试器、指令集模拟器、ARM Firmware Suit和ARM应用库是构成ADS开发环境的主要独立模块,分别实现不同的调试开发功能。,嵌入式Linux系统设计ARM体系结构,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!