【系统分析师之路】系统分析师必知必会(计算机组成与体系结构)
计算机组成与体系结构必知必会
一. 流水线
1. 流水线技术概念
- 流水线技术是通过并行硬件来提高系统性能的常用方法。
- 由于流水是同时解释多条指令的,肯定会出现更多的指令转移相关。
- 对于一个k段流水线,假设其各段的执行时间均相等(设为t),输入到流水线中的任务是连续的理想情况下,完成n个连续任务需要的总时间为(k+n-l)xt。
2. 流水线性能
- 流水线各阶段可能会相互影响,阻塞流水线,使其性能下降,阻塞主要有以下两种情况。
- 转移指令
在当前指令完成之前,流水线不能确定下一条指令的地址。
对于转移指令,它和其后的指令之间存在关联,使之不能同时解释,造成对流水线执行方向的改变和效率的下降,被称为全局性相关。
而指令相关、主存操作数相关、通用寄存器相关及变址相关等只是影响相关附近的几条指令,至多影响流水线的某些段的推后,所以被称为局部性相关。 - 共享资源访问冲突
由多条指令重叠执行造成,对共享资源的访问冲突,又叫做数据相关。
在流水线中完成一个任务的时间与单独执行该任务的时间相近,甚至更多,因为有分段。
对于数据相关的处理,通常采用的方法是设置相关专用通路,从相关专用通路直接读出操作数。
3. 流水线加速比
- 为完成一批任务,不使用流水线所用的时间与使用流水线所用的时间之比。
4. 流水线的最大加速比
- 单独执行一个任务的完整时间 / 流水线单级的最长时间
5. 流水线吞吐率
- 在单位时间内流水线所完成的任务数量或输出的结果数量。
- TP=n/T。任务数/使用流水线完成n个任务所需要的时间。
6. 流水线的效率
- n个任务占用的时空区/k个流水线的总时空区。
7. 超标量流水线
- 将机器指令划分为更多的操作,以减轻每一级的复杂程度。增加流水线级数来提高频率。
8. 流水线各类冲突问题解决方法
- 数据相关
- 程序转移:猜测法相关专用通路
- IO中断:让已经进入流水线的指令继续执行,直到执行完成。也叫不精确断点法;
- 精确断点法是指出现中断时立即停止所有指令的执行,转入中断处理。
9. 相关性冲突分类
- 局部性相关:先写后读同一数据单元造成的相关。
- 全局性相关:转移指令造成的损失。
二. Flynn分类法
1. Flynn的概念
- 根据指令流和数据流的多倍性特征对计算机进行分类。
- 1)指令流
是机器执行的指令序列 - 2)数据流
是由指令流调用的数据序列。包括输入数据和中间结果,不包括输出数据。 - 3)多倍性
在系统性能瓶颈部件之上,同时处于同一执行阶段的指令或数据的最大可能个数。
2. Flynn的分类
- SISD
- 单指令流单数据流;传统的单核CPU计算机,奔腾2芯片属于SISD。
- SIMD
- 单指令多数据流;单一指令部件控制,按照同一指令流的要求,为多个处理单元,使用多数据单元,主要用在服务器中。
- MISD
- 多指令单数据流;多个处理单元,多条不同指令对同一数据流及其中间结果进行不同处理。
- 它只作为理论研究基础,没有真正投入使用。
- MIMD
- 作业任务,指令全面并行的多级系统,大规模并行处理机MPP(由众多的微处理器,几百到上万,组成大规模并行系统,MPP可以采用市场上出售的RISC处理器,所以性价比很高,属于松耦合多机系统)和对称多处理机SMP(紧耦合系统)都属于这类。
- 当前高性能服务器和超级计算机大多有多个处理器,多任务并行处理,基本都属于MIMD。
- 典型MIMD代表就是大型服务器,多核CPU计算机,多机系统。
三. 多机系统
1. 多机系统的定义
- 多机系统是指一个系统中有多个处理机,它属于MIMD系统,
2. 多机系统的分类
按照多机之间连接的紧密程度,可分为紧耦合多机系统和松耦合多机系统。
1)紧耦合多机系统(例:SMP)
- 也叫做直接耦合系统,各个处理机之间通过互联网共享内存,每个处理机可自带局部存储器,也可以自带Cache,存储器模块可以采用流水工作方式。
- 紧耦合系统中的多个处理机一般是同构的。SMP就是紧耦合系统。
- SMP(Symmetrical Multi-Processing,对称多处理器结构)技术,是指在一个计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构,所以属于紧耦合多机系统。
2)松耦合多机系统(例:MPP)
- 间接耦合系统。各个处理机之间通过共享IO子系统,通道或通信线路实现机器之间的通信,不共享内存。MPP属于松耦合多机系统。
- 大规模并行处理(Massive Parallel Processing,MPP)计算机是由大量通用微处理器构成的多处理机系统,适合多指令流多数据流(MIMD)处理。
- 这种系统的编程要采用并行程序设计技术。
3. 区别与联系
- SMP和MPP最大的区别就是在存储。SMP有一个统一共享的SM(共享内存),MPP每个处理机有自己的LM(本地内存)。
- MPP每个处理机只能访问LM,适合操作相互之间没有什么关系,处理单元之间需要进行的通信比较少,那采用MPP会比较好,
- MPP系统在决策支持和数据挖掘当面显示的优势,适合数据仓库。
- SMP适合用于OLTP联机事务处理环境。
4. 多处理机系统
使用多处理机系统的主要目的是实现作业级和任务级代码的并行性。
广义上说,使用多台计算机协同工作来完成所要求的任务的计算机系统都是多处理机系统。
传统的狭义多处理机系统是指利用系统内的多个CPU并行执行用户多个程序,以提高系统的吞吐量或用来在多处理机系统中,提高程序并行性的关键,是把任务分解成足够多的可同时操作的进程。
四. RISC精简指令集
1. RISC的特点
1)指令数量少
- 优先选取使用频率最高的一些简单指令和常用的指令,避免使用复杂指令。
- 大多数的指令都是对寄存器的操作,对存储器的操作仅仅只有读和写两种方式。
2)指令寻址方式少
- 通常只支持寄存器寻址,立即数寻址及相对寻址。
- 指令长度固定,指令格式种类少。
3)只提供Store和Load访问存储器
- 对于存储器,只提供读和写两条指令。
- 其余所有操作都在CPU寄存器间进行,所以RISC需要大量的寄存器。
4)以硬布线逻辑控制为主
- 为提高执行速度,常采用硬布线逻辑(组合逻辑)来构件控制器。
- CISC计算机指令系统很复杂,难以用组合逻辑电路实现控制器。通常采用微程序控制。
5)单周期指令执行
- 简化了指令系统,因此很容易利用流水线技术使得大部分指令都能够在一个指令周期中完成。
- RISC通常采用流水线组织,少数指令可能会需要多个执行周期。
6)优化的编译器
- RISC精简指令集使汇编工作简单化。可以生成高效执行的机器代码,能有效的支持高级语言。
2. RISC和CISC的差别
1)指令系统
- RISC指令较为简单,实现特殊功能时效率较低,大量使用的是通用寄存器;
- CISC指令较为丰富,有专用的指令完成特定的功能,处理特殊任务效率较高。
2)存储器操作
- RISC对存储器操作只有读和写两种
- CISC的存储器操作指令较多。
3)程序
- RISC需要较大的内存空间,实现特殊功能时结构复杂
- CISC汇编语言编程简单,复杂计算容易,效率高。
4)中断
- RISC在执行一条指令执行的适当地方可以响应中断
- CISC在指令执行结束后响应中断。
5)设计周期
- RISC设计周期短;CISC设计周期长。
6)用户使用
- RISC易学易用,CISC结构复杂,只是实现特殊功能容易。
7)应用范围
RISC指令系统的确定与特定的应用领域有关,更加适合于专用机(ARM),而CISC更加适合于通用机(如Inter,AMD)
8)CISC特征
- 寻址方式丰富,指令数量多,指令功能尽可能强是CISC的特点。
五. 计算机存储体系
1. 三级存储体系
- 程序中大部分的指令都是顺序执行,顺序存储的。这个局部性原理也就是Cache改善系统性能的依据。
- 计算机常用的三级存储体系是Cache,主存,辅存。理论依据是程序访问的局部性。
- 这三个级别从左到右容量越来越大,价格越来越低,速度越来越慢。
2. 局部性原理
- 局部性原理可以分为时间局部性和空间局部性。
- 依据局部性原理,把主存储器中访问概率高的内容存放在Cache之中。当CPU需要读取数据时,首先在Cache中查找是否有所需内容,如果有则直接从Cache中读取;若没有再从主存中读取该数据,然后同时送往CPU和Cache。
- 如果CPU需要访问的内容大多能在Cache中找到,也就是命中,则可以大大提高系统的性能。
- Cache存储器一般采用的是静态随机访问存储器技术,速度比动态RAM(DRAM)来得快。
1. 时间局部性
- 如果一个信息项正在被访问,那么在近期很可能还会被再次访问。
- 程序的循环,堆栈就是产生时间局部性的原因。
- 程序访问具有时间局部性,即最近将要用的信息很可能是正在使用的信息。
2. 空间局部性
- 在最近的将来,将用到的信息很可能与现在正在使用的信息在空间地址上是临近的。
3. Cache存储器
- Cache和CPU之间数据交换是以字为单位,而Cache和主存之间的数据交换是以块为单位,一个块由若干字组成。
- Cache中的数据装满了以后必须淘汰掉现有的数据,装入新数据,常用的淘汰算法有随机淘汰法,先进先出法FIFO,最近最少使用淘汰法LRU。
- Cache存储器一般由硬件实现,存放当前正在处理的指令和数据。它存放的不是内存的备份。
1)近期最少使用(Least Recently Used,LRU)算法
- LRU算法是把CPU近期最少使用的块作为被替换的块。
- 这种替换方法需要随时记录cache中各块的使用情况,以便确定哪个块是近期最少使用的块。
- LRU算法相对合理,但实现起来比较复杂,系统开销较大。
- 通常需要对每一块设置一个称为“年龄计数器”的硬件或软件计数器,用以记录其被使用的情况
2)最不经常使用页置换(Least Frequently Used (LFU))算法
- 要求在页置换时置换引用计数最小的页,因为经常使用的页应该有一个较大的引用次数。
- 但是有些页在开始时使用次数很多,但以后就不再使用,这类页将会长时间留在内存中,因此可以将引用计数寄存器定时右移一位,形成指数衰减的平均使用次数
六. Cache地址映射
1. Cache地址映射的概念
- CPU发出访问存储请求后,存储器地址先被送到Cache控制器以确定所需数据是否已在Cache中,若命中则直接对Cache进行访问。该过程称为Cache的地址映射。
- 常见的映射方法有:直接映射,组相联映射,全相联映射。
2. Cache地址映射方式
1)直接映射方式
- 主存中的每一块都可以映射到Cache的任何一块位置上。
- 这种方法比较的简单,且地址转换的速度快,但不够灵活,冲突率高,使得Cache的存储空间得不到充分利用。
2)组相联地址映射
- 它是直接地址映射和全相联地址映射的折中方案,主存和Cache都分组,组间采用直接地址映射,组内采用全相联地址映射,主存中的各块与Cache的组号间有固定的映射关系,但可以自由映射到对应的Cache组中的任何一块。
3)全相联地主映射
- 主存上的每一块都可以映射到Cache的任何一块位置上,这种方法比较灵活,Cache的利用率高
- 但是地址转换速度慢,且需要采用某种置换算法,将Cache中的内容调入调出,实现起来系统开销大。
4)区别与联系
- 三种映像方式难以区分速度优劣,各有优缺点,速度也不相上下。
- 如果Cache不命中的时候,CPU在访问主存时,不仅将该字从主存中取出,同时将它所在的主存块一并调入Cache,供CPU使用。
- 主存到Cache单元的地址转换由硬件完成。
七. 磁盘冗余阵列
磁盘冗余阵列 | 説明 |
---|---|
RAID0 | 无冗余无校验的数据分块,最高的IO性能和磁盘利用率,但故障率高 |
RAID1 | 磁盘镜像阵列,最高的安全性,但磁盘的利用率只有50% |
RAID2 | 纠错海明码的磁盘阵列 |
RAID3和RAID4 | 奇偶校验码的磁盘阵列 |
RAID5 | 无独立校验盘的奇偶效验码磁盘阵列 |
RAID6 | 具有独立的数据磁盘和两个独立的分布式校验方案 |
RAID7 | 具有最优化的异步高IO速率和高数据传输率的磁盘阵列 |
RAID0+1 | 高可靠性和高性能的组合 |
- RAID采用的是N+1模式,即:一共有N+1个盘,则会用N个盘的容量存数据,1个盘的容量存校验信息。
八. IO设备与主机交换数据的方式
1. 程序直接控制方式
- CPU需要定期的查询IO设备,以确定操作是否完成。它需要耗费大量的CPU时间。
- 程序直接控制方式和中断控制方式都只适用于简单的、外设很少的计算机系统。
2.中断方式
- IO操作完成后,IO系统利用中断信号通知CPU,CPU无需等待和主动查询。
- 如果中断的次数较多,CPU仍然需要花费较多的处理时间处理中断。
- 中断方式下,CPU需要执行程序来实现数据传送。
3. DMA方式
- DMA工作方式是在主存和外设之间建立直接的数据通路。
- DMA和CPU共享总线,代替CPU控制IO设备和外存。CPU只需做善后处理,极大地解放了CPU。
- 若同时接到DMA请求和中断请求,CPU优先响应DMA请求。只有在一段数据传送结束时,才发出中断信号要求CPU做善后处理,从而大大减少了CPU的工作负担。
4. 通道方式
- 输入输出通道实际上是一种专用处理机。
- 进行输入输出操作时,通道取出并执行保存在主机主存储器中的程序,控制输入输出设备与主存储器之间的数据交换
- 这种方式下CPU只需进行少量的处理就实现了并行操作。
5. DMA方式与通道控制方式的区别
- DMA方式要求CPU执行设备驱动程序来启动设备,给出存放数据的内存起始地址以及操作方式和传送字节长度等
- 通道控制方式则是在CPU发出I/O启动命令之后,由通道指令来完成这些工作。
九. MIPS和MFLOPS
- 这两者都是用来衡量峰值的性能的。
- MIPS适合用来衡量标量处理机的性能
- MFLOPS适合衡量向量处理机的性能。
- MTTF称为平均无故障时间(mean time to failure)是量度可靠性的标准之一。
- MTTR称为平均修复时间(mean time to repair),MTBF称为平均故障间隔,等于MTTF与MTTR之和。
- 故障率等于MTTF的倒数。如果系统各个部分是独立的,这系统的故障率等于各个部分故障率的总和。
十. 实现并行性的三种方式
- 计算机系统开发并行性的方法有:资源重复,时间重复和时间共享。
- 时间重叠
典型的应用就是流水线技术 - 资源重复
引入重复的硬件设备来提高效率 - 资源共享
通过软件的手段让多个用户按照一定的时间顺序轮流使用一套资源来提高并行性。
十一. 总线技术
1. 总线的定义
- 总线就是一组互联和传输信息(指令,数据,地址)的信号线,它好比连接计算机系统各个部件之间的桥梁。总线分为了正式标准和工业标准。
- 总线规范会详细描述总线各方面的特性,其中物理特性规定了总线的线数,以及总线的插头、插座的形状、尺寸和信号线的排列方式等要素。
总线带宽定义为总线的最大数据传输速率,即每秒传输的字节数。 - 一个总线周期占用若干个时钟周期。
- 一条总线同一时刻只允许一个设备发送,但允许多个设备接收。
2. 总线的分类
- 总线的分类有数据总线,地址总线和控制总线。
1)数据总线
- 在CPU与RAM之间来回传送需要处理或者是需要存储的数据。
2)控制总线
- 将微处理器控制单元(Control Unit)的信号,传送到周边设备,一般常见的有USBBus和1394Bus。
3)地址总线
- 用来指定在RAM(Random Access Memory)之中储存的数据的地址。
3. 总线竞争
- 为了防止总线竞争,共享总线上某一时刻只允许一个主设备使用总线。这个时候就需要总线仲裁。
- 某计算机系统采用集中式总线仲裁方式,各个主设备得到总线使用权的机会基本相等,则该系统采用的总线仲裁方式可能是计数器定时查询(轮询)方式和独立请求方式,不可能是菊花链式查询方式。
4. 总线的另一种分类
- 按照总线中数据线的多少,可分为并行总线和串行总线。
1)并行总线
- 是含有多条双向数据线的总线,它可以实现一个数据的多位同时传输,总线中数据线的数量决定了可传输一个数据的最大位数(一般为8的倍数),由于可以同时传输数据的各位,所以并行总线具有数据传输速率高的优点。
- 但由于各条数据线的传输特性不可能完全一致,当数据线较长时,数据各位到达接收端时的延迟可能不一致,会造成传输错误,所以并行总线不宜过长,适合近距离连接。
- 大多数的系统总线属于并行总线
2)串行总线
- 是只含有一条双向数据线或两条单向数据线的总线,可以实现一个数据的各位按照一定的速度和顺序依次传输。
- 由于按位串行传输数据对数据线传输特性的要求不高,在长距离连线情况下仍可以有效地传送数据,所以串行总线的优势在于远距离通信。
- 大多数的通信总线属于串行总线。
- 在单总线结构中计算机的各个部件均与系统总线相连,所以它又称为面向系统的单总线结构。在单总线结构中,CPU与主存之间、CPU与I/O设备之间、I/O设备与主存之间、各种设备之间都通过系统总线交换信息
- 单总线结构的优点是控制简单方便,扩充方便。但由于所有设备部件均挂在单一总线上,使这种结构只能分时工作,即同一时刻只能在两个设备之间传送数据,这就使系统总体数据传输的效率和速度受到限制,这是单总线结构的主要缺点。
十二.相联存储器CAM
1.概念与特点
- 它是一种特殊的存储器。基于数据内容进行访问
- 特点是每个存储单元都必须有一个处理单元。
2.相联存储器作用
- 当对其写入数据时,CAM能够自动选择一个未用的空单元进行存储。
- 当要读出数据的时候,不是给出存储单元的地址,而是直接给出数据或者该数据部分的内容。
- CAM对存储单元中的数据进行比较,并标记符合条件的所有数据以供读取。
- 计算机系统中,CAM主要用于虚拟存储器和Cache,还常用于数据库或者知识库中按关键字进行检索。
十三.计算机浮点数
- 阶码的位数主要影响数值得表示范围,阶码越大,所表示的浮点数值范围也越大。
- 尾数的位数主要影响计算精度,尾数越大,所表示的浮点数精度越高。
十四. Cache写数据常用的方法
- 写直达
当要写Cache时,数据同时写回主存储器,也称为写通。 - 写回
CPU修改了Cache中的某一行以后,相应的数据不写入主存,而在该行被从Cache中淘汰时,才把数据写回主存储器中。 - 标记法
对Cache中的每一个数据设置一个有效位,当数据进入Cache之后,有效位为1,当CPU要对该数据进行修改时,只需要将其写入主存储器,并将该位清零,当要从Cache中读取数据时,需要测试其有效位,若为1则从Cache中取,否则从主存中取。
十五. 存储器
- RAM类存储器通过写入OxAA,0x55等数字再读出的方式进行自检;
- ROM类存储器通过累加和校验进行自检。
- 在高级语言程序中,使用逻辑地址访问保存在变量中的数据。
- 虚拟存储器
- 虚存中的存储器采用快速存储器,按内容访问。
- 虚拟存储器对应用程序员透明,对系统程序员不透明。
十六. 校验码
1.CRC即循环冗余校验码(Cyclic Redundancy Check)
- 是数据通信领域中最常用的一种差错校验码,其特征是信息字段和校验字段的长度可以任意选定。
- 在CRC校验方法中,进行**多项式除法(模2除法)**运算后的余数为校验字段。
- 校验码计算过程为:先将信息码左移4位(生成码长-1),然后反复进行异或运算(即除数和被除数最高位对齐,按位异或。
- 模2除法与算术除法类似,但每一位除的结果不影响其它位,即不向上一位借位,所以实际上就是异或。
2.海明码
- 海明码就是利用了多种奇偶校验嵌套在一起进行的校验。它把校验码拆分到各个位中。并规定2的N次方都是放的是校验位。
- 五个信息位的场合需要四个校验位。
十七. 双缓冲区
1)缓冲区表示
- IO设备—-缓冲区—-用户进程。
- 缓冲区处理分为了输入T,传送M,处理C三个部分。
2)缓冲区特点
- 当第一块数据送入用户工作区后,缓冲区是空闲的可以传送第二块数据。
3)单缓冲区
- 系统对每一块数据的处理时间为:Max(C,T)+M。因为,当T>C时,处理时间为M+T; 当T<C时,处理时间为M+C。
- 因为有了缓冲区,T和C之间是可以重叠(也就是并行运行)。
4)双缓冲区
- 双缓冲工作方式基本方法是在设备输入时,先将数据输入到缓冲区1,装满后便转向缓冲区2。此时系统可以从缓冲区1中提取数据传送到用户区,最后由系统对数据进行处理。
- 双缓冲可以实现对缓冲区中数据的输入T和提取M,与CPU的计算C,三者并行工作。三者并行工作就成了流水线。
- 它进一步加快了IO的速度,提高了设备的利用率。
- 在双缓冲时,系统处理一块数据的时间可以粗略地认为是Max(C,T)。C是计算T是输入。如果C<T,可使块设备连续输入;如果C>T,则可使系统不必等待设备输入。
十八.IO管理设备的层次
- 硬件
- 中断处理程序
- 设备驱动程序
- 与设备无关的系统软件
- 用户进程
十九. GPU
- GPU是一种高性能的图形处理器,一般采用的是SIMD架构
- GPU 的特点是比 CPU 包含更多的计算单元和更简单的控制单元。
二十. 计算机系统多级层次结构
- 计算机系统是一个硬件和软件综合体,可以把它看作是按功能划分的多级层次结构。
1)硬联逻辑级。
- 这是计算机的内核,由门、触发器等逻辑电路组成。
2)微程序级
- 这一级的机器语言是微指令集,程序员用微指令编写的微程序一般直接由硬件执行。
- 位于硬联逻辑层上面的微程序是用微指令编写的。
3)传统机器级
- 这一级的机器语言是该机的指令集,程序员用机器指令编写的程序可以由微程序进行解释。
4)操作系统级
- 从操作系统的基本功能来看,一方面它要直接管理传统机器中的软硬件资源,另一方面它又是传统机器的延伸。
5)汇编语言级
- 这一级的机器语言是汇编语言,完成汇编语言翻译的程序称为汇编程序。
6)高级语言级
- 这一级的机器语言就是各种高级语言,通常用编译程序来完成高级语言翻译的工作。
7)应用语言级
- 这一级是为了使计算机满足某种用途而专门设计的,因此,这一级的机器语言就是各种面向问题的应用语言
二十一.多核微处理器
1. 基本概念
- 多核是多微处理器核的简称,是将两个或更多的独立处理器封装在一起,集成在一个电路中。
- 多核处理器是单枚芯片(也称为硅核),能够直接插入单一的处理器插槽中,但操作系统会利用所有相关的资源,将它的每个执行内核作为分立的逻辑处理器。
- 通过在多个执行内核之间划分任务,多核处理器可在特定的时钟周期内执行更多任务。
- 多核与多CPU相比,可以很好降低系统的功耗和体积。
2. 功能特征
- 在多核技术中,计算机可以同时执行多个进程;在操作系统中,多个线程也可以并发执行。
- 多核操作系统的设计方法不同于单核操作系统,一般要突破核结构、Cache设计、核间通信、任务调度、中断处理、同步互斥等方面的关键技术。
3. 任务调度
- 对于多核 CPU,优化操作系统任务调度算法是保证效率的关键。一般任务调度算法有全局队列调度和局部队列调度。
1)全局队列调度
- 全局队列调度是指操作系统维护一个全局的任务等待队列,当系统中有一个 CPU 核心空闲时,操作系统就从全局任务等待队列中选取就绪任务开始在此核心上执行。
- 全局队列调度方法的优点是CPU 核心利用率较高。
2)局部队列调度
- 局部队列调度是指操作系统为每个 CPU 内核维护一个局部的任务等待队列,当系统中有一个 CPU 内核空闲时, 便从该核心的任务等待队列中选取恰当的任务执行,
- 这种方法的优点是任务基本上无需在多个 CPU 核心间切换,有利于提高 CPU 核心局部 Cache 命中率。
二十二. 哈佛结构
1. 概念定义
- 哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。
- 哈佛结构是一种并行体系结构,它的主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个独立的存储器,每个存储器独立编址、独立访问。
- 与两个存储器相对应的是系统的4条总线程序和数据的数据总线与地址总线。
- 这种分离的程序总线和数据总线可允许在一个机器周期内同时获得指令字(来自程序存储器)和操作数 (来自数据存储器),从而提高了执行速度,提高了数据的吞吐率。
- 程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度。
- 哈佛结构能在一个机器周期内同时获取指令字与操作数,但做不到一个机器周期内多次访问存储器。
- 哈佛体系结构强调的是多功能,适合多种不同的环境和任务,强调兼容性。
二十三. 其他
- 用户开机按下PC机电源开关时,PC机首先执行的是主板上的BIOS引导程序,然后加载主引导记录和引导驱动器的分区表,并执行主引导记录。
- 多种寄存器中PC负责记录要执行的指令地址。所以应把PC寄存器中的内容送到地址总线上。