Merge pull request #1642 from ucb-bar/caliptra-aes
Add Caliptra AES256 ECB engine as RoCC accelerator
This commit is contained in:
2
.github/scripts/check-commit.sh
vendored
2
.github/scripts/check-commit.sh
vendored
@@ -45,7 +45,7 @@ search () {
|
|||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
submodules=("cva6" "boom" "ibex" "gemmini" "hwacha" "icenet" "nvdla" "rocket-chip" "sha3" "sifive-blocks" "sifive-cache" "testchipip" "riscv-sodor" "mempress" "bar-fetchers" "shuttle" "constellation" "fft-generator" "hardfloat")
|
submodules=("cva6" "boom" "ibex" "gemmini" "hwacha" "icenet" "nvdla" "rocket-chip" "sha3" "sifive-blocks" "sifive-cache" "testchipip" "riscv-sodor" "mempress" "bar-fetchers" "shuttle" "constellation" "fft-generator" "hardfloat" "caliptra-aes-acc" "rocc-acc-utils")
|
||||||
dir="generators"
|
dir="generators"
|
||||||
branches=("master" "main" "dev")
|
branches=("master" "main" "dev")
|
||||||
search
|
search
|
||||||
|
|||||||
3
.github/scripts/defaults.sh
vendored
3
.github/scripts/defaults.sh
vendored
@@ -30,7 +30,7 @@ REMOTE_COURSIER_CACHE=$REMOTE_WORK_DIR/.coursier-cache
|
|||||||
declare -A grouping
|
declare -A grouping
|
||||||
grouping["group-cores"]="chipyard-cva6 chipyard-ibex chipyard-rocket chipyard-hetero chipyard-boom chipyard-sodor chipyard-digitaltop chipyard-multiclock-rocket chipyard-nomem-scratchpad chipyard-spike chipyard-clone chipyard-prefetchers chipyard-shuttle"
|
grouping["group-cores"]="chipyard-cva6 chipyard-ibex chipyard-rocket chipyard-hetero chipyard-boom chipyard-sodor chipyard-digitaltop chipyard-multiclock-rocket chipyard-nomem-scratchpad chipyard-spike chipyard-clone chipyard-prefetchers chipyard-shuttle"
|
||||||
grouping["group-peripherals"]="chipyard-dmirocket chipyard-dmiboom chipyard-spiflashwrite chipyard-mmios chipyard-nocores chipyard-manyperipherals chipyard-chiplike chipyard-tethered"
|
grouping["group-peripherals"]="chipyard-dmirocket chipyard-dmiboom chipyard-spiflashwrite chipyard-mmios chipyard-nocores chipyard-manyperipherals chipyard-chiplike chipyard-tethered"
|
||||||
grouping["group-accels"]="chipyard-mempress chipyard-sha3 chipyard-hwacha chipyard-gemmini chipyard-manymmioaccels chipyard-nvdla"
|
grouping["group-accels"]="chipyard-mempress chipyard-sha3 chipyard-hwacha chipyard-gemmini chipyard-manymmioaccels chipyard-nvdla chipyard-aes256ecb"
|
||||||
grouping["group-constellation"]="chipyard-constellation"
|
grouping["group-constellation"]="chipyard-constellation"
|
||||||
grouping["group-tracegen"]="tracegen tracegen-boom"
|
grouping["group-tracegen"]="tracegen tracegen-boom"
|
||||||
grouping["group-other"]="icenet testchipip constellation rocketchip-amba rocketchip-tlsimple rocketchip-tlwidth rocketchip-tlxbar"
|
grouping["group-other"]="icenet testchipip constellation rocketchip-amba rocketchip-tlsimple rocketchip-tlwidth rocketchip-tlxbar"
|
||||||
@@ -67,6 +67,7 @@ mapping["chipyard-shuttle"]=" CONFIG=ShuttleConfig"
|
|||||||
mapping["chipyard-multiclock-rocket"]=" CONFIG=MulticlockRocketConfig"
|
mapping["chipyard-multiclock-rocket"]=" CONFIG=MulticlockRocketConfig"
|
||||||
mapping["chipyard-nomem-scratchpad"]=" CONFIG=MMIOScratchpadOnlyRocketConfig"
|
mapping["chipyard-nomem-scratchpad"]=" CONFIG=MMIOScratchpadOnlyRocketConfig"
|
||||||
mapping["chipyard-constellation"]=" CONFIG=SharedNoCConfig"
|
mapping["chipyard-constellation"]=" CONFIG=SharedNoCConfig"
|
||||||
|
mapping["chipyard-aes256ecb"]=" CONFIG=AES256ECBRocketConfig"
|
||||||
|
|
||||||
mapping["constellation"]=" SUB_PROJECT=constellation"
|
mapping["constellation"]=" SUB_PROJECT=constellation"
|
||||||
mapping["firesim"]="SCALA_TEST=firesim.firesim.RocketNICF1Tests"
|
mapping["firesim"]="SCALA_TEST=firesim.firesim.RocketNICF1Tests"
|
||||||
|
|||||||
6
.gitmodules
vendored
6
.gitmodules
vendored
@@ -133,3 +133,9 @@
|
|||||||
[submodule "generators/hardfloat"]
|
[submodule "generators/hardfloat"]
|
||||||
path = generators/hardfloat
|
path = generators/hardfloat
|
||||||
url = https://github.com/ucb-bar/berkeley-hardfloat.git
|
url = https://github.com/ucb-bar/berkeley-hardfloat.git
|
||||||
|
[submodule "generators/caliptra-aes-acc"]
|
||||||
|
path = generators/caliptra-aes-acc
|
||||||
|
url = https://github.com/ucb-bar/caliptra-aes-acc
|
||||||
|
[submodule "generators/rocc-acc-utils"]
|
||||||
|
path = generators/rocc-acc-utils
|
||||||
|
url = https://github.com/ucb-bar/rocc-acc-utils
|
||||||
|
|||||||
12
build.sbt
12
build.sbt
@@ -150,7 +150,7 @@ lazy val chipyard = (project in file("generators/chipyard"))
|
|||||||
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,
|
dsptools, rocket_dsp_utils,
|
||||||
gemmini, icenet, tracegen, cva6, nvdla, sodor, ibex, fft_generator,
|
gemmini, icenet, tracegen, cva6, nvdla, sodor, ibex, fft_generator,
|
||||||
constellation, mempress, barf, shuttle)
|
constellation, mempress, barf, shuttle, caliptra_aes)
|
||||||
.settings(libraryDependencies ++= rocketLibDeps.value)
|
.settings(libraryDependencies ++= rocketLibDeps.value)
|
||||||
.settings(
|
.settings(
|
||||||
libraryDependencies ++= Seq(
|
libraryDependencies ++= Seq(
|
||||||
@@ -234,6 +234,16 @@ lazy val nvdla = (project in file("generators/nvdla"))
|
|||||||
.settings(libraryDependencies ++= rocketLibDeps.value)
|
.settings(libraryDependencies ++= rocketLibDeps.value)
|
||||||
.settings(commonSettings)
|
.settings(commonSettings)
|
||||||
|
|
||||||
|
lazy val caliptra_aes = (project in file("generators/caliptra-aes-acc"))
|
||||||
|
.dependsOn(rocketchip, rocc_acc_utils, testchipip, midasTargetUtils)
|
||||||
|
.settings(libraryDependencies ++= rocketLibDeps.value)
|
||||||
|
.settings(commonSettings)
|
||||||
|
|
||||||
|
lazy val rocc_acc_utils = (project in file("generators/rocc-acc-utils"))
|
||||||
|
.dependsOn(rocketchip)
|
||||||
|
.settings(libraryDependencies ++= rocketLibDeps.value)
|
||||||
|
.settings(commonSettings)
|
||||||
|
|
||||||
lazy val iocell = Project(id = "iocell", base = file("./tools/barstools/") / "iocell")
|
lazy val iocell = Project(id = "iocell", base = file("./tools/barstools/") / "iocell")
|
||||||
.settings(chiselSettings)
|
.settings(chiselSettings)
|
||||||
.settings(commonSettings)
|
.settings(commonSettings)
|
||||||
|
|||||||
1
generators/caliptra-aes-acc
Submodule
1
generators/caliptra-aes-acc
Submodule
Submodule generators/caliptra-aes-acc added at 15d2f85262
@@ -56,3 +56,9 @@ class HwachaLargeBoomConfig extends Config(
|
|||||||
new boom.common.WithNLargeBooms(1) ++
|
new boom.common.WithNLargeBooms(1) ++
|
||||||
new chipyard.config.WithSystemBusWidth(128) ++
|
new chipyard.config.WithSystemBusWidth(128) ++
|
||||||
new chipyard.config.AbstractConfig)
|
new chipyard.config.AbstractConfig)
|
||||||
|
|
||||||
|
class AES256ECBRocketConfig extends Config(
|
||||||
|
new aes.WithAES256ECBAccel ++ // use Caliptra AES 256 ECB accelerator
|
||||||
|
new freechips.rocketchip.subsystem.WithNBigCores(1) ++
|
||||||
|
new chipyard.config.WithSystemBusWidth(256) ++
|
||||||
|
new chipyard.config.AbstractConfig)
|
||||||
|
|||||||
1
generators/rocc-acc-utils
Submodule
1
generators/rocc-acc-utils
Submodule
Submodule generators/rocc-acc-utils added at b001c888f9
@@ -1,20 +1,20 @@
|
|||||||
diff --git a/build.sbt b/build.sbt
|
diff --git a/build.sbt b/build.sbt
|
||||||
index 302d99e6..0aa0fcb4 100644
|
index c3be6161..2a6d7160 100644
|
||||||
--- a/build.sbt
|
--- a/build.sbt
|
||||||
+++ b/build.sbt
|
+++ b/build.sbt
|
||||||
@@ -148,7 +148,7 @@ lazy val testchipip = (project in file("generators/testchipip"))
|
@@ -147,7 +147,7 @@ lazy val testchipip = (project in file("generators/testchipip"))
|
||||||
|
|
||||||
lazy val chipyard = (project in file("generators/chipyard"))
|
lazy val chipyard = (project in file("generators/chipyard"))
|
||||||
.dependsOn(testchipip, rocketchip, boom, hwacha, sifive_blocks, sifive_cache, iocell,
|
.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
|
+ //sha3, // On separate line to allow for cleaner tutorial-setup patches
|
||||||
dsptools, rocket_dsp_utils,
|
dsptools, rocket_dsp_utils,
|
||||||
gemmini, icenet, tracegen, cva6, nvdla, sodor, ibex, fft_generator,
|
gemmini, icenet, tracegen, cva6, nvdla, sodor, ibex, fft_generator,
|
||||||
constellation, mempress, barf, shuttle)
|
constellation, mempress, barf, shuttle, caliptra_aes)
|
||||||
@@ -220,10 +220,10 @@ lazy val sodor = (project in file("generators/riscv-sodor"))
|
@@ -219,10 +219,10 @@ lazy val sodor = (project in file("generators/riscv-sodor"))
|
||||||
.settings(libraryDependencies ++= rocketLibDeps.value)
|
.settings(libraryDependencies ++= rocketLibDeps.value)
|
||||||
.settings(commonSettings)
|
.settings(commonSettings)
|
||||||
|
|
||||||
-lazy val sha3 = (project in file("generators/sha3"))
|
-lazy val sha3 = (project in file("generators/sha3"))
|
||||||
- .dependsOn(rocketchip, midasTargetUtils)
|
- .dependsOn(rocketchip, midasTargetUtils)
|
||||||
- .settings(libraryDependencies ++= rocketLibDeps.value)
|
- .settings(libraryDependencies ++= rocketLibDeps.value)
|
||||||
@@ -23,6 +23,6 @@ index 302d99e6..0aa0fcb4 100644
|
|||||||
+// .dependsOn(rocketchip, midasTargetUtils)
|
+// .dependsOn(rocketchip, midasTargetUtils)
|
||||||
+// .settings(libraryDependencies ++= rocketLibDeps.value)
|
+// .settings(libraryDependencies ++= rocketLibDeps.value)
|
||||||
+// .settings(commonSettings)
|
+// .settings(commonSettings)
|
||||||
|
|
||||||
lazy val gemmini = (project in file("generators/gemmini"))
|
lazy val gemmini = (project in file("generators/gemmini"))
|
||||||
.dependsOn(rocketchip)
|
.dependsOn(rocketchip)
|
||||||
|
|||||||
Reference in New Issue
Block a user