※ 本文轉寄自 ptt.cc 更新時間: 2020-11-19 07:27:05
看板 MobileComm
作者 標題 [討論] RISC和CISC現在還真的有差別嗎?
時間 Wed Nov 18 19:45:00 2020
我們常常在教科書 甚至很多文章上看到
RISC就是什麼只加總
CISC有甚麼很複雜的操作阿,加減乘除之類的
在2020年的今天 他們究竟還存在那些差別呢?
https://i.imgur.com/KXLZkm0.jpg
![[圖]](https://i4.disp.cc/imgur/KXLZkm0.jpg)
這架構就是很經典的RISC
他沒有複雜的分支預測 uops感知器阿
甚至他只有單純的ALU 執行整數運算
這就是RISC最原本的樣子
那現在的ARM處理器又是什麼樣子呢?
我們拿一個最經典的處理器 ARM公版架構
也就是S835拿來魔改的A73架構
https://i.imgur.com/Xl0kLa3.png
![[圖]](https://i4.disp.cc/imgur/Xl0kLa3.png)
已經不是只有單純的ALU
又了很大量的ROB
再加上不論是NEON/ FP合併的運算
或者是INT 和AGU
早就違背當初RISC簡單的初衷
RISC早期會快是因為元件設計簡單
流程相對較短 執行的東西也單一
可以在一個週期 數次快速重複指令運算
但是如果要他執行一些比較進階的命令
難度會高出許多
從上面這架構圖來分析
我能很清楚的告訴你 這絕對早就不是RISC
因為RISC當時的定義是不可能有後面這些東西的
https://i.imgur.com/TaUVej8.png
![[圖]](https://i4.disp.cc/imgur/TaUVej8.png)
從經典的X86架構圖來看
A73架構所說的那些 X86也幾乎都有
頂多就是運算器的不同
導致指令集的編寫也不同
只有最早期的那幾種東西
才是真正符合那種精神
後面大家都互相學習優缺點
讓自己的架構更加完善且進步
RISC 常說是什麼精簡指令集
CISC 是複雜指令集
那個是為了應對 架構而寫的指令集
你今天架構已經不是以前單純的模樣
那指令集也該為了架構而做出改變
畢竟 指令集的產生 就是應對著架構而去工作的東西
如果你要說 現在的ARM仍然是精簡指令集
那配上這個架構 明顯應該有那些地方是不符合的
以上這是我對ARM和X86架構的理解
可能有些部分是錯誤的
歡迎多多討論
我之後應該也會寫篇文章討論M1跑分高的原因
也謝謝大家耐心看完
--
Sent from my Windows
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.231.14.99 (臺灣)
※ 文章代碼(AID): #1VjGa-Dz (MobileComm)
※ 文章網址: https://www.ptt.cc/bbs/MobileComm/M.1605699902.A.37D.html
推 : 現在VLIW, superscalar, fusion, multiple issue, t1F 11/18 19:51
→ : omasulo全部加在一起,指令集根本不是重點了
→ : omasulo全部加在一起,指令集根本不是重點了
→ : 電蝦的人會比較有熱忱聽你分析。3F 11/18 19:53
→ : 怎麼不去ICDESING之類的版問啊4F 11/18 19:54
推 : 嗯,剛我想的5F 11/18 19:56
→ : 一樣
→ : 一樣
推 : 現在都是大亂鬥沒錯7F 11/18 19:58
推 : 未看先推8F 11/18 20:01
推 : 現在的x86也不是以前的x86了 各種混亂9F 11/18 20:03
推 : 錯版了吧10F 11/18 20:04
推 : 可以講點我聽的懂的事情嗎11F 11/18 20:04
→ : 不過我覺得沒有錯版 畢竟手機CPU和電腦不同是大家都12F 11/18 20:06
→ : 知道的(應該?)只是比較有涉獵的人常不常在這邊出沒
→ : 知道的(應該?)只是比較有涉獵的人常不常在這邊出沒
推 : 我還以為我走錯版14F 11/18 20:09
推 : 看到頭就好痛 想到考研究所的時候15F 11/18 20:14
推 : 現在soc都有npu這個component,傳統x86要模擬npu效16F 11/18 20:14
→ : 能太差,所以有npu設計,m1加這個進來對跑分也有幫
→ : 助。
→ : 能太差,所以有npu設計,m1加這個進來對跑分也有幫
→ : 助。
→ : MISP(X) MIPS(O)19F 11/18 20:14
推 : 嗯嗯,跟我想的差不多20F 11/18 20:16
推 : x86 的歷史包袱就像便秘越積越多21F 11/18 20:16
推 : 我愛RISC V22F 11/18 20:20
→ : 這是啥科目阿,可以講一下嗎23F 11/18 20:20
推 : 計概的部分阿24F 11/18 20:22
推 : 這麼電機的東西QQ25F 11/18 20:25
推 : 嗯嗯 你說的我都懂26F 11/18 20:26
推 : 實務上兩者的區別沒有計概教科書上講的那麼涇渭分明27F 11/18 20:26
→ : 今年最快的超級電腦就開始用ARM架構28F 11/18 20:26
→ : 能順便講M1怎麼比前幾代的i5 i7快嗎,看影片除了跑29F 11/18 20:28
→ : 分實際效能好像也不差
→ : 分實際效能好像也不差
→ : 編譯器也有關係,蘋果自己軟硬都包31F 11/18 20:28
推 : 這是計算機組織的東西32F 11/18 20:34
推 : 牙膏廠擠了十幾年牙膏,誰知蘋果不講武德,自己擠33F 11/18 20:34
→ : 了一大坨 xD
→ : 了一大坨 xD
推 : 簡單說:簡單的沒這麼簡,兩邊都在學習35F 11/18 20:38
→ : 比較期待下篇文章,應該很有料
→ : 比較期待下篇文章,應該很有料
推 : 推 感謝解說37F 11/18 20:39
推 : 這不太重要,東西本來就會越來越複雜38F 11/18 20:42
推 : 我是認為X86單位Byte的指令密度比較高 理論性能應該39F 11/18 20:44
→ : 是更好 但是Branch Predictor也要能夠跟上才行
→ : 其實intel的x86從core i開始就改成用risc內核 但是
→ : 外部仍然用cisc 你可以想成x86是api 然後底層用risc
→ : 實作 好處是可以在不同代之間改變內核的執行流程 彈
→ : 性比較高
→ : 我覺得就如同你說的 現在risc和cisc或許沒分得那麼
→ : 清楚 我覺得指令集長度是最大差異吧?
→ : 是更好 但是Branch Predictor也要能夠跟上才行
→ : 其實intel的x86從core i開始就改成用risc內核 但是
→ : 外部仍然用cisc 你可以想成x86是api 然後底層用risc
→ : 實作 好處是可以在不同代之間改變內核的執行流程 彈
→ : 性比較高
→ : 我覺得就如同你說的 現在risc和cisc或許沒分得那麼
→ : 清楚 我覺得指令集長度是最大差異吧?
噓 : 錯板47F 11/18 20:54
→ : 裡面很多技術都是RISC實現起來最簡單的,我覺得是描48F 11/18 20:55
→ : 述指令集設計而不是你說的微架構細節
→ : 述指令集設計而不是你說的微架構細節
推 : intel好像也有把最後編譯的結果變成類似risc的微指50F 11/18 20:58
→ : 令
→ : 令
推 : 推52F 11/18 21:04
推 : 錯版53F 11/18 21:12
推 : 嗯嗯 這就是我想的54F 11/18 21:12
推 : 黑貓白貓55F 11/18 21:17
推 : 這要學過計算機結構才看得懂吧XDD56F 11/18 21:28
推 : 這裡文組太多 聽不懂的啦57F 11/18 21:39
推 : 現在都指令自助餐啊XD被爆漏洞就補一下變CISC,來58F 11/18 21:40
→ : 回R一下C一下@@
→ : 回R一下C一下@@
推 : 推60F 11/18 21:53
→ : 現在底層指令都是RISC61F 11/18 22:04
→ : 但X86的CISC指令還在 靠即時轉譯
→ : 但X86的CISC指令還在 靠即時轉譯
推 : arm a73也能叫錯板。厄63F 11/18 22:07
推 : 幫轉64F 11/18 22:27
→ : CISC已死65F 11/18 22:38
→ : 有請jserv66F 11/18 22:51
推 : 計組惡夢67F 11/18 22:52
→ : 一個指令就做很多事的是cisc,不是看總指令數或架構68F 11/18 23:02
→ : 幾層pipeline,查wiki.
→ : 幾層pipeline,查wiki.
推 : 嗯嗯嗯嗯70F 11/18 23:03
推 : 危障71F 11/18 23:12
推 : 推72F 11/18 23:32
推 : 看最新的avx512支援你就會發現優勢在於好不好擠73F 11/18 23:36
推 : 感謝解說,電蝦版也需要這篇74F 11/18 23:39
推 : 難得手機板有知識文75F 11/18 23:50
推 : 還以為進錯板....76F 11/19 00:00
推 : 看不懂 鮮蝦挺77F 11/19 00:04
推 : 嗯嗯 這理論就是我創造的78F 11/19 00:11
推 : 只要可以用滑鼠按2下打lol看片 就沒什麼差79F 11/19 00:28
推 : 嗯嗯 這你說的我都懂 可是80F 11/19 00:32
推 : 解指令和 Branch81F 11/19 00:48
→ : 看到risc沒分支預測就能endㄌ 笑死82F 11/19 00:50
推 : 阿~白算盤的惡夢啊阿阿阿阿83F 11/19 00:54
推 : 計組考試:請說明三種pipeline 中可能的Hazard84F 11/19 01:53
推 : 感謝強者解說85F 11/19 02:44
推 : 樓下Jserv老師86F 11/19 02:48
噓 : 上禮拜剛考完計算機結構,憤怒噓87F 11/19 03:53
推 : 理性使我推回來
推 : 理性使我推回來
--
※ 看板: MobileComm 文章推薦值: 0 目前人氣: 0 累積人氣: 120
回列表(←)
分享