add notes on 2024-01-23 meeting. terminated due to harrassment
[libreriscv.git] / openpower / isatables.mdwn
index 7affedc5fa3a310e0bcabfa2b783dee9f4188c03..e9bde11f78b77df6826ddfb5834fb0d702b0bcc6 100644 (file)
@@ -1,8 +1,7 @@
 # ISA Reference Tables
 
-TODO
-
-Based on Anton Blanchard's microwatt decode1.vhdl
+These are from 3.0B p1145 Appendix C, and are
+based on Anton Blanchard's microwatt decode1.vhdl
 
 # Major opcodes
 
@@ -12,9 +11,11 @@ decodes using f_in.insn(31 downto 26)
 
 # Minor opcode 19
 
-valid from table using f_in.insn(10 downto 1)
+decodes using f_in.insn(5 downto 1)
+
+[[!table format=csv file="openpower/isatables/minor_19_00000.csv"]]
 
-decodes using f_in.insn(5) & f_in.insn(3) & f_in.insn(2)
+decodes using f_in.insn(10 downto 1)
 
 [[!table format=csv file="openpower/isatables/minor_19.csv"]]
 
@@ -49,3 +50,22 @@ These can match against the (full) row[0] spec: nmigen Case supports "-" as
 
 [[!table format=csv file="openpower/isatables/extra.csv"]]
 
+# SPRs
+
+Special Purpose Registers.  These are listed in 3.0B Table 18 p971.
+
+[[!table format=csv file="openpower/isatables/sprs.csv"]]
+
+# Fields
+
+These are in machine-readable format that may be parsed with the
+following program:
+[power_fields.py](https://git.libre-soc.org/?p=openpower-isa.git;a=blob;f=src/openpower/decoder/power_fields.py;hb=HEAD)
+
+The table can be downloaded in plain text format here:
+[[openpower/isatables/fields.text]]
+
+```
+[[!inline pages="openpower/isatables/fields.text" raw="yes" ]]
+```
+