Skip to content

Commit c576a7e

Browse files
authored
Merge pull request #500 from ucb-bar/dev
Chipyard 1.3 Release
2 parents 2c0928c + 426a70f commit c576a7e

File tree

143 files changed

+10474
-984
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

143 files changed

+10474
-984
lines changed

.circleci/build-toolchains.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,5 @@ if [ ! -d "$HOME/$1-install" ]; then
1414
cd $HOME
1515

1616
# init all submodules including the tools
17-
CHIPYARD_DIR="$LOCAL_CHIPYARD_DIR" NPROC=2 $LOCAL_CHIPYARD_DIR/scripts/build-toolchains.sh $1
17+
CHIPYARD_DIR="$LOCAL_CHIPYARD_DIR" NPROC=$CI_MAKE_NPROC $LOCAL_CHIPYARD_DIR/scripts/build-toolchains.sh $1
1818
fi

.circleci/check-commit.sh

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ search () {
4848
done
4949
}
5050

51-
submodules=("boom" "hwacha" "icenet" "sha3" "rocket-chip" "sifive-blocks" "sifive-cache" "testchipip" "gemmini")
51+
submodules=("ariane" "boom" "gemmini" "hwacha" "icenet" "nvdla" "rocket-chip" "sha3" "sifive-blocks" "sifive-cache" "testchipip")
5252
dir="generators"
5353
if [ "$CIRCLE_BRANCH" == "master" ] || [ "$CIRCLE_BRANCH" == "dev" ]
5454
then
@@ -80,12 +80,12 @@ dir="toolchains"
8080
branches=("master")
8181
search
8282

83-
submodules=("spec2017" "coremark")
83+
submodules=("coremark" "firemarshal" "nvdla-workload" "spec2017")
8484
dir="software"
8585
branches=("master")
8686
search
8787

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

98+
submodules=("dromajo-src")
99+
dir="tools/dromajo"
100+
branches=("master")
101+
search
102+
98103
submodules=("firesim")
99104
dir="sims"
100105
if [ "$CIRCLE_BRANCH" == "master" ] || [ "$CIRCLE_BRANCH" == "dev" ]

.circleci/clean-old-files.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/bash
22

3-
# clean directories that are older than 30 days
3+
# clean directories that are older than 14 days
44
# argument is used as the directory to look in
55

66
age () {
@@ -20,7 +20,7 @@ age () {
2020

2121
for d in $1/*/ ; do
2222
DIR_AGE="$(age $d)"
23-
if [ $DIR_AGE -ge 30 ]; then
23+
if [ $DIR_AGE -ge 14 ]; then
2424
echo "Deleting $d since is it $DIR_AGE old"
2525
rm -rf $d
2626
else

.circleci/config.yml

Lines changed: 158 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@ version: 2.1
66
parameters:
77
tools-cache-version:
88
type: string
9-
default: "v4"
9+
default: "v5"
1010

1111
# default execution env.s
1212
executors:
1313
main-env:
1414
docker:
15-
- image: ucbbar/chipyard-image:1.0.0
15+
- image: ucbbar/chipyard-image:1.0.1
1616
environment:
1717
JVM_OPTS: -Xmx3200m # Customize the JVM maximum heap limit
1818

@@ -145,6 +145,17 @@ jobs:
145145
name: Check that the tutorial-setup patches apply
146146
command: |
147147
scripts/tutorial-setup.sh
148+
documentation-check:
149+
executor: main-env
150+
steps:
151+
- checkout
152+
- run:
153+
name: Check that documentation builds with no warnings/errors
154+
command: |
155+
sudo apt-get update -y
156+
sudo apt-get install -y python3-pip
157+
sudo pip3 install -r docs/requirements.txt
158+
make -C docs html
148159
149160
install-riscv-toolchain:
150161
executor: main-env
@@ -193,6 +204,16 @@ jobs:
193204
steps:
194205
- prepare-rtl:
195206
project-key: "chipyard-sha3"
207+
prepare-chipyard-streaming-fir:
208+
executor: main-env
209+
steps:
210+
- prepare-rtl:
211+
project-key: "chipyard-streaming-fir"
212+
prepare-chipyard-streaming-passthrough:
213+
executor: main-env
214+
steps:
215+
- prepare-rtl:
216+
project-key: "chipyard-streaming-passthrough"
196217
prepare-chipyard-hetero:
197218
executor: main-env
198219
steps:
@@ -236,23 +257,36 @@ jobs:
236257
steps:
237258
- prepare-rtl:
238259
project-key: "tracegen-boom"
239-
prepare-firesim:
260+
prepare-chipyard-ariane:
240261
executor: main-env
241262
steps:
242263
- prepare-rtl:
243-
project-key: "firesim"
244-
build-script: "do-firesim-build.sh"
245-
prepare-fireboom:
264+
project-key: "chipyard-ariane"
265+
prepare-icenet:
246266
executor: main-env
247267
steps:
248268
- prepare-rtl:
249-
project-key: "fireboom"
250-
build-script: "do-firesim-build.sh"
251-
prepare-chipyard-ariane:
269+
project-key: "icenet"
270+
prepare-testchipip:
252271
executor: main-env
253272
steps:
254273
- prepare-rtl:
255-
project-key: "chipyard-ariane"
274+
project-key: "testchipip"
275+
prepare-chipyard-nvdla:
276+
executor: main-env
277+
steps:
278+
- prepare-rtl:
279+
project-key: "chipyard-nvdla"
280+
prepare-chipyard-spiflashwrite:
281+
executor: main-env
282+
steps:
283+
- prepare-rtl:
284+
project-key: "chipyard-spiflashwrite"
285+
prepare-chipyard-spiflashread:
286+
executor: main-env
287+
steps:
288+
- prepare-rtl:
289+
project-key: "chipyard-spiflashread"
256290
chipyard-rocket-run-tests:
257291
executor: main-env
258292
steps:
@@ -263,11 +297,22 @@ jobs:
263297
steps:
264298
- run-tests:
265299
project-key: "chipyard-sha3"
300+
chipyard-streaming-fir-run-tests:
301+
executor: main-env
302+
steps:
303+
- run-tests:
304+
project-key: "chipyard-streaming-fir"
305+
chipyard-streaming-passthrough-run-tests:
306+
executor: main-env
307+
steps:
308+
- run-tests:
309+
project-key: "chipyard-streaming-passthrough"
266310
chipyard-hetero-run-tests:
267311
executor: main-env
268312
steps:
269313
- run-tests:
270314
project-key: "chipyard-hetero"
315+
timeout: "15m"
271316
chipyard-boom-run-tests:
272317
executor: main-env
273318
steps:
@@ -290,6 +335,16 @@ jobs:
290335
- run-tests:
291336
tools-version: "esp-tools"
292337
project-key: "chipyard-gemmini"
338+
chipyard-spiflashwrite-run-tests:
339+
executor: main-env
340+
steps:
341+
- run-tests:
342+
project-key: "chipyard-spiflashwrite"
343+
chipyard-spiflashread-run-tests:
344+
executor: main-env
345+
steps:
346+
- run-tests:
347+
project-key: "chipyard-spiflashread"
293348
tracegen-run-tests:
294349
executor: main-env
295350
steps:
@@ -306,27 +361,47 @@ jobs:
306361
- run-tests:
307362
extra-cache-restore: "extra-tests"
308363
project-key: "firesim"
309-
run-script: "run-firesim-tests.sh"
364+
run-script: "run-firesim-scala-tests.sh"
365+
timeout: "20m"
310366
fireboom-run-tests:
311367
executor: main-env
312368
steps:
313369
- run-tests:
314370
extra-cache-restore: "extra-tests"
315371
project-key: "fireboom"
316-
run-script: "run-firesim-tests.sh"
317-
timeout: "30m"
318-
midasexamples-run-tests:
372+
run-script: "run-firesim-scala-tests.sh"
373+
timeout: "45m"
374+
firesim-multiclock-run-tests:
319375
executor: main-env
320376
steps:
321-
- setup-tools
322-
- run:
323-
name: Run midasexamples tests
324-
command: .circleci/run-midasexamples-tests.sh
377+
- run-tests:
378+
extra-cache-restore: "extra-tests"
379+
project-key: "firesim-multiclock"
380+
run-script: "run-firesim-scala-tests.sh"
381+
timeout: "20m"
325382
chipyard-ariane-run-tests:
326383
executor: main-env
327384
steps:
328385
- run-tests:
329386
project-key: "chipyard-ariane"
387+
timeout: "30m"
388+
chipyard-nvdla-run-tests:
389+
executor: main-env
390+
steps:
391+
- run-tests:
392+
project-key: "chipyard-nvdla"
393+
icenet-run-tests:
394+
executor: main-env
395+
steps:
396+
- run-tests:
397+
project-key: "icenet"
398+
timeout: "30m"
399+
testchipip-run-tests:
400+
executor: main-env
401+
steps:
402+
- run-tests:
403+
project-key: "testchipip"
404+
timeout: "30m"
330405

331406
# Order and dependencies of jobs to run
332407
workflows:
@@ -357,6 +432,9 @@ workflows:
357432
# Attempt to apply the tutorial patches
358433
- tutorial-setup-check
359434

435+
# Check that documentation builds
436+
- documentation-check
437+
360438
# Build extra tests
361439
- build-extra-tests:
362440
requires:
@@ -373,6 +451,16 @@ workflows:
373451
- install-riscv-toolchain
374452
- install-verilator
375453

454+
- prepare-chipyard-streaming-fir:
455+
requires:
456+
- install-riscv-toolchain
457+
- install-verilator
458+
459+
- prepare-chipyard-streaming-passthrough:
460+
requires:
461+
- install-riscv-toolchain
462+
- install-verilator
463+
376464
- prepare-chipyard-hetero:
377465
requires:
378466
- install-riscv-toolchain
@@ -413,27 +501,37 @@ workflows:
413501
- install-riscv-toolchain
414502
- install-verilator
415503

416-
- prepare-firesim:
504+
- prepare-chipyard-ariane:
417505
requires:
418506
- install-riscv-toolchain
419507
- install-verilator
420508

421-
- prepare-fireboom:
509+
- prepare-icenet:
422510
requires:
423511
- install-riscv-toolchain
424512
- install-verilator
425513

426-
- prepare-chipyard-ariane:
514+
- prepare-testchipip:
427515
requires:
428516
- install-riscv-toolchain
429517
- install-verilator
430518

431-
# Run the respective tests
519+
- prepare-chipyard-nvdla:
520+
requires:
521+
- install-riscv-toolchain
522+
- install-verilator
523+
524+
- prepare-chipyard-spiflashwrite:
525+
requires:
526+
- install-riscv-toolchain
527+
- install-verilator
432528

433-
# Run midasexamples test
434-
- midasexamples-run-tests:
529+
- prepare-chipyard-spiflashread:
435530
requires:
436531
- install-riscv-toolchain
532+
- install-verilator
533+
534+
# Run the respective tests
437535

438536
# Run the example tests
439537
- chipyard-rocket-run-tests:
@@ -444,6 +542,14 @@ workflows:
444542
requires:
445543
- prepare-chipyard-sha3
446544

545+
- chipyard-streaming-fir-run-tests:
546+
requires:
547+
- prepare-chipyard-streaming-fir
548+
549+
- chipyard-streaming-passthrough-run-tests:
550+
requires:
551+
- prepare-chipyard-streaming-passthrough
552+
447553
- chipyard-hetero-run-tests:
448554
requires:
449555
- prepare-chipyard-hetero
@@ -472,17 +578,42 @@ workflows:
472578
requires:
473579
- prepare-tracegen-boom
474580

581+
- chipyard-spiflashwrite-run-tests:
582+
requires:
583+
- prepare-chipyard-spiflashwrite
584+
585+
- chipyard-spiflashread-run-tests:
586+
requires:
587+
- prepare-chipyard-spiflashread
588+
475589
# Run the firesim tests
476590
- firesim-run-tests:
477591
requires:
478-
- prepare-firesim
592+
- install-riscv-toolchain
593+
- install-verilator
594+
- build-extra-tests
595+
- firesim-multiclock-run-tests:
596+
requires:
597+
- install-riscv-toolchain
598+
- install-verilator
479599
- build-extra-tests
480-
481600
- fireboom-run-tests:
482601
requires:
483-
- prepare-fireboom
602+
- install-riscv-toolchain
603+
- install-verilator
484604
- build-extra-tests
485605

486606
- chipyard-ariane-run-tests:
487607
requires:
488608
- prepare-chipyard-ariane
609+
610+
- chipyard-nvdla-run-tests:
611+
requires:
612+
- prepare-chipyard-nvdla
613+
- icenet-run-tests:
614+
requires:
615+
- prepare-icenet
616+
617+
- testchipip-run-tests:
618+
requires:
619+
- prepare-testchipip

0 commit comments

Comments
 (0)