[理工] 104台大資工 計組

看板Grad-ProbAsk作者 (O_O)時間7年前 (2017/01/15 22:22), 7年前編輯推噓0(0021)
留言21則, 3人參與, 最新討論串1/2 (看更多)
抱歉,我現在手機沒電所以無法拍題目,等等補上orz 想請問一下104台大資工硬體第一大題的答案大大們怎麼回答,查了好久都沒什麼結果QQ 1.有沒有什麼ISA是沒有register的? 2.若ISA裡有超級大量的register(題目給1024個),是好還是壞? -->我個人覺得可能在power上會有瓶頸? 3.把general purpose register分為caller-save和callee-save,對什麼procedure是有 利的? 4.為什麼現在要將register分這麼多種類(浮點數、一般、向量暫存器),若全都由一般 暫存器取代會比較好嗎? 還望大大們一起討論了 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.230.122.112 ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1484490136.A.D5F.html

01/16 00:06, , 1F
2我會寫壞, register越多Inst越長 解碼越麻煩
01/16 00:06, 1F

01/16 00:23, , 2F
4.如果都用一般的int reg,在做非int的資料型態處理時
01/16 00:23, 2F

01/16 00:24, , 3F
要另外處理或組合reg,多花些cycle或增加指令即reg個數
01/16 00:24, 3F

01/16 00:27, , 4F
3.caller saved顧名思義就是呼叫人之前, 由caller把資料
01/16 00:27, 4F

01/16 00:28, , 5F
push到stack, callee可以直接用, 不用另外存取
01/16 00:28, 5F

01/16 00:29, , 6F
callee saved是在使用前先push, 用完後pop回來覆蓋
01/16 00:29, 6F

01/16 00:30, , 7F
對caller來說,callee saved reg的值在call的前後是一致
01/16 00:30, 7F

01/16 00:32, , 8F
所以如果要對同一個func call 10000次, caller>>callee
01/16 00:32, 8F

01/16 00:33, , 9F
如果func要接受不定長度參數, callee>>caller
01/16 00:33, 9F

01/16 18:06, , 10F
都沒有其他人要回嗎..... 我4覺得講得沒有很好一直在等
01/16 18:06, 10F

01/16 18:06, , 11F
其他人來討論說
01/16 18:06, 11F
抱歉昨天一整天在實驗室,沒有再查一下資料就不太敢回:P 我反而覺得你說的2怪怪的...,Register數量跟Register位元數是不一樣的吧?感覺你是 在指位元數的擴增?

01/16 18:08, , 12F
XD 1. stack
01/16 18:08, 12F

01/16 18:09, , 13F
2. 有好有壞,因此如何平衡需要考驗製作方
01/16 18:09, 13F

01/16 18:11, , 14F
3. 我記得這題是問 Caller 還是callee 對於function
01/16 18:11, 14F

01/16 18:11, , 15F
哪個比較好 ,我選擇callee 因為不需要長時間keep
01/16 18:11, 15F

01/16 18:13, , 16F
4. NO, 這樣需要額外處理與辨識該格式是甚麼
01/16 18:13, 16F

01/16 18:14, , 17F
我只是簡略回答,這大題大概寫滿滿QQ..
01/16 18:14, 17F

01/16 18:14, , 18F
只不過我記得這計組部分有詳解呀@@ 104各校計組解答
01/16 18:14, 18F
4的辨識格式是?我其實不太了解不一樣的register內部運作方式是差在哪? 想是向量register,是一個暫存器就可以同時進行多data同指令運算嗎?還是是專注於 處理向量運算類的指令所以可以簡化以提升特定指令的執行效率? ※ 編輯: ssssIssss (140.112.25.99), 01/17/2017 10:00:20

01/17 15:16, , 19F
你有1024個register, 就要用10bit去編號, inst就會長
01/17 15:16, 19F
!!!懂H大意思了,那我覺得這個解釋說服我了XD ※ 編輯: ssssIssss (140.112.25.105), 01/17/2017 20:03:38 突然想到,這樣應該還是不會變長吧?為了要保持instruction的一致性? 就像是上課也有提到,instruction數量很多的話,op bit也不會變長,因為要保持長度 一致? ※ 編輯: ssssIssss (140.112.25.105), 01/19/2017 21:26:02

01/21 00:06, , 20F
不同的指令都要用同樣的register,不變長你要怎麼處理呢
01/21 00:06, 20F

01/21 00:06, , 21F
01/21 00:06, 21F
文章代碼(AID): #1OUuMOrV (Grad-ProbAsk)
文章代碼(AID): #1OUuMOrV (Grad-ProbAsk)