zoukankan      html  css  js  c++  java
  • 2017-2018-1 20155323 《信息安全系统设计基础》第7周学习总结

    2017-2018-1 20155323 《信息安全系统设计基础》第7周学习总结

    教材学习内容总结

    处理器体系结构

    Y86-64指令

    • movq指令:irmovp 、rrmovq 、mrmovq 、rmmovq。
    • 整数操作指令 :addq 、 subq 、 andq 、xorq。
    • 跳转指令: jmp 、 jle 、 jl  、je 、 jne 、 jge 、jg。
    • 条件传送指令: cmovle 、 comvl 、 cmove 、 cmovne 、comvge 、 cmovg。
    • call指令将返回地址入栈,ret从这样的调用中返回。
    • pushq指令入栈,popq指令出栈。
    • halt指令停止指令的执行。

    04Aqx.png

    Y86-64异常

    • 1.状态码Stat的可能取值
    1. AOK 正常操作

    2. HLT 处理器执行halt指令

    3. ADR 遇到非法地址

    4. INS 遇到非法指令

    • 2.出现异常时怎么做?

    让Y86——处理器停止运行指令。

    逻辑门

    • 是数字电路的基本计算单元。

    组合电路和HCL布尔表达式

    • 1.构建计算块(组合电路)时的限制
    • 2.组合逻辑电路和c语言中逻辑表达式的区别

    集合关系

    • 判断集合关系的通用格式是:

    iexpr in {iexpr1,iexpr2,...,iexprk}

    iexpr等都是整数表达式。

    Y86的顺序实现

    • 取址
    • 译码
    • 执行
    • 访存
    • 写回
    • 更新PC

    流水线

    • (1)由时钟信号控制,使多条指令不同阶段可以同时执行,增加了延迟,提升吞吐量
    • (2)问题:流水阶段长度不一,流水线深度过大插入寄存器影响性能
    • (3)因为存在反馈的流水线(即一条指令可能需要多次执行某个操作,或使用某个数据,访问某个存储器或寄存器)导致流水线冒险(数据,控制)
    • (4)数据冒险解决方案:暂停(系统判断是否会产生冒险,会则插入气泡,延迟下条指令执行),转发(使产生的结果理解送入需要的位置,避免暂停),加载使用(当存储器读发生较晚时需要暂停和转发机制同时使用)
    • (5)异常处理
    • (6)控制逻辑和机制

    处理return:暂停流水线直到ret指令到达写回阶段
    加载/使用冒险:在对存储器读和使用之间需要暂停一个周期
    预测错误分支:当预测失败时应该可以返回到之前状态,去掉错误指令
    异常:出现异常时,停止后序指令执行,并避免当前异常指令写回

    • (7)性能分析

    CPI=1+处罚项(预测错误+返回+暂停)

    目标:使CPI=1;一个周期执行一条指令

    教材学习中的问题和解决过程

    问题1:不理解Y86和X86的区别

    解决:其实两者是非常相似的,区别就在于,有的时候Y86需要两条指令来达到X86一条指令就可以达成的目的。Y86就是一个X86的缩减版。

    代码托管

    Markdown

    结对及互评

    本周结对学习情况

    20155314刘子健
    - 结对学习内容
    第四章

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 50/50 1/1 5/5
    第二周 100/100 1/2 5/10
    第三周 100/200 1/3 5/15
    第四周 100/300 1/4 5/20
    第五周 100/400 1/5 5/25
    第六周 100/500 1/6 5/30
  • 相关阅读:
    05--STL序列容器(List和Forward_list)
    04--STL序列容器(Stack和Queue)
    03--STL序列容器(Deque)
    STL迭代器iterator
    02--STL序列容器(Vector)
    C++回顾day03---<string字符串操作>
    C++回顾day03---<输入输出流>
    C++回顾day03---<异常>
    16位结构的CPU,8086给出物理地址的方法
    初识STM32固件库
  • 原文地址:https://www.cnblogs.com/fixedl/p/7787467.html
Copyright © 2011-2022 走看看