35 lines
766 B
Systemverilog
35 lines
766 B
Systemverilog
package application_wrapper_cache_pkg;
|
|
|
|
typedef struct {
|
|
logic cache_disable;
|
|
logic read_eanble;
|
|
logic write_enable;
|
|
logic execute_enable;
|
|
logic supervisor;
|
|
logic present;
|
|
logic write_through;
|
|
} page_table_entry_t;
|
|
|
|
typedef enum logic [2:0] {
|
|
CACHE_CMD_NONE,
|
|
CACHE_CMD_READ,
|
|
CACHE_CMD_READ_UNIQUE,
|
|
CACHE_CMD_WRITE,
|
|
CACHE_CMD_CLEAN_UNIQUE,
|
|
CACHE_CMD_EVICT
|
|
} cache_cmd_e;
|
|
|
|
typedef enum logic [1:0] {
|
|
CACHE_RSP_NONE,
|
|
CACHE_RSP_SHARED,
|
|
CACHE_RSP_EXCLUSIVE
|
|
} cache_resp_e;
|
|
|
|
typedef enum logic [1:0] {
|
|
MESI_INVALID,
|
|
MESI_SHARED,
|
|
MESI_EXCLUSIVE,
|
|
MESI_MODIFIED
|
|
} mesi_e;
|
|
|
|
endpackage |