ARM知识点讲解.docx

上传人:b****0 文档编号:283853 上传时间:2022-10-08 格式:DOCX 页数:7 大小:32.27KB
下载 相关 举报
ARM知识点讲解.docx_第1页
第1页 / 共7页
ARM知识点讲解.docx_第2页
第2页 / 共7页
ARM知识点讲解.docx_第3页
第3页 / 共7页
ARM知识点讲解.docx_第4页
第4页 / 共7页
ARM知识点讲解.docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

ARM知识点讲解.docx

《ARM知识点讲解.docx》由会员分享,可在线阅读,更多相关《ARM知识点讲解.docx(7页珍藏版)》请在冰豆网上搜索。

ARM知识点讲解.docx

ARM知识点讲解

1、ARM处理器工作模式有几种?

各种工作模式下分别有什么特点?

答:

ARM处理器有7种工作模式,这7种模式及其特点是:

快速中断模式(fiq)

支持高速数据传输或通道处理,外部中断fiq信号有效且CPSR的F=0进入。

中断模式(irq)

用于通用中断处理,外部中断irq信号有效CPSR的I=0进入。

管理员模式(svc)

-操作系统的保护模式,复位、软件中断进入。

主要用于SWI(软件中断)和OS(操作系统)。

这个模式有额外的特权,允许你进一步控制计算机。

中止模式(abt)

-支持虚拟内存和/或内存保护预取指令中止/数据中止进入

未定义模式(und)

-支持硬件协处理器的软件仿真(浮点、向量运算)未定义指令进入

系统模式(sys)

-支持操作系统的特殊用户模式(运行操作系统任务)

用户模式(usr)

正常的程序执行模式,此模式应用程序不能访问受操作系统保护的资源,不能改变模式,除非异常发生。

2、ARM处理器总共有多少个寄存器,这些寄存器按其在用户编程中的功能是如何划分的?

这些寄存器在使用中各有何特殊之处?

答:

ARM微处理器共有37个32位寄存器,其中31个为通用寄存器,6个为状态寄存器。

31个通用寄存器根据其编程特点可分为如下几种类型:

1、不分组寄存器R0-R7为所有模式共享

2、分组寄存器R8-R12

R8_fiq-R12_fiq:

FIQ模式下的寄存器

R8-R12:

其它模式共享

3、分组寄存器R13-R14

分为6组,用户、系统一组,其他每种模式一组。

R13_通常用作堆栈指针SP,R14_通常用作子程序链接寄存器,当进入子程序时,常用来保存PC的返回值其中,mode为以下几种模式之一:

usr、fiq、irq、svc、abt、und。

4、程序寄存器R15(PC)所有模式共享

6个状态寄存器:

一个CPSR当前程序状态寄存器,保存当前程序状态。

五个程序状态备份寄存器SPSR(svc,abt,und,irq,frq),只有在异常模式下,才能被访问;各异常模式都拥有属于自己的SPSR,当发生异常时,SPSR用来保存CPSR的值,从异常退出时则可由SPSR来恢复CPSR。

 

3、试述ARM处理器对异常中断的响应过程。

答:

当一个异常出现以后,ARM微处理器执行完当前指令后(复位异常除外)会执行以下几步操作:

1.将下一条指令的地址存入相应连接寄存器LR(R14_XXX),以便程序在处理异常返回时能从正确的位置重新开始执行。

2.将CPSR复制到相应的SPSR中。

3.根据异常类型,强制设置CPSR的运行模式位。

4.强制PC从相关的异常向量地址取一条指令执行,从而跳转到相应的异常处理程序处。

4、如何从异常中断处理程序中返回?

需要注意哪些问题?

答:

异常处理完毕之后,ARM微处理器会执行以下几步操作从异常返回:

1.将连接寄存器LR(R14_XXX)的值减去相应的偏移量后送到PC中。

2.将SPSR复制回CPSR中,恢复原处理器工作模式。

3.若在进入异常处理时设置了中断禁止位,要在此清除。

注意问题:

异常处理返回时,IRQ和FIQ必须返回前一条指令,以便执行因进入异常而被“占据”的指令。

预取指中止必须返回前一条指令,以便执行在初次请求访问时造成存储器故障的指令。

数据中止必须返回前面第二条指令,以便重新执行因进入异常而被占据的指令之前的数据传送指令。

5、ARM处理器版本的变化主要体现在内核的变化和内核的扩展哪些方面?

答:

ARM处理器版本的变化主要体现在内核的扩展和扩充。

ARM内核的扩展主要是增加ARM核外围的组件,以改善ARM性能,提供资源管理等功能。

主要有3种硬件扩展:

1、ARM内核扩展cache和紧耦合存储器

2、扩展存储管理

3、扩展协处理器接口(控制cache、TCM和存储管理)

ARM内核扩充主要是增加ARM核功能,通常将具有某些特殊功能的ARM内核称为它的某种变种,到目前为止ARM定义了如下变种:

1、T变种Thumb指令集

2、M变种长乘指令

3、E变种增强型DSP指令

4、J变种java加速器Jazelle

6、简述处理器启动时的模式转换过程。

处理器启动时,首先进入管理员模式(svc),此后进入除用户模式之外的其他模式,主要完成各模式的堆栈设置,最后进入用户模式,运行用户程序。

7、ARM存储器的存储周期有几种类型,对应于cache访问和存储器访问是何存储周期?

ARM存储器的存储周期有4种类型,它们分别是:

空闲周期、顺序周期、协处理器寄存器传送周期和非顺序周期,对应于cache访问的存储周期是空闲周期和顺序周期,对应于存储器访问的存储周期是非顺序周期。

 

8、何谓cache?

简述cache的工作原理。

Cache即高速缓冲存储器是位于CPU与内存之间的高速存储器,它的容量比内存小但交换速度快。

在cache存储系统当中,把主存储器和cache都划分成相同大小的块。

主存地址由块号M和块内地址N两部分组成。

同样,cache的地址也由块号m和块内地址n组成。

然而cache是相连存储器,装入时,通过地址变换部件把主存地址中的块号M变成cache的块号m,块号M保存在块号为m的cache块的标记区,数据块装入cache缓冲区。

当CPU要访问cache时,CPU送来主存地址,放到主存地址寄存器中。

然后通过地址变换部件把主存地址中的块号M变成cache的块号m,并放到cache地址寄存器当中。

同时将主存地址中的块内地址N直接作为cache的块内地址n装入到cache地址寄存器中。

如果地址变换成功(通常称为cache命中),就用得到的cache地址去访问cache,从cache中取出数据送到CPU中。

如果地址变换不成功,则产生cache失效信息,并且接着使用主存地址直接去访问主存储器。

 

9、简述全相联cache、直接映象cache、组相联cache其主存地址至cache地址的变换过程和数据检索过程。

全相联cache地址的变换过程和数据检索过程:

把内存地址的块号与cache目录区的主存块号比较,若相同则命中,然后块内地址检索cache块/行的某字;否则访问内存。

直接映象cache地址的变换过程和数据检索过程:

1、根据内存地址的块号找到cache的对应块。

2、把内存地址的区号与cache块的标记比较,若两者相等且有效位为1,则为命中,以块内地址访问Cache数据区。

若两者不相等或有效位不为1,则访问内存。

组相联cache地址的变换过程和数据检索过程:

1、首先以内存地址的组号q找到cache中的组。

如:

物理地址的组号为1,则对应cache第1组。

2、由于主存与cache其组内的块之间采用全相连映射,因此把内存地址的区号、组内块号与cache目录区所存的区号、组内块号比较,若有相同者则为命中。

3、若命中,以物理地址的块内地址查找某字,否则访问内存。

10、何谓写通cache和写回cache,两者有何区别?

采用写通法进行数据更新的cache称为写通cache。

写通法是指CPU在执行写操作时,必须把数据同时写入cache和主存。

采用写回法进行数据更新的cache称为写回cache。

写回法是指CPU在执行写操作时,被写的数据只写入cache,不写入主存。

仅当需要替换时,才把已经修改的cache块写回到主存中。

写通cache和写回cache的区别主要体现在执行写操作时数据是否同时写入主存,写通cache的欲写数据同时写入cache和主存;写回cache的欲写数据只写入cache,不写入主存,仅当需要替换时,才把已经修改的cache块写回到主存中。

11、说明ARM存储器存储访问过程。

 

12、arm的MMU主要主要实现何功能。

答:

MMU主要主要实现功能是:

1、虚拟存储空间到物理存储空间的映射。

在ARM中采用了页式虚拟存储管理,通过两级页表实现虚拟地址到物理地址的映射。

2、存储器访问权限的控制。

3、设置虚拟存储空间的缓冲的特性,主要包括Cache、writebuffer的配置。

13、协处理器cp15主要主要实现何功能。

答:

协处理器cp15用于处理、控制ARM的特殊性能,包括:

1、片上存储器管理单元(MMU)的特性。

2、指令、数据缓存的特性。

3、写缓冲器的特性。

为控制这些特性,CP15提供了16个额外寄存器。

14、简述MMU使能时存储访问过程。

(设chach为一级cache)

答:

使能MMU时存储访问过程:

通过配置cp15寄存器,设置为MMU使能:

(1)若cache使能,根据arm输出的虚拟地址在CACHE中搜索;若cache命中,arm处理器与cache交换数据。

(2)若cache禁止或cache未命中,首先访问TLB,根据arm输出的虚拟地址在TLB中搜索,若TLB命中,将TLB中的物理页地址与虚拟地址的页内偏移量拼接成物理地址,访问主存并把该块数据读取到cache(使能时)中。

(3)若cache且TLB均未命中,访问主存中的页表。

15、ARM支持的物理页有几种类型,其容量为何值?

ARM支持的物理页有四种类型,分别是:

1m的页,64k的大页,4k的小页,1k的微页或极小页。

16、简述采用单步页表搜索过程。

(若一级页表的页表项为1M的段,采用单步页表搜索;若为细页表或粗页表的页表项则采用两步搜索。

搜索步骤:

1、首先由c2寄存器的高18位和逻辑地址的高12位拼接成段描述符的物理地址,如下图所示:

2、根据上述地址检索一级页表找到段描述符,把段描述符中的高12位和虚拟地址的低20位拼接成32位物理地址,并由此地址访问主存物理页及相应存储单元。

17、简述使用粗页表和4k页的二级虚实地址转换过程。

1、首先把c2寄存器中的18位页表基址作为粗页表描述符的地址的高18位,虚拟地址的高12位作为粗页表描述符的地址的中间部分,00作为粗页表描述符的地址的最低2位,由此得到粗页表描述符的物理地址。

根据粗页表描述符的物理地址,检索一级页表,找到粗页表描述符。

2、把粗页表描述符22位二级页表基址与虚拟地址的中间8位和00拼接成4k页描述符的物理地址,根据4k页描述符的物理地址,检索二级页表,找到4k页表描述符。

3、将4k页表描述符中的高20位物理地址与虚拟地址的低12位拼接成主存物理地址,并由此访问某存储单元。

18、微处理器及嵌入式系统的总线一般由几部分组成,arm中实现存储器及外设读、写操作的控制信号是什么?

微处理器及嵌入式系统的总线一般由3部分组成,其分别是:

1、数据总线:

传送数据信息的信号线,通常为双向、三态总线。

2、地址总线:

用来传送地址信息的信号线,通常为单向、三态总线

3、控制总线:

传送控制信息的信号线。

arm中实现存储器及外设读、写操作的控制信号分别是。

19、何谓总线主控设备、总线从设备,并举例说明之。

何谓主控设备是指能控制总线并启动数据传送的任何设备称做主控器或主设备,如CPU和DMA控制器。

总线从设备则是指能够响应总线主设备发出的总线命令的任何设备,如存储器。

20、什么是系统总线,微机和arm使用何系统总线?

系统总线是指把微机系统内各部件的相互连接的总线,例,微机的ISA、EISA、VESA、PCI等微机标准总线,arm的片上总线。

21、简述总线周期的四个阶段。

一个总线周期的四个阶段:

1.总线请求和仲裁阶段由需要使用总线的主控设备向总线仲裁机构提出使用总线的请求,经总线仲裁机构仲裁确定,把下一个传送周期的总线使用权分配给哪一个请求源。

2、寻址阶

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

当前位置:首页 > 初中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1