From 2c2cf3000b72ba23bd79da88f30e7da4f6ddd0aa Mon Sep 17 00:00:00 2001 From: mariusmonton Date: Mon, 11 Feb 2019 15:52:48 +0100 Subject: [PATCH] typos, register definitions --- inc/CPU.h | 4 +++- inc/Registers.h | 39 +++++++++++++++++++++++++++++++++++++++ inc/Timer.h | 4 ++-- 3 files changed, 44 insertions(+), 3 deletions(-) diff --git a/inc/CPU.h b/inc/CPU.h index 66a6541..9880d14 100644 --- a/inc/CPU.h +++ b/inc/CPU.h @@ -71,7 +71,7 @@ private: /** * - * @brief Process and triggers IRQ if all conditions memory_socket + * @brief Process and triggers IRQ if all conditions met * @return true if IRQ is triggered, false otherwise */ bool cpu_process_IRQ(); @@ -95,6 +95,8 @@ private: * @brief callback for IRQ simple socket * @param trans transaction to perform (empty) * @param delay time to annotate + * + * When called it triggers an IRQ */ void call_interrupt(tlm::tlm_generic_payload &trans, sc_time &delay); }; diff --git a/inc/Registers.h b/inc/Registers.h index 9f11b82..1624980 100644 --- a/inc/Registers.h +++ b/inc/Registers.h @@ -59,6 +59,45 @@ #define CSR_STVEC (0x105) + +#define MSTATUS_UIE (1 << 0) +#define MSTATUS_SIE (1 << 1) +#define MSTATUS_MIE (1 << 3) +#define MSTATUS_UPIE (1 << 4) +#define MSTATUS_SPIE (1 << 5) +#define MSTATUS_MPIE (1 << 7) +#define MSTATUS_SPP (1 << 8) +#define MSTATUS_MPP (1 << 11) +#define MSTATUS_FS (1 << 13) +#define MSTATUS_XS (1 << 15) +#define MSTATUS_MPRV (1 << 17) +#define MSTATUS_SUM (1 << 18) +#define MSTATUS_MXR (1 << 19) +#define MSTATUS_TVM (1 << 20) +#define MSTATUS_TW (1 << 21) +#define MSTATUS_TSR (1 << 22) + +#define MIP_USIP (1 << 0) +#define MIP_SSIP (1 << 1) +#define MIP_MSIP (1 << 3) +#define MIP_UTIP (1 << 4) +#define MIP_STIP (1 << 5) +#define MIP_MTIP (1 << 7) +#define MIP_UEIP (1 << 8) +#define MIP_SEIP (1 << 9) +#define MIP_MEIP (1 << 11) + +#define MIE_USIE (1 << 0) +#define MIE_SSIE (1 << 1) +#define MIE_MSIE (1 << 3) +#define MIE_UTIE (1 << 4) +#define MIE_STIE (1 << 5) +#define MIE_MTIE (1 << 7) +#define MIE_UEIE (1 << 8) +#define MIE_SEIE (1 << 9) +#define MIE_MEIE (1 << 11) + + /* 1 ns tick in CYCLE & TIME counters */ #define TICKS_PER_SECOND (1000000) diff --git a/inc/Timer.h b/inc/Timer.h index 25ce2f5..55a8de8 100644 --- a/inc/Timer.h +++ b/inc/Timer.h @@ -58,9 +58,9 @@ public: /** * - * @brief TLM-2.0 socket implementaiton + * @brief TLM-2.0 socket implementation * @param trans TLM-2.0 transaction - * @param delay transactino delay time + * @param delay transaction delay time */ virtual void b_transport( tlm::tlm_generic_payload& trans, sc_time& delay );