L.SBI¶
说明¶
立即数偏移·存字节(Store Byte with Immediate Offset)
本指令将数据寄存器的低位一个字节(byte)数据存入目标地址指向的内存,目标地址由 基址寄存器 加 有符号立即数偏移 计算得到。
汇编语法¶
汇编符号¶
- local:表示访问Tile寄存器的空间,缺省表示访问内存空间。
- SrcL:数据寄存器,可以索引的寄存器类型请见长指令介绍。
- SrcR:基址寄存器,可以索引的寄存器类型请见长指令介绍。
- T:指定操作数的数据类型,可选类型包括sb,sh,sw,sd,ub,uh,uw,ud等。
- simm:有符号立即数偏移,该参数编码于simm24字段。
如果输入寄存器是向量寄存器,那么应使用本指令对应的向量版本。
编码格式¶
其中,L标志位含义如下:
| L(local) | 含义 |
|---|---|
| 0 | 访问内存空间 |
| 1 | 访问Tile寄存器空间 |
寄存器字段的编解码方式请见长指令编码小节。
执行方式¶
- 解码输入参数:DecodeINT
- 标量寄存器读写:SREG[]
- 对数据符号扩展:SignExtend()
integer {m, srcWidth1} = DecodeINT(SrcL);
integer {n, srcWidth2} = DecodeINT(SrcR);
bits(srcWidth1) data = SREG[m, srcWidth1];
bits(64) base = SREG[n, srcWidth2];
bits(64) offset = SignExtend(simm24);
bits(64) address= base + offset;
Mem[address] = data[7:0];
注意事项¶
- 本指令不占块内私有寄存器槽位。