From a59407a215d6112c2e20b1a746b33742209e5f87 Mon Sep 17 00:00:00 2001 From: Julian Blake Kongslie Date: Sun, 16 Oct 2022 16:24:49 -0700 Subject: Support for log-based event model --- isa/isa.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'isa/isa.h') diff --git a/isa/isa.h b/isa/isa.h index 11a8db2..bea484e 100644 --- a/isa/isa.h +++ b/isa/isa.h @@ -3,19 +3,20 @@ #include #include -#include "infra/pipetrace.h" - enum ctlreg { DATA_INSTRUCTION_FIELD_BUFFER, // (df << 3) | if_buffer DATA_INSTRUCTION_FIELD_SAVED, // (df_saved << 3) | if_saved + HALTED, INT_ENABLE, // (int_enable_delay << 1) | int_enable + TT_INPUT, // (tti_flag << 8) | tti_buffer + TT_INPUT_INT_ENABLE, + TT_OUTPUT, // {tto_flag_old, tto_flag, tto_tx, tto_data} + TT_OUTPUT_INT_ENABLE, NUM_CTLREGS, }; struct instruction_context { - infra::transaction transaction; - // Known statically at decode time bool need_indirect_load = false; // final_address = mem[init_address] bool need_autoinc_store = false; // mem[init_address] += 1 @@ -43,7 +44,6 @@ struct instruction_context { std::optional acc; std::optional link; std::optional mq; - bool halt = false; }; -instruction_context decode(unsigned int df, unsigned int pc, unsigned int bits); +instruction_context decode(unsigned int df, unsigned int pc, unsigned int bits, bool interrupt); -- cgit v1.2.3