龍芯中科宣布,推出基于自主指令系統LoongArch的二進制翻譯應用解決方案,二進制翻譯為核心技術,旨在消除指令壁壘,實現不同平臺軟體的兼容運行。
支持場景包括MIPS、x86、ARM平臺上廠商已停止支持的老舊軟硬件,以及廠商無法提供充分技術支持的商業閉源軟體,
官方稱,龍芯架構具有完全自主、技術先進、兼容生態三方面特點,LoongArch指令集也在設計之初就充分考慮了生態兼容需求,把實現將異構平臺現有應用軟體平滑遷移到龍芯平臺作為設計目標,
除了基礎指令、虛擬機擴展指令等指令外,LoongArch還包含二進制翻譯擴展指令,以支持龍芯二進制翻譯系統對其他架構下二進制指令的高效翻譯,
龍芯二進制翻譯系統基于LoongArch二進制翻譯擴展指令實現,利用軟硬件結合的翻譯優化技術,實現跨指令集、跨操作系統間的應用兼容、高效運行。
龍芯二進制翻譯應用解決方案通過三個龍芯二進制翻譯系統LATM(LAT from MIPS)、LATA(LAT from ARM)、LATX(LAT from X86),分別支持MIPS、ARM、x86平臺的應用在龍芯平臺的安裝運行。
龍芯二進制翻譯系統作為中間層,通過架構層支持與軟硬協同算法優化,充分利用本地硬件,最大化提升模擬效率,為上層應用軟體提供目標指令集的良好虛擬運行環境,
二進制翻譯技術是實現跨指令系統兼容的重要手段,通過在宿主機(host)上用軟體模擬目標機/客戶機(guest)指令系統兼容的CPU,從而在宿主機上執行客戶機的二進制代碼,達到兼容的目的。
該方案的最大問題是效率,因為純軟體模擬的CPU,要比硬件直接實現的CPU慢很多,運行速度往往都是數量級的差異,
龍芯二進制翻譯系統利用動態二進制翻譯技術,使用了多種軟硬件結合的翻譯優化技術,利用LoongArch指令集二進制翻譯擴展提供的EFLAGS運算標志指令與浮點特殊尋址模式支持,大幅減少翻譯代價,提升二進制翻譯程式的運行效率。
龍芯二進制翻譯解決方案的三大優勢:
- 高效
基于軟硬件結合的高效二進制翻譯技術,比傳統軟體模擬方式有數量級的性能提升,應用級翻譯實現對3D加速、視訊編解碼等功能的硬件支持,
- 兼容
跨指令集應用兼容運行,通過wine中間件可實現Windows到Linux的操作系統級別兼容,支持多平臺應用在龍芯平臺的運行。
- 自主
與龍芯自主指令集設計深度協同,通過持續優化改進翻譯器和指令集,實現更高效的翻譯與更廣泛的兼容性,
通過龍芯二進制翻譯系統,基于wine中間件技術,可以在龍芯平臺上流暢運行常用桌面應用,如微信、Photoshop等等,
它還支持硬件加速,可加速音視訊、3D等應用場景,比如流暢運行CS等3D游戲,后續還將不斷適配更多x86應用,
目前,龍芯二進制翻譯技術已經落地多個解決方案場景,比如龍芯辦公外設利舊通用解決方案(虛擬列印),