在4月19日結束的第四屆關鍵信息基礎設施自主安全創新論壇上,龍芯中科董事長胡偉武對龍芯的自主指令系統架構LoongArch進行了深度解析,介紹了LoongArch的發展過程、自主與兼容性以及未來的計劃。
自主指令架構的必要性
目前國內市場的CPU既有自主研發的、引進Arm等技術以及合資公司開發的,這其中龍芯的CPU產品自主性最強,但仍然面臨著指令集架構和生產工藝受制于人的“卡脖子”問題。
龍芯中科認為自主體系建設包括三個環節,基于自主IP核的芯片設計、基于自主指令系統的軟件生態和基于自主材料設備的生產工藝。而龍芯此前在自主IP核的芯片設計上取得了不菲的成績,多款CPU已經完成了性能補課,逼近了市場主流的CPU。如今LoongArch的面世就是在CPU應用上做出的又一大努力。
LoongArch的兼容性
胡偉武還提到,指令系統是信創產業繞不過去的話題,我國不可能基于國外的指令系統建設自主信息產業生態。兼容指令系統雖然可以直接利用x86和Arm的現成軟件生態,但因為x86不授權,而Arm的授權又存在嚴格限制,均會會阻礙自主基礎軟件的發展。
因此龍芯對LoongArch的定位是一個考慮兼容需求的自主指令系統,紀要摒棄過時技術做到當代指令集的先進性,又要兼容x86、MIPS和Arm指令系統的主要特點,同時在指令槽上留有余地,方便指令系統的未來持續演進。
LongISA與LongArch架構的對比 / 龍芯中科
過去的LoongISA指令集由MIPS拓展而來,MIPS上的通用軟件生態也有龍芯的建設和維護。但龍芯隨后發現MIPS的發展空間有限,便開發了近2000條指令的龍芯自主架構LoongArch。在相同的微結構和硬件下進行測試,LoongArch的動態指令數與MIPS相比減少了15%到20%,大幅提高了性能。
LoongArch通過對二進制翻譯的支持,融合了x86、Arm、MIPS和RISC-V指令系統的主要功能,比如x86和Arm的EFLAG值模擬、RISC-V中豐富的同步指令等。借助高效的翻譯引擎,龍芯引擎僅在翻譯x86應用上實現了大于60%的性能,在翻譯安卓Arm應用上,已經可以流暢運行移動版WPS和美圖秀秀等應用。
龍芯二進制翻譯系統LAT的設計目標為“十九八”,即翻譯MIPS Linux應用做到目標效率100%,翻譯ArmAndroid應用做到90%的效率,而x86的Linux/Windows應用動態翻譯做到80%的效率(5%誤差)。
LoongArch未來計劃
龍芯已經委托第三方機構對LoongArch做知識產權的分析,目前已經完成國內部分,預計今年完成國際部分。未來龍芯還將組建LoongArch技術聯盟,在聯盟內免費開放LoongArch,以及部分CortexA53以下性能的處理器IP核。同時龍芯將對LoongArch做簡化處理,形成百條指令的小系統在高校范圍內推廣,取代RISC-V。
龍芯也會持續改進LoongArch二進制翻譯的硬件支持和軟件優化,力求借助二進制翻譯在2025年消除各大指令系統之間的壁壘。龍芯還提到,2020年起流片的龍芯CPU均支持LoongArch,不再像過去一樣支持已經趨于弱勢的MIPS。
小結
LoongArch的出現無疑是國內自主指令集邁出的一大步,與去年“十九八七”的預定目標相比,龍芯今年再一次將目標提升至“十九八”。作為仍在不斷完善的翻譯系統,相信LoongArch未來必將徹底打破不同指令系統間的隔閡。
優秀的翻譯系統對于軟件生態來說至關重要,就拿蘋果的macOS來說,M1芯片的Macbook通過Rosetta 2對過去x86的軟件進行了轉譯,從而流暢運行兼容軟件,這也省去了不少編譯和二次開發工作。LoongArch與龍芯自主的IP核已經為自主體系的建設打通了兩環,剩下的就是靠國內的生產工藝攻關了,龍芯自己用到的最高規格工藝已經達到12nm,未來想要進一步實現性能突破,先進工藝同樣是不可或缺的。
本文由電子發燒友原創,轉載請注明以上來源。如需入群交流,請添加微信elecfans999,投稿爆料采訪需求,請發郵箱[email protected]。
-
ARM
+關注
關注
134文章
9312瀏覽量
375212 -
龍芯
+關注
關注
3文章
370瀏覽量
31785 -
X86
+關注
關注
5文章
299瀏覽量
44089
發布評論請先 登錄
聚徽廠家視角——X86 架構 vs. ARM 架構:工控一體機的算力、功耗與成本差異解析
龍芯處理器支持WINDOWS嗎?
ARM與x86:架構對比及其應用

什么是RISC-V?以及RISC-V和ARM、X86的區別
英特爾將攜手AMD共同捍衛x86生態
迅為3A6000_7A2000核心主板龍芯全國產處理器LoongArch架構
ARM 架構工控機與 X86 架構工控機:差異究竟在哪?

就服務器而言,ARM架構與X86架構有什么區別?各自的優勢在哪里?
什么是ARM架構?什么是X86架構?兩者的區別是什么?
樹莓派是x86還是arm
X86架構處理器有哪些優點和缺點
探索RISC-V二進制翻譯,openKylin成功在SG2042平臺運行X86架構軟件!

ElfBoard技術貼|如何將libwebsockets庫編譯為x86架構

評論