简答题
一¶
计算机系统结构、计算机组成、计算机实现三者之间的区别和联系¶
- 计算机系统结构: 系统设计
- 计算机组成: 逻辑设计
- 计算机实现: 物理设计
- 相同系统结构的计算机可以采用不同的组成 相同组成的计算机可以采用不同的实现技术
软、硬件取舍原则¶
- 软件和硬件在逻辑功能上是等效的,只是性能、价格、实现的难易程度不同
- 硬件实现:速度快、成本高;灵活性差、占用内存少
- 软件实现:速度慢、复制费用低;灵活性好、占用内存多、易设计、可改性强、适应性强、设计周期短
- 硬件成本越来越低→硬件实现的比例越来越高
程序访问的局部性原理¶
- 时间局部性: 最近的将来要用到的信息可能就是现在正在使用 的信息。
- 这与程序不断在循环运行有关。
- 空间局部性: 最近的将来 要用到的信息很可能与现在正在使用的信息在程序上的位置是临近的。
- 这与指令的顺序存放、数据的簇聚存放有关。
并行性的概念和分类¶
- 概念: 在同一时刻或同一时间间隔内完成两种或两种以上, 性质相同或不同的工作。
- 分类:
- 同时性: 并发事件在同一时刻发生
- 并发性: 并发事件在同一时间间隔里发生
系统结构中开发并行性的途径¶
-
时间重叠
让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部件,以加快部件的周转提高速度。
-
资源重复 通过重复设置硬件资源,提高性能和可靠性。由同一个控制器,控制多个处理器同时处理同一个数据,进行同个运算。
-
资源共享 用软件的方法,使多个用户按一定时间轮流地分时使用同一资源(时间片轮转),以提高利用率,提高整个系统
二¶
RISC的基本原则和快的实质¶
- 选择使用频度较高、最有用,及实现简单的指令
- 每条指令都在一个机器周期内完成的指令
- 减少指令寻址方式的种类,简化指令格式,使指令的长度相同
- 增加通用寄存器的数量,减少访问存储器操作
- 大量采用硬联控制,提高执行速度
-
通过优化和精简指令设计支持的编译程序,有效地为高级语言生成机器语言程序
-
实质:减少CPI
RISC采用的基本技术¶
- 遵循按RISC机器一般原则设计的技术
- 在逻辑上采用硬联实现和微程序固件实现相结合的技术
- 在CPU中设置数量较大的寄存器组, 并采用重叠寄存器窗口的技术
- 指令的执行采用流水和延迟转移技术
- 指令流调整技术 通过变量重新命名消除数据相关,提高流水线效率
三¶
重叠和顺序解释的异同¶
- 顺序解释:各条机器指令之间顺序串行地执行, 执行完一条指令后采取出下条指令来执行,而且每条指令内部的各个微操作也是顺序串行地执行
- 在解释第k条指令的操作完成之前,就开始解释第k+1条指令,不能加快一条指令的实现,但能加快相邻两条以至一段程序的解释
重叠相关的两种解决方案并就其原因用系统设计原理作出解释¶
-
主存空间相关
- 推后读:把“分析k+1”推后到“执行k”结束时开始,只要发生数相关就使一次重叠变成了完全的顺序串行,速度明显下降
-
主存空间相关
- 推后读
- 设置专用通路:在发生重叠相关时,让相关专用通路接通,在“执行k”时将运算结果送入通用寄存器,同时直接将运算结果回送到X寄存器,可大大缩短传送时间,并能保证当“执行k+1”需要用此操作数时,它已在X寄存器中准备好了
四¶
互连网络的设计目标¶
- 高灵活性、高连接度
- 低延时、低成本
- 适合VLSI
五¶
多处理机的存储器组织中两种编址方式及其适应场合¶
- 低位交叉编址
- 块内顺序物理地址不连续,距离为m,连续物理地址空间的数据被分散到各个分存储体中
- 适用于当前执行进程是共享同一集中连续物理地址空间中的数据,如流水线、向量或阵列处理机
- 高位交叉编址
- 块内顺序物理地址连续,总体也依次连续分布
- 适用于当前执行的多个进程基本不共享数据的情况, 可将存储模块中的一定数量的页面分配给某进程
六¶
数据驱动方式及其特点¶
- 只要一条或一组指令所要求的操作数全部准备就绪,就可立即执行相应的指令或指令组 。执行结果的输出将送往等待这一数据的下一条或下一组指令
- 特点:
- 它没有通常的共享变量的概念,即没有共享存储数据的概念
- 指令执行顺序只受指令中数据相关性的制约
- 数据是以数据令牌方式直接在指令之间传递的
数据令牌的概念¶
- 是一种表示某一操作数或参数已准备就绪的标志
- 一旦执行某一操作的所有操作数令牌都到齐,则
- 标志着这一操作是什么操作
- 操作结果所得出的数据令牌应发送到哪些等待此数据令牌的操作的第几个操作数部件 等有关信息都将作为一个消息包,传送到处理单元或操作部件并予以执行 。
数据流是一种什么样的计算模型¶
- 数据流是基于异步性和函数性的一种计算模型
- ~补充~数据流的特性:
- 并行性:可同时并行执行多条指令(并行性通常是隐含的)
- 异步性:一旦一条指令 所需求的数据令牌到达后, 指令就可独立执行 ,而不必关心其他指令及数据情况如何
- 函数性:运算的执行都是局部操作,操作数是作为数据令牌直接传送的, 每一组数据流操作都需要一组输入值,产生一组输出值
- 分散性:不需要控制执行次序,故不需要集中控制