CSAPP 第4章 处理器体系结构

本文详细探讨了《深入理解计算机系统》(CSAPP)第四章的内容,主要涵盖处理器的基本结构、指令执行流程、流水线技术以及现代处理器的优化策略。通过对这些核心概念的解析,帮助读者建立起对处理器体系结构的深入认识。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

int icode=[
	imem_error: INOP;#出现异常时,将icode设置成INOP,即认为这是一条nop指令
	1: imem_icode;
];
int ifun=[
	imem_error: FNONE;
	1: imem_ifun;
];
bool need_regids=icode in {IRRMOVQ, IOPQ, IPUSHQ, IPOPQ, IIRMOVQ, IRMMOVQ, IMRMOVQ};#当前指令是否需要寄存器
bool instr_valid=icode in{INOP, IHALT, IRRMOVQ, IIRMOVQ, IRMMOVQ, IMRMOVQ, IOPQ, IJXX, ICALL, IRET, IPUSHQ, IPOPQ};#当前指令是否是一个Y86-64的指令
bool need_valC=icode in {IIRMOVQ, IRMMOVQ, IMRMOVQ,  IJXX, ICALL};#当前指令是否需要一个常数

在这里插入图片描述

word srcA=[
	icode in {IRRMOVQ, IRMMOVQ, IOPQ, IPUSHQ}:rA;
	icode in {IPOPQ, IRET}:RRSP;
	1:RNONE; #Don't need register
];
word srcB=[
	icode in {IRRMOVQ,IMRMOVQ, IOPQ}:rB;
	icode in {IPUSHQ, IRET, ICALL}:RRSP;
	1:RNONE;
];
word dstE=[
	icode in {IRRMOVQ} && Cnd:rB;
	icode in {IIRMOVQ, IOPQ}:rB;
	icode in {IPUSHQ, IPOPQ, ICALL, IRET}:RESP;
	1:RNONE; #Don't write any register
];
word dstW=[
	icode in {IMRMOVQ, IPOPQ}:rA;
	1: RNONE;
];

在这里插入图片描述

word aluA=[
	icoode in {IRRMOVQ, IOPQ}:valA;
	icode in {IIRMOVQ, IRMMOVQ, IMRMOVQ}:valC;
	icode in {ICALL, IPUSHQ}:-8;
	icode in {IRET, IPOPQ}:8;
	# Other instructions don't need ALU;
];
word aluB=[
	icode in {IRMMOVQ, IMRMOVQ, IOPQ, ICALL, IPUSHQ, IRET, IPOPQ}:valB;
	icode in {IRRMOVQ, IIRMOVQ}:0;
	# Other instructions don't need ALU;
];
word alufun=[
	icode == IOPQ: ifun;
	1: ALUADD;
]; # ALU需要执行的操作
bool set_CC=icode in {IOPQ}# 是否需要修改CC

在这里插入图片描述

word mem_addr=[
	icode in {IRMMOVQ, IPUSHQ, ICALL, IMRMOVQ}:valE;
	icode in {IPOPQ, IRET}:valA;
	# Other instructions don't need address
];# 读写的地址
word mem_data=[
	icode in {IRMMOVQ, IPUSHQ}:valA;#数据来自寄存器
	icode==ICALL:valP;#数据来自PC
];# 写入的数据
#是读还是写
bool mem_read=icode in {IMRMOVQ, IPOPQ, IRET};
bool mem_write=icode in {IRMMOVQ, IPUSHQ, ICALL};
#对Stat的更新
word Stat=[
	imem_error || dmem_error: SADR;
	!instr_valid: SINS;
	icode == IHALT: SHLT;
	1: SAOK;
];

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值