龍芯自主指令集二進制翻譯應用:可流暢打CS

龍芯中科宣布,推出基於自主指令系統LoongArch的二進制翻譯應用解決方案,二進制翻譯為核心技術,旨在消除指令壁壘,實現不同平台軟件的兼容運行。支持場景包括MIPS、x86、ARM平台上廠商已停止支持的老舊軟硬件,以及廠商無法提供充分技術支持的商業閉源軟件。

龍芯自主指令集二進制翻譯應用:可流暢打CS

官方稱,龍芯架構具有完全自主、技術先進、兼容生態三方面特點,LoongArch指令集也在設計之初就充分考慮了生態兼容需求,把實現將異構平台現有應用軟件平滑遷移到龍芯平台作為設計目標。

除了基礎指令、虛擬機擴展指令等指令外,LoongArch還包含二進制翻譯擴展指令,以支持龍芯二進制翻譯系統對其他架構下二進制指令的高效翻譯。

龍芯二進制翻譯系統基於LoongArch二進制翻譯擴展指令實現,利用軟硬件結合的翻譯優化技術,實現跨指令集、跨操作系統間的應用兼容、高效運行。

龍芯二進制翻譯應用解決方案通過三個龍芯二進制翻譯系統LATM(LAT from MIPS)、LATA(LAT from ARM)、LATX(LAT from X86),分別支持MIPS、ARM、x86平台的應用在龍芯平台的安裝運行。

龍芯二進制翻譯系統作為中間層,通過架構層支持與軟硬協同算法優化,充分利用本地硬件,最大化提升模擬效率,為上層應用軟件提供目標指令集的良好虛擬運行環境。

龍芯自主指令集二進制翻譯應用:可流暢打CS

二進制翻譯技術是實現跨指令系統兼容的重要手段,通過在宿主機(host)上用軟件模擬目標機/客戶機(guest)指令系統兼容的CPU,從而在宿主機上執行客戶機的二進制代碼,達到兼容的目的。

該方案的最大問題是效率,因為純軟件模擬的CPU,要比硬件直接實現的CPU慢很多,運行速度往往都是數量級的差異。

龍芯二進制翻譯系統利用動態二進制翻譯技術,使用了多種軟硬件結合的翻譯優化技術,利用LoongArch指令集二進制翻譯擴展提供的EFLAGS運算標誌指令與浮點特殊尋址模式支持,大幅減少翻譯代價,提升二進制翻譯程序的運行效率。

龍芯二進制翻譯解決方案的三大優勢:

- 高效

基於軟硬件結合的高效二進制翻譯技術,比傳統軟件模擬方式有數量級的性能提升。應用級翻譯實現對3D加速、視頻編解碼等功能的硬件支持。

- 兼容

跨指令集應用兼容運行,通過wine中間件可實現Windows到Linux的操作系統級別兼容,支持多平台應用在龍芯平台的運行。

- 自主

與龍芯自主指令集設計深度協同,通過持續優化改進翻譯器和指令集,實現更高效的翻譯與更廣泛的兼容性。

通過龍芯二進制翻譯系統,基於wine中間件技術,可以在龍芯平台上流暢運行常用桌面應用,如微信、Photoshop等等。

龍芯自主指令集二進制翻譯應用:可流暢打CS

它還支持硬件加速,可加速音視頻、3D等應用場景,比如流暢運行CS等3D遊戲,後續還將不斷適配更多x86應用。

龍芯自主指令集二進制翻譯應用:可流暢打CS

目前,龍芯二進制翻譯技術已經落地多個解決方案場景,比如龍芯辦公外設利舊通用解決方案(虛擬打印)。

龍芯自主指令集二進制翻譯應用:可流暢打CS

(0)
上一篇 2021-11-09 22:13
下一篇 2021-11-09 22:13

相关推荐