微处理器系统结构及嵌入式系统设计:复习

上传人:m**** 文档编号:573600893 上传时间:2024-08-15 格式:PPT 页数:74 大小:3.10MB
返回 下载 相关 举报
微处理器系统结构及嵌入式系统设计:复习_第1页
第1页 / 共74页
微处理器系统结构及嵌入式系统设计:复习_第2页
第2页 / 共74页
微处理器系统结构及嵌入式系统设计:复习_第3页
第3页 / 共74页
微处理器系统结构及嵌入式系统设计:复习_第4页
第4页 / 共74页
微处理器系统结构及嵌入式系统设计:复习_第5页
第5页 / 共74页
点击查看更多>>
资源描述

《微处理器系统结构及嵌入式系统设计:复习》由会员分享,可在线阅读,更多相关《微处理器系统结构及嵌入式系统设计:复习(74页珍藏版)》请在金锄头文库上搜索。

1、2024/8/152024/8/151 1 1 1第一章第一章理解冯理解冯诺依曼结构计算机和哈佛结构计算诺依曼结构计算机和哈佛结构计算机各自的特点;机各自的特点;理解理解CISC架构计算机和架构计算机和RISC架构计算机架构计算机各自的特点;各自的特点;理解高速缓存、虚拟内存、流水线、并行理解高速缓存、虚拟内存、流水线、并行等先进技术;等先进技术;理解嵌入式计算机系统的特点、发展现状理解嵌入式计算机系统的特点、发展现状及发展趋势。及发展趋势。2电子工程学院电子工程学院第二章第二章计算机系统组成与工作原理计算机系统组成与工作原理掌握冯掌握冯诺依曼体系结构的特征;诺依曼体系结构的特征;掌握计算机存

2、储器子系统的分级技术;掌握计算机存储器子系统的分级技术;掌握存储器的存取原理(如编址技术及存掌握存储器的存取原理(如编址技术及存放技术等);放技术等);掌握掌握CPU内部控制单元、数据通路的设计内部控制单元、数据通路的设计原理;原理;掌握计算机接口的基本结构。掌握计算机接口的基本结构。掌握计算机性能的评测方法。掌握计算机性能的评测方法。3电子工程学院电子工程学院计算机体系结构定义为机器语言程序员所看到的计算计算机体系结构定义为机器语言程序员所看到的计算机系统的属性,由机系统的属性,由硬件或固件硬件或固件完成的功能完成的功能包括:数据表示、寻址规则、寄存器定义、指令集、终端包括:数据表示、寻址规

3、则、寄存器定义、指令集、终端系统、存储系统、信息保护、系统、存储系统、信息保护、I/O结构等结构等计算机组成计算机组成(ComputerOrganization)指的是计算机体系结指的是计算机体系结构的构的逻辑实现逻辑实现包括机器内部的数据流和控制流的组成以及逻辑设计等包括机器内部的数据流和控制流的组成以及逻辑设计等计算机实现计算机实现(ComputerImplementation)指的是计算机组成指的是计算机组成的的物理实现物理实现包括处理机、存储器等部件的物理结构,器件的集成度和包括处理机、存储器等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、速度,模块

4、、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术冷却及整机装配技术4电子工程学院电子工程学院冯冯诺伊曼体系结构诺伊曼体系结构主要特点:使用二进制数和存储程序主要特点:使用二进制数和存储程序设计思想:存储程序并按地址顺序执行设计思想:存储程序并按地址顺序执行把程序及其操作数据把程序及其操作数据一同一同存储存储哈佛体系结构哈佛体系结构(HarvardArchitecture)把程序与其操作数据把程序与其操作数据分开分开存储,两套总线存储,两套总线5电子工程学院电子工程学院模型机总线结构模型机总线结构nAB:通常是:通常是单向单向的,由的,由主设备主设备(如如CPU)发出,用于选发出,用

5、于选择读写对象择读写对象(如某个特定的存储单元或外部设备如某个特定的存储单元或外部设备);nDB:用于数据交换,通常是:用于数据交换,通常是双向双向的;的;nCB:包括真正的:包括真正的控制控制信号线信号线(如读如读/写信号写信号)和一些和一些状态状态信号线信号线(如是否已将数据送上总线如是否已将数据送上总线),用于实现对设备的,用于实现对设备的监视和控制。监视和控制。6电子工程学院电子工程学院模型机内存储器模型机内存储器n存储器组织由许多存储器组织由许多字节单元字节单元组成,每个单元都有一个唯一的编号(存储组成,每个单元都有一个唯一的编号(存储单元单元地址地址),保存的信息称为存储单元),保

6、存的信息称为存储单元内容内容。n访问访问(读或写读或写)存储单元存储单元:存储单元地址经地址译码后产生相应的选通信:存储单元地址经地址译码后产生相应的选通信号,同时在控制信号的作用下读出存储单元内容到数据缓冲器,或将号,同时在控制信号的作用下读出存储单元内容到数据缓冲器,或将数据缓冲器中的内容写入选定的单元。数据缓冲器中的内容写入选定的单元。7电子工程学院电子工程学院算术逻辑单元算术逻辑单元ALU累加器累加器ACC累加锁存器累加锁存器暂存暂存器器标志寄存器标志寄存器FR通用寄存器组通用寄存器组堆栈指针堆栈指针SP程序计数器程序计数器PC微微操操作作控控制制电电路路指令译码器指令译码器ID指令寄

7、存器指令寄存器IR操作码操作码,地址码地址码脉冲分配器脉冲分配器时钟脉冲源时钟脉冲源控制总线控制总线CB地址总线地址总线AB数据总线数据总线DB内部总线内部总线地址缓冲器地址缓冲器数据缓冲器数据缓冲器运算器运算器寄存器组寄存器组控制器控制器模型机模型机CPU子系统子系统8电子工程学院电子工程学院把输入的把输入的任务分割任务分割为一系列子任务,各子为一系列子任务,各子任务能在流水线各个阶段任务能在流水线各个阶段并发执行并发执行流水线冲突流水线冲突数据冒险(数据冒险(如后面的计算要用到前面的结果)如后面的计算要用到前面的结果)结构冒险(硬件资源不够)结构冒险(硬件资源不够)控制冒险(分支等跳转指令

8、引起控制冒险(分支等跳转指令引起)流水线技术流水线技术9电子工程学院电子工程学院1、用、用MIPS(MillionInstructionsPerSecond,每秒百万条指令每秒百万条指令)或或MFLOPS(每秒百万次浮点操作每秒百万次浮点操作)的数值来衡量计算机系统的硬件的数值来衡量计算机系统的硬件速度。速度。2、用、用CPU执行时间执行时间T来量化硬软件结合系统的有效速度。来量化硬软件结合系统的有效速度。MIPS=f(MHz)/CPIT(s)=(ICCPI)/f(Hz)f(时钟频率):(时钟频率):CPU的基本工作频率的基本工作频率IC(指令数目):运行程序的指令总数(指令数目):运行程序的

9、指令总数CPI(CyclesPerInstruction):指令执行的平均时钟周期数,可从运):指令执行的平均时钟周期数,可从运行大量测试程序或实际程序产生的统计数据中计算出来行大量测试程序或实际程序产生的统计数据中计算出来性能测定性能测定CPI数越小,数越小,CPU执行指令的速度越快执行指令的速度越快10电子工程学院电子工程学院第三章第三章微处理器体系结构及关键技术微处理器体系结构及关键技术掌握掌握CPU的功能和模块构成;的功能和模块构成;掌握控制器的组成、工作原理、操作过程和电掌握控制器的组成、工作原理、操作过程和电路原理结构;路原理结构;掌握处理器数据通路结构、组成和工作原理;掌握处理器

10、数据通路结构、组成和工作原理;掌握指令系统的基本设计要素(包括操作码、掌握指令系统的基本设计要素(包括操作码、操作数、寻址方式等的确定);操作数、寻址方式等的确定);掌握机器指令的组成、指令格式。掌握机器指令的组成、指令格式。11电子工程学院电子工程学院程序的执行过程程序的执行过程取指令、分析指令、执行指令取指令、分析指令、执行指令ABDBALUR1暂存器暂存器标志寄存器标志寄存器FR寄存器组寄存器组操作控制器操作控制器OC指令译码器指令译码器ID指令寄存器指令寄存器IR操作码操作码,地址码地址码内部总线内部总线地址缓冲器地址缓冲器数据缓冲器数据缓冲器程序计数程序计数器器PC地地址址译译码码读

11、控制读控制B0H5CH04H2EH地址地址1001H1002H1003H内容内容1000H内存储器内存储器MOV5CH,R1ADDR1,2EH,R11CPU外外CPU内内12电子工程学院电子工程学院微微处理器的处理器的工作过程工作过程取指令:取指令:当程序已在存储器中时,首先根据程序入口地址当程序已在存储器中时,首先根据程序入口地址取出一条程序,为此要发出指令地址及控制信号。取出一条程序,为此要发出指令地址及控制信号。分析指令:分析指令:即指令译码,是指对当前取得的指令进行分析,即指令译码,是指对当前取得的指令进行分析,指出它要求什么操作,并产生相应的操作控制命令。指出它要求什么操作,并产生相

12、应的操作控制命令。执行指令:执行指令:根据分析指令时产生的根据分析指令时产生的“操作命令操作命令”形成相应形成相应的操作控制信号序列,通过运算器、存储器及输入的操作控制信号序列,通过运算器、存储器及输入/输出设备输出设备的执行,实现每条指令的功能,其中包括对运算结果的处理的执行,实现每条指令的功能,其中包括对运算结果的处理以及下条指令地址的形成。以及下条指令地址的形成。13电子工程学院电子工程学院寄存器传输级寄存器传输级(RTL)描述)描述数据通路数据通路CPU的的寄存器传输寄存器传输级(级(ResistorTransistorLevel,RTL)描述:)描述:数据通路数据通路:ALU+寄存器

13、寄存器+内部总线内部总线功功能能:基基本本的的二二进进制制算算术术、逻逻辑辑及及移移位位运运算算;根根据据运运算算结结果果设设置置状状态态标标志志(进进/借借位位、溢溢出出等等););特性:特性:数据通路宽数据通路宽度:即字度:即字长,长,CPU单次传送单次传送和处理数和处理数据的能力。据的能力。数据通路周数据通路周期:期:ALU运算并将运算并将保存结果保存结果的过程。的过程。14电子工程学院电子工程学院机器指令要素机器指令要素操作码操作码(operationcode,opcode):需要完成的操作;:需要完成的操作;源操作数源操作数(sourceoperandreference):操作所需的

14、输入;:操作所需的输入;结果操作数结果操作数(resultoperandreference):操作产生的结果;:操作产生的结果;下一条指令下一条指令(nextinstructionreference):告诉:告诉CPU到哪里取下一条到哪里取下一条指令。指令。15电子工程学院电子工程学院指令格式指令格式操作码字段:操作码字段:说明说明CPU应进行的操作应进行的操作按操作类型分组按操作类型分组:同同类类操作要求同样或类似的控制信号,操作要求同样或类似的控制信号,因因此编码也类似(此编码也类似(有尽可能多的公共位有尽可能多的公共位)操作数字段操作数字段/地址字段地址字段:说明源操作数和目的操作数存放

15、的位置信息说明源操作数和目的操作数存放的位置信息(R、M或或I/O);说明源操作数和目的操作数的数据类型说明源操作数和目的操作数的数据类型;下一条指令地址字段下一条指令地址字段:如紧跟当前指令,在主存或虚存中,则不需显示引用;如紧跟当前指令,在主存或虚存中,则不需显示引用;如可能产生跳转,则需要显示给出存储地址;如可能产生跳转,则需要显示给出存储地址;指令类型决定了指令类型决定了CPU的软件功能特的软件功能特性性寻址方式决定了寻址方式决定了CPU硬件功能特硬件功能特性性16电子工程学院电子工程学院操作数字段操作数字段根据地址码的数量,可以将指令的格式分根据地址码的数量,可以将指令的格式分为:零

16、地址指令、一地址指令、二地址指为:零地址指令、一地址指令、二地址指令、三地址指令和多地址指令令、三地址指令和多地址指令17电子工程学院电子工程学院寻址方式寻址方式1在指令码中指定操作数:在指令码中指定操作数:立即数寻址立即数寻址2在寄存器中指定操作数:在寄存器中指定操作数:寄存器(直接)寻址寄存器(直接)寻址3在在存存储储器器中中指指定定操操作作数数:存存储储器器直直接接寻寻址址、存存储储器器间间接接寻址寻址4在汇编程序中指定操作数:在汇编程序中指定操作数:相对寻址相对寻址5操操作作数数在在I/O接接口口中中:存存储储器器寻寻址址(存存储储器器映映像像编编址址)或或端口寻址(独立编址)端口寻址

17、(独立编址)18电子工程学院电子工程学院吞吐量吞吐量(ThroughputRate)吞吐量吞吐量T Tp p:指单位时间内能完成的作业量。:指单位时间内能完成的作业量。最大吞吐最大吞吐量量T Tp pmaxmax:流水线达到稳定状态后的吞吐率流水线达到稳定状态后的吞吐率。用于用于描述流水线执行各种运算的描述流水线执行各种运算的速率速率,通常表示为每秒通常表示为每秒执行的运算数或每周期执行的运算数执行的运算数或每周期执行的运算数。若一个若一个m级级线性流水线各级时长线性流水线各级时长(即拍长即拍长)均为均为t,则连续处理则连续处理n条指令时的实际吞吐量条指令时的实际吞吐量Tp为为:可以看出,当可

18、以看出,当n 时,最大吞吐量时,最大吞吐量Tpmax1/t19电子工程学院电子工程学院加速比加速比(SpeedupRatio)非流水线执行时间相对流水线执行时间之比。非流水线执行时间相对流水线执行时间之比。若一个若一个m级级线性流水线各级时长线性流水线各级时长(即拍长即拍长)均为均为t,则连续处理则连续处理n条指令时的加速比条指令时的加速比Sp为为:可以看出,当可以看出,当n 时,时,Spm,即最大加,即最大加速比等于流水线的段数速比等于流水线的段数m。20电子工程学院电子工程学院效率效率(Efficiency)一定时段内,流水线所有段处于工作一定时段内,流水线所有段处于工作状态的比率状态的比

19、率。若一个若一个m级级线性流水线各级时长线性流水线各级时长(即拍长即拍长)均为均为t,则连续处理,则连续处理n条指令时的效率条指令时的效率E为为:E=指令完成时间内占用的时空区指令完成时间内占用的时空区/指令总时空区指令总时空区可以看出,当可以看出,当n 时,时,E1,即流过流水即流过流水线的指令越多,流水线效率越高。线的指令越多,流水线效率越高。21电子工程学院电子工程学院第四章第四章总线技术与总线标准总线技术与总线标准掌握总线带宽、总线仲裁的初步概念;掌握总线带宽、总线仲裁的初步概念;掌握时钟周期、总线周期、指令周期等概掌握时钟周期、总线周期、指令周期等概念;念;掌握同步、异步以及半同步总

20、线时序的特掌握同步、异步以及半同步总线时序的特点。点。22电子工程学院电子工程学院总线分类总线分类按按所处位置所处位置(数据传送范围数据传送范围)片内总线片内总线芯片总线芯片总线(片间总线、元件级总线)(片间总线、元件级总线)系统内总线系统内总线(插板级总线)(插板级总线)系统外总线系统外总线(通信总线)(通信总线)非通用总线非通用总线(与具体芯(与具体芯片有关)片有关)通用标准总线通用标准总线地址总线地址总线控制总线控制总线按按总线功能总线功能数据总线数据总线并行总线并行总线串行总线串行总线按按数据格式数据格式按按时序关系时序关系(握手方式握手方式)同步同步异步异步半同步半同步同步同步异步异

21、步单总线单总线多级总线多级总线按按总线组织总线组织双总线双总线23电子工程学院电子工程学院计算机系统计算机系统外部总线、外部总线、(系统系统)外总线外总线如并口、串口如并口、串口主板主板系统总线、系统总线、(系统系统)内总线内总线如如ISA、PCICPU片片(间间)总线总线三总线形式三总线形式片内总线片内总线单总线形式单总线形式计算机系统的四层总线结构计算机系统的四层总线结构运算器运算器寄存器寄存器控控制制器器存储存储芯片芯片I/O芯片芯片扩展扩展接口板接口板扩展扩展接口板接口板其其他他计算机计算机系系统统其其他他仪仪器器系系统统24电子工程学院电子工程学院典型的总线控制信号典型的总线控制信号

22、总线的控制信号总线的控制信号存储器写信号存储器写信号存储器读信号存储器读信号I/O写信号写信号I/O读信号读信号总线请求信号总线请求信号总线授予信号总线授予信号中断请求信号中断请求信号中断应答信号中断应答信号时钟信号时钟信号复位信号复位信号25电子工程学院电子工程学院总线的性能指标总线的性能指标 总线时钟总线时钟频率频率:总线上的时钟信号频率:总线上的时钟信号频率总线总线宽度宽度:数据线、地址线宽度:数据线、地址线宽度总线总线速率速率:总线每秒所能传输数据的最大次数。:总线每秒所能传输数据的最大次数。总线速率总线速率= =总线时钟频率总线时钟频率/ /总线周期数总线周期数总线周期数:总线传送一

23、次数据所需的时钟周期数总线周期数:总线传送一次数据所需的时钟周期数有些几个周期才能传输有些几个周期才能传输1 1个数据个数据总线总线带宽带宽:总线每秒传输的字节数:总线每秒传输的字节数同步同步方式方式总线总线负载负载能力能力26电子工程学院电子工程学院总线仲裁总线仲裁总线周期的总线周期的4个阶段:个阶段:总线请求与仲裁、寻址、传数、结束。总线请求与仲裁、寻址、传数、结束。总线仲裁总线仲裁(arbitration)也称为总线判决:合理地控制和也称为总线判决:合理地控制和管理系统中管理系统中多个主设备的总线请求多个主设备的总线请求,以避免总线冲突。,以避免总线冲突。分布式分布式(对等式对等式)仲裁

24、仲裁控制逻辑分散在连接于总线上的各个部件或设备中控制逻辑分散在连接于总线上的各个部件或设备中协议复杂且昂贵,效率高协议复杂且昂贵,效率高集中式集中式(主从式主从式)仲裁仲裁采用专门的控制器或仲裁器采用专门的控制器或仲裁器总线控制器或仲裁器可以是独立的模块或集成在总线控制器或仲裁器可以是独立的模块或集成在CPU中中菊花链、并行菊花链、并行、混合、混合27电子工程学院电子工程学院时钟周期时钟周期处理操作的最基本时间单位处理操作的最基本时间单位,由机器的主频决定,由机器的主频决定总线周期总线周期总线设备完成一次完整信息交换的时间总线设备完成一次完整信息交换的时间读读/写存储器周期、读写存储器周期、读

25、/写写IO口周期口周期DMA周期、中断周期周期、中断周期指令周期指令周期CPU取出一条指令并执行该指令所需的时间取出一条指令并执行该指令所需的时间周期周期28电子工程学院电子工程学院总线时序总线时序总线时序总线时序是指总线事件的协调方式,以实现可是指总线事件的协调方式,以实现可靠的寻址和数据传送靠的寻址和数据传送同步同步:所有设备都采用一个统一的时钟信号来协:所有设备都采用一个统一的时钟信号来协调收发双方的定时关系调收发双方的定时关系异步异步:依靠传送双方互相制约的握手:依靠传送双方互相制约的握手(handshake)信号来实现定时控制信号来实现定时控制半同步半同步:具有同步总线的高速度和异步

26、总线的适:具有同步总线的高速度和异步总线的适应性应性29电子工程学院电子工程学院串行总线传输方式串行总线传输方式串行同步:收发双方需要使用(传送)串行同步:收发双方需要使用(传送)同同一时钟信号一时钟信号传输信息的传输信息的字节与字节字节与字节之间、之间、位与位位与位之间均与之间均与时钟严格同步时钟严格同步.通常以数据块为通常以数据块为基本单位基本单位进行传进行传送送串行异步:双方时钟串行异步:双方时钟不要求严格同步不要求严格同步以以字符字符为基本单位为基本单位帧间异步,无需使用(传送)同一时钟源,收帧间异步,无需使用(传送)同一时钟源,收发双方的时钟在误差范围内发双方的时钟在误差范围内帧内各

27、位按固定时序和顺序传送帧内各位按固定时序和顺序传送30电子工程学院电子工程学院第五章第五章存储器系统存储器系统掌握地址映射、地址译码等存储器接口设计掌握地址映射、地址译码等存储器接口设计技术;技术;掌握由多个存储芯片构建主存储器的方法;掌握由多个存储芯片构建主存储器的方法;掌握存储器模块电路的设计。掌握存储器模块电路的设计。31电子工程学院电子工程学院存储器分层结构存储器分层结构设计目标设计目标整个存储系统速度接近整个存储系统速度接近M1而价格和容量接近而价格和容量接近Mn二二.操作策略操作策略映像规则:映像规则:用于确定一个新的块(页)被调用于确定一个新的块(页)被调入本级存储器时应放在什么

28、位置上。入本级存储器时应放在什么位置上。查找规则:查找规则:用于确定需要的块(页)是否存用于确定需要的块(页)是否存在本级存储器中以及如何查找。在本级存储器中以及如何查找。替换规则:替换规则:用于确定本级存储器不命中且已用于确定本级存储器不命中且已满时应替换哪一块(页)。满时应替换哪一块(页)。写规则:写规则:用于确定写数据时应进行的操作。用于确定写数据时应进行的操作。32电子工程学院电子工程学院存储器的地址映射存储器的地址映射地址映射也叫地址重定位,指将用户程序中的地址映射也叫地址重定位,指将用户程序中的逻辑逻辑地址地址,转换为运行时机器可直接寻址的,转换为运行时机器可直接寻址的物理地址物理

29、地址。分页技术分页技术页是信息的物理单位,与源程序的逻辑结构无关;页是信息的物理单位,与源程序的逻辑结构无关;页长由系统确定,大小固定,用户不可见;页长由系统确定,大小固定,用户不可见;页面只能以页大小的整倍数地址开始,页一般不能共页面只能以页大小的整倍数地址开始,页一般不能共享;享;33电子工程学院电子工程学院不同宽度数据的存储方式不同宽度数据的存储方式按按任意任意边界边界对齐对齐存储存储可以保证存储空间可以保证存储空间的的利用利用(非规则存放)(非规则存放)字字字节字节字节字节半字半字字节字节半字半字字字半字半字1半字半字2双字(双字(part1)双字双字(part2)字节字节字节字节字节

30、字节字节字节半字半字字节字节8字节主存宽度字节主存宽度1字的位宽为字的位宽为32bits即即4字节(字节(4Bytes)34电子工程学院电子工程学院浪费浪费半字半字浪费浪费字字双字双字浪费浪费字字浪费浪费字字节节双字双字浪费浪费字字节节按整数边界按整数边界对齐对齐存储存储可以保证可以保证访存指令的速度访存指令的速度(规则存放)(规则存放)8字节主存宽度字节主存宽度数据存放是按数据存放是按边界边界A2A1A0000对其对其的的.若主存宽度若主存宽度4字字节,则是按节,则是按边界边界A1A000对其的对其的.35电子工程学院电子工程学院主存储器的扩展主存储器的扩展CPU对存储器进行读对存储器进行读

31、/写操作,写操作,首先由首先由地址总线地址总线给出地址信号,然后发出读操作或写给出地址信号,然后发出读操作或写操作的操作的控制信号控制信号,最后在,最后在数据总线数据总线上进行信息交流上进行信息交流因此,存储器同因此,存储器同CPU连接时,要完成地址线、数据线连接时,要完成地址线、数据线和控制线的连接和控制线的连接存储器存储器芯片容量有限芯片容量有限,需要在字向和位向两方面,需要在字向和位向两方面进行扩充,才能满足实际存储器的容量要求进行扩充,才能满足实际存储器的容量要求通常采用通常采用位扩展法、字扩展法、字位同时扩展法位扩展法、字扩展法、字位同时扩展法36电子工程学院电子工程学院两级物理地址

32、译码方案两级物理地址译码方案读读/ /写控制信号、数据写控制信号、数据宽度指示信号、传送宽度指示信号、传送方式指示信号等方式指示信号等37电子工程学院电子工程学院三种译码方式的比较三种译码方式的比较全译码全译码系统所有地址线全部都应该参与译码:系统所有地址线全部都应该参与译码:低段低段地址线应直接接在模块上,地址线应直接接在模块上,寻址模块内单元寻址模块内单元;中段中段地址线译码后产生片选信号地址线译码后产生片选信号区分不同模块区分不同模块;高段高段地址线可用作片选信号有效的地址线可用作片选信号有效的使能控制使能控制;部分译码部分译码高高段地址信号不参与译码,会造成地址空间的段地址信号不参与译

33、码,会造成地址空间的重叠及不连续重叠及不连续。线译码线译码电路结构简单,但系统必须保证参与电路结构简单,但系统必须保证参与片选的地址线不能同时为片选的地址线不能同时为有效电平有效电平;同部分译码法一样,因为有地址信号不参与译码,也存在同部分译码法一样,因为有地址信号不参与译码,也存在地址地址重叠及不连续重叠及不连续的问题;的问题;38电子工程学院电子工程学院第六章第六章输入输入/输出接口输出接口掌握输入掌握输入/输出接口电路的功能和结构;输出接口电路的功能和结构;掌握端口编址方式、地址译码方法;掌握端口编址方式、地址译码方法;掌握无条件及查询控制接口的硬件及驱动设掌握无条件及查询控制接口的硬件

34、及驱动设计方法;计方法;掌握程序控制及中断控制输入掌握程序控制及中断控制输入/输出方式的特输出方式的特点。点。39电子工程学院电子工程学院接口的分类接口的分类数据交换方式:数据交换方式:串行数据接口串行数据接口、并行数据接口并行数据接口时序控制方式:时序控制方式:同步接口同步接口、异步接口异步接口CPU访问访问I/O的控制方式:的控制方式:程序查询接口程序查询接口程序中断接口程序中断接口直接存储器访问(直接存储器访问(DMA)接口)接口通道通道40电子工程学院电子工程学院接口逻辑通常做成标准化的部件,称为接口逻辑通常做成标准化的部件,称为标准接口标准接口。典型的接口通常具有如下功能:典型的接口

35、通常具有如下功能:设备设备选择选择:译码选择设备、端口:译码选择设备、端口数据收发和格式数据收发和格式转换转换:读:读/写,串写,串/并、并并、并/串串接收、解释、执行接收、解释、执行CPU的命令:控制信号的实现的命令:控制信号的实现外设外设状态状态接收并转发给接收并转发给CPU:端口状态:端口状态支持查询、中断、支持查询、中断、DMA等多种等多种传输控制传输控制方式方式提供提供缓冲、暂存、驱动缓冲、暂存、驱动能力:信号驱动能力:信号驱动错误错误检测检测功能:奇偶校验功能:奇偶校验复位复位接口功能接口功能41电子工程学院电子工程学院总总线线外外设设数据缓冲数据缓冲/锁存器锁存器状态状态寄存器寄

36、存器控制控制寄存器寄存器总线驱动总线驱动地址译码地址译码控制逻辑控制逻辑接总线一侧接总线一侧接外设一侧接外设一侧DBABCB数据信息数据信息控制信息控制信息状态信息状态信息端口端口端口端口(PORT):接口中的寄存器:接口中的寄存器一个外设可能有多个端口,一个端口也可能属于多个外设;一个外设可能有多个端口,一个端口也可能属于多个外设;主机(主机(CPU)可读写)可读写 、8位长位长 、存储器映像或存储器映像或I/O独立编址独立编址42电子工程学院电子工程学院两种编址方式比较两种编址方式比较存储器存储器CPUABDBCB接口接口外设外设接口接口外设外设CPUABDBCB存储器存储器存储器读写存储

37、器读写 I/O读写读写统一编址统一编址独立编址独立编址43电子工程学院电子工程学院I/O地址译码方法地址译码方法地址译码的方法灵活多样地址译码的方法灵活多样高位地址线高位地址线与与CPU的控制信号进行组合,的控制信号进行组合,经译码电路产生经译码电路产生I/O接口芯片的片选信号接口芯片的片选信号CS,实现实现系统中的接口芯片寻址系统中的接口芯片寻址低位地址线低位地址线直接接到直接接到I/O接口芯片的地址引接口芯片的地址引脚,进行脚,进行I/O接口芯片的接口芯片的片内端口寻址片内端口寻址44电子工程学院电子工程学院I/O端口地址译码电路设计端口地址译码电路设计译码电路的形式译码电路的形式固定式译

38、码:固定式译码:接口中用到的端口地址不能更改接口中用到的端口地址不能更改 可选式译码可选式译码译码电路采用的元器件来分译码电路采用的元器件来分门电路译码门电路译码译码器译码译码器译码可编程逻辑器件译码可编程逻辑器件译码45电子工程学院电子工程学院程序控制方式总结程序控制方式总结1无条件控制(同步控制)无条件控制(同步控制)1.特点:特点:要求外设数据变化缓慢,操作时间固定,可以被认为始终处于就要求外设数据变化缓慢,操作时间固定,可以被认为始终处于就绪状态,如一组开关或绪状态,如一组开关或LED显示管。显示管。2.优点:优点:简单,简单,CPU随时可无条件读随时可无条件读/写数据。写数据。3.缺

39、点:缺点:无法保证数据总是有效,适用面窄。无法保证数据总是有效,适用面窄。2条件控制(查询控制)条件控制(查询控制)1.特点:特点:CPU主动、外设被动。执行主动、外设被动。执行I/O操作时操作时CPU总要先查总要先查询外设状态;若传输条件不满足时,询外设状态;若传输条件不满足时,CPU等待直到条件满足。等待直到条件满足。2.优点:优点:解决了解决了CPU与外设之间的同步问题,可靠性高。与外设之间的同步问题,可靠性高。3.缺点:缺点:CPU利用率低,低优先级外设可能无法及时得到服务利用率低,低优先级外设可能无法及时得到服务46电子工程学院电子工程学院中断中断中断源中断源:引起中断的原因(可能是

40、软件或硬件):引起中断的原因(可能是软件或硬件)中断类型号中断类型号:为区分不同中断源进行的编号:为区分不同中断源进行的编号中断向量中断向量:中断服务子程序的入口地址:中断服务子程序的入口地址断点断点:指:指CPU执行的现行程序(主程序)被中断时执行的现行程序(主程序)被中断时的下一条指令的地址;的下一条指令的地址;现场现场:指执行中断服务程序前:指执行中断服务程序前CPU的运行状态,如的运行状态,如CPU内部各寄存器值等;内部各寄存器值等;中断嵌套中断嵌套47电子工程学院电子工程学院中断处理过程中断处理过程 中断检测中断检测是否有中断请求;是否有中断请求;一般在每条指令执行完后由一般在每条指

41、令执行完后由CPU硬件自动检测;硬件自动检测;中断判优中断判优确认已有中断请求中优先级最高的中断源;确认已有中断请求中优先级最高的中断源;一般一般CPU内部和接口电路中都会进行判优;内部和接口电路中都会进行判优;中断响应中断响应保护断点、现场,并获取中断向量;保护断点、现场,并获取中断向量;一般由一般由CPU内部硬件自动完成内部硬件自动完成;中断服务中断服务运行用户自行编制的服务子程序;运行用户自行编制的服务子程序;中断返回中断返回恢复现场、断点;恢复现场、断点;一般由一般由CPU内部硬件自动完成内部硬件自动完成;堆栈堆栈中断向量表中断向量表48电子工程学院电子工程学院DMA传送过程传送过程n

42、可在可在I/O设备和存储器之间直接传送数据。设备和存储器之间直接传送数据。n一般用于高速批量数据的传输一般用于高速批量数据的传输n传送时,源和目的均直接由硬件指定。传送时,源和目的均直接由硬件指定。n传输的数据块长度需要指定,计数由硬件自动进行。传输的数据块长度需要指定,计数由硬件自动进行。n在一批数据传输完成后,通过中断方式通知在一批数据传输完成后,通过中断方式通知CPU进行后续处理。进行后续处理。nCPU和和I/O设备能在一定程度上并行工作,效率高。设备能在一定程度上并行工作,效率高。I/ODMA请求请求DMAC总线请求总线请求CPU总线响应总线响应DMA响应响应49电子工程学院电子工程学

43、院第七章第七章ARM处理器编程模型处理器编程模型理解理解ARM处理器工作状态及其设置方法;处理器工作状态及其设置方法;掌握掌握ARM处理器的运行模式;处理器的运行模式;掌握掌握ARM处理器的寄存器组织结构及其特点;处理器的寄存器组织结构及其特点;掌握处理器数据类型和掌握处理器数据类型和ARM处理器系统的数处理器系统的数据存储格式。据存储格式。掌握掌握ARM处理器对异常和中断的处理方式。处理器对异常和中断的处理方式。50电子工程学院电子工程学院ARM体系结构的特点体系结构的特点RISC芯片芯片,其简单的结构使,其简单的结构使ARM内核非常小、功耗低、成内核非常小、功耗低、成本低、性能高本低、性能

44、高统一和固定长度的指令集统一和固定长度的指令集,简化了指令的译码,便于指令,简化了指令的译码,便于指令流水线设计流水线设计装载装载/保存结构保存结构,数据处理操作只针对寄存器的内容,而不,数据处理操作只针对寄存器的内容,而不直接对存储器进行操作直接对存储器进行操作支持支持Thumb(16位位)/ARM(32位位)双指令集双指令集,能很好的兼容,能很好的兼容8位位/16位器件位器件每条数据处理指令都对每条数据处理指令都对算术逻辑单元和移位器算术逻辑单元和移位器控制,实现控制,实现了了ALU和移位器的最大利用和移位器的最大利用寻址方式寻址方式灵活简单,执行效率高灵活简单,执行效率高地址自动增加和减

45、少寻址模式地址自动增加和减少寻址模式,优化程序循环,优化程序循环多寄存器装载和存储指令多寄存器装载和存储指令实现最大数据吞吐量实现最大数据吞吐量所有指令的条件执行所有指令的条件执行实现最快速的代码执行实现最快速的代码执行51电子工程学院电子工程学院处理器模式处理器模式说明说明备注备注用户用户(usr)正常程序执行模式正常程序执行模式 不能直接切换到其它模式不能直接切换到其它模式特特权权模模式式系统系统(sys)运行操作系统的特运行操作系统的特权任务权任务与用户模式类似,但具有可以直接切换到其它与用户模式类似,但具有可以直接切换到其它模式等特权模式等特权异异常常模模式式快中断快中断(fiq)支持

46、高速数据传输支持高速数据传输及通道处理及通道处理FIQ异常响应时进入此模式异常响应时进入此模式中断中断(irq)用于通用中断处理用于通用中断处理 IRQ异常响应时进入此模式异常响应时进入此模式管理管理(svc)操作系统保护模式操作系统保护模式 系统复位和软件中断响应时进入此模式系统复位和软件中断响应时进入此模式中止中止(abt)用于支持虚拟内存用于支持虚拟内存和和/或存储器保护或存储器保护在在ARM7TDMI没有大用处没有大用处未定义未定义(und)支持硬件协处理器支持硬件协处理器的软件仿真的软件仿真未定义指令异常响应时进入此模式未定义指令异常响应时进入此模式ARM处理器运行模式处理器运行模式

47、52电子工程学院电子工程学院处理器工作状态及相互切换处理器工作状态及相互切换n进入进入Thumb状态状态处理器在处理器在Thumb状态进入异常,则当异常处理状态进入异常,则当异常处理(IRQ、FIQ、Undef、Abort和和SWI)返回时返回时,自动转换到自动转换到Thumb状态状态n进入进入ARM状态状态处理器进行异常处理处理器进行异常处理(IRQ、FIQ、Undef、Abort和和SWI)时,把程序计数器时,把程序计数器PC放入异常模式链接寄存器中。从异常放入异常模式链接寄存器中。从异常向量地址开始执行可以进入向量地址开始执行可以进入ARM状态。状态。nARM状态:状态:此时处理器执行此

48、时处理器执行32位位的字对齐的的字对齐的ARM指令。指令。nThumb状态:状态:此时处理器执行此时处理器执行16位位的、半字对齐的的、半字对齐的Thumb指令指令53电子工程学院电子工程学院ARM处理器工作状态切换处理器工作状态切换使用使用BX指令指令将将ARM内核的操作状态在内核的操作状态在ARM状态状态和和Thumb状态之间进行切换状态之间进行切换,程序如下所示,程序如下所示;从从Arm状态切换到状态切换到Thumb状态状态LDRR0,=Lable+1BXR0;从从Thumb状态切换到状态切换到ARM状态状态LDRR0,=LableBXR0地址最低位为地址最低位为1,表示切,表示切换到换

49、到Thumb状态状态地址最低位为地址最低位为0,表示切,表示切换到换到ARM状态状态跳转地址标号跳转地址标号注意:处理器复位后开始执行代码时,处于注意:处理器复位后开始执行代码时,处于ARM状态状态54电子工程学院电子工程学院寄存器类寄存器类别别寄存器在汇编寄存器在汇编中的名称中的名称各模式下实际访问的寄存器各模式下实际访问的寄存器用户用户系统系统管理管理中止中止未定义未定义中断中断快中断快中断通用寄存通用寄存器和程序器和程序计数器计数器R0(a1)R0R1(a2)R1R2(a3)R2R3(a4)R3R4(v1)R4R5(v2)R5R6(v3)R6R7(v4)R7R8(v5)R8R8_fiqR

50、9(SB,v6)R9R9_fiqR10(SL,v7)R10R10_fiqR11(FP,v8)R11R11_fiqR12(IP)R12R12_fiqR13(SP)R13R13_svcR13_abtR13_undR13_irqR13_fiqR14(LR)R14R14_svcR14_abtR14_undR14_irqR14_fiqR15(PC)R15状态寄存状态寄存器器CPSRCPSRSPSR无无SPSR_svcSPSR_abtSPSR_undSPSR_irqSPSR_fiqARM状态各模式下的寄存器组织状态各模式下的寄存器组织55电子工程学院电子工程学院NZCV IM0M1M2M3M4TF.313

51、029282726876543210程序状态寄存器程序状态寄存器条件代码标志条件代码标志保留保留控制位控制位溢出标志溢出标志oVerflow进位或借位扩展进位或借位扩展Carry零零Zero负或小于负或小于NegativeIRQ禁止禁止InterruptFIQ禁止禁止Fast状态位状态位Thumb模式位模式位ModeNZCVIM0M1M2M3M4TFCPSR寄存器的格式寄存器的格式56电子工程学院电子工程学院程序程序AIRQ服务程序服务程序系统模式系统模式IRQ模式模式程程序序寄寄存存器器组组图示进入异常过程图示进入异常过程1.程序在系统模式下运行程序在系统模式下运行用户程序,假定当前处理用户

52、程序,假定当前处理器状态为器状态为Thumb状态、允状态、允许许IRQ中断;中断;2.用户程序运行时发生用户程序运行时发生IRQ中断,硬件完成以下中断,硬件完成以下动作:动作:LR_sysSPSR_irqLR_irqLRPCCPSRSPSRSYS1?0.? ? ? ?MODTFI.N Z C V置位置位I位位(禁止(禁止IRQ中断)中断)清零清零T位位(进入(进入ARM状态)状态)设置设置MOD位,切换处理器位,切换处理器模式至模式至IRQ模式模式将下将下一条指令的地址一条指令的地址存入存入IRQ模式的模式的LR寄存器寄存器将将CPSR寄存器寄存器内容存入内容存入IRQ模式的模式的SPSR寄存

53、器寄存器将跳转地址存入将跳转地址存入PC,实,实现跳转现跳转IRQ0?1.? ? ? ?BackAddrJumpAddrJumpSYS1?0.?“?”表示对该位不关表示对该位不关心心57电子工程学院电子工程学院在异常处理结束后,异常在异常处理结束后,异常处理程序完成以下动作:处理程序完成以下动作:程序程序AIRQ服务程序服务程序系统模式系统模式IRQ模式模式程程序序寄寄存存器器组组图示退出异常过程图示退出异常过程LR_sysSPSR_irqLR_irqLRPCCPSRSPSRSYS1?0.? ? ? ?MODTFI.N Z C V将将SPSR寄存器的值复制寄存器的值复制回回CPSR寄存器;寄存

54、器;将将LR寄存的值减去一个寄存的值减去一个常量后复制到常量后复制到PC寄存器,寄存器,跳转到被中断的用户程序。跳转到被中断的用户程序。IRQ0?1.? ? ? ?BackAddrJumpAddrreturnSYS1?0.?SYS1?0.? ? ? ?BackAddr-4Jump“?”表示对该位不关表示对该位不关心心58电子工程学院电子工程学院第八章第八章ARM汇编指令汇编指令掌握掌握ARM指令的条件域的含义和作用;指令的条件域的含义和作用;理解第理解第2操作数的类型和意义。操作数的类型和意义。掌握指令寻址分类及其含义;掌握指令寻址分类及其含义;掌握汇编语言指令执行结果的分析方法。掌握汇编语言

55、指令执行结果的分析方法。59电子工程学院电子工程学院ARM是是三三地址指令格式,指令的基本格式如下:地址指令格式,指令的基本格式如下:ARM指令基本指令基本指令格式指令格式S,其中其中号内的项是必须的,号内的项是必须的,号内的项是可选的。各项的说明如下:号内的项是可选的。各项的说明如下:opcode:指令助记符;:指令助记符;cond:执行条件;:执行条件;S:是否影响:是否影响CPSR寄存器的值;寄存器的值;Rd:目标寄存器;:目标寄存器;Rn:第:第1个操作数的寄存器;个操作数的寄存器;operand2:第:第2个操作数;个操作数;指令语法指令语法目标寄存器目标寄存器(Rd)源寄存器源寄存

56、器1(Rn)源寄存器源寄存器2(Rm)ADDr3,r1,r2r3r1r2例例:60电子工程学院电子工程学院操作码操作码条件助记符条件助记符标志标志含义含义0000EQZ=1相等相等0001NEZ=0不相等不相等0010CS/HSC=1无符号数大于或等于无符号数大于或等于0011CC/LOC=0无符号数小于无符号数小于0100MIN=1负数负数0101PLN=0正数或零正数或零0110VSV=1溢出溢出0111VCV=0没有溢出没有溢出1000HIC=1,Z=0无符号数大于无符号数大于1001LSC=0,Z=1无符号数小于或等于无符号数小于或等于1010GEN=V有符号数大于或等于有符号数大于或

57、等于1011LTN!=V有符号数小于有符号数小于1100GTZ=0,N=V有符号数大于有符号数大于1101LEZ=1,N!=V有符号数小于或等于有符号数小于或等于1110AL任何任何无条件执行无条件执行(指令默认条件指令默认条件)1111NV任何任何从不执行从不执行(不要使用不要使用)指令条件码表指令条件码表所有的所有的ARM指令都可以条指令都可以条件执行,而件执行,而Thumb指令只指令只有有B(跳转)(跳转)指令具有条件指令具有条件执行功能执行功能如果指令不标如果指令不标明条件代码,明条件代码,将默认为无条将默认为无条件(件(AL)执行)执行61电子工程学院电子工程学院ARM指令的基本格式

58、如下:指令的基本格式如下:ARM指令的第指令的第2个操作数个操作数S,灵活的使用第灵活的使用第2个操作数个操作数“operand2”能够提高代码效率。能够提高代码效率。#immed_8r常数表达式;常数表达式;Rm寄存器方式;寄存器方式;Rm,shift寄存器移位方式;寄存器移位方式;0x120 0 0 1 0 0 1 00x000 0 0 0 0 0 0 00x000 0 0 0 0 0 0 00x000 0 0 0 0 0 0 00x000 0 0 0 0 0 0 00x000 0 0 0 0 0 0 00x801 0 0 0 0 0 0 00x040 0 0 0 0 1 0 08位常数循

59、环右移位常数循环右移10位位常数常数#immed_8r是一个是一个8位的常数通过循环右移偶数位位的常数通过循环右移偶数位得到得到62电子工程学院电子工程学院ARM处理器寻址方式处理器寻址方式寻寻址址方方式式是是根根据据指指令令中中给给出出的的地地址址码码字字段段来来实实现现寻寻找找真实操作数地址真实操作数地址的方式。的方式。ARM处理器具有处理器具有9种基本寻址方式种基本寻址方式。1.立即寻址;立即寻址;2.寄存器直接寻址;寄存器直接寻址;3.寄存器移位寻址;寄存器移位寻址;4.寄存器间接寻址;寄存器间接寻址;5.基址寻址;基址寻址;6.多寄存器寻址;多寄存器寻址;7.相对寻址;相对寻址;8.

60、堆栈寻址;堆栈寻址;9.块拷贝寻址。块拷贝寻址。63电子工程学院电子工程学院堆栈寻址堆栈寻址四种类型的堆栈方式四种类型的堆栈方式n满递增满递增(FA):堆栈向上增长,堆栈指针指向内含有效数:堆栈向上增长,堆栈指针指向内含有效数据项的最高地址。指令如据项的最高地址。指令如LDMFA、STMFA等;等;n空递增空递增(EA):堆栈向上增长,堆栈指针指向堆栈上的第:堆栈向上增长,堆栈指针指向堆栈上的第一个空位置。指令如一个空位置。指令如LDMEA、STMEA等;等;n满递减满递减(FD):堆栈向下增长,堆栈指针指向内含有效数:堆栈向下增长,堆栈指针指向内含有效数据项的最低地址。指令如据项的最低地址。

61、指令如LDMFD、STMFD等;等;n空递减空递减(ED):堆栈向下增长,堆栈指针向堆栈下的第一:堆栈向下增长,堆栈指针向堆栈下的第一个空位置。指令如个空位置。指令如LDMED、STMED等等64电子工程学院电子工程学院ARM指令集指令集n数据处理指令大致可分为数据处理指令大致可分为3类:类:数据传送数据传送指令:指令:MOV、MVN算算术术逻逻辑辑运运算算指指令令:ADD、SUB、RSB、ADC、SBC、RSC、MUL、MLA、UMULL、UMLAL、SMULL、SMLAL、AND、ORR、EOR、BIC比较比较指令:指令:CMP、CMN、TST、TEQn数数据据处处理理指指令令只只能能对对

62、寄寄存存器器的的内内容容进进行行操操作作,而不能对内存中的数据进行操作。而不能对内存中的数据进行操作。n所所有有ARM数数据据处处理理指指令令均均可可选选择择使使用用S后后缀缀,以使指令以使指令影响状态标志影响状态标志。65电子工程学院电子工程学院堆堆栈栈操操作作数据块传送数据块传送存储存储堆栈操作堆栈操作压栈压栈说明说明数据块传送数据块传送加载加载堆栈操作堆栈操作出栈出栈说明说明STMDASTMED空递减空递减LDMDALDMFA满递增满递增STMIASTMEA空递增空递增LDMIALDMFD满递减满递减STMDBSTMFD满递减满递减LDMDBLDMEA空递增空递增STMIBSTMFA满递

63、增满递增LDMIBLDMED空递减空递减;使用数据块传送指令进行堆栈操作使用数据块传送指令进行堆栈操作STMDAR13!,R5-R6.LDMIBR13!,R5-R6;使用堆栈指令进行堆栈操作使用堆栈指令进行堆栈操作STMEDR13!,R5-R6.LDMED R13!,R5-R6使用使用堆栈指令堆栈指令的压栈和出栈操作编程简单(只要的压栈和出栈操作编程简单(只要前后一致前后一致)使使用用数数据据块块指指令令进进行行压压栈栈和和出出栈栈操操作作则则需需要要考考虑虑空空与与满满、加加与与减减对应的问题。对应的问题。堆栈操作和数据块传送指令之间的关系堆栈操作和数据块传送指令之间的关系66电子工程学院电

64、子工程学院第九章第九章ARM程序设计程序设计掌握伪指令对存储器单元的定义和分配。掌握伪指令对存储器单元的定义和分配。掌握掌握ARM汇编语言的程序设计;汇编语言的程序设计;掌握汇编语言程序的分析;掌握汇编语言程序的分析;掌握掌握ARM汇编与汇编与C/C+混合语言编程方法。混合语言编程方法。67电子工程学院电子工程学院符号定义伪指令符号定义伪指令符号类型符号类型指示符指示符功能功能符号定义符号定义伪指令伪指令GBLA声明和初始化一个声明和初始化一个全局全局算术变量,初始值为算术变量,初始值为0GBLL声明和初始化一个全局逻辑变量,初始值为声明和初始化一个全局逻辑变量,初始值为FALSEGBLS声明

65、和初始化一个全局字符串变量,初始值为空声明和初始化一个全局字符串变量,初始值为空LCLA声声明明和和初初始始化化一一个个局局部部算算术术变变量量,初初始始值值为为0。局局部部算算术术变变量量只只能在宏中进行声明。能在宏中进行声明。LCLL声声明明和和初初始始化化一一个个局局部部逻逻辑辑变变量量,初初始始值值为为FALSE。局局部部逻逻辑辑变变量只能在宏中进行声明。量只能在宏中进行声明。LCLS声声明明和和初初始始化化一一个个局局部部字字符符串串变变量量,初初始始值值为为空空。局局部部字字符符串串变变量量只能在宏中进行声明。只能在宏中进行声明。SETA给一个局部或全局算术变量给一个局部或全局算术

66、变量置值置值SETL给一个局部或全局逻辑变量置值给一个局部或全局逻辑变量置值SETS给一个局部或全局字符串变量置值给一个局部或全局字符串变量置值RLIST给寄存器集给寄存器集命名命名CN给一个协处理器寄存器命名给一个协处理器寄存器命名CP给一个特定协处理器命名,协处理器号为给一个特定协处理器命名,协处理器号为015DN给一个双精度给一个双精度VFP寄存器命名寄存器命名SN给一个单精度给一个单精度VFP寄存器命名寄存器命名FN给一个特定的浮点寄存器命名给一个特定的浮点寄存器命名68电子工程学院电子工程学院数据定义伪指令数据定义伪指令数据定义数据定义伪指令伪指令LTORG指定指定一个文字池用以保存

67、数据一个文字池用以保存数据或或MAP指定一个内存表的首址指定一个内存表的首址#或或FIELD指定内存表中的各数据域的长度(一般在指定内存表中的各数据域的长度(一般在MAP之后)之后)%或或SPACE指定一块存储器的长度并将其中单元初始化为指定一块存储器的长度并将其中单元初始化为0=或或DCB分配分配一片连续的字节单元并一片连续的字节单元并初始化初始化分配一片连续的字节单元并用于存放代码分配一片连续的字节单元并用于存放代码&或或DCD分配一片连续的字单元并初始化(字边界对齐)分配一片连续的字单元并初始化(字边界对齐)DCDU分配一片连续的字单元并初始化(任意边界)分配一片连续的字单元并初始化(任

68、意边界)DCDO分配一片连续的分配一片连续的字单元字单元,并初始化为到静态基址寄存器,并初始化为到静态基址寄存器R9的偏移量(字边界对齐)的偏移量(字边界对齐)DCFD分配一片连续的字单元给双精度浮点数并初始化(字边界对齐)分配一片连续的字单元给双精度浮点数并初始化(字边界对齐)分配一片连续的字单元给单精度浮点数并初始化(字边界对齐)分配一片连续的字单元给单精度浮点数并初始化(字边界对齐)DCFDU分配一片连续的字单元给双精度浮点数并初始化(任意边界)分配一片连续的字单元给双精度浮点数并初始化(任意边界)分配一片连续的字单元给单精度浮点数并初始化(任意边界)分配一片连续的字单元给单精度浮点数并

69、初始化(任意边界)DCFSDCFSUDCIDCQ分配一片连续的分配一片连续的8字节单元并初始化(字边界对齐)字节单元并初始化(字边界对齐)DCQU分配一片连续的分配一片连续的8字节单元并初始化(任意边界)字节单元并初始化(任意边界)DCW分配一片连续的半字单元并初始化(半字边界对齐)分配一片连续的半字单元并初始化(半字边界对齐)DCWU分配分配一片连续的半字单元并初始化(任意边界)一片连续的半字单元并初始化(任意边界)DATA标识标识代码段中的数据标号,该符号后是代码段中的数据标号,该符号后是DCB等等69电子工程学院电子工程学院其它常用伪指令其它常用伪指令其他常用其他常用的伪指令的伪指令AR

70、EAALIGN从一个字边界开始从一个字边界开始指示汇编器汇编一段新的代码或数据部分指示汇编器汇编一段新的代码或数据部分CODE16指示汇编器将随后的指令作为指示汇编器将随后的指令作为16位位Thumb指令指令CODE32指示汇编器将随后的指令作为指示汇编器将随后的指令作为32位位ARM指令指令END表示源程序的结束表示源程序的结束ENTRY指向程序的入口,一个源文件中只能有一个指向程序的入口,一个源文件中只能有一个ENTRY*或或EQU对一个常量赋予一个符号名对一个常量赋予一个符号名EXPORT或或GLOBAL说明了由链接器在目标和库文件中使用的符号说明了由链接器在目标和库文件中使用的符号IM

71、PORT或或EXTERN提供汇编器在当前汇编中未曾定义的符号名提供汇编器在当前汇编中未曾定义的符号名GET或或INCLUDE包含一个文件,在包含一个文件,在GET处汇编包含的文件处汇编包含的文件INCBIN包含一个未被汇编过的文件包含一个未被汇编过的文件KEEP指示汇编器保留符号表中的局部符号指示汇编器保留符号表中的局部符号NOFP在汇编语言程序中禁止浮点指令在汇编语言程序中禁止浮点指令REQUIRE指示两段之间的依赖关系指示两段之间的依赖关系REQUIRE8指示当前文件请求堆栈为指示当前文件请求堆栈为8字节对准字节对准PRESERVE8指示当前文件保持堆栈为指示当前文件保持堆栈为8字节对准字

72、节对准RN给特定的寄存器命名给特定的寄存器命名ROUT标记局部标号使用范围的界面标记局部标号使用范围的界面70电子工程学院电子工程学院ARM汇编语言程序汇编语言程序段结构段结构GEToption.sGETaddr.sAREAInit,CODE,READONLYENTRYLDRR0,=0x0FMULR1,R0,R0ENDAREAData1,DATA,READWRITEnumDCD10END引用其它源文件引用其它源文件代码段代码段数据段数据段71电子工程学院电子工程学院ATPCS中的寄存器使用中的寄存器使用规则规则寄存器寄存器别名别名用用法法R0R3A1A4入口参数入口参数/返回值返回值/临时临时

73、(scratch)寄存器)寄存器R4R11V1V8子程序局部变量寄存器,其中:子程序局部变量寄存器,其中:R7/V4也作为也作为Thumb状态工作寄存器状态工作寄存器WR;R9/V6在支持可读写段位置无关的在支持可读写段位置无关的ATPCS中用作静态基址寄中用作静态基址寄存器存器SB;R10/V7/在在支持数据栈检查的支持数据栈检查的ATPCS中为数据栈限制指针中为数据栈限制指针SLR11/V8/在在支持数据栈检查的支持数据栈检查的ATPCS中为数据帧指针中为数据帧指针FP;R12IP临时(临时(scratch)寄存器)寄存器R13SP堆栈指针,不能用于其他用途堆栈指针,不能用于其他用途R14

74、LR连接寄存器连接寄存器R15PC程序计数器,不能用于其他用途程序计数器,不能用于其他用途72电子工程学院电子工程学院第十章第十章基于基于ARM的硬件系统设计的硬件系统设计掌握构造掌握构造ARM处理器最小硬件系统的流程处理器最小硬件系统的流程与方法;与方法;掌握处理器系统接口电路的设计方法。掌握处理器系统接口电路的设计方法。73电子工程学院电子工程学院S3C2440A最小硬件系统最小硬件系统ARM微处理器;微处理器;电源模块,包括电源模块,包括CPU内内核和核和I/O接口电源电源;接口电源电源;时钟模块,包括系统主时钟模块,包括系统主时钟和实时时钟;时钟和实时时钟;复位模块,包括系统上复位模块,包括系统上电复位、手动复位和内电复位、手动复位和内部复位;部复位;存储器模块,包括程序存储器模块,包括程序保存存储器和程序运行保存存储器和程序运行存储器;存储器;JTAG调试接口模块。调试接口模块。74电子工程学院电子工程学院

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号