计算机组成原理复试面试问题

计算机概述

1.冯诺依曼机的特点?

1、五个组成部分:运算器、控制器、存储器、输入设备、输出设备。

2、数据和指令以同等的地位存储在主存储器当中,可按照地址访存

3、指令和数据均用二进制代码表示

4、指令由操作码和地址码组成,操作码表示操作性质,地址码表示操作数所在位置

5、指令以顺序存放的。通常指令按顺序执行,在特定条件下根据运算结果或特定的条件改变执行顺序

6、早期冯诺依曼机以运算器为中心,输入输出设备通过运算器与存储器相连

2.为什么现在计算机以存储器为中心?

早期计算机存储容量小,数据经过运算器较少,在效率上对系统没有明显的影响。但是现在存储器容量越来越大,且外部设备的速度远小于CPU的速度,所以数据经过运算器会拖慢系统的效率。现在计算机以存储器为中心,让IO绕过运算器。

3.什么是“存储程序”

程序在运行前,都先存在主存储器当中,按照其在程序中的首地址执行第一条指令,然后就按照该程序规定的顺序执行其它指令,顺序程序结束。

4.按照“存储程序”原理,计算机应该有哪五大功能

数据传递、数据存储、数据处理、操作控制、操作判断

5.计算机工作的步骤?

1、把指令和程序装入主存储器

2、从程序的首地址运行程序

3、取出第一条指令,然后译码、执行,控制计算机各个部件协同运行,完成这条指令后,计算下一条指令的地址。关键词 取出、译码、执行、下一条指令

4、用新得到的指令地址,继续读取第二条指令执行。每条指令都是取指、译码、执行直到结束

6.翻译程序、汇编程序、编译程序、解释程序有什么差别?

翻译程序是将高级语言翻译成如汇编语言和机器语言这样的程序。翻译程序包括,编译程序和解释程序。

汇编程序是将汇编语言翻译成机器语言的程序。

编译程序是将源代码一次全部翻译成目标代码的程序,它将一种代码文件翻译成另一种代码文件,如果源代码不修改,则不用重新编译。

解释程序,是将源代码的一条语句翻译成机器代码,并立即执行。解释执行是,翻译一条源代码就执行一条,适合调试程序时使用。

7.计算机体系结构和计算机组成结构的联系和区别

计算机体系结构是汇编语言或机器语言程序员所能看到的传统机器属性,例如指令集、数据类型、存储器寻址技术,都是抽象属性。

计算机组成是指如何实现计算机体系结构所体现的属性,它包括很多对程序员来说透明的硬件细节。

如计算机指令系统属于结构问题,而如何实现取指、取操作数就是计算机组成问题。不同的计算机可能有相同的结构,但是如何实现这些结构可以完全不同,即他们的组成方式不同。例如计算机有没有乘法操作是系统结构问题,如何实现乘法就是计算机组成问题。

8.计算机主要性能指标

机器字长、数据通路带宽、主存容量、运算速度。

运算速度包括:吞吐量和响应时间、主频和CPU周期、CPI等

9.主频高的cpu一定比主频低的cpu快吗?

不一定,计算机运算速度,cpu的主频只是其中一个指标。没有明显的公式表明。主频越高计算速度越快。

10.机器字长、指令字长、存储字长的区别和联系

机器字长是计算机能直接处理的二进制数据的位数,机器字长一般等于内部寄存器的大小,它决定了计算机运算的精度

指令字长是一个指令中包含的二进制代码的位数

存储字长是一个存储单元包含的二进制代码的位数

指令字长一般是存储字长的整数倍

11.数据的表示和运算

真值和机器数

用正负号所表示的数就是真值,真值是机器数所代表的实值。

用二进制数所表示的真值就是机器数。

12.有哪些常用BCD码

BCD码是用二进制表示十进制的编码方式。有8421吗,余三码等

13.ASCII码

国际上用7位二进制码标识一个ASCII码,包括数字、字符、还有不可印刷的字符。

14.大端模式和小端模式

大端模式:主存字由2B或4B组成时,以先存储高位字节后存储低位字节的方式存储。

小端模式:相反

15.描述常用校验码

检验码是能够发现或能够自动纠正错误的数据编码。码距不小于2时开始有了检错能力,码距越大,检错能力就越强,且检错能力总是大于纠错能力。

常用校验码有奇偶校验码、汉明码、CRC循环码

奇偶校验码,在原始数据的最高位添加1或者0使其数据中的1恰好为奇数或者偶数。只能发现代码中奇数位出错的情况。常用在对存储器数据的检查或传输数据的检查中

CRC循环码,通常用于数据链路层,适合对大量数据校验。

16.解释各种机器数表示法的其含义表示的范围

原码简单直观的机器数表示法。原码的0有两种表示方法

补码的正数表示和原码相同,负数等于原码的非符号位取反再+1,补码加减法操作简单,0的表示唯一。

反码的正数表示和原码相同,负数等于原码的非符号位取反。

移码常用来表示浮点数的阶码 ,它只能表示整数。

17.移码的特点

1、移码中零的表示是唯一的。

2、一个真值的移码和补码仅仅差一个符号位

3、移码全0表示对应真值最小值,移码全1表示对应真值最大值

4、移码保持了数据原有的顺序,方便比较大小

18.溢出的三种判别方法

1、采用溢出逻辑表达式

2、双符号位法。01正溢出、10负溢出

3、一位符号位判别法。如果符号位进位和最高数位相同,就没有溢出。

19.描述IEEE754标准

IEEE754标准规定浮点数类型有短浮点数、长浮点数、临时浮点数类型。

常用的浮点数格式 由符号位、阶码、尾数组成

短浮点数有8位阶码、23位尾数、偏置127

浮点数11位阶码、52位尾数、偏置1023

规格化的二进制浮点数,数值的最高位总是1,为了能多多表示一位有效位,就把这个1隐藏了。

短浮点数,阶码取值范围1到254;长浮点数取值范围1到2046

20.浮点数的加减法步骤

①对阶,阶码小的向阶码大的对齐;②尾数求和;③规格化;④舍入,0舍1入法,可能使尾数溢出,再次规格化,恒1法,最后一位置1;⑤溢出判断。

强制类型转化规则

char->int->long->double,float->double最常见,转化过程没有损失。

int转float可能有精读损失,int的32位全部用于表示数值,float有24位描述数值,再多会有舍入。

21.计算机机器字长足够能精确表示每一个数吗?

不能精确表示每一个数,例如0.1这个数,我们只能无限接近它,但不能表示出它。小数在机器中是被离散地表示的。

22.字长相同情况下浮点数和定点表示的范围有什么不同

字长相同浮点数比定点数表示的范围更广,但是定点数的全部位数都用来表示数值本身,精度要比相同字长的浮点数要大。

23.用移码表示浮点数的阶码有什么好处

浮点数进行加减运算,常常要阶码比较大小,移码保留了原来真值的大小顺序,方便比较大小。

检验特殊值(0或max)比较容易。当阶码取0或者max表示的结果如下:

0:表示指数为负无穷大,整个数趋近于0,尾数如果也为0,可以用来表示0;尾数不为0表示未正规化数。

max:表示指数正无穷大,若尾数为0,表示正负无穷大;尾数不为0,表示浮点数运算错误。

存储系统

1.随机存储器、只读存储器、串行访问存储器的特点

随机存储器RAM,任何一个单元都能随机存取,存取时间与存储单元的位置无关。主要用途是高速缓存或主存。分为静态RAM和动态RAM,前者以触发器原理寄存信息,后者以电容充电原理寄存信息。

只读存储器ROM,数据一次写入存储器后不能修改,只能读取,断电不易失。通常用来存储不变的常数、程序。它和RAM一起作为主存的一部分。由ROM派生出的存储器,有的是可读可写的,但写的速度比读的速度要慢得多。

串行访问存储器,对存储单元的读写要按照物理位置的先后顺序寻址。它包括顺序存取存储器和直接存取存储器。前者的代表是磁带,后者的代表是磁盘。

2.直接存取存储器的特点

存取信息时先寻找整个存储器中的某个小区域,再在小区域内顺序查找。

3.存储器的三个性能指标

存储容量、单位成本、存取速度。

存储容量等于存储字数乘以字长。

单位成本等于总成本除以总容量

存储速度中的数据传输率等于数据的宽度除以存储周期

存取时间 存取周期 主存带宽

存取时间:启动一次存储器操作到完成该操作所需要的时间。

存取周期:存储器完成一次完整的读写操作所用的时间,即两次独立访问存储器操作之间所需的最小时间间隔

主存带宽:主存的数据传输率,每秒从主存进出信息的最大数量

4.存取时间就是存储周期吗

很显然,不是。通常存取周期大于存取时间,对任何存储器来说,在读写过后,都有一段内部状态的复原的时间。对于破坏性的存储器,存取周期往往比存取时间大得多。

5.多级存储系统结构以及成本速度容量

多级存储系统,为了解决存储系统大容量、高速度、低成本三者的矛盾。

从上到下为寄存器、cache、主存、辅存。从上到下,速度越来越慢、单位成本越来越小、存储容量越来越高。

6.SRAM和DRAM的工作原理和比较

静态随机存储器SRAM的存储元是双稳态触发器,非破坏读出不用再生。存取速度快,集成密度低,功耗大,一般用来组成高速缓存。

动态随机存储器DRAM存储元是栅极电容,采用地址复用技术,地址线是原来的1/2,地址信号分行列两次传送。相比SRAM而言它容易集成价格低、容量大、功耗低,但存储速度比SRAM慢,一般用来做主存系统。

7.三种刷新方式

集中刷新、分散刷新、异步刷新

8.DRAM刷新需要注意的问题

刷新对cpu是透明的,刷新不依赖于外部的访问,DRAM的刷新是以行为单位的,刷新仅需要行地址。刷新操作类似读操作,但不需要读取信息,只需要给电容补充电荷;刷新时不需要片选,整个存储器的芯片同时被刷新。

9.ROM的特点

ROM非易失存储器,不通电也不会丢失信息;结构简单,存储密度比可读写存储器高。

非易失性,可靠性高。

10.时间局部性和空间局部性

时间局部性:程序当前运行的指令或用到的数据,在不久也可能会用到。因为程序有循环结构

空间局部性:某个存储单元被访问,接下来它临近的存储单元也可能被访问。因为指令是顺序存放的,数组等数据结构所占的存储空间也是连续的。

11.Cache中主存块的替换算法

随机替换算法、先进先出替换算法、近期最少使用替换算法、最不经常使用替换算法。

近期最少使用算法:依据程序访问的局部性原理选择近期内长久未用的行作为替换行,平均命中率比先进先出算法高。LRU算法对每一行设置一个计数器,cache每命中一次,计数器清零,其它的行加1,需要替换时,将计数值最大的换出。

最不经常使用算法,将一段时间内被访问最少的存储行换出。每行设置一个计数器,都从0开始计数,每访问一次,被访问行的计数器加1,需要替换时比较各行特定计数器的值,将计数值最小的换出。

12.描述Cache写策略

根据写命中和写不命中,各有两种策略。

写命中时:1、全写法:把修改写入内存也写入cache。优点是可以保持内存的数据正确,缺点是增加了访存次数。可以加一个写缓冲,减少写入内存的时间损耗。2、写回法:把修改只写入cache。优点是速度快,缺点是会造成主存和cache不一致。因此需要cache需要设置一个标记位(脏位),表示CPU是否被修改过。

写不命中时:1、写分配法:加载主存的块到cache,然后再修改数据(数据写回哪里要看写命中策略)。它想利用程序的空间局部性,缺点是每次写不命中都要从主存中读取一块。2、非写分配法:只写入主存,不进行调块。

写分配法常和写回法一起使用;非写分配法常和全写法一块使用。可以在保持主存中数据正确性和减少访存次数之间做一个折中。

13.Cache行大小和命中率之间的关系

行的长度较大,可以充分利用程序的空间局部性,使一个较大的局部空间进入cache,因而可以增加命中机会。但是行长也不能太大,主要原因有两个:

行长太大,失效损失变大。也就是说,如果没有命中就需要花跟多时间从主存块读数据。

行长太大cache项数变少,命中可能性变小。

14.Cache处理缺失时都发生了什么?

首先PC恢复发生缺页的指令的值;然后对主存进行读操作;将读取的数据块写入Cache,更改有效位和标记位;最后重新执行PC中的指令。

15.段式存储器和页式存储器的区别

页式存储器是以页为基本单位的虚拟存储器,页大小都是相等的,主存的页被称为实页,虚存的页被称为虚页。虚拟地址分为两个字段:虚页号和页内地址。虚地址到实地址的转换是页表实现的。页表也变成就存放在主存中。

页式虚拟存储器的优点是页面长度固定,页表简单。缺点是有最后一个块有内部碎片。页不是逻辑上独立实体,比起段式虚拟存储器,处理、保护、共享都不如虚拟存储器方便。

段式虚拟存储器的段式按照程序的逻辑结构划分的,各个段的长度因程序而不同。虚拟地址分为:段号和段内地址两个部分。虚拟地址到实地址之间的变换是由段表实现的,由于段长可变,所以段表中要记录段的起始地址和段的长度。

段式虚拟存储器的优点是段的分界就是程序的分界,逻辑独立性强,便于多道程序共享;缺点是因为段长度可变,分配空间不便,可能产生外部碎片。

16.段页式存储器的特点

结合两者的特点,先把按照程序之间的逻辑结构分段,每一段再划分固定大小的页,主存空间也划分为大小相等的页,页仍然是基本单位。每个程序对应一个段表,每个段对应一个页表。虚拟地址分为段号、段内页号、页内地址三个部分。

段页式的优点是兼具页式和段氏的优点,可以实现共享和保护。缺点是地址变换中需要两次查表,开销极大。

17.虚拟存储器和Cache的相同点和不同点

相同点:

1、它们的目的是为了提升系统性能。

2、把整个存储器,划分为小的数据块,作为基本的交换单位,虚拟系统信息块更大。

3、都有地址映射、替换算法、更新策略等问题。

4、都是依据局部性原理,将使用频率高的数据放入高速部件中。

不同点:

1、Cache主要解决访问速度问题,虚拟存储解决主存容量问题。

2、Cache全部由硬件实现,对程序员是透明的;虚拟存储器由操作系统和硬件共同实现,对系统程序员不透明、对应用程序员透明。

3、不命中时,虚拟存储器不命中时对系统效率影响更大。

4、CPU和cache,Cpu和主存都有直接访问通路,而CPU和辅助存储器没有直接通路。当虚拟存储器不命中时,需要先把辅助存储器数据块调入主存中,CPU才能对它访问。

1.简单描述什么是指令

指令是计算机执行某种操作的命令,是计算机运行的最小功能单位。一台计算机所运行的所有指令集合构成计算机的指令系统,指令系统是计算机的重要属性,属于计算机体系结构的范畴,位于硬件和软件交界面上。

指令的基本格式包括,操作码和地址码。操作码是识别指令、了解指令功能区分操作数地址内容的组成和使用方法的关键信息。地址码指出被操作信息的地址。

指令的长度是指一条指令中包含的二进制代码的位数,指令字长和机器字长没有固定的关系,但根据其和机器字长大小的倍数,可以分为单字长指令、多子长指令、半字长指令等

定长指令字结构和变长指令字结构,是根据指令系统中的指令是否长度相等确定的。

2.简单描述指令的几种格式

零地址指令。只有操作码,没有地址码。一种可能是不需要操作数的指令,如关机、关中断、停机。另一种可能是堆栈计算机采用的从栈顶和次栈顶取操作数

一地址指令,只有目的操作数的指令。一种情况是从这个地址读数,操作后在存回这个地址。如取反、自增、求补。另一种情况是,指令可约定另一个操作数由ACC提供,运算结果也存入ACC中。

二地址指令有两个操作数,操作后的结果还会返回目的操作数中。

三地址、四地址指令不再赘述。

3.数据按边界对齐和不按边界对齐的区别

设存储字长32位计算机中,可以按照字、半字、字节寻址。对于机器字长32位的计算机来说,数据以对齐方式存放,其中半字的地址一定是2的倍数,字地址一定是4的倍数。这样,无论数据的大小是字、字节、半字,都可以一次访存取出。当不满足上述要求时,通过填充空白字节让其符合要求。虽然浪费了一定的存储空间,但可以提高取数据的速度。

不按对齐的方式存储,虽然提高了存储空间的利用效率,但是字长和半字长的数据容易存储在两个存储单元上,这样取数据的时候就好两次访存,还要调整高低字节的位置。

4.什么是指令寻址和数据寻址

指令寻址:寻找下一条要执行的指令地址;数据寻址:寻找操作数的地址。

指令寻址又分为:顺序寻址和跳跃寻址两种。顺序寻址是PC+1自动生成的指令,而跳跃寻址是由本条指令给出下条地址的计算方式形成的,结果是修改PC的值,所以下一条指令仍然通过PC给出。

数据寻址是是指如何在指令中表示一个操作数的地址,如何用这种表示得到操作数或者怎样计算出操作数的地址。

5.描述相对寻址、基址寻址、变址寻址

相对寻址:相对寻址把把PC内容加上指令格式中的形式地址A而形成操作数的有效地址。形式地址可正可负,用补码表示。相对寻址的优点是操作数的地址不是固定的,它随着PC的值变化而变化,而且指令地址之间总是相差一个固定值,便于程序浮动。相对寻址广泛应用于转移指令。

基址寻址:基址寄存器BR的内容加上指令格式中的形式地址A而形成的操作数的有效地址。在程序执行过程中,基址寄存器内容不变而形式地址可变。基址寻址的优点是可以扩大寻址范围;用户不必考虑自己的程序存在于主存的那个空间区域,有利于多道程序设计。

变址寻址:形式地址A加上变址寄存器的内容就是有效地址的内容。在程序执行过程中,形式地址不变,寄存器的数值不断改变,非常适合编写循环程序。

基址寻址是面向操作的,变址寻址是面向用户的。

6.对一个指令系统来说,寻址方式多和少有什么影响

寻址多样化可以使用户编程更加方便,但多种寻址方式会造成CPU结构复杂化,不利于流水线的运行。寻址方式太少,虽然可以使CPU运行效率高,但是会让程序变得复杂。

7.描述CISC和RISC的特点并比较

复杂指令系统,指令数量庞大,超过200条,而且对访存不加以限制,各种指令执行时间相差大,频度相差也大,通用寄存器数量少;难以优化生成高校的目标代码;绝大多数以微程序的方式控制;指令流水线可以通过一定方式实现。

8.Load/Store指令有什么特点

这种指令的出现,是为了规整指令格式,使指令有相同的长度。只有这种指令才能访存。运算指令不能直接访问内存,只能从寄存器取数据进行计算,运算结果只能送到寄存器。这种风格的指令系统最大的特点是指令格式规整,指令长度一致,一般32位。由于只有这两种指令可以访存,因此这种风格的程序可能会更长。

1.CPU的功能和基本结构

中央处理器是由运算器和控制器组成的,控制器的功能是负责协调并控制计算机各个部件运行

运算器的功能是对数据进行加工。

2.CPU的功能是什么

指令控制、操作控制、时间控制、数据加工、中断处理

3.运算器的结构描述

运算器:算术逻辑单元、暂存寄存器、累加寄存器、通用寄存器组、程序状态字寄存器、移位器、计数器。

4.控制器结构描述

控制器:程序计数器、指令寄存器、指令译码器、存储地址寄存器、存储数据寄存器、时序系统、微操作信号发生器。很明显,这些部件都跟指令的执行有关,控制器的基本功能是执行指令,每条指令的执行是由控制器发出的一组微操作实现的。

控制器的工作原理是:根据指令操作码、 指令的执行步骤(微操作序列)和条件信号来形成当前计算机各个部件要用的控制信号。

5.描述指令周期

指令周期:CPU从主存中每取出和执行一条指令所需的全部时间称为指令周期。指令周期由机器周期组成,机器周期由时钟周期组成。每个指令周期内的机器周期可以不等,机器周期内的节拍数也可以不等。

指令周期可分为:取指周期、间址周期、执行周期、中断周期。每个周期都有访存,只是目的不同。间址周期是为了取操作数的有效地址,执行周期是为了取操作数。

指令的三种执行方案

单指令周期:对所有指令选用相同执行时间来完成。每条指令都在固定的时钟周期内完成,指令之间串行,指令周期取决于执行时间最长的指令执行时间。对于那些本来可以在短时间完成的指令,却要使用较长的周期来完成,会降低整个系统的运行速度。

多指令周期

不同类型的指令选用不同的执行步骤来完成,称为多指令周期。指令之间串行。

流水线方案。

6.计算机如何区分指令和数据

从时间上讲取指令时间发生在取值周期,取数据阶段发生在执行周期;

从空间上讲,指令取出送入控制器,数据取出送入运算器。

7.指令周期、机器周期、时钟周期的解释和联系

指令周期是指CPU取出并执行一条指令所需要的时间;

机器周期是在同步控制的机器中,执行指令周期中一步相对完整的操作所需的周期时间。

时钟周期是指计算机主时钟的周期时间,它是计算机运行时最基本的时序单位。对应一个微操作所需的时间。

8.指令周期是否是一个固定值

由于计算机的各种指令执行所需的时间差异很大,所以为了提高CPU的效率,即使在同步控制器中,不同指令的指令周期长度都是不一致的。

9.控制器的主要功能

1、从主存取出一条指令,并住处下一条指令在主存中的位置。

2、对指令进行译码或测试,产生响应的操作控制信号,以便启动规定的动作。

3、指挥并控制CPU、主存、输入输出设备之间数据流动方向

10.硬布线控制器和微程序控制器的比较

硬布线控制器是由逻辑电路实现的,微程序控制器是由微指令存储器和微指令寄存器组成的。

硬布线控制器速度快,在精简指令计算机上使用。微程序控制器在复杂指令计算器上应用。

11.微程序控制的基本概念

微程序控制器采用存储逻辑实现,也就是把微操作信号代码化,使每条机器指令转化为微程序并存入一个专门的存储器,微操作控制信号由微指令产生。

12.微命令、微操作、微程序、微指令的含义

控制部件通过控制线向执行部件发出各种控制命令,通常这种控制命令叫做微命令。

而执行部件接受微命令后所执行的操作就叫做微操作。

一个指令对应一个微程序,微程序由多条微指令组成的,微指令转化成电路信号来操作各个部件,就是微命令。

13.微程序控制器的工作过程

1、执行取微指令公共操作。

2、由机器指令的操作码字段通过微地址形成部件产生该机器指令所对应的微程序入口地址,并送入CMAR

3、从CM中逐条取出对应的微指令并执行

4、执行完对应于一条机器指令的微程序后,又回到取指微程序的地址入口,继续+1执行。周而复始。

14.微程序的编码方式

直接编码;字段直接编码;字段间接编码;

15.微指令是什么,它和指令的关系是什么

控制部件向其它执行部件发出的控制命令被称为微命令,一组实现一定功能的微命令的组合被称为一条微指令,许多条微指令组成的序列被称为微程序,微程序完成对指令的解释执行。指令,即机器指令。每一条指令都对应一个微程序,一个微程序中包含很多微指令,微指令可以发出多条微命令。

16.指令流水线

将一条指令分为多个子过程,每个子过程与其它的子过程并行执行,以提高计算机吞吐率的手段。只需要少量的硬件,就可以使计算机的运行速度提高好几倍。是计算机经常使用的并行处理技术。

17.影响流水线的因素有哪些

数据相关。在程序中,存在必须等待前一条指令执行完,才能执行后面一条指令的情况。解决犯法有

  1. 把遇到数据相关的指令和后续指令都暂停几个周期;
  2. 设置专用的数据通路,上一条指令的值不用写入寄存器,下一条指令也不用读寄存器组,而是直接把上一条指令计算结果作为下一条指令的输入数据开始计算,这叫做数据旁路技术。

3、通过编译器对数据相关指令编译优化的方法,调整顺序来解决数据相关。

结构相关。多条指令在同一时刻争用同一资源而形成的冲突称为结构相关。解决办法:

  1. 前一条指令访存时,后一条指令暂停一个时钟周期。

2、单独设置数据存储器和指令寄存器,对资源重复配置。

控制相关。当流水线遇到转移指令和其它改变PC值的指令而造成的断流,会引起控制相关。解决办法:

  1. 对转移指令进行分支预测,更好生成转移目标地址。
  2. 取转移成功和不成功两个方向上的目标指令。
  3. 加快和提前形成条件码?

4、提高转移方向的准确率。

18.流水段越多,指令执行越快吗?

不是。流水段缓冲之间的额外开销增大了。而且流水线控制逻辑变得复杂了。

总线系统

1.总线的定义和特点

总线是一组能为多个部件分时共享的公共信息传输线路。分时和共享是总线的两个特点。

2.总线的猝发传输方式是什么?

在一个总线周期内传输存储地址连续的多个数据字,就是猝发传输方式。

3.总线分类

片内总线、系统总线、通讯总线

系统总线又分为数据总线(双向)、地址总线(单向)、控制总线

按照时序控制方式:同步总线和异步总线;

按照数据传输格式:并行总线和串行总线。

4.总线传输周期、总线宽度、总线带宽、总线复用

总线传输周期:一次总线操作所需要的时间,包括申请阶段、寻址阶段、传输阶段、和结束阶段。总线周期通常由若干个总线时钟周期构成,也就是机器时钟周期。

总线宽度:总线上能够同时传输的数据位数。

总线带宽:可理解为总线的数据传输率即单位时间内总线上可传输的数据位数,通常用每秒可传输的数据字节数表示。

总线复用:一种信号线在不同的时间传输不同的信息,因此可以较少使用线。

总线带宽=总线宽度X总线频率

5.引入总线结构有什么好处

①简化系统结构,便于系统设计;

②减少连线数目,便于布线,减小体积

③便于接口设计,所有总线设备都采用类似接口

④便于系统扩充,实现模块化

⑤便于设备软件设计

⑥便于故障检测。

6.引入总线会导致什么问题,如何解决

引入总线后,总线上的设备会分时共享总线,当设备多了会产生总线冲突。应该采用总线仲裁来解决冲突。

7.集中仲裁的三种集中仲裁方式方式

链式查询方式;计数器定时查询;独立请求方式;

8.描述分布仲裁方式

不需要中央仲裁器,每个主模块都有自己的仲裁器。当有总线请求时,就回吧他们各自唯一的仲裁号发到仲裁总线上。

总线传输的四个阶段

申请分配阶段、寻址阶段、传输阶段、结束阶段。

9.描述同步和异步的优缺点

同步方式,系统采用统一的时钟周期来协调发送和接受双方的传送定时关系。时钟产生相等的时间间隔构成一个总线周期。优点是传输速度快,总线控制逻辑简单。缺点是主从设备强制同步,不能及时进行数据通信的有效性检验,可靠性差。适用于总线长度较短和总线所需部件的存取时间比较接近的系统。

异步方式,没有统一的时钟也没有固定的时间间隔,完全依靠传送双方相互制约的握手信号来实现定时控制。优点:总线周期长度可变,能保证两个工作速度相差跟大的部件可靠地通信。缺点是比同步方式控制要复杂,速度要慢一些。

10.异步方式的三种类型

不互锁方式;半互锁方式;全互锁方式。

11.同一时间可以有多对主从设备同时使用总线吗

不可以。在某个总线周期内,总线上只有一个主设备控制总线。

IO系统

1.什么是IO接口

IO接口是主机和外设的交接面,通过接口可以实现主机与外设的信息交换。由于主机和外设有很大的速度差异,所以需要接口来解决这个差异。

2.IO接口的功能?

  1. 实现主机和外设的通讯联络;
  2. 进行地址译码和设备选择;
  3. 实现数据缓冲;
  4. 信号格式转换;

5、传送控制命令和状态信息。

3.IO接口的类型

按照外设和接口侧的数据传送的方式可分为:并行接口和串行接口。

按主机访问IO设备的控制方式可分为:程序查询接口,中断接口、DMA接口。

按照功能选择的灵活性可分为可编程接口和不可编程接口

4.什么是IO端口,有哪些编址类型

IO端口是指接口电路中可以被CPU直接访问的寄存器,主要有数据端口、状态端口、控制端口。CPU对数据端口可以执行读写操作,但对状态端口只能进行读操作,对控制端口只能进行写操作。

编址类型有:统一编制法和独立编制。统一编制,就是把IO端口的地址算作主存地址,这种方式优点是不需要专门的输入输出指令,使用统一的输入输出指令就行,还可以使端口有较大的编址空间,cpu访问IO更加方便灵活。缺点是端口占用存储器地址,使内存容量变小,而且执行速度较慢。

独立编址是IO端口地址独立于存储器地址。优点是对IO端口的输入输出指令和存储器指令有明显区别,程序清晰,容易理解。缺点是需要CPU提供对存储器读写和对IO读写两组控制信号,增加了控制的复杂性。

5.中断响应的三个条件是什么?

①中断源有中断请求

②CPU允许中断

③一条指令执行完毕,没有特别要紧的任务

6.描述程序中断方式过程

关中断、保存断点、引入中断服务程序(前三步由中断隐指令完成)、保存现场和屏蔽字、开中断、执行中断服务程序、关中断、恢复现场和屏蔽字、开中断返回断点。

7.向量中断、中断向量、向量地址是哪个概念

中断向量是指中断服务程序的入口地址;中断向量地址是指中断向量服务程序入口地址的地址。

向量中断是一种识别中断源的技术或方式。识别中断源的目的是找到中断源对应的中断服务程序入口地址的地址,进而获得中断向量地址。

8.程序中断和调用子程序有什么区别?

两者的根本区别在于服务时间和服务对象不一样。

1、调用子程序是主程序预先设置好的命令是可以被预知的,而中断的时间一般是随机的。

2、子之程序完全为主程序服务,而中断服务程序和主程序两者一般没有关系,不存在谁服务谁。

3、主程序调用子程序的过程完全属于软件处理过程,而中断属于软件硬件结合的过程。

4、子程序嵌套由计算机内存开辟的堆栈大小限制;而中断嵌套次数主要由优先级决定。

9.中断响应优先级和中断处理优先级有什么区别

中断响应优先级,是CPU响应中断的顺序,是由硬件排队电路或中断查询子程序顺序决定的,不可动态改变。而中断处理优先级是由中断屏蔽字来改变的,反应两个中断之间的优先处理次序,当先来的中断低于后来的中断时就要处理后来的中断。

10.IO指令和通道指令

I/O指令:I/O指令是计算机系统的一部分,由CPU执行。在采用通道的计算机系统中,I/O指令不直接控制I/O数据的传送,它只负责启动、停止I/O的过程、查询通道和I/O设备的状态、控制通道进行某些操作。

11.DMA方式和中断方式的区别

1、中断方式是程序的切换,需要保护现场;而DMA方式除了预处理和后处理,不需要使用CPU

2、中断请求的响应只能发生在每条指令执行完毕;对DMA的响应可以发生在每个机器周期结束,只要CPU不占用总线就可以被响应。

3、中断传送过程需要CPU的干预;而DMA不需要CPU的干预,所以传输效率非常高。

4、DMA的请求优先于中断请求

5、中断方式依靠程序传送,而DMA要硬件传送

6、中断方式有对异常事件的处理能力,而DMA方式仅仅限于数据块的IO操作。

  • 16
    点赞
  • 73
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值