華為鯤鵬處理器
- 華為鯤鵬處理器基于Arm架構,Arm是一種CPU架構,有別于Intel、AMD CPU采用的CISC復雜指令集,Arm CPU采用RISC精簡指令集(reduced instruction set computer,精簡指令集計算機),
- 傳統的CISC體系由于指令集龐大,指令長度不固定,指令執行周期有長有短,使指令譯碼和流水線的實作在硬體上非常復雜,給芯片的設計開發和成本的降低帶來了極大困難,
- 隨著計算機技術的發展需要不斷引入新的復雜的指令集,為支持這些新增的指令,計算機的體系結構會越來越復雜,然而,在CISC指令集的各種指令中,其使用頻率卻相差懸殊,大約有20%的指令會被反復使用,占整個程式代碼的80%,而余下的80%的指令卻不經常使用,在程式設計中只占20%,顯然,這種結構是不太合理的,
- RISC結構優先選取使用頻率最高的簡單指令,避免復雜指令,將指令長度固定,指令格式和尋址方式種類減少,以控制邏輯為主,不用或少用微碼控制等措施來達到上述目的,
- Arm架構具有更好的并發性能,匹配業務特征能耗比更佳,更加靈活豐富的選擇,業界熱點快速發展,
ARM體系的總體思想
- 在不犧牲性能的同時,盡量簡化處理器,同時從體系結構上靈活支持處理器擴展,采用RISC結構,RISC處理器簡化了處理器結構,減少復雜功能指令的同時,提高了處理器速度,ARM及MIPS都是典型的RISC處理器,
ARM的流水線結構
-
ARM處理器使用流水線來增加處理器指令流的速度,這樣可以使幾個操作同時進行,并使處理和存盤器系統連續操作,
ARM處理器分為三級
取指:指令從存盤器中取出;
譯碼:對指令使用的暫存器進行譯碼;
執行:從暫存器組中讀取暫存器,執行移位和ALU操作,暫存器被寫回到暫存器組中, -
流水線對PC值的影響
SPSR保存的程式狀態暫存器,結構與CPSR完全一樣,用來保存CPSR的值,以便出現例外時恢復CPSR的值,CPU內部的組成分為:指令暫存器,指令譯碼器,指令執行單元(包括ALU和通用暫存器組)CPU執行指令的步驟:取指->譯碼->執行
取指:將指令從記憶體或指令cache中取入指令暫存器
譯碼: 指令譯碼器對指令暫存器中的指令進行譯碼操作,辨識add,或是sub等操作
執行:指令執行單元根據譯碼的結果進行運算并保存結果
流水線操作:并發多條流水線(以3條為例)
1-取指 譯碼 執行
2-取指 譯碼 執行
3-取指 譯碼 執行 -
鯤鵬920處理器的流水線支持2個訪存指令的發射佇列,如下圖中的紅色框內所示,其訪存單元WB支持每拍2條讀或寫訪存指令,

轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/385545.html
標籤:其他
上一篇:Gavin老師Transformer直播課感悟 - 基于Transformer的Poly-Encoder架構體系解密(二)
