Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump chipyard to integrate mempress #1253

Merged
merged 20 commits into from
Oct 18, 2022
Merged
Show file tree
Hide file tree
Changes from 8 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -130,3 +130,6 @@
[submodule "generators/constellation"]
path = generators/constellation
url = https://github.com/ucb-bar/constellation.git
[submodule "generators/mempress"]
path = generators/mempress
url = https://github.com/ucb-bar/mempress.git
8 changes: 7 additions & 1 deletion build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -149,10 +149,16 @@ lazy val chipyard = (project in file("generators/chipyard"))
sha3, // On separate line to allow for cleaner tutorial-setup patches
dsptools, `rocket-dsp-utils`,
gemmini, icenet, tracegen, cva6, nvdla, sodor, ibex, fft_generator,
constellation)
constellation, mempress)
.settings(libraryDependencies ++= rocketLibDeps.value)
.settings(commonSettings)

lazy val mempress = (project in file("generators/mempress"))
.dependsOn(rocketchip, midasTargetUtils)
.settings(libraryDependencies ++= rocketLibDeps.value)
.settings(chiselTestSettings)
.settings(commonSettings)

lazy val constellation = (project in file("generators/constellation"))
.dependsOn(rocketchip)
.settings(libraryDependencies ++= rocketLibDeps.value)
Expand Down
8 changes: 8 additions & 0 deletions generators/chipyard/src/main/scala/config/RocketConfigs.scala
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,14 @@ class TinyRocketConfig extends Config(
new freechips.rocketchip.subsystem.With1TinyCore ++ // single tiny rocket-core
new chipyard.config.AbstractConfig)

class MempressConfig extends Config(
new mempress.WithMemPress ++
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add a small descriptive comment on what this is doing.

new freechips.rocketchip.subsystem.WithInclusiveCache(nBanks=8, nWays=16, capacityKB=2048) ++
new chipyard.config.WithExtMemIdBits(7) ++
jerryz123 marked this conversation as resolved.
Show resolved Hide resolved
new freechips.rocketchip.subsystem.WithNMemoryChannels(4) ++
new chipyard.config.WithSystemBusWidth(128) ++
new RocketConfig)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please also have the full package path for this as well.


// DOC include start: FFTRocketConfig
class FFTRocketConfig extends Config(
new fftgenerator.WithFFTGenerator(numPoints=8, width=16, decPt=8) ++ // add 8-point mmio fft at the default addr (0x2400) with 16bit fixed-point numbers.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,7 @@ class WithBroadcastManager extends Config((site, here, up) => {
class WithSystemBusWidth(bitWidth: Int) extends Config((site, here, up) => {
case SystemBusKey => up(SystemBusKey, site).copy(beatBytes=bitWidth/8)
})

class WithExtMemIdBits(n: Int) extends Config((site, here, up) => {
case ExtMem => up(ExtMem, site).map(x => x.copy(master = x.master.copy(idBits = n)))
})
1 change: 1 addition & 0 deletions generators/mempress
Submodule mempress added at dfa31f
21 changes: 10 additions & 11 deletions scripts/tutorial-patches/build.sbt.patch
Original file line number Diff line number Diff line change
@@ -1,18 +1,17 @@
diff --git a/build.sbt b/build.sbt
index bbbb8251..b7adcb73 100644
index ec36a85f..e2b1bd61 100644
--- a/build.sbt
+++ b/build.sbt
@@ -143,8 +143,8 @@ lazy val testchipip = (project in file("generators/testchipip"))
@@ -146,7 +146,7 @@ lazy val testchipip = (project in file("generators/testchipip"))

lazy val chipyard = (project in file("generators/chipyard"))
.dependsOn(testchipip, rocketchip, boom, hwacha, sifive_blocks, sifive_cache, iocell,
- sha3, // On separate line to allow for cleaner tutorial-setup patches
+// sha3, // On separate line to allow for cleaner tutorial-setup patches
+/* sha3, // On separate line to allow for cleaner tutorial-setup patches */
dsptools, `rocket-dsp-utils`,
gemmini, icenet, tracegen, cva6, nvdla, sodor, ibex, fft_generator,
constellation)
.settings(libraryDependencies ++= rocketLibDeps.value)
@@ -189,11 +189,11 @@ lazy val sodor = (project in file("generators/riscv-sodor"))
constellation, mempress)
@@ -204,11 +204,11 @@ lazy val sodor = (project in file("generators/riscv-sodor"))
.settings(libraryDependencies ++= rocketLibDeps.value)
.settings(commonSettings)

Expand All @@ -21,11 +20,11 @@ index bbbb8251..b7adcb73 100644
- .settings(libraryDependencies ++= rocketLibDeps.value)
- .settings(chiselTestSettings)
- .settings(commonSettings)
+//lazy val sha3 = (project in file("generators/sha3"))
+// .dependsOn(rocketchip, midasTargetUtils)
+// .settings(libraryDependencies ++= rocketLibDeps.value)
+// .settings(chiselTestSettings)
+// .settings(commonSettings)
+/* lazy val sha3 = (project in file("generators/sha3")) */
+/* .dependsOn(rocketchip, midasTargetUtils) */
+/* .settings(libraryDependencies ++= rocketLibDeps.value) */
+/* .settings(chiselTestSettings) */
+/* .settings(commonSettings) */
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you keep the same type of comments // instead of /**/? This matters for tutorial users.


lazy val gemmini = (project in file("generators/gemmini"))
.dependsOn(testchipip, rocketchip)