diff --git a/.github/scripts/defaults.sh b/.github/scripts/defaults.sh index 872484b6..738f939f 100755 --- a/.github/scripts/defaults.sh +++ b/.github/scripts/defaults.sh @@ -30,7 +30,7 @@ REMOTE_COURSIER_CACHE=$REMOTE_WORK_DIR/.coursier-cache 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" 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" +grouping["group-accels"]="chipyard-mempress chipyard-sha3 chipyard-hwacha chipyard-gemmini chipyard-manymmioaccels chipyard-nvdla" grouping["group-constellation"]="chipyard-constellation" grouping["group-tracegen"]="tracegen tracegen-boom" grouping["group-other"]="icenet testchipip constellation rocketchip-amba rocketchip-tlsimple rocketchip-tlwidth rocketchip-tlxbar" @@ -44,6 +44,7 @@ mapping["chipyard-sha3"]=" CONFIG=Sha3RocketConfig" mapping["chipyard-mempress"]=" CONFIG=MempressRocketConfig" mapping["chipyard-digitaltop"]=" TOP=DigitalTop" mapping["chipyard-manymmioaccels"]=" CONFIG=ManyMMIOAcceleratorRocketConfig" +mapping["chipyard-nvdla"]=" CONFIG=SmallNVDLARocketConfig" mapping["chipyard-hetero"]=" CONFIG=LargeBoomAndRocketConfig" mapping["chipyard-boom"]=" CONFIG=MediumBoomCosimConfig" mapping["chipyard-dmiboom"]=" CONFIG=dmiMediumBoomCosimConfig" diff --git a/.github/scripts/run-tests.sh b/.github/scripts/run-tests.sh index 89859eb7..20e9ce03 100755 --- a/.github/scripts/run-tests.sh +++ b/.github/scripts/run-tests.sh @@ -91,12 +91,13 @@ case $1 in # test streaming-fir run_binary BINARY=$LOCAL_CHIPYARD_DIR/tests/streaming-fir.riscv - # test nvdla - run_binary BINARY=$LOCAL_CHIPYARD_DIR/tests/nvdla.riscv - # test fft run_binary BINARY=$LOCAL_CHIPYARD_DIR/tests/fft.riscv ;; + chipyard-nvdla) + make -C $LOCAL_CHIPYARD_DIR/tests + run_binary BINARY=$LOCAL_CHIPYARD_DIR/tests/nvdla.riscv + ;; chipyard-manyperipherals) # SPI Flash read tests make -C $LOCAL_CHIPYARD_DIR/tests diff --git a/.github/workflows/chipyard-run-tests.yml b/.github/workflows/chipyard-run-tests.yml index 72d6f654..11bb2cd2 100644 --- a/.github/workflows/chipyard-run-tests.yml +++ b/.github/workflows/chipyard-run-tests.yml @@ -764,6 +764,29 @@ jobs: group-key: "group-accels" project-key: "chipyard-manymmioaccels" + chipyard-nvdla-run-tests: + name: chipyard-nvdla-run-tests + needs: prepare-chipyard-accels + runs-on: self-hosted + steps: + - name: Delete old checkout + run: | + ls -alh . + rm -rf ${{ github.workspace }}/* || true + rm -rf ${{ github.workspace }}/.* || true + ls -alh . + - name: Checkout + uses: actions/checkout@v3 + - name: Git workaround + uses: ./.github/actions/git-workaround + - name: Create conda env + uses: ./.github/actions/create-conda-env + - name: Run tests + uses: ./.github/actions/run-tests + with: + group-key: "group-accels" + project-key: "chipyard-nvdla" + chipyard-mempress-run-tests: name: chipyard-mempress-run-tests needs: prepare-chipyard-accels @@ -1037,6 +1060,7 @@ jobs: chipyard-sha3-run-tests, chipyard-gemmini-run-tests, chipyard-manymmioaccels-run-tests, + chipyard-nvdla-run-tests, chipyard-mempress-run-tests, chipyard-constellation-run-tests, tracegen-boom-run-tests, diff --git a/generators/chipyard/src/main/scala/config/MMIOAcceleratorConfigs.scala b/generators/chipyard/src/main/scala/config/MMIOAcceleratorConfigs.scala index 6a7710d9..16e6b313 100644 --- a/generators/chipyard/src/main/scala/config/MMIOAcceleratorConfigs.scala +++ b/generators/chipyard/src/main/scala/config/MMIOAcceleratorConfigs.scala @@ -61,7 +61,6 @@ class LargeNVDLARocketConfig extends Config( class ManyMMIOAcceleratorRocketConfig extends Config( new chipyard.iobinders.WithDontTouchIOBinders(false) ++ // TODO: hack around dontTouch not working in SFC new fftgenerator.WithFFTGenerator(numPoints=8, width=16, decPt=8) ++ // add 8-point mmio fft at the default addr (0x2400) with 16bit fixed-point numbers. - new nvidia.blocks.dla.WithNVDLA("small") ++ // add a small NVDLA new chipyard.example.WithStreamingPassthrough ++ // use top with tilelink-controlled streaming passthrough new chipyard.example.WithStreamingFIR ++ // use top with tilelink-controlled streaming FIR new freechips.rocketchip.subsystem.WithNBigCores(1) ++ diff --git a/generators/mempress b/generators/mempress index 295ae085..c3d4901a 160000 --- a/generators/mempress +++ b/generators/mempress @@ -1 +1 @@ -Subproject commit 295ae0854a429182e4a38b120c8771a4e898834e +Subproject commit c3d4901ab0f3c28bfd4101ffd62f707a86fc377e diff --git a/generators/sha3 b/generators/sha3 index b19b7c76..eb3822a2 160000 --- a/generators/sha3 +++ b/generators/sha3 @@ -1 +1 @@ -Subproject commit b19b7c76fc865598b6a9806c8ef799064fc496ab +Subproject commit eb3822a2bcc33d5b36456b537681da626ab4b2af diff --git a/software/firemarshal b/software/firemarshal index fb93e311..f553a22b 160000 --- a/software/firemarshal +++ b/software/firemarshal @@ -1 +1 @@ -Subproject commit fb93e3116fed07191e669291b941e9eabb565ee3 +Subproject commit f553a22b2831a37868e921afa98cf30a6c633a61