Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
293 commits
Select commit Hold shift + click to select a range
b686a40
Integrate PLIC
zarubaf Sep 24, 2018
321abec
Merge remote-tracking branch 'origin/ariane_next' into fpga_dev
zarubaf Sep 24, 2018
77eb638
Add atomic signals
zarubaf Sep 21, 2018
382b117
Delete old AMO interface
msfschaffner Sep 21, 2018
088b9b5
:wrench: Add overnight capability to makefile
Sep 21, 2018
ba6407f
Explicitly enumerate AMO ops
msfschaffner Sep 24, 2018
f76fab5
Finish implementation of serpent dcache - needs to be tested now
msfschaffner Sep 20, 2018
92778c5
Merge branch 'ariane_next' into serpent
msfschaffner Sep 25, 2018
8da786d
Merge remote-tracking branch 'upstream/ariane_next' into serpent
msfschaffner Sep 25, 2018
a36a050
Fix serpent cache interfaces due to AMOs
msfschaffner Sep 25, 2018
5f18837
Add newline to test list
msfschaffner Sep 25, 2018
047f53e
Start adding Genesys 2 support
zarubaf Sep 26, 2018
abf5325
:bug: Fix combinatorial loop in debug module
Sep 26, 2018
9ee80b8
Fix latch and timing loop in debu_req
zarubaf Sep 25, 2018
5dcfd0d
Fix latch and timing loop in debu_req
zarubaf Sep 25, 2018
257d017
FPGA mapping working on Genesys 2
zarubaf Sep 27, 2018
082ab36
Fix single-stepping
zarubaf Sep 27, 2018
63070d8
:bug: Fix non-flushing AMOs
zarubaf Sep 28, 2018
25d2d58
Connect ipi in CLINT
zarubaf Sep 28, 2018
dcc8d73
:bug: Increase arbiter LSU arbiter depth
zarubaf Sep 28, 2018
eab0151
Linux booting to first context switch
zarubaf Sep 29, 2018
5a51cbd
Remove failedtests folder
zarubaf Sep 29, 2018
ebf18b4
Re-structure fpga folder
zarubaf Sep 29, 2018
63eb2cd
Add Xilinx IPs
zarubaf Oct 3, 2018
7c95cef
Add mig project file
zarubaf Oct 3, 2018
3834167
:bug: Fix spurious PTW fault bubbling to frontend
zarubaf Oct 10, 2018
0c8eb5a
Fix PLIC address map and DTS
zarubaf Oct 10, 2018
aa47e4a
Merge branch 'master' into ariane_next
zarubaf Oct 15, 2018
ff7bba2
Implemented serpent DCache and the corresponding TB
msfschaffner Sep 25, 2018
ef1ba19
Fix unconnected IPI signals in CLINT, and unconnected regs in CSR_REG…
msfschaffner Oct 11, 2018
fa3192a
Fix several issues with AXI IDs in axi_adapter, add AXI ID width para…
msfschaffner Oct 11, 2018
ffec3c8
Integrate serpent cache into Ariane
msfschaffner Oct 10, 2018
15b0ca9
Eliminate sim, simc make targets for Questa. Tests can be directly in…
msfschaffner Oct 12, 2018
6eb56f9
Initialize instruction traced shadow regfile to zero at start of simu…
msfschaffner Oct 12, 2018
71f6187
Make separate CI target for AMO tests
msfschaffner Oct 15, 2018
128a673
Bump fpga-support version
msfschaffner Oct 15, 2018
fd38e87
Add AMO tests list
msfschaffner Oct 15, 2018
b394d36
Merge remote-tracking branch 'upstream/ariane_next' into serpent
msfschaffner Oct 15, 2018
eec3abd
Fix FPU submodule version
msfschaffner Oct 15, 2018
5d4ebca
Change core_id + cluster_id into hart_id
msfschaffner Oct 15, 2018
6ecb9c5
Rename gitlab CI tests
msfschaffner Oct 15, 2018
5b93599
Rename gitlab CI tests
msfschaffner Oct 15, 2018
b7d469d
Replace all SYNTHESIS macros with pragma translate_off
msfschaffner Oct 15, 2018
c5b01e3
Update readme, bump common cells, benderize
msfschaffner Oct 15, 2018
3abe12b
Revert store_buffer commit interface due to timing issues
msfschaffner Oct 15, 2018
3d3b364
Repair AMO test Makefile target
msfschaffner Oct 15, 2018
9330e61
Replace all SYNTHESIS macros with pragma translate_off
msfschaffner Oct 15, 2018
3c3a378
Update readme, bump common cells, benderize
msfschaffner Oct 15, 2018
0f35880
Revert store_buffer commit interface due to timing issues
msfschaffner Oct 15, 2018
5d37678
Update changelog
msfschaffner Oct 15, 2018
c870449
Fix torture make target
msfschaffner Oct 16, 2018
9958e4e
Fix readport TB issue due to changed kill behavior of dcache readports
msfschaffner Oct 16, 2018
15cb764
Adapt torture targets, disable AMO instructions for the time being to…
msfschaffner Oct 16, 2018
089c796
Small RTL fixes
zarubaf Oct 16, 2018
8521586
Merge branch 'ariane_next' into serpent
msfschaffner Oct 16, 2018
ece36c0
:arrow_up: Bump submodules
zarubaf Oct 17, 2018
c40eb0b
Add SD card in SPI mode
Moschn Oct 11, 2018
8468544
Misc majurity fixes (#125)
msfschaffner Oct 17, 2018
bfad078
Switch to AXI structs
zarubaf Oct 17, 2018
644bcd7
Merge branch 'ariane_next' of github.com:pulp-platform/ariane into is…
zarubaf Oct 17, 2018
31a761e
Fix problems with ID width mismatches
zarubaf Oct 17, 2018
a5cf966
:memo: Update CHANGELOG
zarubaf Oct 17, 2018
25a0470
Fix Issue #127 (#128)
zarubaf Oct 17, 2018
ad35a73
Restore makefile targets with custom elf-bin
msfschaffner Oct 17, 2018
707c611
Restore makefile targets with custom elf-bin
msfschaffner Oct 17, 2018
b30b219
Re-structure ex-stage, clean-up
zarubaf Oct 17, 2018
0bd9c4f
Merge branch 'ariane_next' into serpent
msfschaffner Oct 17, 2018
e5719ce
WIP Update serpent cache subsystem AXI plugs
msfschaffner Oct 17, 2018
86c793c
Move multiply and divide to fixed latency units
zarubaf Oct 17, 2018
af484fa
:art: Update code comments
zarubaf Oct 17, 2018
0a43e0c
Restore makefile targets with custom elf-bin (#129)
msfschaffner Oct 17, 2018
be86657
Fix issue #119
zarubaf Oct 17, 2018
9999349
Merge remote-tracking branch 'origin/ariane_next' into issue-118
zarubaf Oct 17, 2018
45ba93f
Set invalidate on flush
zarubaf Oct 17, 2018
b4cdde4
Merge pull request #130 from pulp-platform/issue-118
zarubaf Oct 18, 2018
7da347e
Add more performance counters
zarubaf Oct 18, 2018
569ca80
Prepare for 64 bit fetch, reduce fetch fifo size
zarubaf Oct 18, 2018
423f9a5
Improve serial divider performance by aligning operands, add serdiv t…
msfschaffner Oct 18, 2018
76101fe
Improve serial divider performance by aligning operands, add serdiv t…
msfschaffner Oct 18, 2018
a5468eb
Remove exception pipeline reg in frontend
zarubaf Oct 19, 2018
9c2de92
Merge branch 'ariane_next' of github.com:pulp-platform/ariane into ar…
zarubaf Oct 19, 2018
6539da7
Merge branch 'ariane_next' into serpent
msfschaffner Oct 19, 2018
ec354b2
Switch on invalidate on flush again
zarubaf Oct 19, 2018
e382dc8
Fix assertion in load unit.
msfschaffner Oct 19, 2018
26fde6e
Add apb_node and apb_uart submodule
zarubaf Oct 25, 2018
23b7740
Fix uart time precision problem
zarubaf Oct 25, 2018
c1cac77
Add ethernet device tree
zarubaf Oct 25, 2018
feb187f
Add AXI adapter2, and connect l15 adapter.
msfschaffner Oct 19, 2018
3f9f939
Pull out all parameters of the serpent cache subsystem.
msfschaffner Oct 26, 2018
bfc38d9
Increase number of worker threads in CI.
msfschaffner Oct 26, 2018
35cfa8e
Add simulation feature for openpiton that exposes the retired PCs.
msfschaffner Oct 26, 2018
3d0755e
Add openpiton file list.
msfschaffner Oct 26, 2018
8a10998
Fix verilator compilation issues.
msfschaffner Oct 26, 2018
a8bcb23
Mature peripherals
zarubaf Oct 29, 2018
95519e4
Clean-up fpga folder
zarubaf Oct 29, 2018
e3107de
Merge branch 'fpga_dev' of github.com:pulp-platform/ariane into fpga_dev
zarubaf Oct 29, 2018
5060b99
Misc fixes related to openpiton compilation
msfschaffner Oct 29, 2018
b1be353
Disable NC -> F4B assertion, since it is not always true
msfschaffner Oct 29, 2018
44ec8f9
Add fifo_v3 to compile lists of cache TBs.
msfschaffner Oct 30, 2018
e372b13
Demote l15 assertion to a warning (unsupported rtrn types).
msfschaffner Oct 30, 2018
efd44e1
Fix SWAP_ENDIANESS and CACHE_LOW_REGION parameter propagation in serp…
msfschaffner Oct 30, 2018
7aab8a6
Add piton simulation interrupt workaround to verilog_wrap. This still…
msfschaffner Oct 30, 2018
dbe63f6
Add SPI interrupt to PLIC connection
Moschn Oct 30, 2018
2bda00a
Adapt DTS
zarubaf Oct 30, 2018
d7e73be
Merge branch 'fpga_dev' of github.com:pulp-platform/ariane into fpga_dev
zarubaf Oct 30, 2018
c9366c4
:bug: Fix interrupt registers
zarubaf Oct 30, 2018
8401bb9
:bug: Fix default assignment of instret and cycle
zarubaf Oct 30, 2018
487b960
:bug: Fix interrupt registers
zarubaf Oct 30, 2018
db97814
:bug: Fix default assignment of instret and cycle
zarubaf Oct 30, 2018
cb0b0be
Align serpent cache size with openpiton, add FPGA synthesizable clock…
msfschaffner Oct 31, 2018
1b1b4a4
Fix SEIP and device tree uart speed
zarubaf Oct 31, 2018
2cce246
Several small fixes for FPGA synthesis.
msfschaffner Oct 31, 2018
efce57f
Reduce number of CI runner threads.
msfschaffner Oct 31, 2018
3a4c2c4
Make index/tag assignments parametric in store_buffer and load_unit.
msfschaffner Nov 1, 2018
6315fb6
Minor modifications to ci scripts.
msfschaffner Nov 2, 2018
32354ac
Temporarily disable torture targets due to CI runner issues.
msfschaffner Nov 2, 2018
ab2d590
:bug: Fix wrong interrupt stack behaviour
zarubaf Nov 3, 2018
c1afe79
Add missing modules to .gitmodules
zarubaf Nov 3, 2018
b51f230
Add Spike under tb/
zarubaf Nov 3, 2018
c907270
First instructions passing on Spike
zarubaf Nov 3, 2018
0d6e4fe
Add ns16750 UART to Spike
zarubaf Nov 4, 2018
9db5088
Improve Spike - Ariane alignment
zarubaf Nov 4, 2018
64eb9d8
Improve Spike alignment
zarubaf Nov 5, 2018
398de2e
Small SoC modifications
zarubaf Nov 5, 2018
d7b9bea
Merge branch 'fpga_dev' of github.com:pulp-platform/ariane into fpga_dev
zarubaf Nov 5, 2018
04270a0
Add UART initialization
zarubaf Nov 5, 2018
0ec70e6
Move PLIC to 32 bit APB interface
zarubaf Nov 5, 2018
c57d360
Make tval on illegal instruction optional
zarubaf Nov 5, 2018
b75839a
Add test randomizer and align size of Spike memory
zarubaf Nov 5, 2018
4c41a53
Make index/tag assignments parametric in ptw.
msfschaffner Nov 5, 2018
b1faba8
Fix bug in writebuffer (perform multiple transactions to same word se…
msfschaffner Nov 5, 2018
f112b83
Fix writebuffer bug (out of order completion of writes could olead to…
msfschaffner Nov 5, 2018
ebce1bc
Add skeleton for NBDache TB (copy from serpent)
zarubaf Nov 6, 2018
66b0deb
Update bootrom
zarubaf Nov 7, 2018
f5c6b43
Update README
zarubaf Nov 7, 2018
f9e8e3e
Add dump device to Spike
zarubaf Nov 7, 2018
fbe2c29
Slight updates to ariane peripherals
zarubaf Nov 7, 2018
bb8bdbc
Ignore header ack in L15 adapter, make all AMOs NC per default.
msfschaffner Nov 8, 2018
0ce3653
Add support for VCU118
zarubaf Nov 12, 2018
411f645
Update axi_node, fix assertion in nbcache
zarubaf Nov 12, 2018
e0e61df
Add big Olimex debug adapter
zarubaf Nov 13, 2018
300b777
Remove pmps and fix dcache bypass
zarubaf Nov 13, 2018
fcba756
This adds configuration propagation from OpenPiton Verilog defines to…
msfschaffner Nov 13, 2018
3dd9ac5
Exchange axi interfaces with structs in CLINT and DM interfaces.
msfschaffner Nov 13, 2018
34de5d2
Update openpiton verilog wrapper and Flist.
msfschaffner Nov 13, 2018
64d1879
Disable taking interrupts on CSR instructions
zarubaf Nov 15, 2018
ea09463
Merge branch 'fpga_dev' of github.com:pulp-platform/ariane into fpga_dev
zarubaf Nov 15, 2018
beda3f5
Optionally flush TLB
zarubaf Nov 15, 2018
6437287
Merge branch 'fpga_dev' of github.com:pulp-platform/ariane into fpga_dev
zarubaf Nov 15, 2018
a99a176
Adapt parameterization assertions l15 adapter to allow for different …
msfschaffner Nov 14, 2018
1933f06
Update wake-up mechanism in ariane verilog wrap (otherwise Vivado opt…
msfschaffner Nov 14, 2018
e620574
Disable interrupts on CSRs
zarubaf Nov 15, 2018
ce2854f
Merge branch 'fpga_dev' of github.com:pulp-platform/ariane into fpga_dev
zarubaf Nov 15, 2018
1d173b3
:bug: Fix non-conditional SC
zarubaf Nov 16, 2018
99a2fae
Enable D$ by default and extend README
zarubaf Nov 16, 2018
ddf983c
Add stdout over ns16750 to fpga dts
zarubaf Nov 16, 2018
8d63b7c
Fix axi_node commit
zarubaf Nov 17, 2018
3c40965
Merge remote-tracking branch 'origin/ariane_next' into fpga_dev
zarubaf Nov 17, 2018
4431ad5
Use different IDs for read transactions, allow for multiple outstandi…
msfschaffner Nov 15, 2018
a2bd284
Remove additional JAVA info printouts in torture target.
msfschaffner Nov 15, 2018
fb92e86
Change defines.vh to defines.tmp.h
msfschaffner Nov 16, 2018
37a71e4
Add openpiton-specific peripherals
msfschaffner Nov 16, 2018
151fd76
Updated README.md
msfschaffner Nov 17, 2018
0b19176
Add missing Ubuntu package to ci-emul scripts.
msfschaffner Nov 17, 2018
d3e94ba
Use different IDs for read transactions, allow for multiple outstandi…
msfschaffner Nov 15, 2018
9263428
Adapt install verilator script.
msfschaffner Nov 18, 2018
93b5179
Change NC range definition in caches, rename parameters.
msfschaffner Nov 18, 2018
cfca0d7
Fix small errors due to renaming.
msfschaffner Nov 18, 2018
84f695f
Add ethernet_lite phy
zarubaf Nov 18, 2018
cb54ccf
Merge remote-tracking branch 'origin/fpga_dev_phy' into fpga_dev
zarubaf Nov 18, 2018
9733876
FPGA folder clean-up
zarubaf Nov 18, 2018
6b4a6b5
Change submodule remotes to https
zarubaf Nov 18, 2018
b4c5873
Exclude no cache subsystem from src
zarubaf Nov 18, 2018
87046e4
Remove duplicate source file entries
zarubaf Nov 18, 2018
fa5bcbd
Remove unneeded clearing step in serpent wbuffer.
msfschaffner Nov 18, 2018
d078a70
Save prv level on debug entry (bug from merging)
zarubaf Nov 18, 2018
3ef4bf3
:memo: Update readme to include stand-alone elf running
zarubaf Nov 18, 2018
4c32975
Add a second dscratch register to the csrs.
msfschaffner Nov 19, 2018
ac866bb
Add extended encoding.h reflecting the additional dscratch1 CSR in th…
msfschaffner Nov 19, 2018
bb82130
Put batch flow in place (incl small flow fixes)
zarubaf Nov 19, 2018
2573148
Fix mismatches in virtual address checking logic.
msfschaffner Nov 19, 2018
31f29be
Fix reset connections in serpent_peripherals.
msfschaffner Nov 19, 2018
db4f99e
Ethernet preparation, fpga fixes
zarubaf Nov 20, 2018
0947762
Remove non-working cache tb
zarubaf Nov 20, 2018
20f6b42
Remove spike tandem simulation
zarubaf Nov 20, 2018
f8692af
Merge pull request #135 from pulp-platform/fpga_dev
msfschaffner Nov 20, 2018
fe67f5d
:bug: Fix questa sim flow
zarubaf Nov 21, 2018
179054a
Merge remote-tracking branch 'upstream/ariane_next' into serpent
msfschaffner Nov 21, 2018
61e0a50
Disable multiple outstanding read transactions in AXI emulation mode …
msfschaffner Nov 21, 2018
2f38fcb
Correct small mismatch in icache TB (piton-specific data replication …
msfschaffner Nov 21, 2018
8aef461
Fix mismatches in virtual address checking logic.
msfschaffner Nov 19, 2018
190416b
Merge pull request #138 from msfschaffner/ariane_next
zarubaf Nov 22, 2018
6b99b47
Modify assertions in l15 adapter.
msfschaffner Nov 22, 2018
7c7643a
Add mii to rgmii converter
zarubaf Nov 23, 2018
4558960
Small pre-release clean-up
zarubaf Nov 23, 2018
137b5f3
Merge branch 'ariane_next' of github.com:pulp-platform/ariane into ar…
zarubaf Nov 23, 2018
7baea96
Merge remote-tracking branch 'origin/rgmii-converter' into ariane_next
zarubaf Nov 23, 2018
d0e657a
Fix some vector length issues in clind and dm, implement haltsum regs…
msfschaffner Nov 23, 2018
7ee27d8
Consistent use of the SPI peripheral without STARTUP
Moschn Nov 23, 2018
44d0f28
Update the SPI perihperal
Moschn Nov 23, 2018
44ba444
Add new bootloader
Moschn Nov 23, 2018
feece1d
Merge pull request #140 from pulp-platform/zsbl
zarubaf Nov 23, 2018
3e3d266
Ethernet fixes, instantiate RGMII to MII converter
zarubaf Nov 23, 2018
fe39689
Merge branch 'ariane_next' of github.com:pulp-platform/ariane into ar…
zarubaf Nov 23, 2018
7066474
:bug: fix bootrom build process
Moschn Nov 23, 2018
c29257e
Merge pull request #141 from pulp-platform/zsbl
zarubaf Nov 23, 2018
846d99e
Merge branch 'ariane_next' of github.com:pulp-platform/ariane into ar…
zarubaf Nov 23, 2018
e64a2db
Wire up PLIC in ariane peripherals for OpenPiton, update Flist.ariane.
msfschaffner Nov 23, 2018
0850d2c
Merge remote-tracking branch 'upstream/ariane_next' into serpent
msfschaffner Nov 23, 2018
785577d
:bug: Fix reset strategy in TB
zarubaf Nov 23, 2018
be3f379
Correct some assertions in frontend.
msfschaffner Nov 23, 2018
67c68e5
Merge remote-tracking branch 'upstream/ariane_next' into serpent
msfschaffner Nov 23, 2018
f5af3df
Merge pull request #142 from msfschaffner/ariane_next
zarubaf Nov 23, 2018
603c74d
Fix signaling issue in rgmii converter
zarubaf Nov 25, 2018
9907da6
Fix FPGA flow (broken after openpiton merge)
zarubaf Nov 25, 2018
6381b3d
Add ILA and GPIO peripheral
zarubaf Nov 25, 2018
be0b4cd
Use stream_arbiter and fix write ordering
zarubaf Nov 25, 2018
45c1234
[GPIO] Connect unconnected pins (clk, rst and last)
zarubaf Nov 25, 2018
41fb4d2
Rename SERPENT_PULP define to PITON_ARIANE.
msfschaffner Nov 26, 2018
693fe33
Merge remote-tracking branch 'iis-git/ariane_next' into ariane_next
msfschaffner Nov 26, 2018
8312516
License headers updated, some indentation cleanup, consolidate common…
msfschaffner Nov 26, 2018
afc9bd5
:bug: Bootrom was too small to fit new ZSBL
Moschn Nov 26, 2018
b860b00
Merge pull request #145 from pulp-platform/zsbl_2
zarubaf Nov 26, 2018
932ef8a
:arrow_up: Update jekyll dependency
zarubaf Nov 26, 2018
91d7bab
:bug: Fix potential AXI ordering issue
zarubaf Nov 26, 2018
a957685
Merge branch 'ariane_next' of github.com:pulp-platform/ariane into ar…
zarubaf Nov 26, 2018
a9e3368
: Fix PITON_ARIANE define issues.
msfschaffner Nov 26, 2018
aa72e2e
Merge pull request #144 from msfschaffner/ariane_next
zarubaf Nov 26, 2018
3635ddc
Merge branch 'ariane_next' of github.com:pulp-platform/ariane into ar…
zarubaf Nov 27, 2018
c1c67b2
Streamline FPGA flow
zarubaf Nov 27, 2018
dcfb31d
Include ethernet peripheral in dependency list
zarubaf Nov 27, 2018
0408e9f
Change hart log ids from hex to dec.
msfschaffner Nov 27, 2018
5a9835d
Fix mismatch in AMO logic of serpent cache missunit.
msfschaffner Nov 28, 2018
8f31cba
Merge pull request #148 from msfschaffner/ariane_next
zarubaf Nov 28, 2018
11bd8ca
:arrow_up: Bump fpu dependency
zarubaf Nov 28, 2018
f0d267c
Move UART to interrupt 0
zarubaf Nov 28, 2018
7c09143
FPGA build flow clean-up
zarubaf Nov 28, 2018
bdc11db
Deactivate randomization to save CI build time
zarubaf Nov 28, 2018
a76f228
Correct AMO alignment issues in serpent misshandler.
msfschaffner Nov 28, 2018
91fa9db
Update the SD card howto
Moschn Nov 28, 2018
9bfc431
Merge pull request #149 from msfschaffner/ariane_next
msfschaffner Nov 28, 2018
3f37ec7
Merge pull request #150 from pulp-platform/Moschn-patch-1
zarubaf Nov 28, 2018
89a0f6b
Factor out multiplication tests
zarubaf Nov 28, 2018
bdec1f6
Added debug address filter to ariane_verilog_wrap.sv
msfschaffner Nov 28, 2018
e99efab
Fix separator in Makefile
msfschaffner Nov 28, 2018
0c8bc49
:art: Update README
zarubaf Nov 29, 2018
f53aba7
:art: Update README with Linux credentials
zarubaf Nov 29, 2018
9ff98be
:art: Update OpenPiton section in README
msfschaffner Nov 29, 2018
b274dd6
Merge remote-tracking branch 'origin/master' into ariane_next
zarubaf Nov 29, 2018
250af8a
Change reset strategy in ariane_verilog_wrap.sv, remove unneeded sigs…
msfschaffner Nov 29, 2018
File filter

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ root = true
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
max_line_length = off
max_line_length = 100
# 4 space indentation
[*.{sv, svh, v, vhd}]
indent_style = space
indent_size = 4
indent_size = 2
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -22,4 +22,12 @@ build/
*.vcd
*.log
*.out
*.jou
*.o
uart
work-ver/*
fpga/work-fpga
stdout/
work-dpi/
tb/riscv-isa-sim/
work-*/*
187 changes: 168 additions & 19 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
before_script:
# paths to local or network installations (the riscv toolchain and
# paths to local or network installations (the riscv toolchain and
# verilator are not built in the ci job as in travis)
- export QUESTASIM_HOME=/usr/pack/modelsim-10.6b-kgf/questasim/
- export QUESTASIM_VERSION=-10.6b
- export QUESTASIM_FLAGS=-noautoldlibpath
- export CXX=g++-7.2.0 CC=gcc-7.2.0
- export RISCV=/usr/scratch2/larain1/gitlabci/riscv_install
- export VERILATOR_ROOT=/usr/scratch2/larain1/gitlabci/verilator-3.924
- export RISCV=/scratch2/gitlabci/riscv_install
- export VERILATOR_ROOT=/scratch2/gitlabci/verilator-3.924
# setup dependent paths
- export PATH=${RISCV}/bin:$VERILATOR_ROOT/bin:${PATH}
- export LIBRARY_PATH=$RISCV/lib
Expand All @@ -15,46 +15,195 @@ before_script:
- export CPLUS_INCLUDE_PATH=$RISCV/include:$VERILATOR_ROOT/include:/usr/pack/gcc-7.2.0-af/linux-x64/include
# number of parallel jobs to use for make commands and simulation
- export NUM_JOBS=4
- which java
- java -version
- which git
- git --version
- ci/make-tmp.sh
- git submodule update --init --recursive

- git submodule init
- git submodule update --recursive

variables:
GIT_SUBMODULE_STRATEGY: recursive

stages:
- build
- test_std
- standard
- serpent

###################################
# prepare
build:
stage: build
script:
- ci/build-riscv-tests.sh
- ci/get-torture.sh
- make clean
- make torture-gen
# this currently does not work with the current runner version...
#- make torture-gen
artifacts:
paths:
- tmp
- tmp

###################################
# tests with standard cache system

# rv64ui-p-* and rv64ui-v-* tests
asm-quest:
stage: standard
script:
- make -j${NUM_JOBS} run-asm-tests batch-mode=1
dependencies:
- build

amo-quest:
stage: standard
script:
- make -j${NUM_JOBS} run-amo-tests batch-mode=1
dependencies:
- build

bench-quest:
stage: standard
script:
- make -j${NUM_JOBS} run-benchmarks batch-mode=1
dependencies:
- build

# rv64ui-p-* tests
asm1-ver:
stage: standard
script:
- make -j${NUM_JOBS} run-asm-tests1-verilator
dependencies:
- build

# rv64ui-v-* tests
asm2-ver:
stage: standard
script:
- make -j${NUM_JOBS} run-asm-tests2-verilator
dependencies:
- build

# rv64um-*-* tests
mul-ver:
stage: standard
script:
- make -j${NUM_JOBS} run-mul-verilator
dependencies:
- build

# atomics
amo-ver:
stage: standard
script:
- make -j${NUM_JOBS} run-amo-verilator
dependencies:
- build

bench-ver:
stage: standard
script:
- make -j${NUM_JOBS} run-benchmarks-verilator
dependencies:
- build

bench-ver:
stage: standard
script:
- make -j${NUM_JOBS} run-benchmarks-verilator
dependencies:
- build

# torture:
# stage: standard
# script:
# - make torture-rtest batch-mode=1
# - make torture-rtest-verilator
# dependencies:
# - build

serdiv-quest:
stage: standard
script:
- cd tb/tb_serdiv/
- make simc
- "grep 'CI: PASSED' summary.rep"
dependencies:
- build

###################################
# tests with serpent cache system

# rv64ui-p-* and rv64ui-v-* tests
s-asm-quest:
stage: serpent
script:
- make -j${NUM_JOBS} run-asm-tests defines=PITON_ARIANE+AXI64_CACHE_PORTS batch-mode=1
dependencies:
- build

# rv64ui-p-* and rv64ui-v-* tests
run-asm-tests-questa:
stage: test_std
s-bench-quest:
stage: serpent
script:
- make -j${NUM_JOBS} run-asm-tests
- make -j${NUM_JOBS} run-benchmarks defines=PITON_ARIANE+AXI64_CACHE_PORTS batch-mode=1
dependencies:
- build

run-benchmarks-questa:
stage: test_std
# rv64ui-p-* tests
s-asm1-ver:
stage: serpent
script:
- make -j${NUM_JOBS} run-benchmarks
- make -j${NUM_JOBS} run-asm-tests1-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS
dependencies:
- build
- build

# rv64ui-v-* tests
s-asm2-ver:
stage: serpent
script:
- make -j${NUM_JOBS} run-asm-tests2-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS
dependencies:
- build

# rv64um-*-* tests
mul-ver:
stage: standard
script:
- make -j${NUM_JOBS} run-mul-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS
dependencies:
- build

s-bench-ver:
stage: serpent
script:
- make -j${NUM_JOBS} run-benchmarks-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS
dependencies:
- build

s-icache-quest:
stage: serpent
script:
- cd tb/tb_serpent_icache/
- make simc
- "grep 'CI: PASSED' summary.rep"

torture:
stage: test_std
s-dcache-quest:
stage: serpent
script:
- make torture-rtest
- cd tb/tb_serpent_dcache/
- make simc
- "grep 'CI: PASSED' RD0_summary.rep"
- "grep 'CI: PASSED' RD1_summary.rep"
- "grep 'CI: PASSED' TB_MEM_summary.rep"
dependencies:
- build

# s-torture:
# stage: serpent
# script:
# - make torture-rtest defines=PITON_ARIANE+AXI64_CACHE_PORTS batch-mode=1
# - make torture-rtest-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS
# dependencies:
# - build
23 changes: 19 additions & 4 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -4,21 +4,36 @@
[submodule "src/axi_node"]
path = src/axi_node
url = https://github.com/pulp-platform/axi_node.git
[submodule "src/fpu"]
path = src/fpu
url = https://github.com/pulp-platform/fpnew.git
[submodule "src/fpga-support"]
path = src/fpga-support
url = https://github.com/pulp-platform/fpga-support.git
[submodule "src/common_cells"]
path = src/common_cells
url = https://github.com/pulp-platform/common_cells.git
url = https://github.com/pulp-platform/common_cells.git
[submodule "src/axi"]
path = src/axi
url = https://github.com/pulp-platform/axi.git
[submodule "src/register_interface"]
path = src/register_interface
url = https://github.com/pulp-platform/register_interface.git
[submodule "fpga/src/apb_uart"]
path = fpga/src/apb_uart
url = https://github.com/pulp-platform/apb_uart.git
[submodule "fpga/src/apb_node"]
path = fpga/src/apb_node
url = https://github.com/pulp-platform/apb_node.git
[submodule "fpga/src/axi2apb"]
path = fpga/src/axi2apb
url = https://github.com/pulp-platform/axi2apb.git
[submodule "fpga/src/axi_slice"]
path = fpga/src/axi_slice
url = https://github.com/pulp-platform/axi_slice.git
[submodule "src/fpu_div_sqrt_mvp"]
path = src/fpu_div_sqrt_mvp
url = https://github.com/pulp-platform/fpu_div_sqrt_mvp.git
[submodule "src/tech_cells_generic"]
path = src/tech_cells_generic
url = https://github.com/pulp-platform/tech_cells_generic.git
[submodule "src/fpu"]
path = src/fpu
url = https://github.com/pulp-platform/fpnew.git
50 changes: 46 additions & 4 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ addons:
- python-pexpect
- libusb-1.0-0-dev
- default-jdk
- zlib1g-dev
- valgrind
env:
global:
- RISCV="/home/travis/riscv_install"
Expand Down Expand Up @@ -75,26 +77,66 @@ jobs:
name: run riscv benchmarks
script:
- ci/build-riscv-tests.sh
- make -j${NUM_JOBS} run-benchmarks-verilator
- make -j${NUM_JOBS} run-benchmarks-verilator
# rv64ui-p-* tests
- stage: test
name: run asm tests1
script:
- ci/build-riscv-tests.sh
- make -j${NUM_JOBS} run-asm-tests1-verilator
- make -j${NUM_JOBS} run-asm-tests1-verilator
# rv64ui-v-* tests
- stage: test
name: run asm tests2
script:
- ci/build-riscv-tests.sh
- make -j${NUM_JOBS} run-asm-tests2-verilator
- make -j${NUM_JOBS} run-asm-tests2-verilator
# rv64um-*-* tests
- stage: test
name: run mul tests
script:
- ci/build-riscv-tests.sh
- make -j${NUM_JOBS} run-mul-verilator
# amo tests
- stage: test
name: run amo tests
script:
- ci/build-riscv-tests.sh
- make -j${NUM_JOBS} run-amo-verilator
- stage: test
name: run torture
script:
- ci/get-torture.sh
- make clean
- make torture-gen
- make torture-rtest-verilator
- make torture-rtest-verilator

- stage: test
name: run riscv benchmarks (serpent)
script:
- ci/build-riscv-tests.sh
- make -j${NUM_JOBS} run-benchmarks-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS
# rv64ui-p-* tests
- stage: test
name: run asm tests1 (serpent)
script:
- ci/build-riscv-tests.sh
- make -j${NUM_JOBS} run-asm-tests1-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS
# rv64ui-v-* tests
- stage: test
name: run asm tests2 (serpent)
script:
- ci/build-riscv-tests.sh
- make -j${NUM_JOBS} run-asm-tests2-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS

- stage: test
name: run torture (serpent)
script:
- ci/get-torture.sh
- make clean
- make torture-gen defines=PITON_ARIANE+AXI64_CACHE_PORTS
- make torture-rtest-verilator defines=PITON_ARIANE+AXI64_CACHE_PORTS



# extra time during long builds
install: travis_wait
6 changes: 3 additions & 3 deletions Bender.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ dependencies:
axi_mem_if: { git: "https://github.com/pulp-platform/axi_mem_if.git", version: 0.2.0 }
axi_node: { git: "https://github.com/pulp-platform/axi_node.git", version: 1.1.1 }
tech_cells_generic: { git: "https://github.com/pulp-platform/tech_cells_generic.git", version: 0.1.1 }
common_cells: { git: "https://github.com/pulp-platform/common_cells.git", version: 1.7.5 }
common_cells: { git: "https://github.com/pulp-platform/common_cells.git", version: 1.8.0 }
fpga-support: { git: "https://github.com/pulp-platform/fpga-support.git", version: 0.3.2 }

sources:
Expand Down Expand Up @@ -73,10 +73,10 @@ sources:
- src/issue_read_operands.sv
- src/issue_stage.sv
- src/load_unit.sv
- src/lsu_arbiter.sv
- src/lsu.sv
- src/load_store_unit.sv
- src/mmu.sv
- src/mult.sv
- src/serdiv.sv
- src/perf_counters.sv
- src/ptw.sv
- src/ariane_regfile_ff.sv
Expand Down
Loading