深入理解计算机系统--处理器体系结构

第四章 处理器体系结构

   一个处理器支持的指令和指令的字节级编码称为它的ISA(instruction-set architecture,指令体系结构)。

   ISA 在编译器编写者和处理器设计人员之间提供了一个概念抽象层。

   描述硬件系统控制部分的简单语言,HCL(Hardware Control Language,硬件控制语言)

  4.1 Y86指令集体系结构

   

     

   指令集的一个重要性质是字节编码必须有惟一的解释。


4.2 逻辑设计和硬件控制语言HCL

  4.2.1 逻辑门

    逻辑门总是active。一旦一个门的输入变化可,在很短的时间内,输出就会相应的变化。

  4.2.2 组合电路和HCL布尔表达式

    计算块(computational block)即组合电路,很多逻辑门组合成的网。组成这个网的两个规定:

     两个或多个逻辑门的输出不能接在一起,否则可能会线上信号矛盾,导致不合法的电压或电路故障。

     这个网必须是无环的。

 多路复用器

   

  4.2.3 字级的组合电路和HCL整数表达式

   设计对数据字(data words)操作的电路。

   算术/逻辑单元(ALU)是一种重要的组合电路。


  4.2.4 集合关系(Set Membership)

  4.2.5 存储器和时钟控制

     时序电路(sequential circuit)。

     两类存储设备:时钟寄存器。随机访问存储器。

     典型的寄存器文件


 4.3 Y86的顺序实现

   4.3.1 将处理组织成阶段

     取指:icode(指令代码),ifun(指令功能)

     解码

     执行

     访存

     写回

     更新PC

 

  4.3.2 SEQ 硬件结构

  4.3.3 SEQ 的时序(timing)

  4.3.4 SEQ 的阶段实现

  

  4.3.5 SEQ+: 重新安排计算阶段

 4.4 流水线的通用原理

   吞吐量,执行时间

   4.4.1 计算流水线

   4.4.2 流水线操作的详细说明

   4.4.3 流水线的局限性

      不一致的划分

      流水线过深,收益反而下降

  4.4.4 带反馈的流水线系统

      数据相关

      控制相关

 4.5 Y86的流水线实现

    4.5.1 插入流水线寄存器

    4.5.2 对信号进行重新排列和标号

    4.5.3 预测下一个PC

       设计目的:每个时钟周期都发射(issue)一个指令。

       分支预测

    4.5.4 流水线冒险(hazard)

       数据相关和控制相关。这些相关可能会导致流水线产生计算错误,称为冒险。

       数据冒险和控制冒险

   4.5.5 用暂停(stalling)来避免数据冒险

   4.5.6 用转发(forwarding)来避免数据冒险

      将结果值直接从一个流水线阶段传到较早阶段的技术称为数据转发。

  4.5.7 加载/使用(load/use)数据冒险

  4.5.8 PIPE 各阶段的实现

      PC选择和取指阶段

      解码和写回阶段

      执行阶段

      访存阶段

  4.5.9 流水线控制逻辑

  4.5.10 性能分析

  4.5.11 未完成的工作

   

   

    

     

    

  

      

      

    

     

    

    

 

   

   

   

   

    

  

        
















  

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值