龍芯中科通過前期在MIPS架構的基礎上研發的指令集LoongISA所積累的經驗,徹底拋棄掉了MIPS自主研發設計了LoongArch,所以LoongArch本質上仍然為RISC指令集。
LoongISA(簡稱LISA)是龍芯中科技術有限公司注冊的自主CPU指令集架構(由MIPS指令集拓展而來,采用MIPS的指令集格式)。LoongISA架構的指令集包括MIPS 部分以及龍芯中科技術有限公司自主擴展的指令集。

最新一代的龍芯3A5000就采用的是LoongArch架構,它所使用的是Linux操作系統,在此操作系統中除了運行原生的LoongArch程序,還能通過翻譯的方式兼容 MIPS、x86、ARM、RISC-V 這幾種指令集的Linux程序。
LoongISA兼容x86仍然是需要模擬器進行二進制翻譯的,只不過由于指令和x86的對應關系是簡單的一對一或者一對二的關系,可以防止模擬器產生大量多余的指令,大幅度減少性能損失,但是指令結構仍然是RISC的Load-Store+通用寄存器結構,完全可以直接亂序執行,而不像x86處理器需要復雜的譯碼才能亂序執行。
為提升國產處理器性能:龍芯發力自主指令系統架構 向Intel/AMD看齊
近日有消息稱,龍芯不僅致力于為GCC編譯器和相關GNU工具鏈組件提供LoongArch指令級架構(IS)支持,還制定了要為LoongArch實現LLVM主線支持的計劃。
回顧2021年,該公司一直忙于推出新的MIPS CPU架構,同時致力于Linux內核移植(以及開源代碼編譯器 / 相關組件)。若進展順利,國產高性能處理器也將能夠迎來更好的發揮。
自去年以來,他們一直致力于LLVM支持。雖然初始目標僅與舊版本掛鉤,但在那之后,團隊一直在有針對性地開展LoongArch的移植重構(LLVM Git)。
期間他們還改進了測試的覆蓋率和代碼規范,以期在步入上游 LLVM 存儲庫后持續改進相關代碼。過去數月,我們已經見到了與 LoongArch 相關的大量公開工作,但內部開發的工作量也不該忽略。
LoongArch是一個精簡指令系統,32位長指令、32個通用寄存器、32個浮點寄存器。用戶態是給編譯器、程序設計者使用。核心態在內存管理、控制寄存器的數量、規格都進行了大量的創新性設計,是符合現代操作系統的設計。
我們對LoongArch的性能進行了測試,在相同IP下,一個用MIPS指令集,一個用LoongArch指令集,可以看到,動態指令數下降了15%到20%,總體性能提升了12%左右。
LoongArch指令系統能夠支持二進制翻譯,融合了X86、ARM、MIPS、RISC-V指令系統的主要功能特性。
自主指令系統的生態是如何構建的。龍芯中科推出了二進制翻譯器,又稱LAT翻譯體系。最底層是LoongArch架構的芯片,再往上是操作系統,操作系統往上有幾個維度:基于LoongArch的原生Linux應用,比如說本地化的辦公、音視頻的應用。
同時,龍芯中科推出了三個翻譯器:MIPS應用往LoongArch上翻譯,ARM應用往LoongArch上翻譯,X86應用往LoongArch上翻譯,未來希望能夠做到:從MIPS翻譯過來百分之百性能不損失,從ARM翻譯過來90%性能不損失,從X86翻譯過來做到80%的性能不損失。
除了自主性,指令集的兼容性也很重要。龍芯中科基于二十年的CPU研制和生態建設積累推出的LoongArch指令系統,充分考慮兼容生態的需求,融合X86、ARM等國際主流指令系統的主要功能特性,并依托龍芯研發團隊在二進制翻譯方面十余年的技術積累創新,可實現跨指令平臺應用兼容,從而達到融合生態的目的。
目前,Photoshop、微信、一些游戲都可以在國產平臺上很好地運行,生態是有保障的,包括一些主流的Linux應用框架都可以原生支持。國產操作系統廠商統信和麒麟也都推出了對應的國產操作系統版本。
關于LoongArch平臺的AI計算,龍芯中科構建了全域異購AI硬件支撐體系,龍芯CPU+GPGPU、龍芯CPU+ASIC、龍芯CPU+FGPA分別應用于通用AI計算和專用AI計算。軟件方面,龍芯中科構建多層級AI軟件生態體系,包括系統支撐、計算框架、算法模型層級,AI領域有完整的解決方案。
目前圍繞龍芯中科的產業合作伙伴已經有上千家,通過一系列的措施,包括標準建設、開源軟件建設、解決方案提供、安全體系、產品認證、人才培養、出版書籍等,從多個維度構建LoongArch產業生態體系。
即使短時間內無法與Intel/AMD等芯片行業巨頭相匹敵,LoongArch能夠像俄羅斯Elbrus CPU一樣成為國產佳品,也是具有相當重要的意義的。我們也期待能把龍芯引入我們的工業主板系列中,做一塊“中國芯”的工業主板。