CPU 是個直譯器,架構是它的演算法,RTL 是演算法的實現,MuxReg 佇列操作是它 emit 的 target。更好架構就是更好的演算法,能用更少操作在更緊的 constraint 下做完同樣一件事。
因此現代 CPU 的演算法已經發展成一個複雜的系統,涵蓋直譯器編譯器 JIT 最佳化器向量化程式分析各大功能,對應到 architecture 裡的名詞就是 ROB OoO renaming coherency。所有這一切演算法設計都屬於 CPU 架構,也就是這個複雜直譯器+recompilation 的演算法。
CPU 處理計算,本來邏輯上說,只要結果正確步驟也沒問題,可是,由於你必須要把你的指令集寫死在晶片上,因此,不同的指令集,寫在晶片上的電路自然也就有區別了;甚至由於指令集不同,每種指令集所需要的暫存器、資料頻寬也都有所不同,那麼製作出來的晶片自然區別比較大了。 這些不同的晶片設計和安排,就是所謂的“架構”。
晶片架構是指對晶片物件類別和屬性的描述,對於每一個物件類別來說,該架構定義了物件類必須具有的屬性,它也可以有附加的屬性,並且該物件可以是它的父物件。主流的晶片架構有ARM、MIPS、x86。
晶片架構是指對晶片物件類別和屬性的描述,對於每一個物件類別來說,該架構定義了物件類必須具有的屬性,它也可以有附加的屬性,並且該物件可以是它的父物件。主流的晶片架構有 ARM、MIPS、x86。
proseccor
CPU 是個直譯器,架構是它的演算法,RTL 是演算法的實現,MuxReg 佇列操作是它 emit 的 target。更好架構就是更好的演算法,能用更少操作在更緊的 constraint 下做完同樣一件事。
因此現代 CPU 的演算法已經發展成一個複雜的系統,涵蓋直譯器編譯器 JIT 最佳化器向量化程式分析各大功能,對應到 architecture 裡的名詞就是 ROB OoO renaming coherency。所有這一切演算法設計都屬於 CPU 架構,也就是這個複雜直譯器+recompilation 的演算法。
CPU 處理計算,本來邏輯上說,只要結果正確步驟也沒問題,可是,由於你必須要把你的指令集寫死在晶片上,因此,不同的指令集,寫在晶片上的電路自然也就有區別了;甚至由於指令集不同,每種指令集所需要的暫存器、資料頻寬也都有所不同,那麼製作出來的晶片自然區別比較大了。 這些不同的晶片設計和安排,就是所謂的“架構”。
所以 x86 的架構和 ARM 就不一樣,他們的指令集不同,自然架構就不同了。