diff options
Diffstat (limited to 'core/pkg')
-rw-r--r-- | core/pkg/riscv_types.sv | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/core/pkg/riscv_types.sv b/core/pkg/riscv_types.sv index 3d68331..48ca87b 100644 --- a/core/pkg/riscv_types.sv +++ b/core/pkg/riscv_types.sv @@ -11,4 +11,28 @@ package riscv_types; INSTR_TYPE_REG = 7'b0110011, // R arith ops with register operands INSTR_TYPE_CSR = 7'b1110011 // I control and status register } opcode_t; + + typedef enum logic [1:0] { + MEM_OP_LOAD, + MEM_OP_STORE, + MEM_OP_NONE + } mem_op_t; + + typedef enum logic [1:0] { + REG_IMM_OFFSET, + PC_IMM_OFFSET, + OFFSET_NONE + } brjmp_op_t; + + typedef enum logic [1:0] { + RS1, + PC, + OP_NONE + } aluSelOp1_t; + + typedef enum logic { + RS2, + IMM + } aluSelOp2_t; + endpackage |