aboutsummaryrefslogtreecommitdiff
path: root/core/pkg
diff options
context:
space:
mode:
Diffstat (limited to 'core/pkg')
-rw-r--r--core/pkg/riscv_types.sv24
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