龍芯詳解LoongArch指令集:通吃MIPS/ARM/x86
前幾天,龍芯宣布推出LoongArch指令集,放棄了以往的MIPS授權,擁有2500多條自主指令,還可以翻譯MIPS、ARM及x86指令。對於國產CPU發展,過去20多年中始終有兩個問題無法解決,那就是要走自主之路還是走兼容之路,選擇前者就意味著要重新建立一套生態系統,難度極大,選擇後者的話可以兼容目前的ARM或者x86生態,但核心技術不能掌握在自己手裡,不能自主。
龍芯推出的LoongArc指令集某種程度中解決了這個路線之爭,那就是自主與兼容全都要。
在發布自主指令集LoongArch之後,在第四屆關鍵信息基礎設施自主安全創新論壇上,龍芯中科董事長胡偉武發表了《龍芯指令系統架構LoongArch解析》的演講,圍繞自主信息體系建設,以及指令系統生態發展,進一步解讀了龍芯最新發布的龍芯架構LoongArch。
在這個演講中,胡偉武介紹了龍芯的發展情況,特別是LoongArch指令集的情況,自主方面的內容不需要多了,它還可以通過二進制翻譯的方式兼容MIPS、ARM及x86處理器。
對於指令集翻譯,除了技術問題之外,最大的麻煩還是法律,不過現在也不是大問題了,龍芯找了國內外的知識產權團隊作了梳理,哪怕是二進制翻譯別的指令集系統,也沒有專利權的糾紛。
當然,翻譯其他指令也面臨效率問題,好在LoongArch對MIPS指令的翻譯效率是100%,對ARM可以達到90%。
最難的當屬x86,在Linux下翻譯的效率可達80%,Windows下的效率還要減少到70%,不過後續還會有更多的優化。
最後就是LoongArch指令集的後續發展了,龍芯還會繼續進行知識產權分析,並建立LoongArch上游社區分支,同時組建LoongArch聯盟,一方面免費開放LoongArch,另一方面也要在高校推廣,取代RISC-V 。
龍芯的目標是在2025年的時候消除指令集之間的壁壘,也就是5年時間裡龍芯要能徹底搞定不同指令集的兼容問題,這個事意義重大。