From a6748e3e7403853b9307b4eda8bc5ff115e45d15 Mon Sep 17 00:00:00 2001 From: Ding Haonan Date: Wed, 4 Dec 2024 17:15:54 +0800 Subject: [PATCH] feat(DataCheck): support dummy DataCheck and Poison (#19) * feat(DataCheck): support dummy DataCheck and Poison * Enabled DataCheck of CoupledL2 in TestTop. * submodule(CoupledL2): bump CoupledL2 --- coupledL2 | 2 +- src/main/scala/openLLC/Common.scala | 2 ++ src/test/scala/TestTop.scala | 3 +++ 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/coupledL2 b/coupledL2 index 8c75700..f03c2f6 160000 --- a/coupledL2 +++ b/coupledL2 @@ -1 +1 @@ -Subproject commit 8c757005852daa382852a42466417f34c71daa53 +Subproject commit f03c2f6126cfd23d61a7591f172395eee7f612ce diff --git a/src/main/scala/openLLC/Common.scala b/src/main/scala/openLLC/Common.scala index 5a290d8..1e898d1 100644 --- a/src/main/scala/openLLC/Common.scala +++ b/src/main/scala/openLLC/Common.scala @@ -134,6 +134,8 @@ class TaskWithData(implicit p: Parameters) extends LLCBundle { dat.be := Fill(BE_WIDTH, true.B) dat.data := data.data(beatId).data dat.dataID := (beatBytes * beatId * 8).U(log2Ceil(blockBytes * 8) - 1, log2Ceil(blockBytes * 8) - 2) + dat.dataCheck := Cat((0 until DATACHECK_WIDTH).map(i => data.data(beatId).data(8 * (i + 1) - 1, 8 * i).xorR.asUInt)) + dat.poision := 0.U dat } } diff --git a/src/test/scala/TestTop.scala b/src/test/scala/TestTop.scala index 76c73b1..7c060e3 100644 --- a/src/test/scala/TestTop.scala +++ b/src/test/scala/TestTop.scala @@ -247,6 +247,9 @@ object TestTopSoCHelper { elaboratedTopDown = false, FPGAPlatform = FPGAPlatform, + // OddParity Data Check + dataCheck = Some("oddparity"), + // SAM for tester ICN: Home Node ID = 33 sam = Seq(AddressSet.everything -> 33) )