利用堆栈技术模拟 LRU在不同n条件下页面变化时空图及命中率 LRU算法的实现方法 堆栈法、比较对法 s4存贮体系的两个分支 虚拟存贮器的简单工作过程 Cache-主存体系与虚拟存储器相同之处 Cache主存体系与虚拟存储器不同之处 内部定向原理的有向图和有向简图的绘制 组相联映象的的两个例子 页面替换时空图 主存地址到 Cache地址的变换
利用堆栈技术模拟 LRU在不同n条件下页面变化时空图及命中率。 LRU算法的实现方法 堆栈法、比较对法 虚拟存贮器的简单工作过程 Cache—主存体系与虚拟存储器相同之处 Cache—主存体系与虚拟存储器不同之处 内部定向原理的有向图和有向简图的绘制 组相联映象的的两个例子 页面替换时空图 主存地址到Cache地址的变换
第五章重叠、流水和向量处理机 §1重叠方式 重叠解释方式 1.一条指令的几个过程段 1)取指令:根据PC(指令计数器)从M(存储器) 取出指令送到IR(指令寄存器) 2)译码分析:译出指令的操作性质,准备好所需数 据 3)执行:将准备好的数按译出性质进行处理,主要 涉及ALU(算术逻辑运算部件) 2.对指令执行的几种方式
一.重叠解释方式 1.一条指令的几个过程段 1)取指令:根据PC(指令计数器)从M(存储器) 取出指令送到IR(指令寄存器) 2)译码分析:译出指令的操作性质,准备好所需数 据 3)执行:将准备好的数按译出性质进行处理,主要 涉及ALU(算术逻辑运算部件) 2. 对指令执行的几种方式
1)顺序执行(传统机采用) 有在前一条指令的各过程段全部完成后,才从存 储器取出下一条指令 取 译条 执取译执 i+1条 2)仅两条指令重叠:第涤条指令的执行与第计+1条的取指 重叠。 i条「取译执 i+1条 取译执 3)三条指令重叠:第条指令的执行与第计1条的译码及 第i+2条的取指重叠 条取译执 条取译「执 条 取译执
1)顺序执行 (传统机采用) 只有在前一条指令的各过程段全部完成后,才从存 储器取出下一条指令 2) 仅两条指令重叠:第i条指令的执行与第i+1条的取指 重叠。 3) 三条指令重叠:第i条指令的执行与第i+1条的译码及 第i+2条的取指重叠。 取 译 执 取 译 执 i 条 i +1 条 i 条 取 译 执 i+1条 取 译 执 i 条 取 译 执 i+1条 取 译 执 i+2 条 取 译 执
若一条指令的过程段划分更多时,重叠组合方式更多。 重叠解释并不能加快一条指令的实现,但能加快一段程 序的解释。 3.重叠方式中所需时间表达式及所需时间计算 1)条件:设一条指令分为三个过程段,各过程段分别 用t、t译、t表示。 执行K条指令,分别采用顺序执行、两条重叠 三条重叠。 2)分别列出上述三种执行方式所需时间表达式 顺序执行k*(t取+译十执) 两条重叠t取+k米t译+(k-1)米(t取,t执)max+t执 三条重叠t取+(t译,t取)max+(k-2)米(t取,t译,执) max+(执,t译)max+t执
若一条指令的过程段划分更多时,重叠组合方式更多。 重叠解释并不能加快一条指令的实现,但能加快一段程 序的解释。 1)条件:设一条指令分为三个过程段,各过程段分别 用t取、t译、t执表示。 执行K条指令,分别采用顺序执行、两条重叠、 三条重叠。 2)分别列出上述三种执行方式所需时间表达式 顺序执行 k*(t取+t译+t执) 两条重叠 t取+ k* t译+(k-1) *( t取,t执)max+ t执 三条重叠 t取+( t译, t取)max+(k-2) *(t取,t译,t执) max+( t执, t译)max+ t执
3)例子当k=200,t取=3△t,t译=4△t,孰=54t,时, 分别计算上述三种执行方式的时间。 顺序执行:200×(3+45)=2400△t 两条重叠:3+200×4(200-1)×5+5=1803△t 条重叠:3+4+(2002)×5+5+5=1007At 4重叠方式需要解决的问题 1)对存储器的频繁访问 ①有哪些访问:取指令、取操作数、存放执行结 果,I/0通道访问 ②希望存储器为多体结构,以适应多种访问源的 需要。 ③当存储器为单体结构时,需要将访问源排队, 先后顺序为: 取指令、取数据、IO通道访问、存结果
3) 例子 当k=200,t取=3Δt,t译=4Δt,t执=5Δt,时, 分别计算上述三种执行方式的时间。 顺序执行:200×(3+4+5)=2400Δt 两条重叠:3+200×4+(200-1)×5+5=1803Δt 三条重叠:3+4+(200-2)×5+5+5=1007Δt 4 重叠方式需要解决的问题 1)对存储器的频繁访问 ① 有哪些访问:取指令、取操作数、存放执行结 果, I/O通道访问. ② 希望存储器为多体结构,以适应多种访问源的 需要。 ③ 当存储器为单体结构时,需要将访问源排队, 先后顺序为: 取指令、取数据、I/O通道访问、存结果
2)应具有先行控制部件 ①先行:在重叠操作中,当前一条指令在执行过 程中就需要提前取出后面的指令进行相应处理, 这种提前取出后继指令进行相应处理,称为先行。 ②先行控制部件的主要包括 I)先行地址站,包括先行指令地址站和先行操 作数地址站; Ⅱ)先行指令站,用来存放多条指令; Ⅲ)先行操作数站,用来存放多个操作数 Ⅳ)先行地址形成部件,用来形成先行指令地址 以及先行操作数地址; V)先行操作码译码站,用来完成对多条指令的 译码并保留译码输出状态
2)应具有先行控制部件 ① 先行:在重叠操作中,当前一条指令在执行过 程中就需要提前取出后面的指令进行相应处理, 这种提前取出后继指令进行相应处理,称为先行。 ② 先行控制部件的主要包括 Ⅰ)先行地址站,包括先行指令地址站和先行操 作数地址站; Ⅱ)先行指令站,用来存放多条指令; Ⅲ)先行操作数站,用来存放多个操作数; Ⅳ)先行地址形成部件,用来形成先行指令地址 以及先行操作数地址; Ⅴ)先行操作码译码站,用来完成对多条指令的 译码并保留译码输出状态
2)也应具有后行部件 后行部件:对指令执行后的结果进行处理的器件,称 后行部件。包括: ①后行数地址站,提供后行数存放地址。 ②后行数站,存放运行的结果,并且,这些结果需送存 储器
2)也应具有后行部件 后行部件:对指令执行后的结果进行处理的器件,称 后行部件。包括: ①后行数地址站,提供后行数存放地址。 ②后行数站,存放运行的结果,并且,这些结果需送存 储器
后行数站 先行先行 算术逻辑运算部 后行 数地 指令|操作 存储器 件在执行阶段完 地址数地 成各种运算 址站 站|址站 ALU 先行先行 地址形成部件地址指令操作 字段站 数站 OPEE 先行操作码译码站
后行 数地 址站 先行 操作 数地 址站 先行 指令 地址 站 先行 操作 数站 先行 指令 站 存储器 地址形成部件 先行操作码译码站 OP字段 ALU 后行数站 地址 字段 算术逻辑运算部 件在执行阶段完 成各种运算
相关问题 1何谓相关:在重叠方式的指令执行过程中,由于 发生了某种关联,使正在被解释的指令无法再继 续下去的现象,称相关 2相关类型 1)从性质上分 ①指令相关:重新修改了正在被解释的指令 ②数相关:因等待前面指令执行的结果,使后 面指令等待而不能连续解释。 如:S=a/b+c LD RA Aa DIV R B bb ADDR,C;要等DIV结果 C STR,S;存结果 SS
二、相关问题 1 何谓相关:在重叠方式的指令执行过程中,由于 发生了某种关联,使正在被解释的指令无法再继 续下去的现象,称相关。 2 相关类型 1)从性质上分 ①指令相关:重新修改了正在被解释的指令 ②数相关:因等待前面指令执行的结果,使后 面指令等待而不能连续解释。 如:S=a/b+c LD R , A DIV R , B ADD R , C;要等DIV结果 ST R , S;存结果 A B C S a b c s
2)按影响面大小分 ①局部相关:相关发生时只能影响邻近几条指令的执 行,这种相关影响面不大。如等待结果的数相关 ②全局相关:相关发生时影响面很大—全局。如条 件转移指令,当条件具备时,就转到其他地方去执行 程序,而转移指令之后的几条语句已先后被解释了部 分功能,但此时全部废弃 Yes 条转指令 J j+1 j+2 成功支路 Ndi-i+1-i+2…不成功支
2)按影响面大小分 ①局部相关:相关发生时只能影响邻近几条指令的执 行,这种相关影响面不大。如等待结果的数相关。 ②全局相关:相关发生时影响面很大——全局。如条 件转移指令,当条件具备时,就转到其他地方去执行 程序,而转移指令之后的几条语句已先后被解释了部 分功能,但此时全部废弃。 i-1 j i j+1 i+1 j+2 i+2 ... ... Yes No 成功支路 不成功支路 条转指令