手记

软考高级系统架构设计师 计算机体系结构

我更多的是记录一下我自己的想法,会有错误

计算机硬件系统

注意那几个寄存器要记住其作用

指令系统

概念

指令系统是计算机硬件的语言系统,是机器所具有的全部指令的集合,反应了计算机所拥有的基本功能,

说人话就是,指令的集合,由于指令是用来解决某项问题的,那么就有功能性了

指令的组成

  1. 操作码
  2. 地址码

分类

CISC

CISC,Complex Instruction Set Computer,说人话就是我把指令搞得很复杂,什么东西都写好了,但由于二八原则的存在,你写的那么多指令,实际上经常用的也就那20%,从这个角度来看,没有必要把指令系统搞得那么复杂

特点
  • 指令数量
  • 指令使用频率相差悬殊
  • 支持多种寻址方式
  • 变长的指令,但这也增加了指令译码电路的复杂性
  • 指令可以对主存单元中的数据直接进行处理,那么这样就可以直接对主存单元中的数据进行处理了,执行速度比较慢
  • 微程序控制为主 也好记对吧,因为复杂和二八定律的存在,引入RISC

RISC

RISC,Reduce Instruction Set Computer 对CISC的优化,因为二八原则,要比CISC快

特点
  • 指令数量少
  • 指令的寻址方式少
  • 指令长度固定,指令格式种类少
  • 硬布线逻辑控制为主,说人话就是各种各样的逻辑电路,用电路解决的速度要比用软件的速度要快
  • 单周期指令执行,采用流水线技术,用了这种技术会使得大部分指令都能在一个机器周期内完成
  • 优化的编译器,这个了解一下
  • CPU的通用寄存器数量多

流水线技术

小插曲 你需要知道一下指令执行的三阶段:取指分析执行

顺序执行

重叠执行

即在执行指令的同时,取指页同时进行,叫做局部并行

流水线执行

周期

即执行时间最长的那一段,因为在流水线中花费时间最多的是执行时间最长的那一段,如果把花费的时间与难度相关联起来,即执行时间越长,难度越高,即你困难的问题都能解决,那么简单的一定能解决

流水线时间

流水线时间=第一条指令花费时间+指令周期×(指令条数−1)

例题:一条指令的取指、分析和执行分别是2ns,2ns,1ns. 流水线周期:2ns 100条指令全部执行完毕需要的时间是 2+2+1+2×(100−1)=203

吞吐率和最大吞吐率

吞吐率这个你可以理解为单位时间内流水线处理后的结果数,即单位时间内执行的指令数

TP=流水线执行时间指令条数​

TPmax​=limn→∞​(k+n−1)△tn​=△t1​

最大吞吐率就是流水线的周期的倒数,上一题的最大吞吐率就是2△t1​

流水线加速比

即不使用流水线执行时间与使用流水线执行时间的比值 S=使用流水线执行时间不使用流水线执行时间​

存储系统

存储器的层次

我感觉这里你看图片会更好一点

主存储器的容量计算

内存按字节编址,地址从A4000H到CBFFFH,共有多少字节?若用存储容量为32K×8bit的存储芯片构成该内存,至少需要多少片?

一共有:CBFFF+1−A4000=28000H=8×163+2×164=23×(24)3+2×(24)4=215+217B 同时除以210得到25+27KB=160KB

按字节编址,这里我不太记得了,好像是把一个字节看成单独的地址 至少需要32K160K​×88​=5片

磁盘阵列

看图片吧

校验码

这个你看我的视频吧 CRC

总线

概念

你需要知道是在计算机设备之间传输数据的公共通道

分类

按功能来

  • DB,Data Bus,数据总线
  • AB,Address Bus,地址总线
  • CB,Control Bus,控制总线

这里看一下我的视频讲解 总线

按芯片的位置

  • 内部总线和外部总线

按数据线的多少

  • 并行总线,这个适应于计算机内部部件的数据传输
  • 串行总线,这个适应于长距离的数据传输

我的一些问题

  1. 为什么要整那么多的寻址方式。

寻址方式有直接寻址,间接寻址,寄存器间接寻址,基址寻址,变址寻址 反证法来一波,全部用直接寻址会怎么样? 以16位为例, 只用直接寻址,他只能直接访问216=64KB的内存,这完全不够用 那间接寻址呢? 假设只用间接寻址且地址都是16位,那么能访问232B=222KB=212MB=4GB,这应该够用了

应该是为了更大的访问内容容量,追求灵活性

0人推荐
随时随地看视频
慕课网APP