diff --git a/pipelined/src/cache/cachefsm.sv b/pipelined/src/cache/cachefsm.sv index 054e3d4b7..4a22b9cb0 100644 --- a/pipelined/src/cache/cachefsm.sv +++ b/pipelined/src/cache/cachefsm.sv @@ -86,7 +86,7 @@ module cachefsm logic DoAMOMiss, DoReadMiss, DoWriteMiss; logic FlushFlag; - typedef enum {STATE_READY, + typedef enum logic [3:0] {STATE_READY, STATE_MISS_FETCH_WDV, STATE_MISS_FETCH_DONE, diff --git a/pipelined/src/ebu/ahblite.sv b/pipelined/src/ebu/ahblite.sv index e9f54cbc9..9b82aff47 100644 --- a/pipelined/src/ebu/ahblite.sv +++ b/pipelined/src/ebu/ahblite.sv @@ -35,10 +35,6 @@ `include "wally-config.vh" -package ahbliteState; - typedef enum logic [3:0] {IDLE, MEMREAD, MEMWRITE, INSTRREAD} statetype; -endpackage - module ahblite ( input logic clk, reset, // Load control @@ -75,6 +71,9 @@ module ahblite ( (* mark_debug = "true" *) output logic HWRITED ); + typedef enum logic [1:0] {IDLE, MEMREAD, MEMWRITE, INSTRREAD} statetype; + statetype BusState, NextBusState; + logic GrantData; logic [31:0] AccessAddress; logic [2:0] ISize; @@ -88,8 +87,6 @@ module ahblite ( // Data accesses have priority over instructions. However, if a data access comes // while an instruction read is occuring, the instruction read finishes before // the data access can take place. - import ahbliteState::*; - statetype BusState, NextBusState; flopenl #(.TYPE(statetype)) busreg(HCLK, ~HRESETn, 1'b1, NextBusState, IDLE, BusState); diff --git a/pipelined/src/ieu/controller.sv b/pipelined/src/ieu/controller.sv index bde552ab5..8f3967576 100644 --- a/pipelined/src/ieu/controller.sv +++ b/pipelined/src/ieu/controller.sv @@ -228,5 +228,5 @@ module controller( assign CSRWritePendingDEM = CSRWriteD | CSRWriteE | CSRWriteM; - assign StoreStallD = MemRWE[0] & (|MemRWD | |AtomicD); + assign StoreStallD = MemRWE[0] & ((|MemRWD) | (|AtomicD)); endmodule diff --git a/pipelined/src/ifu/spillsupport.sv b/pipelined/src/ifu/spillsupport.sv index ff8b9b4f6..7dbd4f09e 100644 --- a/pipelined/src/ifu/spillsupport.sv +++ b/pipelined/src/ifu/spillsupport.sv @@ -64,7 +64,7 @@ module spillsupport ( assign SpillF = &PCF[$clog2(SPILLTHRESHOLD)+1:1]; - typedef enum {STATE_SPILL_READY, STATE_SPILL_SPILL} statetype; + typedef enum logic [1:0] {STATE_SPILL_READY, STATE_SPILL_SPILL} statetype; (* mark_debug = "true" *) statetype CurrState, NextState; always_ff @(posedge clk) diff --git a/pipelined/src/lsu/busfsm.sv b/pipelined/src/lsu/busfsm.sv index 86aab3a06..837326d51 100644 --- a/pipelined/src/lsu/busfsm.sv +++ b/pipelined/src/lsu/busfsm.sv @@ -64,7 +64,7 @@ module busfsm #(parameter integer WordCountThreshold, logic UnCachedAccess; - typedef enum {STATE_BUS_READY, + typedef enum logic [2:0] {STATE_BUS_READY, STATE_BUS_FETCH, STATE_BUS_WRITE, STATE_BUS_UNCACHED_WRITE, diff --git a/pipelined/src/lsu/interlockfsm.sv b/pipelined/src/lsu/interlockfsm.sv index 749685cd8..d09139b9c 100644 --- a/pipelined/src/lsu/interlockfsm.sv +++ b/pipelined/src/lsu/interlockfsm.sv @@ -49,7 +49,7 @@ module interlockfsm output logic IgnoreRequestTrapM); - typedef enum {STATE_T0_READY, + typedef enum logic[2:0] {STATE_T0_READY, STATE_T0_REPLAY, STATE_T3_DTLB_MISS, STATE_T4_ITLB_MISS, diff --git a/pipelined/src/mmu/hptw.sv b/pipelined/src/mmu/hptw.sv index e2bf4a141..123d26944 100644 --- a/pipelined/src/mmu/hptw.sv +++ b/pipelined/src/mmu/hptw.sv @@ -46,7 +46,7 @@ module hptw output logic [2:0] HPTWSize // 32 or 64 bit access. ); - typedef enum {L0_ADR, L0_RD, + typedef enum logic [3:0] {L0_ADR, L0_RD, L1_ADR, L1_RD, L2_ADR, L2_RD, L3_ADR, L3_RD, diff --git a/pipelined/src/uncore/uartPC16550D.sv b/pipelined/src/uncore/uartPC16550D.sv index 8dff4c634..d1f72fdea 100644 --- a/pipelined/src/uncore/uartPC16550D.sv +++ b/pipelined/src/uncore/uartPC16550D.sv @@ -55,7 +55,7 @@ module uartPC16550D( ); // transmit and receive states // *** neeed to work on synth warning -- it wants to make enums 32 bits by default - typedef enum {UART_IDLE, UART_ACTIVE, UART_DONE, UART_BREAK} statetype; + typedef enum logic [1:0] {UART_IDLE, UART_ACTIVE, UART_DONE, UART_BREAK} statetype; // Registers logic [10:0] RBR; diff --git a/synthDC/.synopsys_dc.setup b/synthDC/.synopsys_dc.setup index 6cc7cec76..95b39b13f 100755 --- a/synthDC/.synopsys_dc.setup +++ b/synthDC/.synopsys_dc.setup @@ -12,10 +12,10 @@ if { [info exists ::env(RISCV)] } { } if {$tech == "sky130"} { - set s8lib $timing_lib/sky130_osu_sc_t12/12T_ms/lib/ + set s8lib $timing_lib/sky130_osu_sc_t12/12T_ms/lib lappend search_path $s8lib } elseif {$tech == "sky90"} { - set s9lib $timing_lib/sky90/tech_files/ + set s9lib $timing_lib/sky90/sky90_sc/V1.7.4/lib lappend search_path $s9lib } diff --git a/synthDC/scripts/synth.tcl b/synthDC/scripts/synth.tcl index dfe6baa03..5b21e94e8 100755 --- a/synthDC/scripts/synth.tcl +++ b/synthDC/scripts/synth.tcl @@ -3,7 +3,6 @@ # james.stine@okstate.edu 27 Sep 2015 # -<<<<<<< HEAD # Ignore unnecessary warnings: # intraassignment delays for nonblocking assignments are ignored suppress_message {VER-130} @@ -11,8 +10,6 @@ suppress_message {VER-130} suppress_message {VER-281} suppress_message {VER-173} -======= ->>>>>>> 524ba78808f28905d48c866eec9f8e7badd42ea8 # get outputDir from environment (Makefile) set outputDir $::env(OUTPUTDIR) set cfgName $::env(CONFIG)