3.4.2.1. status レジスター
3.4.2.2. estatus レジスター
3.4.2.3. bstatus レジスター
3.4.2.4. ienable レジスター
3.4.2.5. ipending レジスター
3.4.2.6. cpuid レジスター
3.4.2.7. exception レジスター
3.4.2.8. pteaddr レジスター
3.4.2.9. tlbacc レジスター
3.4.2.10. tlbmisc レジスター
3.4.2.11. badaddr レジスター
3.4.2.12. config レジスター
3.4.2.13. mpubase レジスター
3.4.2.14. mpuacc レジスター
8.5.1. add
8.5.2. addi
8.5.3. and
8.5.4. andhi
8.5.5. andi
8.5.6. beq
8.5.7. bge
8.5.8. bgeu
8.5.9. bgt
8.5.10. bgtu
8.5.11. ble
8.5.12. bleu
8.5.13. blt
8.5.14. bltu
8.5.15. bne
8.5.16. br
8.5.17. break
8.5.18. bret
8.5.19. call
8.5.20. callr
8.5.21. cmpeq
8.5.22. cmpeqi
8.5.23. cmpge
8.5.24. cmpgei
8.5.25. cmpgeu
8.5.26. cmpgeui
8.5.27. cmpgt
8.5.28. cmpgti
8.5.29. cmpgtu
8.5.30. cmpgtui
8.5.31. cmple
8.5.32. cmplei
8.5.33. cmpleu
8.5.34. cmpleui
8.5.35. cmplt
8.5.36. cmplti
8.5.37. cmpltu
8.5.38. cmpltui
8.5.39. cmpne
8.5.40. cmpnei
8.5.41. custom
8.5.42. div
8.5.43. divu
8.5.44. eret
8.5.45. flushd
8.5.46. flushda
8.5.47. flushi
8.5.48. flushp
8.5.49. initd
8.5.50. initda
8.5.51. initi
8.5.52. jmp
8.5.53. jmpi
8.5.54. ldb / ldbio
8.5.55. ldbu / ldbuio
8.5.56. ldh / ldhio
8.5.57. ldhu / ldhuio
8.5.58. ldw / ldwio
8.5.59. mov
8.5.60. movhi
8.5.61. movi
8.5.62. movia
8.5.63. movui
8.5.64. mul
8.5.65. muli
8.5.66. mulxss
8.5.67. mulxsu
8.5.68. mulxuu
8.5.69. nextpc
8.5.70. nop
8.5.71. nor
8.5.72. or
8.5.73. orhi
8.5.74. ori
8.5.75. rdctl
8.5.76. rdprs
8.5.77. ret
8.5.78. rol
8.5.79. roli
8.5.80. ror
8.5.81. sll
8.5.82. slli
8.5.83. sra
8.5.84. srai
8.5.85. srl
8.5.86. srli
8.5.87. stb / stbio l
8.5.88. sth / sthio
8.5.89. stw / stwio
8.5.90. sub
8.5.91. subi
8.5.92. sync
8.5.93. trap
8.5.94. wrctl
8.5.95. wrprs
8.5.96. xor
8.5.97. xorhi
8.5.98. xori
8.5.88. sth / sthio
| 命令 | メモリーまたはペリフェラル I/O へのハーフワードのストアー |
| 演算 | Mem16[rA + σ(IMM16)] ← rB15..0 |
| アセンブラー構文 | sth rB, byte_offset(rA) sthio rB, byte_offset(rA) |
| 例 | sth r6, 100(r5) |
| 説明 | rA の値と命令の符号付き 16 ビット即値の合計で指定される有効なバイトアドレスを計算する。rB の下位ハーフワードを有効なバイトアドレスで指定されたメモリー位置に格納する。有効なバイトアドレスは、ハーフワード・アライメントされる必要がある。バイトアドレスが 2 の倍数でない場合、演算は未定義である。 |
| 使用法 | データキャッシュを備えたプロセッサーでは、この命令は Avalon-MM データ転送を即座に生成しない。ペリフェラル I/O では sthio 命令を使用する必要がある。データキャッシュを備えたプロセッサーでは、sthioはキャッシュをバイパスし、Avalon-MM データ転送の生成が保証されている。データキャッシュがないプロセッサーでは、sthioはsthのように動作する。 |
| 例外 | スーパーバイザー専用データアドレス ミスアライメント・データ・アドレス TLB 許可違反 ( 書き込み ) 高速 TLB ミス ( データ ) ダブル TLB ミス ( データ ) MPU 領域違反 ( データ ) |
| 命令型 | I |
| 命令フィールド | A = オペランド rA のレジスター・インデックス B = オペランド rB のレジスター・インデックス IMM16 = 16 ビットの符号付き即値 |
| ビットフィールド | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| A | B | IMM16 | |||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| IMM16 | 0x0d | ||||||||||||||
| ビットフィールド | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| A | B | IMM16 | |||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| IMM16 | 0x2d | ||||||||||||||