lB嵌入式系统设计与实例开发.ppt

文档编号:1544799 上传时间:2022-08-28 格式:PPT 页数:140 大小:3.01MB
下载 相关 举报
lB嵌入式系统设计与实例开发.ppt_第1页
第1页 / 共140页
lB嵌入式系统设计与实例开发.ppt_第2页
第2页 / 共140页
lB嵌入式系统设计与实例开发.ppt_第3页
第3页 / 共140页
点击查看更多>>
资源描述

1、嵌入式系统设计与实例开发ARM与C/OS-第三讲 嵌入式微处理器体系结构,上节提要,嵌入式系统的定义与特点嵌入式微处理器的相关基本知识嵌入式实时操作系统的相关基本知识嵌入式系统的设计方法概述,本节提要,1,3,2,5,4,6,嵌入式微处理器及其应用,ARM体系结构概览,ARM JTAG调试接口,ARM编程模型,ARM 指令集,S3C44B0开发平台简介,嵌入式系统的核心是嵌入式微处理器。嵌入式微处理器一般就具备以下4个特点对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时内核的执行时间减少到最低限度。具有功能很强的存储区保护功能。这是由于嵌入式系统的软件

2、结构已模块化,而为了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软件诊断。可扩展的处理器结构,以能最迅速地开发出满足应用的最高性能的嵌入式微处理器。嵌入式微处理器必须功耗很低,尤其是用于便携式的无线及移动的计算和通信设备中靠电池供电的嵌入式系统更是如此,如需要功耗只有mW甚至W级。,嵌入式处理器,嵌入式微处理器分类,本节提要,1,3,2,5,4,6,嵌入式微处理器及其应用,ARM体系结构概览,ARM JTAG调试接口,ARM编程模型,ARM 指令集,S3C44B0开发平台简介,ARM即 Advanced RISC Machines 的缩写。1985年4月26

3、日,第一个ARM原型在英国剑桥的Acorn计算机有限公司诞生,由美国加州San Jose VLSI技术公司制造。20世纪80年代后期,ARM很快开发成Acorn的台式机产品,形成英国的计算机教育基础。1990年成立了Advanced RISC Machines Limited。20世纪90年代,ARM32位嵌人式RISC(Reduced Instruction Set Computer)处理器扩展到世界范围,占据了低功耗、低成本和高性能的嵌入式系统应用领域的领先地位。32位RISC处理器受到青睐,领先的是ARM嵌入式微处理器系列。ARM公司虽然只成立10多年,但在1999年因移动电话火爆市场,

4、其32位RISC处理器占市场份额超过了50%,2001年初,ARM公司的32位RISC处理器市场占有率超过了75%。ARM公司是知识产权供应商,是设计公司。由合作伙伴公司来生产各具特色的芯片。,ARM的发展历程-1,ARM公司商业模式的强大之处在于其价格合理,全世界范围有超过100个合作伙伴-包括半导体工业的著名公司。ARM公司专注于设计,其内核耗电少、成本低、功能强,特有16/32位双指令集。ARM已成为移动通信、手持计算、多媒体数字消费等嵌入式解决方案的RISC标准。在所有ARM处理器系列中,ARM7处理器系列应用最广,采用ARM7处理器作为内核生产芯片的公司最多。,ARM的发展历程-2,

5、1991-ARM 推出第一款RISC嵌入式微处理器核 ARM61993-ARM 推出 ARM7 核1995 ARM的 Thumb扩展指令集结构为16位系统增加了32位的性能,提供业界领先的代码密度,ARM的发展历程-3,ARM处理器的3大特点如下:小体积、低功耗、成本低、高性能;16位/32位双指令集;全球众多的合作伙伴。当前ARM体系结构的扩充包括:Thumb:16位指令集,用以改善代码密度;DSP:用于DSP应用的算术运算指令集;Jazeller:允许直接执行Java代码的扩充。ARM处理器系列提供的解决方案包括:在无线、消费电子和图像应用方面的开放平台;存储、自动化、工业和网络应用的嵌入

6、式实时系统;智能卡和SIM卡的安全应用。,ARM处理器的特点,ARM处理器本身是32位设计,但也配备16位指令集,以允许软件编码为更短的16位指令。与等价的32代码相比,占用的存储器空间节省高达35%,然而保留了32位系统所有的优势。ARM还提供了两个前沿特性嵌入式ICERT逻辑和嵌入式跟踪宏核系列,用以辅助嵌入式处理器核的、高集成的SOC器件的调试。ARM业界领先的跟踪解决方案嵌入式跟踪宏单元(ETM,Embeddeb Trace Macrocell),被设计成驻留在ARM处理器上,用以监控内部总线,并能以该速度无妨碍地跟踪指令和数据的访问。,ARM 微处理器,微处理器核:ARM6,ARM7

7、,ARM9,ARM10,ARM11扩展:Thumb,DSP,SIMD,Jazelle etc.其它IP核:UART,GPIO,memory controllers,etc,ARM体系结构版本-1,Version 1(obsolete)基本数据处理字节,字以及多字 load/store软件中断26 bit 地址总线Version 2(obsolete)Multiply&Multiply-accumulate(集成运算)支持协处理器支持线程同步26 bit 地址总线,ARM体系结构版本-2,V3版本推出32位寻址能力,结构扩展变化为T16位压缩指令集M增强型乘法器,产生全64位结果(32X3264

8、or32X32+64 64)V4版本增加了半字load和store指令V5版本改进了ARM和Thumb之间的交互,结构扩展变化为:E-增强型DSP指令集,包括全部算法操作和16位乘法操作J-支持新的JAVA,提供字节代码执行的硬件和优化软件加速功能,ARM 体系结构更新,体系结构变化 1*,THUMB指令集(T)THUMB 指令集:32位ARM指令集的子集,按16位指令重新编码代码尺寸小(up to 40%compression)简化设计,体系结构变化-2,长乘法指令(M)32x32=64 bit.提供全64位结果增强DSP 指令集(E)可附加在ARM中的DSP指令64 bit 转换在 v5版

9、本中第一次推出处理器内核的变化D:在片调试.处理器可响应调试暂停请求I:Embedded ICE.支持片上断点调试,体系结构变化-3,ARM DSP 指令集对于音频DSP应用提供高达70%的处理速度Jazelle提供比基于软件的JAVA虚拟机(JVM)更高的性能 与非JAVA加速核相比,提供8倍JAVA加速性能和降低80%的功耗139 字节码直接在硬件上执行,88个字节码在软件上执行,ARM 体系结构演化,ARM系列处理器简介,ARM7 三级流水线 取指、译码、执行 主频60-100MHZ ARM7E 三级流水线 主频100MHZ,可扩充DSP,JAVAARM9 五级流水线操作 200MHZA

10、RM9E 五级流水线操作 200MHZ,JAVA,DSP扩充ARM10 六级流水线操作 400MHZ 可扩充SecurCore 专为安全需要设计。ARM11 主频更高,典型的ARM处理器核产品,ARM7 SamSung 公司的:S3C4510、S3C44B0 Cirrus Logic 公司的:EP7211、EP7212、EP7312 Atmel 公司的:At91M40800、At91R40807 Piliph公司的:LPC2104/05/06 LinkUp Systems 公司的ARM 系列:L7200、L7205 NetSilicon 公司的:NET+15/40/50 Triscend 公司

11、的:TA7S12,典型的ARM处理器核产品,ARM9 SamSung 公司的:S3C2410 Cirrus Logic 公司的:EP9312 Atmel 公司的:AT91RM9200ARM10 Intel的StrongARM 的系列:Xscale(PXA250255),本节提要,1,3,2,5,4,6,嵌入式微处理器及其应用,ARM体系结构概览,ARM JTAG调试接口,ARM编程模型,ARM 指令集,S3C44B0开发平台简介,ARM7 TDMI的指令流水线,从存储器取指,指令所用的寄存器译码,从寄存器组中读寄存器移位和ALU操作把寄存器写回到存储器组,每条指令可以分3个阶段执行,ARM单周

12、期指令3段流水线操作*,t,指令,1,2,3,注:程序计数器PC指向正在取指的指令而不是正在执行的指令,处理器的工作状态,ARM7TDMI 处理器有两种工作状态:ARM-32-bit,按字排列的ARM指令集Thumb-16-bit,按半字排列的Thumb指令集ARM7TDMI 核的操作状态可能通过BX指令(分支和交换指令)在ARM状态和Thumb状态之间切换,例:从ARM状态切换到Thumb状态:LDR R0,=Label+1 BX R0从Thumb状态切换到ARM状态:LDR R0,=Label BX R0,存储器模式*,大端模式最高位字节保存在最低位地址字由最低位字节的字节地址寻址小端模式

13、最低位字节保存在最低位地址字由最低位字节的字节地址寻址,操作模式,ARM7TDMI 处理器有7种操作模式:用户模式(usr)-正常的程序执行模式快速中断模式(fiq)-支持高速数据传输或通道处理中断模式(irq)-用于通用中断处理管理员模式(svc)-操作系统的保护模式.中止模式(abt)-支持虚拟内存和/或内存保护系统模式(sys)-支持操作系统的特殊用户模式(运行操作系统任务)未定义模式(und)-支持硬件协处理器的软件仿真 除了用户模式外,其他模式均可视为特权模式,寄存器-1,37 寄存器31 个通用32位寄存器,包括程序计数器PC6 个状态寄存器15 通用寄存器(R0 to R14),

14、以及1或者2个状态寄存器和程序计数器在任何时候都中可见的可见的寄存器取决于处理器的模式其它寄存器(the banked registers)的状态在支持IRQ,FIQ,管理员,中止和未定义模式处理时被切换,寄存器-2,R0 到 R15 可以直接访问R0 到 R14 是通用寄存器R13:堆栈指针(sp)(通常)每种处理器模式都有单独的堆栈R14:链接寄存器(lr)R15 包含程序计数器(PC)CPSR 当前程序状态寄存器,包括代码标志状态和当前模式位5个SPSRs-(程序状态保存寄存器)当异常发生时保存CPSR状态,寄存器组织 3*,注:表明用户或系统模式使用的正常寄存器已经被异常模式指定的另一

15、个寄存器取代,R15(PC)只有一个!,程序状态寄存器-1,ARM7TDMI 包含当前程序状态寄存器(CPSR),加上5个程序状态保存寄存器SPSR,当异常发生时,用于保存CPSR的状态 这些寄存器的功能是:包括关于最近执行的ALU操作的信息控制中断的使用和禁止设置处理器操作模式,程序状态寄存器-2,N,Z,C and V 条件码标志可以在处理器中作为数学和逻辑操作改变可以被所有的指令测试,以决定指令是否被执行N:Negative.Z:Zero.C:Carry.V:oVerflowI and F 位是中断禁止位M0,M1,M2,M3 and M4 位是模式位,程序状态寄存器PSR的模式位,异常

16、-1,异常内部或外部中断源产生并引起处理器处理一个事件,如外部中断或试图执行未定义指令都会引起异常。处理异常之前必须保留处理器的状态异常类型FIQ IRQ(Interrupt ReQuest)未定义指令预取中止数据中止复位软件中断Software interrupt通过软件中断产生进行管理员模式中获得通常要求特殊的管理功能,如操作系统支持,异常-2,异常类型未定义的指令陷井当ARM接受到一条不能处理的指令,ARM把这条指令提供给任何一个协处理器执行如果协处理器可以执行这条指令但此时协处理器忙,ARM将等待直到协处理器准备好或中断发生如果没有协处理器处理这条指令,那么ARM将处理未定义的指令陷井异常优先级(1)Reset(highest priority)(2)Data abort(3)FIQ(4)IRQ(5)Prefetch abort(6)未定义指令,Software interrupt(最低优先级),异常-3,只有产生异常就会导致正常和程序流程被临时停止,例如外围中断服务程序在异常被处理前,当前的处理器状态必须被保存,以便处理程序完成后,最后的程序可以被恢复.,异常向量,进入异常的

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT专区 > 其它PPT模板

启牛文库网为“电子文档交易平台”,即用户上传的文档直接卖给(下载)用户,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。

本站是网络服务平台方,若您的权利被侵害,请立刻联系我们并提供证据,侵权客服QQ:709425133 欢迎举报。

©2012-2025 by www.wojuba.com. All Rights Reserved.

经营许可证编号:京ICP备14006015号