标签:结构 模拟器 信息安全 理解 ... 字节数组 整数 center 端口
学习目标
指令集体系统:一个处理器支持的指令和指令的字节级编码,每种不同的处理器都有自己不同的ISA
Y86指令集体系结构
定义一个指令集体系结构,包括定义各种状态元素,指令集和他们的编码、一组程序规范和异常处理。
Y86指令
字节
halt 0|0 1
nop 1|0 1
rrmovl rA,rB 2|0 |rA|rB 2
irmovl V ,rB 3|0 |F |rB|V 6
rmmovl rA,D(rB) 4|0 |rA|rB|D 6
mrmovl D(rB),RA 5|0 |rA|rB|D 6
OPL rA,rB 6|fn|rA|rB 2
JXX Dest 7|fn|Dest 5
cmovXX rA,rB 2|fn|rA|rB 2
call Dest 8|0 |Dest 5
ret 9|0 1
pushl rA A|0 |rA|F 2
popl rA B|0 |rA|F 2
指令编码
阅读指令编码看每条指令第一个字节表明指令的类型,高四位是代码部分,低四位是功能部分。
可能有附加的寄存器指示符字节,这些寄存器字段设为rA,rB。
有些指令需要附加一个四字节的常数字,和IA32一样,所有整数采用小端法编码
任意一个字节序列要么是一个唯一的指令编码,要么就不是一个合法序列
第一个字节有唯一的代码和功能组合,我们就可以决定多有其它发夹字节的长度和含义
Y86异常
值 名字 含义
1 AOK 正常操作
2 HLT 处理器执行halt指令
3 ADR 遇到非法地址
4 INS 遇到非法指令
ADR表示处理器试图从一个非法存储器地址读或者向一个非法存储器地址些
处理器通常会调用一个异常处理程序,这个过程被置顶用来处理遇到某种类型的异常
逻辑设计和硬件控制语言HCL
一个数字系统需要三部分组成:计算对位进行操作的函数的组合逻辑、存储位的存储器元素、以及控制存储器元素更新的时钟信号
逻辑门
逻辑门产生的输出等于他们输入位值的某个布尔函数
hcl表达式 AND && OR || NOT !!
组合电路:很多逻辑门组合成一张网,就能构成的计算块,构建这些网的两条限制 1. 两个或多个逻辑门的输出不能连接在一起 2. 这个网必须是无环的
c语言逻辑表达和hcl逻辑表达的区别 1. hcl输如会持续的影响输出,输入变化了,在一定的延迟后,输出也会变化。c只有在程序执行过程中被遇到时才会进行求值。 2. c的逻辑表达式允许参数是任意整数,0FALSE,其它值表示TRUE。逻辑值只对0和1进行操作
存储器和时钟
将处理组织阶段
Y86指令集的计算原则:处理器从来不需要为了完成一条指令的执行而去读由该指令更新了的状态。
SEQ阶段的实现 - 取值阶段包括指令存储器硬件单元。 - 译码和写会阶段:寄存器文件有四个端口。它支持同时进行两个读(A和B)和两个写(E和M)。每个端口都有一个地址链接和一个数据链接,地址谅解是一个寄存器ID,而数据连接是一组32根线路,既可以作为寄存器文件输出字(对读端口来说),也可以作为它的输入字(对写端口来说) - 访存阶段:读或者写程序数据,两个控制块产生存储器地址和存储器输入数据的值。另外两个块产生控制信号表明应该执行读还是写操作。当执行读操作时,数据存储器产生valM。 - 更新PC阶段:产生程序计数器的新值,依据指令的类型和是否要选择分支,新的PC可能是valC、valM或者valP。
在周四博客中,老师说安装Y86模拟器自己动手实践一下,于是我参考了同学的博客安装了Y86,这是我安装完成之后的Y86在pipe文件夹输入./psim -t -g ../y86-code/asum.yo
进入y86-code,生成asuml.yo
我试着将书上的代码敲了上去,然后输入以下命令
make clean
make 251pp.yo
之后就可以查看了
代码托管链接:http://git.oschina.net/Zziyang/CS04
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第二周 | 0/0 | 1/2 | 19/20 | |
第三周 | 80/80 | 1/3 | 25/44 | |
第四周 | 110/190 | 1/4 | 23/67 | |
第五周 | 60/250 | 2/6 | 26/93 | |
第六周 | 80/330 | 2/8 | 25/118 |
20145336张子扬 《信息安全系统设计基础》第6周学习总结
标签:结构 模拟器 信息安全 理解 ... 字节数组 整数 center 端口
原文地址:http://www.cnblogs.com/20145336yang/p/5991471.html