Commit Graph

92 Commits

Author SHA1 Message Date
Albert Ou
b55e579c91 Override default baud rate for FireChip
This avoids target software needing to explicitly set the divisor to
match the UART bridge.
2020-07-07 23:00:14 -07:00
Jerry Zhao
a7047c4ba2 Fix FireChip BridgeBinders 2020-07-03 08:33:10 -07:00
Jerry Zhao
863f723708 Pipe through AXI4 MMIO and Slave ports to ChipTop | IOBinders fix
* Fixes bug with AXI4 MMIO ports not being generated properly due to
   IOBinders issue. Additionally adds IOCells to AXI4 ports so that they
   appear in ChipTop
 * Change IOBinders to also require passing p: Parameters
   to child functions. Serialization of type targets via ClassTags fails
   for compound types, so we cannot use `BaseSubsystem with HasSomeTrait`
   as the type target in OverrideIOBinders.
2020-06-30 13:42:06 -07:00
Jerry Zhao
d245df9133 Bump Rocketchip to June 2020 for Tile changes 2020-06-18 17:25:31 -07:00
David Biancolin
fa2d620fb2 Remove commented code in ScalaTests 2020-05-19 00:50:14 +00:00
David Biancolin
96e838c773 [firechip] Set the cover property library in FireSim Harnesses 2020-05-17 00:18:54 +00:00
David Biancolin
99846c1ccb [firechip] Use the standard Chipyard generator 2020-05-17 00:18:17 +00:00
Abraham Gonzalez
85b555dbce NVDLA Integration + Cleanup Ariane Preprocessing (#505)
* [nvdla] initial nvdla integration

* [nvdla] add firesim configs

* [nvdla] re-add accidentally deleted line

* [nvdla] works on master with small

* [nvdla] use master branch of nvdla

* [nvdla] remove extra sources

* [nvdla] bump

* [nvdla + ariane] bump and use insert-includes for pre-processing

* [nvdla] add ci | remove target configs in FireChip | update naming

* [nvdla] bump nvdla | fix ci run-tests error

* [nvdla] re-enable PCWM-L error | fix/update makefile(s)

* [nvdla] bump nvdla fragments in FireChip

* [misc] bump tutorial patches

* [chipyard] remove extra import

* [nvdla] bump nvdla for pbus [ci skip]

* [nvdla] update firemarshal and add nvdla workload

* [nvdla] bump nvdla-workload

* [nvdla] bump hw

* [docs] add basic documentation

* [docs] adjustments to documentation

* [misc] update docs | bump firesim with recipe

* [misc] disable error on warnings in verilator | bump number width to match RC

* [docs] fix doc build error

* [verilator] move no fail on warning to be global

* [ci skip] [nvdla] bump submodule urls

* [misc] move firesim specific configs into nvdla dir [ci skip]

* [nvdla] fix run-tests in ci

* update RC configs | bump marshal | bump nvdla-workload

* [nvdla] bump nvdla-workload [ci skip]

* add topology mixin to nvdla configs

* update tutorial patches
2020-05-16 12:22:30 -07:00
Jerry Zhao
3f5a204fd0 BOOM Bump w. Fromajo (#523)
* [uart] add uart adapter | add uart + adapter to all configs

* [uart] change pty define name | add uart to all configs that need it

* [uart] default to 115200 baudrate

* [dromajo] first working commit

* [dromajo] bump boom for commit-width > 1 fix

* [dromajo] adjust dromajo commits

* [dromajo] bump boom

* commit dromajo changes

* extra

* [dromajo] add block device to configs

* rebump older modules

* bump firesim

* [chipyard] enable dromajo in midas level simulation

* [testchipip] forgot to bump

* get rid of breaking things

* bump firesim

* bump boom

* Bump BOOM to ifu3 WIP

* bump firesim

* fix how memory is passed to dromajo

* bump boom and firesim

* fix merge issues

* add dromajo cosim bridge in chipyard

* move traceio back into testchipip (#488)

* refer to testchipip traceio in firechip (#490)

* Move TraceIO fragment to chipyard (#492)

* fix chipyard dromajo bridge (#493)

* Sboom dromajo bump (#501)

* [FireChip] Use clock in BridgeBinders

* [firesim] Update TraceGen BridgeBinder

* [Firechip] Add support for Tile <-> Uncore rational division

* [firesim] Update the multiclock test

* [firechip] Commit some Eagle X-related mock configs

* [firechip] Instantiate multiple TracerV bridges

* [Firechip] Include reset in tracerv tokens

* [TracerV] Drop the first token in comparison tests

* [Firechip] Make reverse instruction order in trace printf

* WARNING: Point at a fork of boom @ davidbiancolin

* [firesim] Update ClockBridge API

* Add Gemmini to README [ci skip] (#487)

* [firechip] Isolate all firesim-multiclock stuff in a single file

* add documentation on ring network and system bus

* Bump firesim for CI

* Bump FireSim

* Bump testchipip to dev

[ci skip]

* Bump FireSim

* [make] split up specific make vars/targets into frags (#499)

* [make] split up specific make vars/targets into frags

* [make] move dramsim and max-cycles into SIM_FLAGS

* [misc] move ariane configs to configs/ folder

* [dromajo] add dromajo

* [dromajo] bump for new traceio changes

* bump firesim

* bump firesim

* point to chipyard traceio

* bump boom

Co-authored-by: David Biancolin <david.biancolin@gmail.com>
Co-authored-by: Howard Mao <zhehao.mao@gmail.com>

* Support Dromajo + TracerV configurations

* [docs] add documentation for Dromajo in FireSim + Chipyard

* add a bit more docs

* [docs] bump docs

* [firesim] dump artefacts in firesim

* [firesim] update firesim

* [testchipip] remove extraneous items in testchipip

* [dromajo] prevent dromajo from breaking when params unset

* update firesim, dromajo, and testchipip

* [firesim] bump firesim

* [firesim] bump firesim

* [misc] bump firesim and testchipip for reviewer comments

* remove WithNoGPIO fragment

* bump firesim

* bump dromajo boom config

* bump firesim

* generate artefacts in firesim testsuite

Co-authored-by: abejgonzalez <abe.j.gonza@gmail.com>
Co-authored-by: Abraham Gonzalez <abe.gonzalez@berkeley.edu>
Co-authored-by: David Biancolin <david.biancolin@gmail.com>
Co-authored-by: Howard Mao <zhehao.mao@gmail.com>
2020-05-16 00:21:24 -07:00
David Biancolin
6950ad7cee Comment out Ariane from ScalaTests 2020-05-12 22:01:14 +00:00
Abraham Gonzalez
e22ff880e2 [firesim] generate rocket-chip based artefacts (#534) 2020-04-27 20:27:36 -07:00
David Biancolin
b26ed91b73 [CI] Convert FireSim tests to use ScalaTest 2020-04-26 21:11:31 -07:00
David Biancolin
b303cf6e81 Rocket Chip Stage/Phase Bump (#503)
[WIP] Minimally elaborating design

Bring up a feature-complete Chipyard stage

Pull in Makefrag generation; Bump submodules

Update config generation, and global reset scheme

Bump submodules; clean up

Bump FireSim

Remove some unhygenic comments / WS

Remove the rocketchip subproject

[CI] Lengthen ariane tests timeout

Address some remaining reviewer comments

[firechip] Refresh a Field that cannot be used across repeated instantiations

Bump all submodules
2020-04-18 17:54:27 +00:00
David Biancolin
d49c30560c Merge remote-tracking branch 'origin/dev' into diplomatic-bridges 2020-04-06 23:59:19 -07:00
David Biancolin
ba19987984 [firechip] Label FASED instances with an associated memory region name 2020-04-04 18:38:34 -07:00
John Wright
1f98c84210 Add ChipTop to enable real chip configs with IO cells, etc. (#480)
This adds an additional layer (ChipTop) between the System module and the TestHarness. The IOBinder API is now changed to take only a single parameter (an Any) and return a 3 things: The IO port(s), the IO cell(s), and a function to call inside the test harness, which is analogous to the old IOBinder function, except that it takes a TestHarness object as an argument instead of (clock, reset, success).
* A new Top-level module, ChipTop, has been created. ChipTop instantiates a "system" module specified by BuildSystem.
* BuildTop now builds a ChipTop dut module in the TestHarness by default
* A new BuildSystem key has been added, which by default builds DigitalTop (previously just called Top)
* The IOBinders API has changed. IOBinders are now called inside of ChipTop and return a tuple3 of (IO ports, IO cells, harness functions). The harness functions are now called inside the TestHarness (this is analogous to the previous IOBinder functions).
* IO cell models have been included in ChipTop. These can be replaced with real IO cells for tapeout, or used as-is for simulation.
* The default for the TOP make variable is now ChipTop (was Top)
2020-04-01 14:03:56 -07:00
David Biancolin
1b7158835a Bump firesim for CI 2020-03-24 10:43:01 -07:00
David Biancolin
7a17323bed [firechip] Isolate all firesim-multiclock stuff in a single file 2020-03-19 10:00:17 -07:00
David Biancolin
d80c2f7c08 Merge remote-tracking branch 'origin/dev' into firesim-multiclock
[ci skip]
2020-03-18 09:22:17 -07:00
David Biancolin
958332e1bf [firesim] Update ClockBridge API 2020-03-12 21:58:24 -07:00
Abraham Gonzalez
d0bec3fba7 Ariane Integration (#448)
* [ariane/make] integrate ariane | have verilator be installed on path not in makefile

* [misc] warn on verilator not found | search for v files | cleanup build.sbt + .gitignore

* [firesim] bump

* [ci] add midas ariane tests

* [docker/ci] use new docker-image with verilator | re-elab on v changes for ariane | address comments

* [ci] remove references to local verilator install

* [verilator] update flags

* [verilator] minimal set of flags for ariane

* [ariane] bump ariane to master

* [ci] revert to 4.016 verilator

* [ci] install verilator to ci server | misc compile fixes

* [ci/make] add longer ci timeout | update when assert is added in verilator sim

* [firesim] bump for misc. updates

* [make/ci] cleanup makefile and remove firesim tests of it

* [docs/firesim] bump and clean docs

* [firesim] bump

* [ci] use remote verilator for midas tests

* [misc] cleanup built.sbt more

* [firesim] bump

* [misc] bump build.sbt patch for tutorials

* [firesim/ci] cleanup and bump firesim
2020-03-09 18:06:41 -07:00
Howard Mao
7cf37b604e add ring topology system bus 2020-03-06 13:33:00 -08:00
Jerry Zhao
768f3e06ac Merge remote-tracking branch 'origin/dev' into package-rename 2020-02-23 23:56:04 -08:00
Jerry Zhao
708a5fb9a6 Address generator unification PR reviews 2020-02-23 22:53:14 -08:00
Jerry Zhao
701ea7c355 Add new type of IOBinder macro 2020-02-13 12:33:28 -08:00
Jerry Zhao
0f56c4ce44 Unify configs between Chipyard and FireSim 2020-02-13 12:33:28 -08:00
Jerry Zhao
ebfa545344 Generator unification 2020-02-13 12:33:28 -08:00
Jerry Zhao
49dbe8daba Rename top-level example package to chipyard
* FireChip now directly uses the Chipyard Top
2020-02-13 12:33:04 -08:00
David Biancolin
d19ca81e61 Merge remote-tracking branch 'origin/dev' into firesim-multiclock 2020-02-13 12:14:04 -08:00
David Biancolin
59dd6a79ff [firechip] Enable trace by default in BOOM-based targets (#412)
* [firechip] Enable trace by default in BOOM-based targets

* Bump boom for trace enchancements
2020-01-30 15:26:00 -08:00
Jerry Zhao
ac5235e5ed Revamp the config system for Top/Harness (#347)
* Refactor how Configs parameterize the Top and TestHarnesses

* Bump sha3, testchipip, icenet, firesim
2020-01-21 20:44:54 -08:00
David Biancolin
e45c83f810 [Firechip] Make reverse instruction order in trace printf 2020-01-21 13:35:29 -08:00
David Biancolin
b47e692b4b [TracerV] Drop the first token in comparison tests 2020-01-20 12:55:47 -08:00
David Biancolin
924f440385 [Firechip] Include reset in tracerv tokens 2020-01-20 12:00:23 -08:00
David Biancolin
3fbc074b01 [firechip] Instantiate multiple TracerV bridges 2020-01-17 17:56:37 -08:00
David Biancolin
524299bd39 [firechip] Commit some Eagle X-related mock configs 2020-01-09 16:52:02 -08:00
David Biancolin
38834a99e1 [firesim] Update the multiclock test 2020-01-09 16:51:27 -08:00
Howard Mao
1e0c5c5ac6 add checksum offload support to NIC 2019-12-16 09:02:01 -08:00
alonamid
56770a1a4c Gemmini Integration (#356)
* gemmini submodule

* fix build.sbt

* firechip gemmini config

* bump gemmini

* bump gemmini

* bump gemmini

* fix hwacha typo

* start gemmini docs

* bump gemmini

* gemmini docs

* Update Gemmini RST. Add quick-build instructions to Gemmini RST

* start gemmini CI

* bump gemmini

* gemmini CI fixes

* bump gemmini

* fix simulator name in gemmini CI

* cleanup gemmini CI

* bump esp-isa-sim to include gemmini

* update gemmini docs

* [ci skip] fix gemmini docs typos

* Update Gemmini.rst

Add instructions on building Gemmini programs, or writing your own programs.

* Changed order of VCS and Verilator in Gemmini docs

* Remove "make your own tests" from Gemmini README

* bump gemmini

* try to fix midasexamples CI
2019-12-14 01:36:42 -08:00
Colin Schmidt
86a473dbf6 Bump all submodules for chisel 3.2.0 and rocket-chip august-2019 (#358)
* Bump all submodules for chisel 3.2.0 and rocket-chip august-2019

* Fix subprojects that aren't tested from normal sims

* Fix firechip for chisel 3.2.0 and rc bump

* Bump boom for bug fix rebase

* [sbt] Don't rely on target-rtl symlink when FireSim is top [no ci]

* Bump boom for rc bump fix to bug fix

* Bump FireSim for CI check

* Bump FireSim

* Bump submodules after merge
2019-12-12 13:39:09 -08:00
David Biancolin
bcddd6e0f6 [Firechip] Add support for Tile <-> Uncore rational division 2019-11-22 16:29:55 -08:00
Howard Mao
f1346a2d91 FireSim generator should also produce hwacha test suite makefrag rules 2019-11-22 11:06:54 -08:00
David Biancolin
12485b8e5c [firesim] Update TraceGen BridgeBinder 2019-11-20 13:31:11 -08:00
David Biancolin
e3b30dbd83 [FireChip] Use clock in BridgeBinders 2019-11-01 17:17:57 -07:00
Howard Mao
05af2f9a9c Fix tracegen target and add to CI 2019-10-21 09:55:40 -07:00
Abraham Gonzalez
ced4d2eea0 Merge pull request #314 from ucb-bar/master
`master` fixes into `dev`
2019-10-18 21:05:29 -04:00
Albert Magyar
0d5bcf9c0d Add FireChip target with Verilog blackbox (#297)
Co-Authored-By: Abraham Gonzalez <abe.j.gonza@gmail.com>
2019-10-16 14:31:58 -07:00
David Biancolin
8c28f03ba1 [FireChip] Remove by3 clock division FASED config 2019-10-13 14:08:10 -04:00
Abraham Gonzalez
526da162dd update scala test suite 2019-10-10 18:27:02 +00:00
Abraham Gonzalez
480397ea09 Merge pull request #277 from ucb-bar/hetero-linux
FireSim Support for Hetero-Linux + FireSim Cleanup
2019-10-09 22:14:50 -07:00