Grad-ProbAsk 板


LINE

※ 引述《luckyburgess (the one)》之铭言: : 想请问一下94年交大资工计组的第9题 : 那边是怎麽解出来的 : http://www.lib.nctu.edu.tw/n_exam/exam94/isc/7006.pdf : 感谢! Loop: lw $t0, 0($s1) addu $t0, $t0, $s2 sw $t0, 0($s1) addi $s1, $s1, -4 bne $s1, $zero, Loop ALU or branch inst. Data transfer inst. Loop: addi $s1, $s1, -16 lw $t0, 0($s1) (blank) lw $t1, 12($s1) (1) lw $t2, 8($s1) (2) (6) addu $t2, $t2, $s2 (7) (3) (8) (4) (9) (5) sw $t3, 4($s1) ================================================================ 由 addi $s1, $s1, -16 与 addi $s1, $s1, -4 得知unroll了四次 原本 loop 变成 Loop: lw $t0, 0($s1) addu $t0, $t0, $s2 sw $t0, 0($s1) lw $t0, 0($s1) addu $t0, $t0, $s2 sw $t0, 0($s1) lw $t0, 0($s1) addu $t0, $t0, $s2 sw $t0, 0($s1) lw $t0, 0($s1) addu $t0, $t0, $s2 sw $t0, 0($s1) addi $s1, $s1, -16 bne $s1, $zero, Loop 接着进行 重排指令 与 register renaming Loop: addi $s1, $s1, -16 lw $t0, 0($s1) lw $t1, 12($s1) lw $t2, 8($s1) lw $t3, 4($s1) addu $t0, $t0, $s2 addu $t1, $t1, $s2 addu $t2, $t2, $s2 addu $t3, $t3, $s2 sw $t0, 16($s1) sw $t1, 12($s1) sw $t2, 8($s1) sw $t3, 4($s1) bne $s1, $zero, Loop 最後 调整成可并行执行的顺序且不发生 hazard 的 instruction group Loop: addi $s1, $s1, -16 lw $t0, 0($s1) lw $t1, 12($s1) (blank) lw $t2, 8($s1) addu $t0, $t0, $s2 lw $t3, 4($s1) addu $t1, $t1, $s2 addu $t2, $t2, $s2 sw $t0, 16($s1) addu $t3, $t3, $s2 sw $t1, 12($s1) sw $t2, 8($s1) (blank) sw $t3, 4($s1) bne $s1, $zero, Loop 每个 instruction group 可并行执行 变成... ALU or branch Data transfer =========================================================== Loop: addi $s1, $s1, -16 lw $t0, 0($s1) (blank) lw $t1, 12($s1) addu $t0, $t0, $s2 lw $t2, 8($s1) addu $t1, $t1, $s2 lw $t3, 4($s1) addu $t2, $t2, $s2 sw $t0, 16($s1) addu $t3, $t3, $s2 sw $t1, 12($s1) (blank) sw $t2, 8($s1) bne $s1, $zero, Loop sw $t3, 4($s1) ============================================================ 找 instruction group 时要注意 group 内 的 hazard 比如: lw $t0, 0($s1) addu $t0, $t0, $s2 不能成为一个 group group 间的 hazard 比如: 你不能分成 group-1: lw $t1, 12($s1) addu $t0, $t0, $s2 与 group-2: lw $t2, 8($s1) addu $t1, $t1, $s2 因为 group-1 中的 lw 与 group-2 中的 addu 有 load-used hazard -- --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.115.222.93
1F:推 yesa315:太强大了... 10/07 17:12
2F:→ yesa315:我想问一下 接着进行 lw $t0, 0($s1) 跟 sw $t0, 16($s1) 10/07 17:26
3F:→ yesa315:读出来的位子与写进去的位子不同 是因为当时s1尚未-16吗 10/07 17:27
4F:→ yesa315:最後sw $t0, 16($s1) 之所以这样 是因为s1已经加了16吗?? 10/07 17:27
5F:→ ZALYBAR:应该说addi $s1, $s1, -16 lw $t0, 0($s1) 这两个指令 10/07 18:14
6F:推 ZALYBAR:是同时执行 此时$s1还没被扣16 所以lw 的位置不需要改变 10/07 18:17
7F:→ ZALYBAR:而後面的sw 需要加16是因为$s1已经先被扣16 所以要加16 10/07 18:18
8F:→ ZALYBAR:才会和原本的位置相同 10/07 18:18
9F:→ yesa315:了解! 谢谢 10/07 22:09
10F:推 luckyburgess:太厉害了!! 感谢你了 10/07 22:30







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:iOS站内搜寻

TOP