LoongISA(簡稱LISA)是龍芯中科出品的,通過64位MIPS指令集擴展而來的CPU指令集架構。LoongISA 採用MIPS的指令集格式,包括MIPS64 Release 2全套指令集和MIPS64 Release 5中的部分指令模塊,以及其他一系列龍芯中科自主擴展的指令集。LoongISA是龍芯中科的註冊商標。
此條目需要精通或熟悉相關主題的編者參與及協助編輯。 |
2021年4月15日,龍芯發布了新指令集架構LoongArch,同年出品了使用該架構的3A5000。此後的龍芯CPU都使用LoongArch,LoongISA進入棄用狀態。
版本
LoongISA 1.0正式公開於在2015年8月18日的發布會,和龍芯3A2000、GS464E、Loongnix一起發布。[1][2][3][4] LoongISA指令系統在MIPS64架構500多條指令基礎上,在基礎指令、虛擬機指令、面向X86和ARM的二進制翻譯指令、向量指令和核心態等多個方面增加了近1400條新指令,[1]其中包括:
- 148條 LoongEXT 指令
- 5條 LoongVZ 指令
- 213條 LoongBT 指令
- 1014條 LoongSIMD 指令
將 MIPS 原本的527條指令,擴展為1907條。[3]
LoongISA 1.0 里包括 MIPS 部分指令集,其中有 MIPS64 Release 2 全套指令集和 MIPS64 Release 5 中的 MSA 向量指令模塊、 DSP 指令模塊和 VZ 虛擬化指令模塊。
LoongISA 2.0是隨着龍芯3A/B4000產生的新一代自主指令集,相對於LoongISA 1.0刪去了其中的 MIPS DSP 指令集模塊,添加了新的 LoongBT 指令集,且一併添加了新的 LoongSX、LoongASX、LoongEXT3、LoongAMO 等指令集。
指令集列表
指令集全稱 | 指令集簡稱 | 指令集描述 | LoongISA 1.0 GS464E、GS264 |
LoongISA 2.0 GS464V R2 |
備註 |
---|---|---|---|---|---|
MIPS部分(MIPS64 R2)[8] | |||||
MIPS SIMD Architecture 1.0 | MSA 1 | MIPS64 可選SIMD模塊 | 有 | 有 | |
MIPS SIMD Architecture 2.0 | MSA 2 | MIPS64 可選SIMD模塊 | 無 | 有 | |
MIPS Virtualization | VZ | MIPS64 可選虛擬化模塊 | 有 | 有 | |
MIPS DSP | DSP | MIPS64 可選DSP模塊 | 有 | 無 | |
MIPS Cryptographic | CGP | MIPS64 可選密碼學指令集 | 無 | 有 | |
龍芯擴展指令 | |||||
LoongMMI | MMI | 龍芯多媒體擴展指令集 | 有 | 有 | |
LoongCAM | LCAMP | 硬件查找表功能指令集 | 有 | 有 | |
LoongEXT 1 | EXT 1 | 龍芯通用擴展指令集 I | 有 | 有 | |
LoongEXT 2 | EXT 2 | 龍芯通用擴展指令集 II | 有 | 有 | |
LoongEXT 3 | EXT 3 | 龍芯通用擴展指令集 III | 無 | 有 | |
LoongVZ | LVZP | 龍芯虛擬化擴展指令集 | 有 | 有 | |
LoongSX 1 | LSX 1 | 龍芯向量擴展指令集 I | 無 | 有 | |
LoongSX 2 | LSX 2 | 龍芯向量擴展指令集 II | 無 | 有 | |
LoongASX | LASX | 龍芯高級向量擴展指令集 | 無 | 有 | |
LoongSPW | LSPW | 龍芯頁表遍歷擴展指令集 | 無 | 有 | |
LoongAMO | LAMO | 龍芯原子訪存指令集 | 無 | 有 | |
LoongBT 1 | LBT 1 | 龍芯二進制翻譯加速擴展指令集 I | 有 | 有 | |
LoongBT 2 | LBT 2 | 龍芯二進制翻譯加速擴展指令集 II | 無 | 有 | |
LoongBT 3 | LBT 3 | 龍芯二進制翻譯加速擴展指令集 III | 無 | 有 |
指令集
此章節需要擴充。 (2019年12月1日) |
LoongISA 1.0的浮點遵守IEEE754-1989標準,使用Legacy NaN的QNaN/SNaN定義。但是其MADD指令則按IEEE754-2008的Fused MADD標準實現,與MIPS64 Release2不同。[9]
LoongISA 2.0則全部遵循IEEE754-2008標準,使用IEEE754-2008規定的NaN 2008的QNaN/SNaN定義,依照MIPS64 Release 5 實現浮點運算單元。
LoongMMI(LoongMultiMedia extensions Instruction)指令集是龍芯多媒體擴展指令集的英文簡稱,用於多媒體加速。
LoongEXT(簡稱LEXT)是龍芯通用擴展指令集。LoongEXT現在最新版為3.0,按照指令長度分LoongEXT32和LoongEXT64兩種類別。LoongEXT指令集已提交了對gcc社區的支持,[10]可在編譯中選用此指令集的優化選項。
LoongVZ(簡稱LVZP)是龍芯針對MIPS64 Release 5中的VZ虛擬化模塊指令集的擴展,現已在龍芯中科的KVM、QEMU和libvirt庫中有所運用。
參考文獻
參見
外部連結
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.