《微机原理与嵌入式系统基础》课件第2章.ppt

《微机原理与嵌入式系统基础》课件第2章.ppt

  1. 1、本文档共119页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

3.异常的优先级

异常优先级包含两方面的含义:①当多个异常事件同时发生时,处理器响应哪个异常;②处理器正在处理某个异常的过程中又有新的异常事件发生时,处理器如何处理,处理器是暂停前异常处理而响应新的异常(异常嵌套),还是等到前异常处理结束后再响应新的异常。在ARM异常响应机制中,处理器硬件仅解决了当多个异常同时发生时处理器如何响应的问题,系统约定总是最高优先级的异常优先获得响应。在ARM体系结构中,硬件约定了各个异常的优先级顺序,详见表2-10。异常嵌套及嵌套方案则由软件完成。4.异常的返回

当异常处理程序结束时,异常处理程序必须返回到发生异常所中断程序的断点处继续执行。由于ARM处理器流水线的存在,在进入异常处理时LR中的值未必就是目标返回点。异常的返回参见表2-9。

在ARM系统中,将能导致正常的程序执行流程被暂时地停止,CPU转入到该事件对应的处理器模式并转移到特定地址运行的事件都称为异常。概念上,异常要较中断的含义范围更广泛,在ARM系统中有7种异常(复位异常、取数中止异常、FIQ异常、IRQ异常、预取指中止异常、软中断指令异常和未定义指令异常),而中断只是其中两类特殊的异常(FIQ异常和IRQ异常)。关于中断的概念参见6.5、6.6节。2.6ARM7的存储系统

ARM7处理器采用冯·诺依曼存储体系结构,程序存储器、数据存储器和I/O统一编址(即使用同一个地址空间),指令和数据共用一条32位的数据总线。只有装载、保存和交换指令时才可访问存储器中的数据。2.6.1ARM7处理器寻址空间

在计算机系统中主要有两类资源需要编址访问:存储器单元和I/O端口。存储器单元资源组织得比较集中,通常数十KB、数百KB甚至数十MB组织在一个连续的地址区域内。而每个外设的I/O端口不会特别多,甚至有的外设可能只有一、二个I/O端口需要寻址。计算机中的外设端口的编址较存储器单元的编址要零落许多。这两类资源在计算机系统中有两种编址方式:(1)统一编址方式:存储器单元资源和I/O端口资源统一编址在一个地址空间。该方式的特点是:按地址空间位置约定各分类资源,访问I/O端口如同访问存储器单元,无专用的I/O访问指令。芯片上没有专用于I/O访问的引脚。

(2)独立编址方式:存储器资源和I/O端口资源分别编址在两个地址空间,即存储器地址空间和I/O地址空间。该方式的特点是:按资源分类的地址空间清晰,使用不同的指令访问存储器和I/O端口访问,即有专用的I/O访问指令。芯片上有专用于I/O访问的引脚。ARM处理器有32条地址线,以字节为单位,使用统一编址方式,将存储器、I/O端口等组织在一个线性递增的字节地址空间中,ARM处理器寻址的地址空间为0x00000000~0xFFFFFFFF,共4?GB。ARM处理器支持字节(8?bit)、半字(16?bit)和字(32?bit)数据访问。在进行半字和字数据访问时,要求数据是半字/字对齐存储。

ARM处理器支持232个字节(4?GB)地址空间,这些地址空间也可以组织成231个半字地址空间或230个字地址空间。2.6.2存储器中数据组织的形式

ARM处理器存储空间的组织形式如图2-11所示。其中:

(1)字节0~字节3紧邻的4个字节单元构成了存储空间的第一个字单元;用字节0的地址表示该字的地址。字节0~字节1、字节2~字节3分别构成了存储空间的第一、第二个半字单元;分别用字节0的地址、字节2的地址表示对应半字的地址。

(2)字节4~字节7紧邻的4个字节单元构成了存储空间的第二个字单元;字节4~字节5、字节6~字节7分别构成了存储空间的第三、第四个半字单元;其余字节依此类推。图2-11ARM处理器存储空间组织形式实际应用中,为了处理器能快捷地访问字、半字类型数据,对数据在存储器中的组织形式有以下要求:

(1)实际应用中,常以字单元的首字节的地址作为字单元的地址;半字单元首字节地址作为半字单元的地址。如图2-11中的字单元0的地址为字节0的地址,字单元1的地址为字节4的地址;半字单元0的地址为字节0的地址,半字单元1的地址为字节2的地址,半字单元2的地址为字节4的地址等。(2)?16位的数据要求按半字对齐存储;32位的数据要求按字对齐存储。

(3)一个字有4个字节,数据存放时可以有两种数据组织格式:一种是高位数据存储在高地址字节,这种组织数据的存储方式称为小端模式;另一种则反之,高位数据存储在低地址字节,这种组织数据的存储方式称为大端模式。例如,一个拥有A、A+1、A+2、A+3四个字节的字单元,存储32位数据0,以大端模

文档评论(0)

酱酱 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档