嵌入式第二次作业

发布 2022-10-21 09:37:28 阅读 5419

嵌入式系统设计方法第二次作业。

1、影响流水线处理器性能发挥的主要因素有哪些?

先解释一下流水线的概念。以arm7**流水线处理器为例,该处理器将每条指令的执行分解为三步,每一步由独立的硬件部分或者阶段来处理。指令步经流水线的各个阶段,且每个时钟周期有新的一条指令进入流水线。

所以处理器可以同时处理三条流水线的不同阶段。

影响流水线处理器性能的有以下几种因素:

1)流水线的级数。又叫流水线的深度。流水线的级数越多,每一级的处理更简单,单位时间内**执行的指令数就越多,流水线处理器的性能会越高。

但是流水线的级数并不能无限增长。流水线的级数越长,一旦出错影响也就越大,可能在后续流水线中的所有指令都要被清除。

2)硬件成本。流水线级数和硬件的成本成正比。

3)程序依赖。流水线的相关问题是流水线执行过程中的主要障碍。主要分为结构相关、数据相关、分支相关。

a:结构相关:指令在重叠执行的过程中,硬件资源满足不了指令重叠执行的要求,发生硬件资源冲突而产生的相关。消除结构相关最简单的方法就是引入暂停周期,这必然要降低流水线的性能。

b:数据相关:指令序列的读写与操作数的顺序发生改变。

解决的办法是在某个指令产生一个计算结果之前,其他指令并不真正需要这个结果,如果能从这个计算结果直接送到后续指令需要它的地方,那么就可以避免暂停。

c:分支相关:在存在转移指令的情况下,处理器不能确定是否会进行跳转。

因此处理器采用非常精密的分支**逻辑来猜测每条指令是否会执行。现代微处理器设计试图达到90%的成功率。另一方面,错误**一个跳转要求处理器丢掉它为该跳转指令后所有指令已经做了的工作,然后再开始从正确的位置处起始的指令去填充流水线,这样一个错误**会导致大约20~40个时钟周期的浪费,导致程序性能的严重下降。

2、分析arm处理器不同工作模式的作用,举例说明切换过程。

arm处理器共支持7种处理器模式,除用户模式外,其他6种模式称为特权模式。arm内部寄存器和一些片内外设在硬件设计上只允许特权模式下访问。此外特权模式可以自由地切换处理器模式,而用户模式不能直接切换到别的模式。

在特权模式中,除去系统模式以外的5种又称为异常模式,它们除了可以修改程序状态字中的模式位进入异常模式外,还可以由特定的异常进入。当特定的异常出现时,处理器进入相应的模式。每种异常模式都有一些独立的寄存器,以避免异常退出时用户模式的状态不可靠。

如下表所示。

arm7处理器中的7种模式,是以当前程序状态寄存器cpsr中控制位m[4:0]

来标志的,在特权模式下通过修改m[4:0]的值,就可以改变处理器的运行模式。

arm处理器模式。

3、分析arm处理器的中断响应时间。

中断响应时间就是系统响应一个中断所需要的时间,即从外部中断请求信号发出到执行对应的中断服务程序isr的第一条指令所需要的时间。中断时间的确定主要取决于以下4个因素:

1 中断被禁止的最长时间;

2 比自身更高优先级的异常中断所需要的处理时间;

3 cpu开始处理中断,进行断点保护、状态设置、进入中断服务程序等所需要的时;

4 中断现场保护及其他要求配置的操作所要求的时间。

4、fiq为何快?

1.在arm状态中,快速中断模式有8个专用的寄存器可以来满足寄存器保护的需要(可以加速上下文切换的速度);

的中断级别最高,中断时响应最快;

向量是向量表的最后一个入口,因此fiq处理程序可以直接放在该向量的位置,节省了跳转的时间。

5、条件执行的特点和作用?

首先要知道,arm的指令在机器中的表示格式是32位,其中最高的4位表示条件码,因此条件码共有16种含义。

arm中的程序状态寄存器cpsr的最高4位为条件码标志位,他们的内容可以被算数或者逻辑运算所改变,并且可以决定某条指令是否可以被执行。

在arm的指令编码中,指令可以根据在其助记符的扩展域加上条件码助记符,使其能在特定的条件下执行。指令会根据cpsr中的条件码标志位决定是否执行该指令:满足条件时执行指令;不满足条件时,则执行一条nop伪指令,然后在转向下一条。

举个例子:假如原来某条指令为 add r4, r3 ,#1;我们现在将其改为 addeq r4,r3,#1; 其中添加的eq为条件码助记符,他的条件标志位值是cpsr中的z置位。即加上之后,cpsr中的z为1时才会执行该语句。

这就是条件执行的真正含义。在arm状态下,绝大多数指令都是可以条件执行的,在thumb状态下,仅有分支指令是条件执行的。

条件执行是arm处理器一个很重要的特征。这个特性可以减少分支指令的数目,改善程序性能,提高**密度。而且条件执行不需要打断流水线,而跳转指令会打断流水线造成时间浪费。

嵌入式作业第二次

体系结构定义了哪3种不同的处理器配置,其各自的应用特点是什么?答 armv7体系结构定义了profile m profile r profile a三种处理器配置。m系列主要面向对成本非常敏感的传统单片机市场,r系列主要用于硬盘控制器等对实时性要求很高的领域,而a系列则主要面向以多 手机为代表的高端...

嵌入式系统第二次作业部分题

1.当一个应用从桌面计算机移植到同纵横比的小尺寸触摸屏的嵌入式系统时,引起的问题包括 c a.b.c.d.解答说明 需正确地设置屏幕映射仅仅是在纵横比与桌面屏幕不一致的全屏幕应用移植时才发生此问题,而本题已说明嵌入式系统屏幕与桌面屏幕相同纵横比。2.下面说法正确的是 b a.基于cmos工艺的处理器...

嵌入式作业二

嵌入式课程实验报告。姓名 李冬祥。学号 08808003 小组成员 徐迎春。专业年级 电信081 指导教师 王东。实验时间 2011 5 18 西北农林科技大学机电学院。实验二嵌入式linux开发流程。一 实验目的 1 熟悉linux开发基本命令,熟悉linux开发系统操作方法 2 学习嵌入式lin...