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

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

    教材学习内容总结

    Chapter 4

    • 定义一个指令集包括
      • 状态单元
      • 指令集
      • 编码
      • 编程规范
      • 异常事件处理
    • 程序员可见状态:每条指令都会读取或修改处理器状态的某些部分
    • 状态码Stat:表明程序执行的总体状态
    • 执行字级计算的组合电路根据输入字的各个位,用逻辑门来计算输出字的各个位
    • 组合电路从本质上讲,不存储任何信息,只是简单地响应输入信号,产生等于输入的某个函数的输出
    • 处理
      • 取指——PC增加器:从内存读取指令字节,地址为PC的值。从指令中抽取出指令指示符的两个四位部分icode(指令代码)和ifun(指令功能)
      • 译码——读端口A和B:从寄存器文件读入最多两个操作数,得到值valA和/和valB
      • 执行——ALU、CC:ALU,要么执行指令指明的操作(根据ifun),计算内存引用的有效地址,要么增加或减少栈指针。该阶段决定分支。
      • 访存——内存:读写数据
      • 写回——两个写端口:最多可以写两个结果到寄存器文件
      • 更新PC——PC:将PC设置成下一条指令的地址
    • 处理器停止的异常:执行halt指令或非法指令、或试图读/写非法地址
    • 除了ALU计算必须根据ifun中编码的具体的指令操作来设定
    • 组织计算原则:从不回读
    • SEQ阶段实现
      • 取指阶段
      • 译码和写回阶段
      • 执行阶段
      • 访存阶段
      • 更新PC阶段
    • 引入流水线能获得更好的性能
    • 现代逻辑设计中,电路延迟以微微秒或皮秒,即2^-12秒为单位计算
    • 流水线的局限性
      • 不一致的划分
      • 流水线过深,收益反而下降
    • 在PIPE-中流水线一直携带dstE和dstM的目的是:确保写端口的地址和数据输入是来自同一条指令
    • 相邻指令的相关/冒险:数据相关/冒险、控制相关/冒险
    • 如果一条指令在器处理中于某个阶段产生了一个异常,这个转台字段就被设置成指示异常的种类
    • 异常时,流水线控制逻辑必须禁止更新条件码寄存器或是数据内存
    • 流水线控制逻辑:
      • 加载/使用冒险
      • 处理ret
      • 预测错误的分支
      • 异常
    • CPI=(Ci+Cb)/Ci=1.0+Cb/Ci=1.0+lp+mp+rp

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

    • 电路中的寄存器和汇编中说的寄存器有区别吗?
      • 在硬件中,寄存器直接将输入和输出线连接到电路的其他部分;在机器级编程中,寄存器代表的是CPU中为数不多的可寻址的字。

    代码托管

    其他

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 96/96 1/1 15/15
    第二周 30/126 1/2 21/36
    第三周 30/156 1/3 21/57
    第四周 10/156 1/4 20/77
    第五周 23/189 1/5 20/97
    第六周 201/390 1/6 8/95

    尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
    耗时估计的公式
    :Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

    参考:软件工程软件的估计为什么这么难软件工程 估计方法

    • 计划学习时间:10小时

    • 实际学习时间:8小时

    (有空多看看现代软件工程 课件
    软件工程师能力自我评价表
    )

    参考资料

  • 相关阅读:
    离线安装SharePoint 2010必备组件下载链接
    skrollr——兼容性超强的视差滚动js插件
    Heroku实战入门(二)简单实战
    xp中安装sybase15.7遇到的三个问题
    思科三层交换机开启路由模式的方法
    Heroku实战入门(一)初识heroku
    Heroku实战入门(三)常用命令
    Splinter——开源的轻量级前端测试工具
    Request.ServerVariables 转
    Page.MaintainScrollPositionOnPostBack 属性
  • 原文地址:https://www.cnblogs.com/dky20155212/p/7790006.html
Copyright © 2011-2022 走看看