Grad-ProbAsk 板


LINE

如圖 https://imgur.com/a/GLLfY15 有問題的是I1與I4,就是WB跟ID stage重疊那一塊 課本說明是沒有Hazard的問題,講什麼前半後半 我看的不是很明白 底下是我的理解 考慮以下指令 add $2, $2, $2 nop nop add $2, $2, $2 https://imgur.com/RiYc5hZ 這是我認為的時序圖 IF/ID、ID/EXE等是pipeline register存的值 明明I4在ID階段時I1的WB還沒被執行 卻說他不會有hazard產生 這是為什麼啊? --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.228.244.247 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Grad-ProbAsk/M.1663761542.A.46B.html
1F:→ takanano0528: https://i.imgur.com/COfru66.jpg 09/21 21:27
2F:→ takanano0528: 嗨嗨第一次解題,有點緊張 09/21 21:30
3F:→ takanano0528: 我拿這個圖作為解釋好了,第一個add跟or不會發生da 09/21 21:30
4F:→ takanano0528: ta hazard的原因是因為,WB會在clock的前半部完成 09/21 21:30
5F:→ takanano0528: ,ID則是在clock的後半部 09/21 21:30
6F:→ ping990579: clock前寫後讀?所以沒hazard 09/21 21:31
7F:→ ping990579: 他那個diagram的畫法 圖是中間有填色意思就是這個吧 09/21 21:32
8F:推 takanano0528: 所以按照你的時序圖,$2在stage4的前半段有已經被 09/21 21:34
9F:→ takanano0528: 寫入$2中,下一個指令會在clock的下半段抓到$2=10 09/21 21:34
10F:→ takanano0528: 正確的資料 09/21 21:34
11F:推 takanano0528: Sorry更正,stage5,不是stage4 09/21 21:38
12F:→ Max112358: 不好意思,我問過很多人,都說什麼前半後半。但是我不 09/21 23:38
13F:→ Max112358: 能理解前半後半指什麼東西。希望能更詳細的解釋,謝謝 09/21 23:38
14F:→ Max112358: 你 09/21 23:38
15F:→ Max112358: WB那個stage不是只是要寫入的資料ready以及regWrite為 09/21 23:53
16F:→ Max112358: 1而已嗎?要怎麼寫入資料 09/21 23:53
17F:推 jemmy9211: clock被往上拉就是前半 像下掉就是後半 這部分張凡有 09/22 01:53
18F:→ jemmy9211: 說過 學校應該也有教 09/22 01:53
19F:→ jemmy9211: T大說的我認為很清楚了 09/22 01:54
20F:→ Max112358: 同時讀寫同一地址時,讀出來的值會是正要被寫入的值, 09/22 02:13
21F:→ Max112358: 但實際上暫存器還沒被寫入。這樣對嗎?但是我不知道課 09/22 02:13
22F:→ Max112358: 本哪邊有這樣說過 09/22 02:13
23F:推 jemmy9211: 先寫入後才被讀出來的 09/22 02:20
24F:→ jemmy9211: Clock上半週期 寫入registers 09/22 02:20
25F:→ jemmy9211: 下半週期 才被較晚進去的指令讀到 所以沒有hazard 09/22 02:20
26F:→ Max112358: 但是要怎麼寫入,如果regWrite這個控制訊號跟著pipeli 09/22 02:31
27F:→ Max112358: ne跑,到WB這個stage他才是1不是嗎?下個週期才能寫入 09/22 02:31
28F:→ Max112358: 才對啊 09/22 02:31
29F:推 oxtin15: regWrite為1且現在為positive edge時register裡的值就會 09/22 23:19
30F:→ oxtin15: (ideally)馬上被更新為input的值,當到negative egde時r 09/22 23:19
31F:→ oxtin15: egister裡的值就會被keep住,所以後半部讀出來的值才會 09/22 23:19
32F:→ oxtin15: 是新寫入的值,更詳細的可以去看一下數位邏設的內容 09/22 23:19
33F:→ Max112358: 樓上這樣說就不合理了,regWrite在posedge後才變成1, 09/23 01:36
34F:→ Max112358: register何德何能讀到這個1把資料寫進去 09/23 01:36
35F:推 oxtin15: 什麼意思?posEdge後變1不就可以把data寫入了嗎,而且re 09/23 10:44
36F:→ oxtin15: gWrite是register的control signal又不用讀 09/23 10:44
37F:→ Max112358: register是posedge時regWrite為1才能把資料寫入。 09/23 12:25
38F:→ Max112358: 實際上register還沒被寫入,但是讀的出來,這是一種fo 09/23 12:35
39F:→ Max112358: rward 09/23 12:35
40F:→ takanano0528: https://i.imgur.com/bpGgdg6.jpg 09/23 14:43
41F:→ takanano0528: 它沒有用到forward path所以並非forwarding 09/23 14:45
42F:→ takanano0528: 然後我能解釋的範圍就到這裡了,身為可悲跨考仔聽 09/23 14:47
43F:→ takanano0528: 到的東西都來自於講義跟張凡的嘴巴,如果還是有什 09/23 14:47
44F:→ takanano0528: 麼不懂的地方,感覺可以問一下學校的老師會比較好 09/23 14:47
45F:→ takanano0528: 一點(有錯誤再勞煩大神更正) 09/23 14:47
46F:→ Max112358: 其實你們說的我都知道,但是我的問題都不在此 09/23 14:48
47F:→ Max112358: https://i.imgur.com/T2194f3.jpg 09/23 14:55
48F:→ Max112358: https://i.imgur.com/XGjBUWg.jpg 09/23 14:55
49F:→ Max112358: 不合理啊,既然暫存器是依照正緣觸發當下的RegWrite來 09/23 14:57
50F:→ Max112358: 決定要不要寫入,那他就不應該寫入不是嗎 09/23 14:57
51F:推 ping990579: WB stage的regw 信號是不用過pipeline register的我 09/23 18:58
52F:→ ping990579: 看圖長那樣 09/23 18:58
53F:推 ping990579: Memtoreg那根線 直接抵達regfile不用等下個cycle 09/23 19:04
54F:→ Max112358: 沒有吧 我看都有跟著跑啊 09/23 20:45
55F:推 ping990579: https://upload.wikimedia.org/wikipedia/commons/9/9 09/23 21:10
56F:推 ping990579: 目的位置跟資料寫入都沒擋阿 09/23 21:20
57F:推 ping990579: 上面圖死掉https://i.imgur.com/SIylTL6.jpg 09/23 21:22
58F:→ Max112358: 不是都跟著跑到WB stage嗎 09/23 23:12
59F:推 ping990579: 阿跑到wb就代表寫入了 你看我畫的紅線 是沒有東西擋 09/23 23:35
60F:→ ping990579: 著他的訊號的 他咻一下直接寫入regfile 09/23 23:35
61F:→ ping990579: 阿reg後半cycle才讀 就讀得到 09/23 23:36
62F:→ ping990579: 我看你上面的留言好像是說 wb要等下個週期才寫來不及 09/23 23:37
63F:→ ping990579: 嘛 09/23 23:37
64F:→ ping990579: Wb沒有下個週期才寫 一過mem/wb 就直接衝回id stage 09/23 23:38
65F:→ ping990579: 了而這是在一個週期內完成 09/23 23:38
66F:推 ping990579: https://i.imgur.com/VrUArFv.jpg 09/23 23:49
67F:→ ping990579: 這張圖比較好有control signal 09/23 23:49
68F:→ Max112358: 啊暫存器不是正緣觸發寫入嗎?你訊號在正緣後衝過來有 09/24 00:07
69F:→ Max112358: 甚麼用 09/24 00:07
70F:推 ping990579: 如果先不管正緣 我上面那樣說你可以接受嗎 09/24 00:11
71F:→ ping990579: 正緣一到pipeline暫存器就打開讓訊號出去了 也就寫入 09/24 00:24
72F:→ ping990579: 了 你那張圖好像是畫正緣過後才寫入的意思嗎 09/24 00:24
73F:→ ping990579: 我記得張凡是說正緣區間 而不是後哦 09/24 00:25
74F:→ ping990579: 而且就算正緣後衝過來 也是可以寫入的吧 至少比讀( 09/24 00:27
75F:→ ping990579: 下緣)在先了 09/24 00:27
76F:→ Max112358: 暫存器可以在正緣後寫入,那不叫正緣觸發寫入了吧。se 09/24 00:40
77F:→ Max112358: tup time都不用顧嗎? 09/24 00:40
78F:→ ping990579: 正緣後寫入不是你說的嗎 09/24 00:45
79F:→ ping990579: 反正張凡是說沿著邊邊 這樣 09/24 00:46
80F:→ ping990579: 你那張畫的很精美的圖不是就是正緣後寫入嗎 我是看那 09/24 00:49
81F:→ ping990579: 張圖說的 09/24 00:49
82F:→ ping990579: 我想說的是 不管是那種 一定比下緣先吧 09/24 00:51
83F:→ ping990579: 比下緣先就不會有hazard了 09/24 00:51
84F:→ ping990579: 0-1write 1-0讀這樣 09/24 01:15







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燈, 水草

請輸入看板名稱,例如:WOW站內搜尋

TOP