控制寄存器标志位的存取方法综述.doc_第1页
控制寄存器标志位的存取方法综述.doc_第2页
控制寄存器标志位的存取方法综述.doc_第3页
控制寄存器标志位的存取方法综述.doc_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

控制寄存器中的标志位的存取方法文献综述 前 言 控制寄存器(CR0CR3)用于控制和确定处理器的操作模式以及当前执行任务的特性,CR0中含有控制处理器操作模式和状态的系统控制标志;CR1保留不用;CR2含有导致页错误的线性地址;CR3中含有页目录表物理内存基地址,因此该寄存器也被称为页目录基地址寄存器PDBR控制寄存器 1CR0中协处理器控制位 CR0的4个位:扩展类型位ET、任务切换位TS、仿真位EM和数学存在位MP用于控制80x86浮点(数学)协处理器的操作。有关协处理器的详细说明请参见第11章内容。CR0的ET位(标志)用于选择与协处理器进行通信所使用的协议,即指明系统中使用的是80387还是80287协处理器。TS、MP和EM位用于确定浮点指令或WAIT指令是否应该产生一个设备不存在(Device Not Available,DNA)异常。这个异常可用来仅为使用浮点运算的任务保存和恢复浮点寄存器。对于没有使用浮点运算的任务,这样做可以加快它们之间的切换操作。 (1)ET:CR0的位4是扩展类型(Extension Type)标志。当该标志为1时,表示指明系统中有80387协处理器,并使用32位协处理器协议。ET=0指明使用80287协处理器。如果仿真位EM=1,则该位将被忽略。在处理器复位操作时,ET位会被初始化指明系统中使用的协处理器类型。如果系统中有80387,则ET被设置成1,否则若有一个80287或者没有协处理器,则ET被设置成0。 (2)TS:CR0的位3是任务已切换(Task Switched)标志。该标志用于推迟保存任务切换时的协处理器内容,直到新任务开始实际执行协处理器指令。处理器在每次任务切换时都会设置该标志,并且在执行协处理器指令时测试该标志。 如果设置了TS标志并且CR0的EM标志为0,那么在执行任何协处理器指令之前会产生一个设备不存在异常。如果设置了TS标志但没有设置CR0的MP和EM标志,那么在执行协处理器指令WAIT/FWAIT之前不会产生设备不存在异常。如果设置了EM标志,那么TS标志对协处理器指令的执行无影响, 在任务切换时,处理器并不自动保存协处理器的上下文,而是会设置TS标志。这个标志会使得处理器在执行新任务指令流的任何时候遇到一条协处理器指令时产生设备不存在异常。 (3)EM:CR0的位2是仿真(EMulation)标志。当该位设置时,表示处理器没有内部或外部协处理器,执行协处理器指令时会引起设备不存在异常;当清除时,表示系统有协处理器。设置这个标志可以迫使所有浮点指令使用软件来模拟。 (4)MP:CR0的位1是监控协处理器(Monitor coProcessor或Math Present)标志。用于控制WAIT/FWAIT指令与TS标志的交互作用。如果MP=1、TS=1,那么执行WAIT指令将产生一个设备不存在异常;如果MP=0,则TS标志不会影响WAIT的执行。 2CR0中保护控制位 (1)PE:CR0的位0是启用保护(Protection Enable)标志。当设置该位时即开启了保护模式;当复位时即进入实地址模式。这个标志仅开启段级保护,而并没有启用分页机制。若要启用分页机制,那么PE和PG标志都要置位。 (2)PG:CR0的位31是分页(Paging)标志。当设置该位时即开启了分页机制;当复位时则禁止分页机制,此时所有线性地址等同于物理地址。在开启这个标志之前必须已经或者同时开启PE标志。即若要启用分页机制,那么PE和PG标志都要置位。 (3)WP:对于Intel 80486或以上的CPU,CR0的位16是写保护(Write Proctect)标志。当设置该标志时,处理器会禁止超级用户程序(例如特权级0的程序)向用户级只读页面执行写操作;当该位复位时则反之。该标志有利于UNIX类操作系统在创建进程时实现写时复制(Copy on Write)技术。 (4)NE:对于Intel 80486或以上的CPU,CR0的位5是协处理器错误(Numeric Error)标志。当设置该标志时,就启用了x87协处理器错误的内部报告机制;若复位该标志,那么就使用PC形式的x87协处理器错误报告机制。当NE为复位状态并且CPU的IGNNE输入引脚有信号时,那么数学协处理器x87错误将被忽略。当NE为复位状态并且CPU的IGNNE输入引脚无信号时,那么非屏蔽的数学协处理器x87错误将导致处理器通过FERR引脚在外部产生一个中断,并且在执行下一个等待形式浮点指令或WAIT/FWAIT指令之前立刻停止指令执行。CPU的FERR引脚用于仿真外部协处理器80387的ERROR引脚,因此通常连接到中断控制器输入请求引脚上。NE标志、IGNNE引脚和FERR引脚用于利用外部逻辑来实现PC形式的外部错误报告机制。 启用保护模式PE(Protected Enable)位(位0)和开启分页PG(Paging)位(位31)分别用于控制分段和分页机制。PE用于控制分段机制。如果PE=1,处理器就工作在开启分段机制环境下,即运行在保护模式下。如果PE=0,则处理器关闭了分段机制,并如同8086工作于实地址模式下。PG用于控制分页机制。如果PG=1,则开启了分页机制。如果PG=0,分页机制被禁止,此时线性地址被直接作为物理地址使用。 如果PE=0、PG=0,处理器工作在实地址模式下;如果PG=0、PE=1,处理器工作在没有开启分页机制的保护模式下;如果PG=1、PE=0,此时由于不在保护模式下不能启用分页机制,因此处理器会产生一个一般保护异常,即这种标志组合无效;如果PG=1、PE=1,则处理器工作在开启了分页机制的保护模式下。 当改变PE和PG位时,必须小心。只有当执行程序至少有部分代码和数据在线性地址空间和物理地址空间中具有相同地址时,我们才能改变PG位的设置。此时这部分具有相同地址的代码在分页和未分页世界之间起着桥梁的作用。无论是否开启分页机制,这部分代码都具有相同的地址。另外,在开启分页(PG=1)之前必须先刷新页高速缓冲TLB。 在修改该了PE位之后程序必须立刻使用一条跳转指令,以刷新处理器执行管道中已经获取的不同模式下的任何指令。在设置PE位之前,程序必须初始化几个系统段和控制寄存器。在系统刚上电时,处理器被复位成PE=0和PG=0(即实模式状态),以允许引导代码在启用分段和分页机制之前能够初始化这些寄存器和数据结构。 3CR2和CR3 CR2和CR3用于分页机制。CR3含有存放页目录表页面的物理地址,因此CR3也被称为PDBR。因为页目录表页面是页对齐的,所以该寄存器只有高20位是有效的。而低12位保留供更高级处理器使用,因此在往CR3中加载一个新值时低12位必须设置为0。 使用MOV指令加载CR3时具有让页高速缓冲无效的副作用。为了减少地址转换所要求的总线周期数量,最近访问的页目录和页表会被存放在处理器的页高速缓冲器件中,该缓冲器件被称为转换查找缓冲区(Translation Lookaside Buffer,TLB)。只有当TLB中不包含要求的页表项时才会使用额外的总线周期从内存中读取页表项。 即使CR0中的PG位处于复位状态(PG=0),我们也能先加载CR3。以允许对分页机制进行初始化。当切换任务时,CR3的内容也会随之改变。但是如果新任务的CR3值与原任务的一样,处理器就无需刷新页高速缓冲。这样共享页表的任务可以执行得更快。 CR2用于出现页异常时报告出错信息。在报告页异常时,处理器会把引起异常的线性地址存放在CR2中。因此操作系统中的页异常处理程序可以通过检查CR2的内容来确定线性地址空间中哪一个页面引发了异常。 主 体 从目前搜集到的资料来看,关于寄存器的研究主要有如下观点:张延军在他的RFCC-VLIM:一种适用于超长指令字节处理器的寄存器结构解决了指令字处理器中功能单元的增加会带来寄存器堆代价的急剧增长的问题, 他们提出了提出了一种新的寄存器堆结构。该结构采用分簇的方式将传统的单一寄存器堆化分成多个本地寄存器堆, 每个寄存器堆对应一个功能单元簇, 每个功能单元簇可以自由访问它对应的本地寄存器堆。同时该结构采用一个全局寄存器堆将所有功能单元簇互连以方便各个功能单元簇之间互相访问数据。寄存器堆的划分减少了寄存器堆的端口数量, 有效降低了处理器中寄存器堆在面积、功耗、访问延时等方面的代价。全局寄存器堆的使用减少了分簇结构带来的数据复制操作, 降低了分簇结构带来的处理器性能损失。试验结果证明, 在降低寄存器堆代价的同时, 该结构将处理器的平均性能损失降低到13%张来在他的基于ARM软核的AHB-PC Card 主扎端IP核控制寄存器有关键模块设计本论文以科研项目PCMCIA Host IP核设计课题为依托,完成从AHB总线到PC Card接口的IP核设计,可为基于ARM 的SoC系统扩展PC卡热插拔接口本IP核在开发过程,依照先进的设计方法学以及其流程规范,并借助先进的EDA工具,保证质量提高效率目前本IP核已经过较充分的功能仿真验证,符合规格要求,达到了较为理想的代码覆盖率,在基于ARM处理器的Linux操作系统下开发了本IP核驱动,并在FPGA平台上进行原型测试 本论文首先对SoC系统的国内外发展现状作了概述,并对基于ARM处理器的嵌入式系统的应用情况作了简述,而后对本IP核涉及到的AMBA总线协议架构、PC Card接口协议进行了介绍,在此基础上对IP核的规格、总体设计以及模块划分进行了描述,并对其中的控制寄存器模块设计进行了详细描述,叙述了控制寄存器部分设计过程中可重用的考虑而后,对本IP核的功能仿真验证环境进行了描述,分析了控制寄存器部分的验证结果指出了控制寄存器实现了规格所要求的功能,使软件能通过该接口对口核的运行参数进行配置、对中断进行使能以及屏蔽、控制口核对地址空间进行映射,并能访问CardBus卡配置空间,以及对CardBus接口进行复位。,并对该模块代码覆盖率情况进行了讨论,最后对本IP核在FPGA平台上的原型测试环境,以及软件环境进行了描述 黄振,杨士中在他们的可编程数字扩频系统的控制寄存器初始化中说到通信系统要具有很强的通用性,因此CPU对寄存器初始化时,能够对其工作方式进行选择,必须先弄清楚每一种工作方式与相关的寄存器类型,设置方法。在此基础上在进行调整方式的选择,连续。猝发传送模式的选择等等。WC莫耶;MD辛德;GL惠森亨特在他们的用于数据处理系统的调试指令中阐述了可以包括调试指令提供调试程序字段的方法,如果调试控制寄存器字段有第一值,或者有第二值 则执行不同的操作任务,一种数据处理包括用于接收调试指令的取指令电路,调试控制寄存器字段和调试控制电路。在这种方法中有很多步骤都是牵扯到调试控制寄存器字段的第一值或者第二值 ,可以明显看出没有控制寄存器其他的都所谓调试 存取数据都不太容易。正如文中所说软件开发过程使用调试指令,开发完了就去除这些指令,可是这些指令的去除可能改变系统的执行特性,导致可预测性差的执行,这是实际中有尤其该注意的问题。何虎,孙义和在他们的面向寄存器的流水线处理器建模及验证方法中也有说到这种新的流水线处理器的功能验证方法主要思想是通过验证流水线处理器中所以寄存器的功能来验证处理器的功能,流水线处理器大部分是由同步电路组成的,然而同步电路则完全有寄存器决定,因此哟啊保证每个寄存器功能正确就差不多了,面向寄存器的验证方法最大特点是验证寄存器为对象,二不需要验证对象为某种特定的系统。随着程序对地址空间的需求,日益提高,李三立在新型体系结构概念虚拟寄存器与并行的指令处理部件中阐述虚拟寄存器概念是程序访问的地址空间免受物理存储器的限制。为此引入将大大提高数据处理部件内执行指令的并行性,虚拟寄存器有它的管理机构,可通过与外存的交换扩大用户的寄存器空间,VR的管理机构是通过与cache交换,扩大用户的寄存器堆空间,采用虚拟寄存器则分配是动态的,这实际相当于寄存器窗口的大小时可适用性的变化的。从而使效率更高。有利于指令调度和寄存器重新命名的技术,提高指令级并行性ILP。吾鸣在他的灵活编程属性控制寄存器中提到通过模式寄存器和色彩选择寄存器来选择不同的色彩组来得到增选16色的目的。模式寄存器主要用于为属性控制寄存器选择模式特性,而色彩选择寄存器是用来增加色彩选择的灵活性,它增加两个比特到调色板寄存器的,一提供完整的调色选择随着处理器并行度的提高,现代的并行处理器没周期可以并行执行多条指令,同时有多条对寄存器的访问请求,对可用寄存器数目的要求越来越高,对编译码分配调度寄存器的要求也更高,为了提高汇编程序的效率,处理器需要大量的寄存器,但是目前普遍存在的可以寄存器数量受到指令长度的限制,为此何虎,白无在专利一种交替访问寄存器的装置与其方法中谈到为了克服现有的技术不足,他们提供了此种方法,在有限的处理指令中寄存器寻址长度下可以增加处理器指令寄存器寻址字段实际的可用寄存器数目,从而提高程序的并行度和效率。集体访问寄存器的装置特征在于:所述的寄存器堆重叠区域子啊单线程程序中,能在处理器设置下减少所需要的寄存器堆重叠区域的寄存器的数量。图为交替访问寄存器的装置的原理图内外层交错流水给寄存器分配带来了特殊的问题,主要是同层次和跨层次的寄存器命名问题,以及断流问他。容红波,汤志忠在他们的一种支持多重循环软件流水的寄存器结构对这些问题进行了深入分析,提出来具有普遍的寄存器结构和分配方法。从工程的实际结果看,半共享跳跃式流水寄存器堆有效地解决多重循环软件的特殊问他,有效得消除外层循环的体间读写相关,提高程序的指令级并行度。在工程实践中是十分有效的。总 结综上所述的内容,形形色色,控制寄存器在应用实践中,我们的各种技术,生活中都有着有广泛的应用,在我们所学习专业可以稍微了解到的有中断控制寄存器、串行口控制寄存器,等等,总的来说学习寄存器的功能十分重要,CPU对存储器中的数据进行处理时,往往先把数据取到内部寄存器中,而后再作处理。外部寄存器是计算机中其它一些部件上用于暂存数据的寄存器,它与CPU之间通过“端口”交换数据,外部寄存器具有

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论