美文网首页
知识点整理

知识点整理

作者: pluto_S | 来源:发表于2017-10-23 10:19 被阅读0次

    以下完全为个人总结——若发现问题请下方评论,定回

    I/O


    • 主机主频 50MHz (50M个时钟周期)/s
    • CPI m (m个时钟周期)/每执行一条指令
    • MIPS 50M/m (主机每秒执行的指令数)
    • 外设数据传输率 nB/s
    • 总线带宽 32位或以32位传输 即每传输32位的数据请求一次
    • (nB/s)/4B=n/4 (每秒发出的请求次数)--4B即上面的32位
    • 交换块16B或数据16B,则传输一次需 16/n s,那么一秒钟传输n/16次
    • 求占cpu时间百分比时,若用时钟周期来求,则分母可由cpu主频得知50M个时钟周期,分子具体情况具体求。
    • 关于终端屏蔽,根据屏蔽字得到的优先级,在运行过程中起作用,而计算机的实际启动顺序仍按照硬件优先次序进行(即中断响应优先级),只不过启动后各中断会根据屏蔽字优先级进行抢占处理(即中断处理优先级)。
    • 程序查询方式-中断方式-DMA方式比较
      DMA方式对CPU的占用最少,即对CPU的影响是最小的,其次中断方式,次之程序查询
    • 中断处理流程
      (中断隐指令部分,硬件直接实现,并非指令无操作码)
      关中断-保存断点-引出中断服务程序(取出终端程序入口地址送至pc)
      (中断服务程序内部)
      保存现场和屏蔽字-开中断-执行中断服务程序-关中断-恢复现场和屏蔽字-中断返回,开中断
    • VRAM容量(显存容量)
      VRAM容量=分辨率 * 灰度级 * 帧频 ,例如 1280 * 1080 * 24bit * 85(Hz)
    • 颜色数 256=2^8 即8位灰度级
    • 磁盘结构


      单片盘片
    立体3D结构

    存储容量=磁头数 × 磁道(柱面)数 × 每道扇区数 × 每扇区字节数
    数据传输率Dr=磁盘转数r/s * 每条磁道容量 N个字节 即 Dr=r * N;
    面密度=位密度(单位磁道长度记录二进制代码位数)* 道密度(半径方向单位长度的磁道数);

    • 若磁盘 120r/s 则 平均查询扇区时间为(1/120)/2 (存取一个扇区的平均延迟)即旋转半周的时间;
    • 读一个扇区中数据所用时间=找磁道的时间+找扇区的时间+磁头扫过一个扇区的时间;
      找磁道的时间:一般选磁头在磁盘半径方向移动1/2个半径所用的时间的平均值;
      找扇区时间:一般选用磁盘旋转半周所用的时间为平均值;
      磁头扫过一个扇区时间:磁盘转一圈的时间/磁盘的扇区数;
    • 磁盘阵列 -通过同时使用多个磁盘提高传输率,通过并行存储提高数据吞吐量,通过镜像提高安全性,通过数据校验提供容错能力

    总线


    • 半同步通信总线(拥有同步通信及异步通信的特点)
      异步总线中引入时钟信号,其就绪及应答信号皆在时钟的上升沿或下降沿有效,不受其他时间的信号干扰;例如 PCI总线;
    • 分类: 时序上 同步/异步 数据传输格式 并行/串行
    • 通信总线也称外部总线
    • 猝发传送(突发传送)
      一个总线周期内,传送存储地址连续的多个数据字;
    • 单总线 双总线 三总线
      单总线并不是只有一根信号线可分为(地址、数据、控制)
      -系统总线
      -主存总线、I/O总线
      -主存总线、I/O总线、DMA总线
    • 总线带宽=总线频率*总线宽度;
    • 总线频率=总线时钟频率/(一个总线周期中的时钟周期数);
    • 总线宽度 - 总线位宽,通常指数据总线的根数
    • 总线时钟周期=1/总线时钟频率;
    • 总线仲裁 -集中/分布式
      链式 - 三根控制线 BS BR BG
      计数器定时查询 - n个设备需要 (ceil)logn+2 根设备地址线
      独立请求 - 2n+1控制线
      分布式即自己分别处理自己的模块,最后通过博弈选出最终模块
    • 同步定时 - 统一的时钟信号
    • 异步定时 - 无统一时钟 用握手信号实现定时与控制
      不互锁、半互锁、全互锁
      区分:发出信号后是否必须等待回应才能继续;
    • 总线标准
      ISA EISA VESA PCI PCI-Express
      USB(Universal Serial Bus)总线 (通用串行总线)
      AGP(加速图形接口)
      局部总线 -VESA PCI AGP

    CPU


    • 运算器 - 数据加工处理的中心
      ALU、暂存寄存器、ACC、通用寄存器、PSW、移位器、计数器(CT)
    • 控制器
      PC、IR、MAR、MDR、指令译码器、时序系统、微操作信号发生器
    • IR MAR MDR对用户透明
    • 机器字长 - CPU一次能处理数据的位数
    • PC的位数 - 取决于存储器容量
      计算机内存容量大小 由地址总线决定
      MAR位数和PC相同
    • 指令周期 - 取出一条指令并执行完的全部时间
      取指周期 + 间址周期+执行周期+中断周期 (并不是每个指令周期都有中断周期)
      对应四个机器周期
    • 一个指令周期 - n个机器周期(也称cpu周期) - n * m个时钟周期
    • 时钟周期 - 计算机运行的最基本的时序单位
    • 指令 即机器指令(完成一个独立的算术运算或逻辑运算操作);
    • 机器周期通常由存取周期确定 (即计算机完成一个基本操作的时间)
    • 存储器进行一次读或写为存储器访问时间,连续两次独立的读或写所需最短时间为存取周期(主存周期)
    • 指令字长一般为存储字长的整数倍(即n * 存储字长),n=1 时则等于机器周期
    • 指令字长与机器字长没关系,它取决于操作码长度,操作数地址长度,和操作数地址的个数;
    • 中断周期中的入栈操作是sp-1,向低地址增加;
    • 单指令周期/多指令周期/流水线
      单 - 串行 固定时钟周期
      多 - 串行 不固定时钟周期
      流 - 一种并行方案
    • 硬布线控制器 - 组合逻辑控制器 执行速度快但不可修改
    • CPU数据通路结构三种 (CPU内部(各寄存器及运算部件之间)与系统总线(计算机内各功能部件)不同)
      CPU内部单总线、CPU内部三总线、专用数据通路
    • 单总线CPU中ALU仅有一个输入端与总线相连,另一输入端通过暂存器与总线相连
    • CU - 控制单元
      其输出结果受到 IR、时序系统、执行单元反馈标志 影响
    • 三态门 -控制其所在通路的连接与断开
      基本的微操作
      取指周期
    PC->MAR   //pc中取地址送入MAR
    1->R           //主存读操作
    M(MAR)->MDR   //主存将读取到数据(指令)送入MDR
    MDR->IR            //MDR将指令送入IR
    OP(IR)->CU       //操作码译码后送入控制单元
    PC+1->PC         //PC自增
    

    微程序中需增加

    Ad(CMDR)->CMAR
    OP(IR)->CMAR
    

    间址周期(即从得到的位地址的数据进行求值例如((X))的值)

    Ad(IR)->MAR
    1->R
    M(MAR)->MDR
    

    执行部分视情况而定
    结束后得到的结果有两种情况
    1-送入主存

    ACC->MDR
    **MDR->M(MAR)**
    

    2-送入累加器

    (R2)->ACC  //左边作为数据送入寄存器时都要加()
    
    • 通过ALU进行+1操作的PC
      要考虑总线的占用问题,且使所用时钟周期最少
    pic
    PC->MAR 1->R PC->R1
    M(MAR)->MDR R1+1->R2
    MDR->IR OP(IR)->CU
    R2->PC
    
    • 微程序控制器 - 存储逻辑实现 - 易于扩充修改但执行慢
    • 一条机器指令 - 一个微程序 - n个微指令 - n * m微操作(微命令与微操作一一对应是其控制信号)
    • 一条微指令 - n微命令
    • 操作控制字段即操作控制信号
    • 顺序控制字段 下条微指令地址
    • 微周期类似指令周期读取微指令并执行完所需的时间
    • 主存 - 存数据及程序,CPU外部,RAM实现;
    • 控存 - 存微程序,CPU内部,ROM实现;
    • 微程序结构及功能对程序员透明
    • 微程序入口地址由机器指令操作码字段形成
    • 微指令编码方式
      直接编码/字段直接编码/字段间接编码方式
    • 微指令格式 - 水平型/垂直型
      水平 - 操作控制字段+判断测试字段+后继地址段
      微程序短 执行速度快,但微指令长 编写麻烦
      垂直 - 微操作码+目的地址+源地址
      微指令短,便于编写,但微程序长执行慢,工作效率低
    • μPC与PC 不同 一个是微程序中的,一个是外部的寄存器中的不可取代
    • 指令流水线
      注意:并非流水段越多,指令执行越快, 流水段缓冲的开销及流水段间逻辑控制会随着增多而变复杂,
      1)顺序执行 (n为指令数,前三个把段数作为3来算的)
      T=3nt
      2)一次重叠
      T=(1+2n)t
      3)二次重叠
      T=(2+n)t
      4)。。。
      。。。。(n个指令 n-1重叠)
      T=(k+n-1)t (k为指令的段数)
    • 相关的问题
      结构相关(资源冲突)
      解决方案: 暂停一个时钟周期 / 令设置存储器执行
      数据相关(数据冲突)
      解决方案:暂停几个时钟周期 / (不通过寄存器直接用ALU数据为输入计算)数据旁路 / 编译器调整指令顺序
      控制相关(控制冲突)
      解决方案:动态预测 / 加快提前形成条件码 / 提高转移方向的猜准率
    • 流水线吞吐率
      TP=n/(n+k-1)t;
    • 流水线加速比
      S=T0/Tk=knt/(k+n-1)t;
    • 流水线效率
      E=T0/Tk=(1/k) * S;
    • 超标量流水线
      每个时钟周期并发多条独立指令,并行操作,不能调整执行顺序
      例如: 采用度为4的超标量流水线处理机,执行20条指令,直接当作度为一执行20/4条指令来算
    • 超流水线
      一个时钟周期一个功能部件使用多次
    • 超长指令字
      超长的指令字,需要多个处理部件;
    • IF ID EX WB
      取指 译码 执行 写回
      在流水线中 上一条的IF没执行完下一条指令不可以进行IF
    • 数据相关几种具体情况
      RAR (read after read) 没什么影响
      RAW(read after write)
      指的是 应该上一条指令对该变量的写结束后下一条指令才能对其进行读,不然独到的数据就是错的,发生了数据相关,即冲突;
      WAR(write after read)
      指的是 应该会上条指令写操作之后在进行读,不然读到的是错误的信息
      WAW(write after write)

    指令系统


    • 指令 (机器指令)- 计算机运行的最小功能单位,计算机的语言系统
    • 指令字长一般为存储字长的整数倍(即n * 存储字长),n=1 时则等于机器周期
    • 指令字长与机器字长没关系,它取决于操作码长度,操作数地址长度,和操作数地址的个数
    • 单字长、半字长、双字长指令
      指的是指令长度与机器字长的长度程倍数关系时的叫法
    • 定长指令结构/变长指令结构
    • 指令基本格式 - 操作码字段 | 地址码字段
      0地址 OP
      一地址 OP+A1(既为源也为目的)
      也可为隐含约定目的地址 即有两个操作数,另一个操作数来自ACC
      二地址 OP+A1(源操作数)+A2(目的操作数-(保存结果))
      三地址 OP+A1(源操作数)+A2(目的操作数)+A3(保存结果)
      四地址 OP+A1(源操作数)+A2(目的操作数)+A3(保存结果)+A4(下址-下条指令地址)
    • 定长操作码指令格式
      n位操作码 最大能表示2^n条指令
    • 扩展操作码指令格式
      Point:
      不允许短码是长码的前缀
      各指令操作码不重复
      一般使用频率高的分配短码,使用频率低的分配长码,减少指令译码分析时间
      一言难尽,上图
      扩展操作码技术
    • 寻址方式
      指令寻址/数据寻址
      指令寻址
      1)顺序寻址 - 即PC+1方式
      2)跳跃寻址 - JMP类指令直接修改PC下一跳地址 -受PSW及操作数控制,且目的地址分绝对地址/相对地址
      数据寻址
      指令格式 - 操作码 + 寻址特征 + 形式地址A (以下用#来指代寻址特征的位置,A形式地址,EA有效地址)
      寻址特征指明属于哪种寻址方式
      1)隐含寻址
      ADD+#+A
      主存中A地址中操作数送入ALU,同时ACC中的作为第二操作数也送入ALU
      优点:有利于缩短指令字长; 缺点:需增加存储操作数或隐含地址硬件;
      2)立即(数)寻址
      则A即为操作数本身,称为立即数(补码存放)
      优点:执行阶段不访问主存;缺点:A的位数限制立即数的范围;
      3)直接寻址
      OP+#+A
      A=EA
      优点:简单,一次访存,缺点:A的位数决定了寻址范围,且不易修改;
      4)间接寻址
      OP+#+A, A->EA(第一次读得到A的有效地址) ,Get(EA)(从有效地址中取得操作数)(一次间址,两次访存)
      OP+#+A1,A1->A2,A2->EA Get(EA)(两次间址)
      优点: 可扩大寻址范围;缺点:要进行多次访存;
      5)寄存器寻址
      OP+#+Ri
      EA=Ri
      优点:不访存,地址码长度小,速度快,支持向量矩阵运算;缺点:寄存器数量有限,价格贵;
      6)寄存器间接寻址
      OP+#+Ri ,EA=(Ri),Get(EA)
      特点:比间接寻址快,但需要访存,从Ri得到EA,后从主存取操作数;
      7)相对寻址
      OP+#+A,EA=PC+A
      优点:操作数地址不固定随PC变化,便于程序浮动,广泛用于转移指令;
      JMP A 若CPU从存储器中取出nB指令则PC+n+A;
      8)基址寻址(面向操作系统)
      OP+#+A,BR+A->EA
      OP+#+R0+A,R0+A->EA
      BR(专用寄存器,基址)
      R0(通用寄存器,基址)
      基址不变,A变化
      优点:可扩大寻址范围,利于多道程序设计,数据分配存储空间,编制浮动程序;
      9)变址寻址(用户设计)
      OP+#+A,IX+A->EA
      IX(变址寄存器)
      A不变,IX改变
      优点:可扩大寻址范围,适合编制循环程序,处理数组问题;
      10)堆栈寻址
      存储区中读/写单元地址,由特定寄存器给出SP(堆栈指针);
      硬堆栈 - 寄存器堆栈
      软堆栈 - 主存中划出的区域
      此种形式指令大多为无操作数指令,隐含使用了SP;
      16位补码表示范围
    • 指令操作数的地址制定方式 - 大端方式/小端方式
      即给出的地址为操作数的最高/最低有效字节地址
    • 数据或指令的存放方式
      边界对其/边界不对齐
      边界对其相对边界不对其是一种空间换时间的思想
    • CISC/RISC
      CISC(Complex Instruction-Set computer)
      指令系统复杂,庞大,数目多200以上
      指令长度、格式、寻址方式、使用频度、执行时间 不固定
      大多数需要多个时钟周期
      大多为微程序控制器
      RISC(Reduced Instruction-Set Computer)
      使用使用频率高的简单指令,复杂的通过简单进行组合
      指令长度固定,格式种类及寻址方式少
      只有Load/Store指令访存
      CPU中通用寄存器多
      采用流水线技术,大部分一个时钟周期内完成,
      硬布线为主
      Compare CISC/RISC
      1)CISC大多采用微程序控制,控存占CPU50%以上
      RISC采用组合逻辑控制,硬布线逻辑占CPU10%左右
      2)RISC 更能提高运算速度,指令数、寻址方式、指令格式种类少,流水线技术,通用寄存器多,运行速度快
      3)RISC便于设计简单快速可靠性高
      4)有利于编译程序代码优化

    存储系统


    • 层次分类 - 主存(内存) - 辅存(外存) - Cache(高速缓冲存储器 - 于CPU与主存间)
      注意:CD-ROM不属于ROM,顺序访问方式
    • RAM(随机存储器 易失性存储器)
      读写方便,使用灵活,主要用于主存、Cache (分静态 - 触发器原理 ,动态 - 电容充电原理),断电后信息丢失
    • ROM(只读存储器 非易失性存储器)
      只读,可与RAM共同作为主存一部分,断电后信息仍存在
    • 串行访问存储器
      需按照物理位置的先后顺序进行寻址,存取速度慢
    • 存储器容量
      存储字数(存储器的地址空间大小) * 字长(一次存取操作的数据量)
      存储速度(带宽):数据传输率=数据的宽度/存储周期
    • 多级存储结构
      CPU - Cache - 主存 - 辅存(磁盘 - 磁带/光盘)
    • 主存与Cache间数据调动由硬件自动完成,对所有程序员透明
    • 主存辅存间数据调动对应用程序员透明,由硬件与操作系统共同完成
    • 半导体随机存储器
    • 74138译码器又称为3/8译码器
    • 存储元 - 存放一个二进制位的物理器件 - 存储器的最基本构件
    • SRAM(Static -RAM - 易失性半导体存储器)
      存取速度快、继承地功耗大,一般组成Cache
    • DRAM(Dynamic - RAM,易失性,需要刷新)
      易集成,价位低,容量大,功耗低,速度慢,一般用来组成大容量主存
      读出时为破坏性读出 ,采用传两次地址策略,所以计算时地址线复用即需要除二
    • DRAM刷新方式
      集中刷新: 一个刷新周期内,一段时间专门来刷新,为访存死区;
      优点:读写操作不受刷新影响,系统存取速度较高;
      缺点:死区不能访问存储器
      分散刷新:把每行的刷新分散到各个工作周期中;
      优点:无死区;
      缺点:增加了存取周期长度,降低了整体速度;
      异步刷新: 利用逻辑电路的请求间隔;
      特点:前两种方法结合,即可缩短死时间,有充分利用最大刷新间隔为2ms的特点;
      注意:刷新对CP透明 ,刷新单位为行,只需要行地址,无需输出,不需选片,所有芯片同时被刷新
    • 存储器读写周期
      point:读周期与读出时间不同,读周期总是大于读出时间
      读操作时(WE|)为高电平;
      写操作时 片选信号(CS|) (WE|)为低电平;(取反符号不会打,把杠打在边上了)
    • 只读存储器(ROM)
      结构简单,位密度比可读写存储器高,有非易失性,可靠性高;
      类型:
      MROM - 不可修改出厂定好
      PROM - 一次可编程只读
      EPRPM - 可擦除可编程(擦除时全部擦除,再编程)
      E²PROM - 电擦除
      Flash Memory - 价格便宜集成度高,擦除重写速度快,且写比读要慢
      SSD - 读写快,低功耗,价格贵

    相关文章

      网友评论

          本文标题:知识点整理

          本文链接:https://www.haomeiwen.com/subject/fkmouxtx.html