# ISA Reference Tables These are from 3.0B p1145 Appendix C, and are based on Anton Blanchard's microwatt decode1.vhdl # Major opcodes decodes using f_in.insn(31 downto 26) [[!table format=csv file="openpower/isatables/major.csv"]] # Minor opcode 19 decodes using f_in.insn(5 downto 1) [[!table format=csv file="openpower/isatables/minor_19_00000.csv"]] decodes using f_in.insn(10 downto 1) [[!table format=csv file="openpower/isatables/minor_19.csv"]] # Minor opcode 30 decodes using f_in.insn(4 downto 1) [[!table format=csv file="openpower/isatables/minor_30.csv"]] # Minor opcode 31 decodes using f_in.insn(10 downto 1) [[!table format=csv file="openpower/isatables/minor_31.csv"]] # Minor opcode 58 decodes using f_in.insn(1 downto 0) [[!table format=csv file="openpower/isatables/minor_58.csv"]] # Minor opcode 62 decodes using f_in.insn(1 downto 0) [[!table format=csv file="openpower/isatables/minor_62.csv"]] # Extra opcodes These can match against the (full) row[0] spec: nmigen Case supports "-" as "don't care" [[!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" ]] ```