RISC-V Draft Compressed ISA Version 1.7 Released | RISC-V BLOG
RISC-Vは基本的に32ビット固定長命令なのだが、これに加えて16ビットのスモールサイズの命令セットが公開された。 ARMで言うところのThumb命令セットみたいなものか。
- 命令長が16bit
- レジスタは8本
- ロードストアのオフセットや、定数フィールドが限定されている
などの特徴が見られている。用途としては、やはりメモリ容量の足りない組み込み向けか。まあ、IoTなどのデバイスに組込むのなら、32ビット命令長は今でも大きいほうだと思うので、スモール命令セットを作っておくのは悪いことじゃないと思う。
まだ詳細をチェックした訳ではないけど、
- ロードストアはスタックポインタをベースして実行されるものがある (Stack-Pointer-Based Loads and Stores) C.LWSP loads a 32-bit value from memory into register rd. It computes an effective address by adding the zero-extended offset, scaled by 4, to the stack pointer, x2.
これ、言ってる意味は分かるのだが、もう少し数式かアルゴリズム調に落とせないものかね。いつも英語に苦労する。
他にも面白い命令があれば、紹介していこう。これもシミュレータとして実装していくかな。