# 2017-2018-1 20155337《信息安全系统设计基础》第7周学习总结
2017-2018-1 20155337《信息安全系统设计基础》第7周学习总结
教材学习内容总结
处理器是如何工作的对于我们普通人来说一直是个秘密,我们将从零开始构建一个流水线处理器,为了实现这一处理器的软硬件,我们有大量的前提知识要学习,包括:指令系统、硬件设计背景知识(hcl)、以及流水线的通用原理。学习完这些内容以后我们才开始YY一个我们自己的86处理器。
1、介绍一个精简的Y86指令集
①状态码
②所支持的指令
1] 字段 fn 指明是某个整数操作:OPL、数据移动条件:cmovXX、分支条件:jXX;
2] 图中最后的pushl、popl指明不需要访问任何寄存器0xF表示;
3] xxmovl中:i代表立即数,r代表寄存器,m代表存储器;
4] OPL代表的是:add sub and xor;jXX代表:jmp、jle、jl、je、jne、jge、jg。
③一条普通指令的编码:
其他具体的编码如下:
根据功能进行最优化的存储方式,比如rrmovl与条件传送有相同的code编码,这是因为其行为相当于无条件传送。
!我们还需要访问寄存器,为了访问的便利我们给寄存器编号,统一存放在CPU的一个寄存器文件中。就如学生时代的学号一样,唯一、明确,也像收监的犯罪嫌疑人,你从入狱的那一天起将没有名字,没有身份,只是一个简化的号码。
举例说明:rmmovl %esp , 0x12345(%edx)
rmmovl ——>4 0
esp|edx—③—>4 2
0x12345——>00,01,23,45(小端法存储)
合成到最后的指令就是:[40] [42] [45] [23] [01] [00]
任何一个指令序列都是一个唯一的编码
④异常
状态码如下:
翻译成x86和y86汇编形式,基本上没什么不同
2、逻辑设计和硬件控制语言
计算对位进行组合的逻辑;存储位的存储原理和更新时钟信号三部分内容。
① 对单个为进行操作:逻辑门
② 组合逻辑用HCL表示:一个逻辑门肯定实现不了很多功能,我们来组合一下用于检测两个Bit是否相等:
当 a = b = 0时:上与逻辑为0,下与逻辑为1 或逻辑输出eq为1;
当a = b = 1时:上与逻辑为1,下与逻辑为0 或逻辑输出eq为1;
多路复用器:根据s的值选择是输出a或者b
当 s = 0时,上与为b, 下与为0,或逻辑输出out = b;
当 s = 1时, 上与为0, 下与为a,或逻辑输入out = a;
四路复用器:
③ 集合关系
在处理器设计中,很多时候需要将一个信号与许多可能匹配的信号做比较,以此来检验正在处理的信号是否属于某一类指令代码;
④ 存储器和时钟:存储原理(组合电路本身不能存储信息,只是一个时间序列电路)
分类:
1] 时钟存储器(寄存器):存储单个位或字;
2] 随机访问存储器(存储器):存储多个字;(虚拟存储系统,寄存器文件,)
硬件寄存器和程序寄存器的区别:
硬件寄存器:在硬件中寄存器直接将输入和输出连接到电路的其他部分;
程序寄存器:CPU中位数不多的可寻址的寄存器,地址就是寄存器ID。
a.硬件寄存器:当时钟信号处于高频上升阶段时,才将输入的信号加载
b.寄存器文件
有两个读:A、B端口,和一个写:W端口。允许同时进行多个读写操作,可以同时读两个寄存器和写一个寄存器的值。srcX、desW代表地址,valX、valW代表要数据。如我们要访问3号寄存器ebx的值,就将srcA=3,然后valA就是要访问的数据。
c.随机访问存储器
假如我们要访问一个地址address上的数据,就将该地址传入address中,同时设置write=0,那么在data out上的数据就是我们要访问的值了。
教材学习中的问题和解决过程
存储器和时钟
时钟寄存器(简称寄存器)存储单个位或字。时钟信号控制寄存器加载输人值。
随机访问存储器(简称内存)存储多个字,用地址来选择该读或该写哪个字。随机访
问存储器的例子包括:1)处理器的虚拟内存系统,硬件和操作系统软件结合起来使
处理器可以在一个很大的地址空间内访问任意的字;2)寄存器文件,在此,寄存器
标识符作为地址。在IA32或Y86-64处理器中,寄存器文件有15个程序寄存器(%
rax一%r14)。
学习进度条
代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第五周 23/455 1/10 8/93
尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。
参考:软件工程软件的估计为什么这么难,软件工程 估计方法
计划学习时间:10小时
实际学习时间:15小时
改进情况:学习效率不高,仍有待改进