Reduced busfsm to 3 states!

This commit is contained in:
Ross Thompson 2022-08-31 16:11:59 -05:00
parent 6f3dad8207
commit 7598fbcb3b
2 changed files with 3 additions and 9 deletions

View File

@ -62,7 +62,6 @@ module buscachefsm #(parameter integer WordCountThreshold,
typedef enum logic [2:0] {STATE_READY,
STATE_CAPTURE,
STATE_DELAY,
STATE_CPU_BUSY,
STATE_CACHE_FETCH,
STATE_CACHE_EVICT} busstatetype;
@ -89,10 +88,8 @@ module buscachefsm #(parameter integer WordCountThreshold,
else BusNextState = STATE_READY;
STATE_CAPTURE: if(HREADY) BusNextState = STATE_DELAY;
else BusNextState = STATE_CAPTURE;
STATE_DELAY: if(CPUBusy) BusNextState = STATE_CPU_BUSY;
STATE_DELAY: if(CPUBusy) BusNextState = STATE_DELAY;
else BusNextState = STATE_READY;
STATE_CPU_BUSY: if(CPUBusy) BusNextState = STATE_CPU_BUSY;
else BusNextState = STATE_READY;
STATE_CACHE_FETCH: if(HREADY & FinalWordCount) BusNextState = STATE_READY;
else BusNextState = STATE_CACHE_FETCH;
STATE_CACHE_EVICT: if(HREADY & FinalWordCount) BusNextState = STATE_READY;

View File

@ -48,8 +48,7 @@ module busfsm
typedef enum logic [2:0] {STATE_READY,
STATE_CAPTURE,
STATE_DELAY,
STATE_CPU_BUSY} busstatetype;
STATE_DELAY} busstatetype;
typedef enum logic [1:0] {AHB_IDLE = 2'b00, AHB_BUSY = 2'b01, AHB_NONSEQ = 2'b10, AHB_SEQ = 2'b11} ahbtranstype;
@ -65,10 +64,8 @@ module busfsm
else BusNextState = STATE_READY;
STATE_CAPTURE: if(HREADY) BusNextState = STATE_DELAY;
else BusNextState = STATE_CAPTURE;
STATE_DELAY: if(CPUBusy) BusNextState = STATE_CPU_BUSY;
STATE_DELAY: if(CPUBusy) BusNextState = STATE_DELAY;
else BusNextState = STATE_READY;
STATE_CPU_BUSY: if(CPUBusy) BusNextState = STATE_CPU_BUSY;
else BusNextState = STATE_READY;
default: BusNextState = STATE_READY;
endcase
end