Skip to content

Commit

Permalink
Merge pull request #500 from ucb-bar/dev
Browse files Browse the repository at this point in the history
Chipyard 1.3 Release
  • Loading branch information
abejgonzalez committed Jun 1, 2020
2 parents 2c0928c + 426a70f commit c576a7e
Show file tree
Hide file tree
Showing 143 changed files with 10,474 additions and 984 deletions.
2 changes: 1 addition & 1 deletion .circleci/build-toolchains.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,5 @@ if [ ! -d "$HOME/$1-install" ]; then
cd $HOME

# init all submodules including the tools
CHIPYARD_DIR="$LOCAL_CHIPYARD_DIR" NPROC=2 $LOCAL_CHIPYARD_DIR/scripts/build-toolchains.sh $1
CHIPYARD_DIR="$LOCAL_CHIPYARD_DIR" NPROC=$CI_MAKE_NPROC $LOCAL_CHIPYARD_DIR/scripts/build-toolchains.sh $1
fi
11 changes: 8 additions & 3 deletions .circleci/check-commit.sh
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ search () {
done
}

submodules=("boom" "hwacha" "icenet" "sha3" "rocket-chip" "sifive-blocks" "sifive-cache" "testchipip" "gemmini")
submodules=("ariane" "boom" "gemmini" "hwacha" "icenet" "nvdla" "rocket-chip" "sha3" "sifive-blocks" "sifive-cache" "testchipip")
dir="generators"
if [ "$CIRCLE_BRANCH" == "master" ] || [ "$CIRCLE_BRANCH" == "dev" ]
then
Expand Down Expand Up @@ -80,12 +80,12 @@ dir="toolchains"
branches=("master")
search

submodules=("spec2017" "coremark")
submodules=("coremark" "firemarshal" "nvdla-workload" "spec2017")
dir="software"
branches=("master")
search

submodules=("axe" "barstools" "torture" "dsptools" "chisel-testers" "treadle" "firrtl-interpreter")
submodules=("DRAMSim2" "axe" "barstools" "chisel-testers" "dsptools" "firrtl-interpreter" "torture" "treadle")
dir="tools"
if [ "$CIRCLE_BRANCH" == "master" ] || [ "$CIRCLE_BRANCH" == "dev" ]
then
Expand All @@ -95,6 +95,11 @@ else
fi
search

submodules=("dromajo-src")
dir="tools/dromajo"
branches=("master")
search

submodules=("firesim")
dir="sims"
if [ "$CIRCLE_BRANCH" == "master" ] || [ "$CIRCLE_BRANCH" == "dev" ]
Expand Down
4 changes: 2 additions & 2 deletions .circleci/clean-old-files.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/bash

# clean directories that are older than 30 days
# clean directories that are older than 14 days
# argument is used as the directory to look in

age () {
Expand All @@ -20,7 +20,7 @@ age () {

for d in $1/*/ ; do
DIR_AGE="$(age $d)"
if [ $DIR_AGE -ge 30 ]; then
if [ $DIR_AGE -ge 14 ]; then
echo "Deleting $d since is it $DIR_AGE old"
rm -rf $d
else
Expand Down
185 changes: 158 additions & 27 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ version: 2.1
parameters:
tools-cache-version:
type: string
default: "v4"
default: "v5"

# default execution env.s
executors:
main-env:
docker:
- image: ucbbar/chipyard-image:1.0.0
- image: ucbbar/chipyard-image:1.0.1
environment:
JVM_OPTS: -Xmx3200m # Customize the JVM maximum heap limit

Expand Down Expand Up @@ -145,6 +145,17 @@ jobs:
name: Check that the tutorial-setup patches apply
command: |
scripts/tutorial-setup.sh
documentation-check:
executor: main-env
steps:
- checkout
- run:
name: Check that documentation builds with no warnings/errors
command: |
sudo apt-get update -y
sudo apt-get install -y python3-pip
sudo pip3 install -r docs/requirements.txt
make -C docs html
install-riscv-toolchain:
executor: main-env
Expand Down Expand Up @@ -193,6 +204,16 @@ jobs:
steps:
- prepare-rtl:
project-key: "chipyard-sha3"
prepare-chipyard-streaming-fir:
executor: main-env
steps:
- prepare-rtl:
project-key: "chipyard-streaming-fir"
prepare-chipyard-streaming-passthrough:
executor: main-env
steps:
- prepare-rtl:
project-key: "chipyard-streaming-passthrough"
prepare-chipyard-hetero:
executor: main-env
steps:
Expand Down Expand Up @@ -236,23 +257,36 @@ jobs:
steps:
- prepare-rtl:
project-key: "tracegen-boom"
prepare-firesim:
prepare-chipyard-ariane:
executor: main-env
steps:
- prepare-rtl:
project-key: "firesim"
build-script: "do-firesim-build.sh"
prepare-fireboom:
project-key: "chipyard-ariane"
prepare-icenet:
executor: main-env
steps:
- prepare-rtl:
project-key: "fireboom"
build-script: "do-firesim-build.sh"
prepare-chipyard-ariane:
project-key: "icenet"
prepare-testchipip:
executor: main-env
steps:
- prepare-rtl:
project-key: "chipyard-ariane"
project-key: "testchipip"
prepare-chipyard-nvdla:
executor: main-env
steps:
- prepare-rtl:
project-key: "chipyard-nvdla"
prepare-chipyard-spiflashwrite:
executor: main-env
steps:
- prepare-rtl:
project-key: "chipyard-spiflashwrite"
prepare-chipyard-spiflashread:
executor: main-env
steps:
- prepare-rtl:
project-key: "chipyard-spiflashread"
chipyard-rocket-run-tests:
executor: main-env
steps:
Expand All @@ -263,11 +297,22 @@ jobs:
steps:
- run-tests:
project-key: "chipyard-sha3"
chipyard-streaming-fir-run-tests:
executor: main-env
steps:
- run-tests:
project-key: "chipyard-streaming-fir"
chipyard-streaming-passthrough-run-tests:
executor: main-env
steps:
- run-tests:
project-key: "chipyard-streaming-passthrough"
chipyard-hetero-run-tests:
executor: main-env
steps:
- run-tests:
project-key: "chipyard-hetero"
timeout: "15m"
chipyard-boom-run-tests:
executor: main-env
steps:
Expand All @@ -290,6 +335,16 @@ jobs:
- run-tests:
tools-version: "esp-tools"
project-key: "chipyard-gemmini"
chipyard-spiflashwrite-run-tests:
executor: main-env
steps:
- run-tests:
project-key: "chipyard-spiflashwrite"
chipyard-spiflashread-run-tests:
executor: main-env
steps:
- run-tests:
project-key: "chipyard-spiflashread"
tracegen-run-tests:
executor: main-env
steps:
Expand All @@ -306,27 +361,47 @@ jobs:
- run-tests:
extra-cache-restore: "extra-tests"
project-key: "firesim"
run-script: "run-firesim-tests.sh"
run-script: "run-firesim-scala-tests.sh"
timeout: "20m"
fireboom-run-tests:
executor: main-env
steps:
- run-tests:
extra-cache-restore: "extra-tests"
project-key: "fireboom"
run-script: "run-firesim-tests.sh"
timeout: "30m"
midasexamples-run-tests:
run-script: "run-firesim-scala-tests.sh"
timeout: "45m"
firesim-multiclock-run-tests:
executor: main-env
steps:
- setup-tools
- run:
name: Run midasexamples tests
command: .circleci/run-midasexamples-tests.sh
- run-tests:
extra-cache-restore: "extra-tests"
project-key: "firesim-multiclock"
run-script: "run-firesim-scala-tests.sh"
timeout: "20m"
chipyard-ariane-run-tests:
executor: main-env
steps:
- run-tests:
project-key: "chipyard-ariane"
timeout: "30m"
chipyard-nvdla-run-tests:
executor: main-env
steps:
- run-tests:
project-key: "chipyard-nvdla"
icenet-run-tests:
executor: main-env
steps:
- run-tests:
project-key: "icenet"
timeout: "30m"
testchipip-run-tests:
executor: main-env
steps:
- run-tests:
project-key: "testchipip"
timeout: "30m"

# Order and dependencies of jobs to run
workflows:
Expand Down Expand Up @@ -357,6 +432,9 @@ workflows:
# Attempt to apply the tutorial patches
- tutorial-setup-check

# Check that documentation builds
- documentation-check

# Build extra tests
- build-extra-tests:
requires:
Expand All @@ -373,6 +451,16 @@ workflows:
- install-riscv-toolchain
- install-verilator

- prepare-chipyard-streaming-fir:
requires:
- install-riscv-toolchain
- install-verilator

- prepare-chipyard-streaming-passthrough:
requires:
- install-riscv-toolchain
- install-verilator

- prepare-chipyard-hetero:
requires:
- install-riscv-toolchain
Expand Down Expand Up @@ -413,27 +501,37 @@ workflows:
- install-riscv-toolchain
- install-verilator

- prepare-firesim:
- prepare-chipyard-ariane:
requires:
- install-riscv-toolchain
- install-verilator

- prepare-fireboom:
- prepare-icenet:
requires:
- install-riscv-toolchain
- install-verilator

- prepare-chipyard-ariane:
- prepare-testchipip:
requires:
- install-riscv-toolchain
- install-verilator

# Run the respective tests
- prepare-chipyard-nvdla:
requires:
- install-riscv-toolchain
- install-verilator

- prepare-chipyard-spiflashwrite:
requires:
- install-riscv-toolchain
- install-verilator

# Run midasexamples test
- midasexamples-run-tests:
- prepare-chipyard-spiflashread:
requires:
- install-riscv-toolchain
- install-verilator

# Run the respective tests

# Run the example tests
- chipyard-rocket-run-tests:
Expand All @@ -444,6 +542,14 @@ workflows:
requires:
- prepare-chipyard-sha3

- chipyard-streaming-fir-run-tests:
requires:
- prepare-chipyard-streaming-fir

- chipyard-streaming-passthrough-run-tests:
requires:
- prepare-chipyard-streaming-passthrough

- chipyard-hetero-run-tests:
requires:
- prepare-chipyard-hetero
Expand Down Expand Up @@ -472,17 +578,42 @@ workflows:
requires:
- prepare-tracegen-boom

- chipyard-spiflashwrite-run-tests:
requires:
- prepare-chipyard-spiflashwrite

- chipyard-spiflashread-run-tests:
requires:
- prepare-chipyard-spiflashread

# Run the firesim tests
- firesim-run-tests:
requires:
- prepare-firesim
- install-riscv-toolchain
- install-verilator
- build-extra-tests
- firesim-multiclock-run-tests:
requires:
- install-riscv-toolchain
- install-verilator
- build-extra-tests

- fireboom-run-tests:
requires:
- prepare-fireboom
- install-riscv-toolchain
- install-verilator
- build-extra-tests

- chipyard-ariane-run-tests:
requires:
- prepare-chipyard-ariane

- chipyard-nvdla-run-tests:
requires:
- prepare-chipyard-nvdla
- icenet-run-tests:
requires:
- prepare-icenet

- testchipip-run-tests:
requires:
- prepare-testchipip
Loading

0 comments on commit c576a7e

Please sign in to comment.