From f972977da19cf563b113821fb0cf9d048a23cec1 Mon Sep 17 00:00:00 2001 From: Yunsup Lee Date: Thu, 15 Mar 2012 01:10:17 -0700 Subject: [PATCH] refactored VMU, now uses one skid buffer --- rocket/src/main/scala/cpu.scala | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/rocket/src/main/scala/cpu.scala b/rocket/src/main/scala/cpu.scala index 8adaef61..3f902049 100644 --- a/rocket/src/main/scala/cpu.scala +++ b/rocket/src/main/scala/cpu.scala @@ -221,7 +221,7 @@ class rocketProc(resetSignal: Bool = null) extends Component(resetSignal) storegen.io.din := vu.io.dmem_req.bits.data arb.io.requestor(DMEM_VU).req_val := vu.io.dmem_req.valid - arb.io.requestor(DMEM_VU).req_kill := Reg(vu.io.dmem_req.bits.kill) + arb.io.requestor(DMEM_VU).req_kill := vu.io.dmem_req.bits.kill arb.io.requestor(DMEM_VU).req_cmd := vu.io.dmem_req.bits.cmd arb.io.requestor(DMEM_VU).req_type := vu.io.dmem_req.bits.typ arb.io.requestor(DMEM_VU).req_idx := vu.io.dmem_req.bits.idx @@ -229,10 +229,9 @@ class rocketProc(resetSignal: Bool = null) extends Component(resetSignal) arb.io.requestor(DMEM_VU).req_data := Reg(storegen.io.dout) arb.io.requestor(DMEM_VU).req_tag := vu.io.dmem_req.bits.tag + vu.io.dmem_req.ready := arb.io.requestor(DMEM_VU).req_rdy vu.io.dmem_resp.valid := Reg(arb.io.requestor(DMEM_VU).resp_val) - // the vu doesn't look at the ready signal, it's simply a nack - // but should be delayed one cycle to match the nack semantics - vu.io.dmem_resp.bits.nack := arb.io.requestor(DMEM_VU).resp_nack || Reg(!arb.io.requestor(DMEM_VU).req_rdy) + vu.io.dmem_resp.bits.nack := arb.io.requestor(DMEM_VU).resp_nack vu.io.dmem_resp.bits.data := arb.io.requestor(DMEM_VU).resp_data_subword vu.io.dmem_resp.bits.tag := Reg(arb.io.requestor(DMEM_VU).resp_tag) vu.io.dmem_resp.bits.typ := Reg(arb.io.requestor(DMEM_VU).resp_type)