From e1946770875907001e4066a77174de0f10f145d5 Mon Sep 17 00:00:00 2001 From: Howard Mao Date: Mon, 11 Jul 2016 12:15:37 -0700 Subject: [PATCH] fix comparator PutBlock data generation and debug output --- groundtest/src/main/scala/comparator.scala | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/groundtest/src/main/scala/comparator.scala b/groundtest/src/main/scala/comparator.scala index 1c0bd64e..f32dcbde 100644 --- a/groundtest/src/main/scala/comparator.scala +++ b/groundtest/src/main/scala/comparator.scala @@ -189,6 +189,10 @@ class ComparatorSource(implicit val p: Parameters) extends Module is (UInt("b110")) { printf("[acq %d]: PutPrefetch(addr_block = %x)\n", idx, addr_block) } + is (UInt("b111")) { + printf("[acq %d]: Get(addr_block = %x, addr_beat = %x, addr_byte = %x, op_size = %x)\n", + idx, addr_block, addr_beat, get_addr_byte, get_operand_size) + } } } idx := idx + UInt(1) @@ -241,8 +245,9 @@ class ComparatorClient(val target: Long)(implicit val p: Parameters) extends Mod io.tl.acquire.bits.addr_block := buffer.bits.addr_block + offset io.tl.acquire.bits.client_xact_id := xact_id when (isMultiOut) { + val multiplier = beatOut + UInt(1, tlBeatAddrBits + 1) io.tl.acquire.bits.addr_beat := beatOut - io.tl.acquire.bits.data := buffer.bits.data * (beatOut + UInt(1)) // mix the data up a bit + io.tl.acquire.bits.data := buffer.bits.data * multiplier // mix the data up a bit } when (io.tl.acquire.fire()) { @@ -281,7 +286,7 @@ class ComparatorClient(val target: Long)(implicit val p: Parameters) extends Mod io.finished := !buffer.valid && !issued.reduce(_ || _) val (idx, acq_done) = Counter( - io.tl.acquire.fire() && io.tl.acquire.bits.first(), nOperations) + io.tl.acquire.fire() && io.tl.acquire.bits.last(), nOperations) debug(idx) val timer = Module(new Timer(8192, xacts))