浙江大学-高级嵌入式体系结构大作业(综述 ARM、MIPS、ARM对比 得分:95)
- 格式:pdf
- 大小:692.71 KB
- 文档页数:27
1.【第01章】关于Linux的系统调用使用情况,最恰当的是()。
• A 由于系统调用号数目有限,那些不再使用的调用号需要回收利用• B 系统调用函数的参数必须通过寄存器传送• C Linux的所有系统调用都有一个明确的用途• D 自定义系统调用可以不修改内核2.【第01章】对Linux内核的理解,一定正确的是()。
• A Linux的效率非常高,因此经常被用在有硬实时需求的环境中• B 在用Linux作为系统的嵌入式环境中,一定要使用ARM的处理器• C Linux可以运行在没有内存管理单元(MMU)的架构上• D Linux的内核抢占是所有嵌入式应用中必须的3.【第01章】Linux 实现的虚拟文件系统(VFS)有几个主要类型的结构体对象,以下选项中,不属于VFS结构体对象的是()。
• A 超级块(superblock)对象 B 目录项(inode)对象• C 文件(file)对象 D 数据(data)对象4.【第01章】关于Linux的调度机制中,不恰当的是()。
• A Linux提供了基于动态优先级的调度机制• B 调度程序对优先级高的进程默认分配更长的时间片• C 当调度程序查找可执行程序时,查找时间不会因为系统任务繁重而变慢• D 当need_resched被设置时,系统就立刻调用schedule()进行调度5.【第01章】Linux遵循POSIX标准,意味着绝大多数UNIX应用程序不需要任何改动就可以在Linux系统上编译且运行。
•正确错误6.【第01章】Linux的系统调用是作为C库的一部分提供的。
•正确错误7.【第01章】任何一个Linux应用程序都需要调用exi1()函数。
•正确错误8.【第01章】Linux的内存管理采用了分页的机制,因此即使是内核本身也全部是分页的。
•正确错误9.【第01章】Linux 内核的中断服务程序运行于与所有进程都无关的中断上下文中。
•正确错误10.【第01章】当前的Linux调度算法非常高效,但是查找当前最高优先级的可运行程序时,开销会随着可运行程序的多少而变化。
第2章ARM技术与ARM体系结构121.简述ARM处理器内核调试结构原理3答:ARM处理器一般都带有嵌入式追踪宏单元ETM(Embedded Trace Macro),4它是ARM公司自己推出的调试工具。
ARM处理器都支持基于JTAG(Joint TestAction Group 联合测试行动小组)的调试方法。
它利用芯片内部的Embedded ICE 56来控制ARM内核操作,可完成单步调试和断点调试等操作。
当CPU处理单步执7行完毕或到达断点处时,就可以在宿主机端查看处理器现场数据,但是它不能8在CPU运行过程中对实时数据进行仿真。
910ETM解决了上述问题,能够在CPU运行过程中实时扫描处理器的现场信息,并11数据送往TAP(Test Access Port)控制器。
上图中分为三条扫描链(图中的粗12实线),分别用来监视ARM核,ETM,嵌入式ICE的状态。
13141.分析ARM7TDMI-S各字母所代表的含义。
15答:ARM7 T D M I – S 中16ARM是Advanced RISC Machines的缩写177是系列号;T:支持高密度16位的Thumb指令集;1819D:支持JTAG片上调试;20M:支持用于长乘法操作(64位结果)ARM指令,包含快速乘法器;;21I:带有嵌入式追踪宏单元ETM,用来设置断点和观察点的调试硬件;22S:可综合版本,意味着处理器内核是以源代码形式提供的。
这种源代码形式23又可以编译成一种易于EDA工具使用的形式。
24252.ARM处理器的工作模式有哪几种,其中哪些为特权模式,哪些为异26常模式,并指出处理器在什么情况下进入相应的模式。
27答:ARM技术的设计者将ARM处理器在应用中可能产生的状态进行了分类,并28针对同一类型的异常状态设定了一个固定的入口点,当异常产生时,程序会自29动跳转到对应异常入口处进行异常服务。
301.用户模式:非特权模式,也就是正常程序执行的模式,大部分任31务在这种模式下执行。
浙大远程浙大嵌入式系统作业全第一篇:浙大远程浙大嵌入式系统作业全作业一1.Linux 内核稳定、功能强大并且可以裁减,因为非常适合嵌入式应用。
√2.Linux 内核的中断服务程序运行于与所有进程都无关的中断上下文中。
√3.Linux遵循POSIX标准,意味着绝大多数UNIX应用程序不需要任何改动就可以在Linux系统上编译且运行。
√4.Linux内核支持可以裁减的功能,因此它属于微内核架构。
×5.Linux在fork()时采用了写时拷贝(简称COW)技术,允许父进程和子进程同时共享相同的物理页面。
√6.任何一个Linux应用程序都需要调用exit()函数。
√7.当前的Linux调度算法非常高效,但是查找当前最高优先级的可运行程序时,开销会随着可运行程序的多少而变化。
× 8.Linux的系统调用是作为C库的一部分提供的。
√9.为了对硬件做出迅速的响应并完成对时间严格的操作,中断处理下半部必须在关中断状态下执行。
×10.Linux的内存管理采用了分页的机制,因此即使是内核本身也全部是分页的。
× 11.通过文件名存取文件时,文件系统内部的操作过程是通过(B)C A.文件在目录中查找文件数据存取位置。
B.文件名直接找到文件的数据,进行存取操作。
C.文件名在目录中查找对应的i节点,通过i节点存取文件数据。
D.文件名在中查找对应的超级块,在超级块查找对应i节点,通过i节点存取文件数据。
12.Linux 实现的虚拟文件系统(VFS)有几个主要类型的结构体对象,以下选项中,不属于VFS结构体对象的是(D)A.超级块(superblock)对象B.目录项(inode)对象C.文件(file)对象D.数据(date)对象13.关于Linux的内存管理方式中,叙述正确的是(A)A.在32位x86上,当内存容量超过896M时,必须采用区(zone)的概念 B.为了能够执行磁盘的DMA操作,任有架构上必须有ZONE_DMA这个区C.slab分配器作为通用数据结构缓存层的角色,不会产生内存碎片D.内核具有超级权限,在内核栈中可以比用户栈中分配更多的空间 14.Linux的内核同步方法中哪种可用于休眠(B)C A.原子操作方法 B.自旋锁与读-写自旋锁 C.信号量与读-写信号量 D.屏障15.关于Linux的系统调用使用情况,最恰当的是(B)A.由于系统调用号数目有限,那些不再使用的调用号需要回收利用B.系统调用函数的参数必须通过寄存器传送C.Linux的所有系统调用都有一个明确的用途D.自定义系统调用可以不修改内核 16.Linux的进程管理中,正确的是(A)B A.Linux中,进程和程序是一个概念B.Linux中,进程和线程是一个概念C.进程描述结构是task_struct,其空间由slab分配器分配。
嵌入式系统架构:RISC家族之MIPS处理器MIPS 是美国历史悠久的RISC 处理器体系,其架构的设计,也如美国人的性格一般,相当的大气且理想化。
MIPS 架构起源,可追溯到1980 年代,斯坦福大学和伯克利大学同时开始RISC 架构处理器的研究。
MIPS 公司成立于1984 年,随后在1986 年推出第一款R2000 处理器,在1992 年时被SGI 所并购,但随着MIPS 架构在桌面市场的失守,后来在1998 年脱离了SGI,成为MIPS 技术公司,并且在1999 年重新制定公司策略,将市场目标导向嵌入式系统,并且统一旗下处理器架构,区分为32-bit 以及64- bit 两大家族,以技术授权成为主要营利模式。
MIPS 除了在手机中应用得比例极小外,其在一般数字消费性、网络语音、个人娱乐、通讯、与商务应用市场有着相当不错的成绩,不过近年来因为其它IP 授权公司的兴起,其占有比率稍有衰退。
MIPS 应用最为广泛的应属家庭视听电器(包含机顶盒)、网通产品以及汽车电子方面。
对于MIPS,其核心技术强调的是多执行绪处理能力(Multiple issue,国内也通常称作多发射核技术,以下以此称谓)。
一般来说,多核心与多发射是两个并不是互斥的体系,可以彼此结合,然而在嵌入式领域,ARM 与MIPS 这两大处理器IP 厂商对这两个架构的态度不同,造成这两个架构在嵌入式市场上对抗的结果。
MIPS 的多发射体系为MIPS34K 系列,此为32 位架构处理器,从架构上来看,其实多发射核技术只是为了尽量避免处理单元闲置浪费而为的折衷手段,就是将处理器中的闲置处理单元,分割出来虚拟为另一个核心,以提高处理单元的利用率。
在技术上,为了实现硬件多重处理,多核心与多发射两者对于软件最佳化的复杂度方面同样都比单核心架构来得复杂许多。
34K 核心能执行现有的对称式二路SMP 操作系统(OSes)与应用软件,通过操作系统的主动管理,现有的应用软件也能善用多发射处理能力。
窗体顶端2014浙大远程嵌入式系统作业(第5~8章)1.下列哪个是计算机系统中存储速度最慢的存储设备?A CPU 内部寄存器B 高速缓存(Cache)C 内存D 硬盘 正确答案:D2.下列哪种不是低功耗的设计技术:A 采用低功耗器件B 实现电源管理C 动态调压技术D 散热设计技术 正确答案:D3.在VxWorks 系统中,下面不属于I/O 设备宏观上分类的类型的是( )。
A 字符设备B 虚拟设备C 网络设备D 块设备 正确答案:B4.以下哪个不属于比较成熟的嵌入式处理器技术( )。
A RISCB DSPC CMPD ASISP 正确答案:D5.嵌入式系统的发展可大概分为四个阶段,其中第三个阶段是( )。
A 单片机的嵌入式系统,结构和功能单一,用于工业控制领域。
B 实时操作系统的嵌入式系统的嵌入式系统阶段。
C 简单的嵌入式阶段,有较高的可靠性,低功耗的嵌入式处理器和简单的操作系统。
D 面向Internet 的阶段。
正确答案:B6.用来描述一个任务,使得任务得以独立运行的数据结构是( )。
A TLB B TCBC BSPD 以上皆不是 正确答案:B7.以下哪些部件不一定包括在SoC 当中( )。
A 微处理器B 模拟IP 核C 存储器或片外存储控制接口D FPGA 正确答案:C8.致力于IP 核质量衡量,提升IP 核安全性和有关标准研发的组织不包括( )。
A VSIAB OCP-IPC SPIRTD VCID 正确答案:D9.目前SoC 的结构通常是( )。
A 片上网络B 总线C 硬连线D 共享存储器交互 正确答案:D10.当任务等待的资源变得可用时,会触发的任务状态的转换是( )。
A 运行-->阻塞B 阻塞-->就绪C 延迟-->就绪D 运行-->延迟 正确答案:B11.下列属于虚拟设备的是( )。
A 管道B 键盘C 磁盘D 网卡 正确答案:A12.下面不是PowerPC 的嵌入式微处理器的通信产品是( )。
嵌入式处理器MIPS和ARM作者:姚卫国来源:《环球市场信息导报》2012年第02期以嵌入式计算机技术为核心的嵌入式系统是继网络技术之后,IT领域新的技术发展方向。
由于嵌入式系统具有体积小、性能强、功耗低、可靠性高以及面向行业具体应用等突出特征,目前广泛的应用于军事国防、消费电子、信息家电、网络通信、工业控制等各个领域。
日常生活中,各种电子手表、电话、手机、个人数字助理(PDA)、洗衣机、电视机、微波炉、电饭锅、空调等都有嵌入式系统的存在。
嵌入式系统的核心部件是各种类型的嵌入式处理器,就是与通用计算机的微处理器相对应的CPU。
目前,几乎每个IT硬件厂商都推出了自己的嵌入式处理器。
所有的嵌入式处理器都是基于一定的架构的,即IP核(IntellectualProperty,知识产权),生产处理器的厂家很多,但拥有IP核的屈指可数。
嵌入式系统的架构有专有架构和标准架构之分,在MCU(微控制器)产品上,像瑞萨(Renesas)、飞思卡尔(Freescale)、NEC等都拥有自己的专有IP核,而其他嵌入式处理器都是基于标准架构。
标准的嵌入式系统架构有两大体系,RISC(ReducedInstructionSetComputer,精简指令集计算机)处理器和CISC(ComplexInstructionSetComputer,复杂指令集计算机)处理器体系。
目前占主要地位的是所谓RISC处理器。
RISC体系的阵营非常广泛,如ARM、MIPS、PowerPC、ARC、Tensilica等等,都是属于RISC处理器的范畴。
本文主要从以下几个方面来介绍ARM和MIPS这两个处理器。
流水线结构:MIPS是RISC体系结构中最精巧的一种处理器,占用更小的芯片面积;并且MIPS使用编译器来解决“分支延迟槽”和“负载延迟槽”这两个问题。
因为MIPS最初的设计思想就是使用简单的RISC硬体,然后依靠编译器及其他软体技术,来达成RISC的完整概念。
摘要精简指令系统计算机的主要特点是CPU的指令集大大简化,尽量简化指令功能,只保留那些功能简单,能在一个节拍内执行完成指令。
较复杂的功能用一段程序来实现,用简单的指令来提高机器的性能,特别是提高CPU执行程序的速度。
这种设计思路对指令数目和寻址方式都做了精简,使其实现更容易,指令并行执行程度更好,编译器的效率更高。
本文着重讲述了采用RISC架构的ARM、MIPS、A VR三种微处理器在指令集、流水线、中断、存储器、总线接口的异同以及ARM、MIPS为了改善代码密度都提出了16位指令的异同。
关键词:精简指令集;ARM;MIPS;A VRAbsractThe main characteristics of RISC is the CPU instruction set and the instruction function are simplified greatly, retaining only the function is simple, can be executed within a period of instruction.With a program to implement complex functions, with simple instructions to improve the machine performance, especially improve the CPU program execution speed.The design idea of the number of instructions and addressing modes are made to streamline, make its implementation easier, parallel execution more excellent, and the compiler more efficient.This paper focuses on the similarities and differences of the instruction set, pipeline, interrupts, memory, bus interface and the 16 bit instruction of three microprocessor (ARM,MIPS,A VR),whose architecture is RISC.Key words: RISC; ARM;MIPS; A VR.目录第一章 RISC架构概述 (1)1.1 精简指令系统思想的提出 (1)1.2 RISC的典型特点 (2)1.3 RISC思想精华 (2)1.4 本文主要研究工作 (3)第二章 RISC架构CPU指令集 (4)2.1 寻址方式 (4)2.2 指令操作 (6)2.3 寄存器组 (8)2.4 本章小结 (10)第三章 RISC架构CPU流水线 (11)3.1 ARM的流水线 (11)3.2 MIPS的流水线 (12)3.3 AVR的流水线 (13)3.4 本章小结 (13)第四章 RISC架构CPU中断设计 (14)4.1 ARM的中断设计 (14)4.2 MIPS的中断设计 (16)4.3 AVR的中断设计 (17)4.4 本章小结 (17)第五章 RISC架构CPU存储器与总线接口设计 (18)5.1 ARM的总线接口设计 (18)5.2 MIPS的总线接口设计 (19)5.3 AVR的总线接口设计 (19)5.4 本章小结 (19)第六章 RISC架构CPU 16指令集设计 (20)6.1 ARM的16指令集设计 (20)6.2 MIPS的16指令集设计 (20)6.3 本章小结 (21)总结 (22)参考文献 (23)第一章RISC架构概述目前,指令系统的优化设计有两个截然相反的方向。
一个是增强指令的功能,设置一些功能复杂的指令,把一些原来由软件实现的、常用的功能改用硬件的指令系统来实现,这种计算机系统称为复杂指令系统计算机(Complex Instruction SetComputer ,CISC) 。
另一个是80年代新发展起来的,尽量简化指令功能,只保留那些功能简单,能在一个节拍内执行完成指令,较复杂的功能用一段于程序来实现,这种计算机系统称为精简指令系统计算机(Reduced Instruction Set Computer,RISC)。
1.1 精简指令系统思想的提出早在1964年IBM就推出了基于复杂指令集系统(CISC)架构的IBM360,但到70年代中期,随着计算机的指令系统日趋庞大,指令功能也日益复杂。
这不但实现起来越来越困难,实际上也一定程度上降低了系统性能。
1979 年,美国加州大学伯克利分校对此进行研究。
指出了CISC系统存在的诸多问题,并研发了RISC 指令架构。
CISC存在的主要问题有以下三个方面:1.20%与80%规律CISC中,各种指令的使用频率相差很悬殊,大量的统计数字表明,大约有20%的指令使用频率较高,占据80%的处理器时间。
有80%的指令只占用20%的处理器运行时间。
只有三类指令的使用频率较高:数据传送类指令、算术运算类指令和程序控制类指令。
2.工艺发展引起的技术问题CISC中,实现了大量的指令,控制逻辑很不规则,不能满足工艺的完整性要求;RISC 的控制逻辑简单,他所需要的大量通用寄存器是非常规则的,能好地满足工艺要求。
3.软硬件的功能划分CISC中,通过增强指令功能,简化了软件,增加了硬件的复杂性。
然而由于指令复杂,指令的运行时间必然很长,有可能导致程序的运行时间反而增加了。
以Motorola公司典型的CISC32 位微处理器MC68020为例,基本的指令就超7基于RISC的8位微控制器的研究与设计过100条,包含18种寻址方式,支持7种数据类型,指令字长短的只有一个单字(16bit),长的可以由11个单字组成。
这样,必然使CPU控制部分的高度复杂化,使其占用了很大部分CPU 面积。
现在,RISC思想已经广被人们所接受,很多微处理器采用了RISC架构,一些典型的CISC处理也吸收了RISC设计的思想,如Intel公司的奔腾处理器。
1.2 RISC的典型特点RISC架构是近代计算机体系结构发展史中的一个里程碑,但直到现在,RISC 仍然没有一个确切的定义。
这里引用IEEE Michael Slater对RISC的定义:RISC 处理器所设计的指令系统应使流水线处理能高效率执行,并使优化编译器能生成优化代码。
按照Michael Slater的定义,RISC使流水线处理高效率执行,应具有如下特征:(1)简单而统一格式的指令译码;(2)大部分指令可以单周期执行完成;(3)只有Load 和Store 指令可以访问存储器;(4)采用延迟转移技术;(5)采用Load 延迟技术;(6)较多的寄存器;(7)三地址指令格式。
1.3 RISC思想精华复杂指令集(CISC)中的一条指令在精简指令集(RISC)中需要几条指令来执行,为何RISC 系统执行速度比CISC 快呢?一个程序所执行的时间可以用以下公式来计算:P = CPI * I * T其中:P 是执行这个程序所用的总的时间;CPI 是每条指令执行的平均周期数;I是这个程序所需执行的总的指令条数;T是时钟周期;有关这些参数的统计数据见表1-1:表 1.1 CISC RISC的CPI I T的比较从以上参数比较中我们可以得出如下结论:1. 指令平均执行周期数CPI执行每条指令所需的平均时钟周期数与微控制器的结构有紧密的关系。
由于CISC一般用微程序实现,一条指令通常需要好几个周期,复杂指令所需要的周期数更多。
据统计,CISC 处理器中指令平均周期数CPI在4-6之间。
而RISC一般是单周期指令,CPI近视为1,由于存在Load、Store指令及少数复杂指令,导致RISC机的平均执行周期数CPI大于1。
2. 总的指令条数ICISC中一条复杂指令所完成的功能在RISC中可能需要几条指令才能实现。
对于一个源程序,分别编译后生成的代码,RISC要比CISC的多。
但复杂指令所使用的频率毕竟比较低,用的最多的仍然是RISC中所具有的简单指令。
从上述统计结果也可以看出,RISC 的I长度只比CISC长30%~40%。
3. 时钟周期T由于RISC机一般采用硬布线逻辑实现,指令实现的功能都比较简单,所以RISC机的工作主频一般要比CISC 处理器高,从而,RISC的T通常比CISC的小。
查看表2.1,利用上述公式很容易算出,RISC 的速度大约要比CISC 快 3 倍。
其中最关键的是RISC指令平均执行周期数CPI减小了,这正是RISC设计思想的精华。
1.4 本文主要研究工作本文通过对查看大量的有关ARM、MIPS、A VR这三种RISC架构CPU的资料,下文将着重从以下5个方面对此3种架构的CPU展开叙述。
1、这三种RISC架构的微处理器在寻址方式、指令操作、寄存器组这三个指令集方面有何相同和不同之处。
2、三种架构的流水线设计有何相同和不同之处。
3、三种架构的中断设计有何相同和不同之处。
4、三种架构的存储器和总线接口有何相同和不同之处。
5、MIPS和ARM为了改善代码密度都提出了16位指令,它们的16位指令集之间有什么不同,16位指令和32 位指令之间的关系如何。
第二章RISC架构CPU指令集有人发现,尽管传统处理器设计了许多特性让代码编写更加便捷,但这些复杂特性需要几个指令周期才能实现,并且常常不被运行程序所采用。
此外,处理器和主内存之间运行速度的差别也变得越来越大。
在这些因素促使下,出现了一系列新技术,使处理器的指令得以流水执行,同时降低处理器访问内存的次数。
早期,这种指令集的特点是指令数目少,每条指令都采用标准字长、执行时间短、中央处理器的实现细节对于机器级程序是可见的。
这边是精简指令集的起源。
说起指令集,当然包含指令的寻址方式、指令的操作以及寄存器组的三个方面。
以下就将对3款RISC芯片在这三个方面做简要的对比。
2.1 寻址方式2.1.1 ARM寻址方式目前ARM处理器支持9种寻址方式,分别是立即数寻址、寄存器寻址、寄存器偏移寻址、寄存器间接寻址、基址变址寻址、多寄存器寻址、相对寻址、堆栈寻址和块拷贝寻址。
立即数寻址,也叫立即寻址,是一种特殊的寻址方式,操作数本身包含在指令中,只要取出指令也就取到了操作数。
这个操作数叫做立即数,对应的寻址方式叫做立即寻址;(2)寄存器寻址,寄存器寻址就是利用寄存器中的数值作为操作数,也称为寄存器直接寻址。
(3)寄存器间接寻址,寄存器间接寻址就是把寄存器中的值作为地址,再通过这个地址去取得操作数,操作数本身存放在存储器中。