修改变量名

This commit is contained in:
Liphen 2023-11-26 12:15:14 +08:00
parent 7daed5b3a5
commit 703b70adf4
3 changed files with 28 additions and 29 deletions

View File

@ -73,7 +73,6 @@ class Core(implicit val config: CpuConfig) extends Module {
decoderUnit.bpu.branch_target := bpu.decoder.branch_target decoderUnit.bpu.branch_target := bpu.decoder.branch_target
instFifo.do_flush := ctrl.decoderUnit.do_flush instFifo.do_flush := ctrl.decoderUnit.do_flush
instFifo.icache_stall := io.inst.stall
instFifo.ren <> decoderUnit.instFifo.allow_to_go instFifo.ren <> decoderUnit.instFifo.allow_to_go
decoderUnit.instFifo.inst <> instFifo.read decoderUnit.instFifo.inst <> instFifo.read

View File

@ -24,25 +24,26 @@ class ICache(implicit config: CpuConfig) extends Module {
val raddr = Cat(io.cpu.addr(read_next_addr)(31, 2), 0.U(2.W)) val raddr = Cat(io.cpu.addr(read_next_addr)(31, 2), 0.U(2.W))
// default // default
val ar = RegInit(0.U.asTypeOf(new Bundle { val arvalid = RegInit(false.B)
val valid = Bool() val araddr = RegInit(0.U(32.W))
val addr = UInt(32.W) io.axi.ar.id := 0.U
})) io.axi.ar.addr := araddr
val rdata = RegInit(VecInit(Seq.fill(config.instFetchNum)(0.U(32.W)))) io.axi.ar.len := (config.instFetchNum - 1).U
io.axi.ar.size := 2.U
io.axi.ar.lock := 0.U
io.axi.ar.burst := BURST_INCR.U
io.axi.ar.valid := arvalid
io.axi.ar.prot := 0.U
io.axi.ar.cache := 0.U
val rdata = RegInit(VecInit(Seq.fill(config.instFetchNum)(0.U(32.W))))
io.axi.r.ready := true.B
val acc_err = RegInit(false.B) val acc_err = RegInit(false.B)
io.axi.ar.id := 0.U
io.axi.ar.addr := ar.addr
io.axi.ar.len := (config.instFetchNum - 1).U
io.axi.ar.size := 2.U
io.axi.ar.lock := 0.U
io.axi.ar.burst := BURST_INCR.U
io.axi.ar.valid := ar.valid
io.axi.ar.prot := 0.U
io.axi.ar.cache := 0.U
io.axi.r.ready := true.B
io.cpu.inst.map(_ := 0.U) io.cpu.inst.map(_ := 0.U)
io.cpu.acc_err := acc_err io.cpu.acc_err := acc_err
io.cpu.stall := false.B io.cpu.stall := false.B
io.cpu.inst := rdata io.cpu.inst := rdata
switch(status) { switch(status) {
@ -52,19 +53,19 @@ class ICache(implicit config: CpuConfig) extends Module {
acc_err := true.B acc_err := true.B
status := s_finishwait status := s_finishwait
}.otherwise { }.otherwise {
ar.addr := raddr araddr := raddr
ar.valid := true.B arvalid := true.B
status := s_read status := s_read
} }
} }
} }
is(s_read) { is(s_read) {
when(io.axi.ar.ready) { when(io.axi.ar.ready) {
ar.valid := false.B arvalid := false.B
} }
when(io.axi.r.valid) { when(io.axi.r.valid) {
rdata(0) := Mux(ar.addr(2), io.axi.r.data(63, 32), io.axi.r.data(31, 0)) rdata(0) := Mux(araddr(2), io.axi.r.data(63, 32), io.axi.r.data(31, 0))
rdata(1) := Mux(ar.addr(2), 0.U, io.axi.r.data(63, 32)) rdata(1) := Mux(araddr(2), 0.U, io.axi.r.data(63, 32))
acc_err := io.axi.r.resp =/= RESP_OKEY.U acc_err := io.axi.r.resp =/= RESP_OKEY.U
status := s_finishwait status := s_finishwait
} }
@ -77,9 +78,9 @@ class ICache(implicit config: CpuConfig) extends Module {
acc_err := true.B acc_err := true.B
status := s_finishwait status := s_finishwait
}.otherwise { }.otherwise {
ar.addr := raddr araddr := raddr
ar.valid := true.B arvalid := true.B
status := s_read status := s_read
} }
} }
} }

View File

@ -16,8 +16,7 @@ class BufferUnit extends Bundle {
class InstFifo(implicit val config: CpuConfig) extends Module { class InstFifo(implicit val config: CpuConfig) extends Module {
val io = IO(new Bundle { val io = IO(new Bundle {
val do_flush = Input(Bool()) val do_flush = Input(Bool())
val icache_stall = Input(Bool())
val ren = Input(Vec(config.decoderNum, Bool())) val ren = Input(Vec(config.decoderNum, Bool()))
val read = Output(Vec(config.decoderNum, new BufferUnit())) val read = Output(Vec(config.decoderNum, new BufferUnit()))