LoongISA

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
LoongISA 1.0正式公开于在2015年8月18日的发布会，和龙芯3A2000、GS464E、Loongnix一起发布。
LoongISA指令系统在MIPS64架构500多条指令基础上，在基础指令、虚拟机指令、面向X86和ARM的二进制翻译指令、向量指令和核心态等多个方面增加了近1400条新指令，其中包括：
 148条 LoongEXT 指令
 5条 LoongVZ 指令
 213条 LoongBT 指令
 1014条 LoongSIMD 指令
将 MIPS 原本的527条指令，扩展为1907条。

LoongISA 1.0 里包括 MIPS 部分指令集，其中有 MIPS64 Release 2 全套指令集和 MIPS64 Release 5 中的 MSA 向量指令模块、 DSP 指令模块和 VZ 虚拟化指令模块。

LoongISA 2.0
LoongISA 2.0是随着龙芯3A/B4000产生的新一代自主指令集，相对于LoongISA 1.0删去了其中的 MIPS DSP 指令集模块，添加了新的 LoongBT 指令集，且一并添加了新的 LoongSX、LoongASX、LoongEXT3、LoongAMO 等指令集。

指令集列表

指令集

MIPS部分

与MIPS的不同点

浮点标准 

LoongISA 1.0的浮点遵守IEEE754-1989标准，使用Legacy NaN的QNaN/SNaN定义。但是其MADD指令则按IEEE754-2008的Fused MADD标准实现，与MIPS64 Release2不同。

LoongISA 2.0则全部遵循IEEE754-2008标准，使用IEEE754-2008规定的NaN 2008的QNaN/SNaN定义，依照MIPS64 Release 5 实现浮点运算单元。

LoongMMI

LoongMMI（LoongMultiMedia  extensions Instruction）指令集是龙芯多媒体扩展指令集的英文简称，用于多媒体加速。

LoongEXT
LoongEXT（简称LEXT）是龙芯通用扩展指令集。LoongEXT现在最新版为3.0，按照指令长度分LoongEXT32和LoongEXT64两种类别。LoongEXT指令集已提交了对gcc社区的支持，可在编译中选用此指令集的优化选项。

LoongVZ
LoongVZ（简称LVZP）是龙芯针对MIPS64 Release 5中的VZ虚拟化模块指令集的扩展，现已在龙芯中科的KVM、QEMU和libvirt库中有所运用。

参考文献

参见 

 龙芯
 龙芯中科
 MIPS架构
 精简指令集

外部链接
 Loongnix 开源社区源码库 

指令集架構
龙芯