[理工] 108交大 计组

楼主: gash55025502 (白影弓)   2019-11-13 18:59:36
想问16 17题
https://i.imgur.com/ufJTG9m.jpg
a选项我认为反例是reg file可被存取两次,但只有一份copy
d选项是错最后一句
b的话不懂为什么是对的
然后c是错在latch这个字吗?
https://i.imgur.com/4Txu0B6.jpg
这题的话不知道为何a是对的
c没有听过memory hazard...google好像也没找到类似的词 这是交大自己创出来误导的选
项吗?
如果想法有错再麻烦订正了...感谢
作者: b10007034 (Warren)   2019-11-13 20:01:00
17a意思就是不管怎么样control hazard就是无法避免理由是不可能可以预测到未来17c跟你看法一样
作者: zuchang (chang)   2019-11-13 20:52:00
16a更明显的错是最后一句 c是错在not necessary
作者: mistel (Mistel)   2019-11-13 22:03:00
请问16.c的latch是什么? 这个选项可以解释一下吗另外17c 算盘有提到是发生在mem stage的hazard
作者: b10007034 (Warren)   2019-11-13 22:09:00
那是structrual hazard 不只发生在memory这个元件上
作者: mistel (Mistel)   2019-11-13 22:13:00
不是 这跟ex hazard一起被归类在Data hazard这个项目下https://i.imgur.com/tPsUxlq.jpg
作者: b10007034 (Warren)   2019-11-13 22:21:00
但这个data hazard跟这边提到的是两回事它那个MEM是表示MEM stage并非Memory16.c latch意思就是D Flip-Flop那个latch,把它想成用来储存资料的暂存区即可对multi-cycle machine来说为了保持一个cycle一个instr使用,必须要用暂存区储存上一个instr.运算后的结果这跟pipelined machine是一样的概念,所以它说不是必需就是错的,大概是这样
楼主: gash55025502 (白影弓)   2019-11-13 23:10:00
multi-cycle 不是一个指令自己在datapath中过好几个cycle吗?为何需要暂存区呢16.c不是应该要是pipeline register吗?所以是latch=pipeline register吗?
作者: mistel (Mistel)   2019-11-13 23:22:00
跟楼上原po同样问题@@
作者: zuchang (chang)   2019-11-13 23:36:00
作者: b10007034 (Warren)   2019-11-13 23:55:00
Multi-cycle还是要读一下课本(概略、方块图、文字描述),不然我也很难解释清楚说latch的原因还是怕跟register file 搞混,这两个虽然都是暂时保存资料,但实际上电路实作还是差很多的。
作者: mistel (Mistel)   2019-11-13 23:58:00
刚刚翻到张凡的课本了 感谢两位大大!mem那个是我搞错了 我觉得b大说的对
楼主: gash55025502 (白影弓)   2019-11-14 00:42:00
好的我再研究一下 感谢各位大大https://i.imgur.com/8s39Zx4.jpg
作者: b10007034 (Warren)   2019-11-14 11:41:00
是这样理解没错,这个逻辑跟pipelined machine 是一样的
楼主: gash55025502 (白影弓)   2019-11-14 12:03:00
了解 非常感谢 那如果是Single cycle的话 是否就真的不需要暂存器了呢?
作者: b10007034 (Warren)   2019-11-14 13:08:00
不需要一个暂存区特别暂存上一个指令的值,因为已经储存到reg. file 了,并不是不需要暂存器
楼主: gash55025502 (白影弓)   2019-11-14 13:10:00
了解!感谢大大

Links booklink

Contact Us: admin [ a t ] ucptt.com