Commit graph

1719 commits

Author SHA1 Message Date
Florian Zaruba
48be94f822 Ariane 4.1.0 2019-03-18 11:51:58 +01:00
Michael Schaffner
55b69486f9 Fix for OpenPiton release 2019-03-18 11:51:58 +01:00
Florian Zaruba
5eed9ef91d Move AXI Id widths to SoC package 2019-03-18 11:51:58 +01:00
Florian Zaruba
ad223cfd9f Clean-up naming to distinguish OP from GP Ariane (#193)
* Clean-up naming to distinguish  OP from GP Ariane

* Rename wb to wt in hidden CI files

* Fix verilator install script
2019-03-18 11:51:58 +01:00
Michael Schaffner
e0a71ea0e9 Output more status info in zsbl for OpenPiton 2019-03-18 11:51:58 +01:00
Florian Zaruba
a5f3184a65 Improve Tandem Simulation, switch-able caches and fix a cache-bug (#192)
* Add spike isa sim

* Fix AMO problem in verilator

* 🎨 Tidy up FPU wrapper

* Bump axi_exclusive submodule

* Refactor serpent AXI adapter, bump dbg and atomics submodules, add separate bootrom for linux on OpenPiton (#190)

* Refactor serpent AXI adapter

* Disable FPU in OpenPiton by default

* Bump dbg and atomics submodules

* Fix cache testbenches (interface change)

* FPGA bootrom changes for OpenPiton SDHC

* Introduce two bootroms, one for baremetal apps (pitonstream), and one for linux boot from SD

* Testing barrier-based synchronisation instead of CLINT-based

* This bootrom works for 2 core on g2 and if you change MAX_HARTS to 4, then 4 cores on vc707

* Add MAX_HARTS switch to makefile

* Fix gitlab CI

* Revert standard FPGA bootrom

* Update Flist

* Make UART_FREQ a parameter

* Fix typo in tb.list and an error in define switch in ariane_pkg

* Copy over SD-driver in bootloader from @leon575777642

* Fix compilation issues of bootrom

* Change signal name in serpent periph portlist

* Correct generate statement in serpent dcache memory

* Add Piton SD Controller, FPGA fixes

* Fix race condition in dcache misshandler

* Add tandem spike to Make flow

* Remove OpenPiton SD Card controller again
2019-03-18 11:51:58 +01:00
Michael Schaffner
cc0583d144 Fix race condition in dcache misshandler 2019-03-18 11:51:58 +01:00
msfschaffner
0ffef2ae1a Refactor serpent AXI adapter, bump dbg and atomics submodules, add separate bootrom for linux on OpenPiton (#190)
* Refactor serpent AXI adapter

* Disable FPU in OpenPiton by default

* Bump dbg and atomics submodules

* Fix cache testbenches (interface change)

* FPGA bootrom changes for OpenPiton SDHC

* Introduce two bootroms, one for baremetal apps (pitonstream), and one for linux boot from SD

* Testing barrier-based synchronisation instead of CLINT-based

* This bootrom works for 2 core on g2 and if you change MAX_HARTS to 4, then 4 cores on vc707

* Add MAX_HARTS switch to makefile

* Fix gitlab CI

* Revert standard FPGA bootrom

* Update Flist

* Make UART_FREQ a parameter

* Fix typo in tb.list and an error in define switch in ariane_pkg

* Copy over SD-driver in bootloader from @leon575777642

* Fix compilation issues of bootrom

* Change signal name in serpent periph portlist

* Correct generate statement in serpent dcache memory
2019-03-18 11:51:58 +01:00
Florian Zaruba
692a826600 Bump axi_exclusive submodule 2019-03-18 11:51:58 +01:00
Stefan Mach
60724973a7 🎨 Tidy up FPU wrapper 2019-03-18 11:51:58 +01:00
Florian Zaruba
a4e49fc872 Fix AMO problem in verilator 2019-03-18 11:51:58 +01:00
msfschaffner
07df142624 Maturity fixes and AXI extensions for write-through cache system (#188)
* : Fix PITON_ARIANE define issues
* Fix write-back / cache read collision issue in serpent dcache.
* Add separate bootrom / device tree for openpiton (hardcoded for 1x1 tile config at the moment).
* Bootrom generation update (better compatibility with older python versions), new bootrom for OpenPiton+Ariane.
* Fix assertion in icache.
* Correct JTAG timing constraints.
* Fix parameter type in fpga toplevel (fix #168).
* Remove conflicting bootrom from fpga file list.
* This flushs the branch predictors when entering exception handlers in order to avoid speculative fetches from virtual addresses (to be improved with PMAs).
* Fix byte offset of IPIs in CLINT
* Disable DCache flushes on fence for write-through cache (not needed in that case)
* Fix blocking assignments in ff process.
* Fix register access issue in debug mode, only affects A0 (fix #179).
* Fix multiple driver issue in PLIC
* Do not assume replicated data in serpent dcache when reading from an NC region.
* Another byte offset fix in IPIs (CLINT)
* Add AXI64 compliance switch to dcache_mem
* Fix genesys 2 constraints
* Map serpent atomic requests onto AXI atomic/exclusive transactions.
* Cleanup of AXI memory plumbing, add separate AXI adapter module.
* Remove unneeded interface signals, increase wbuffer #pending tx
* Fix verilator compilation issues in AXI adapter.
* Delete unnecessary constraint
* Delete duplicate module instance
* Update gitlab CI script
* Small fixes to make riscv atomics work with serpent_axi_adapter.
* Update travis and gitlab-ci scripts
* Register b responses for better timing.
* Remove fpu div submodule, update Makefile paths and src lists
* Constant bits in haltsum reduction must be 1 (AND reduction).
* Switch to DTM from riscv-dbg submodule
* Further cleanup fixes in AXI/serpent atomics
* Bump riscv-dbg version
2019-03-18 11:51:58 +01:00
Stefan Mach
0c47db8611 ⬆️ Patch FPU bugs 2019-03-18 11:51:58 +01:00
Stefan Mach
12c6b43a2f ⬆️ Bump FPU version 2019-03-18 11:51:58 +01:00
Florian Zaruba
843300302f Add Exclusive Adapter (#187)
* Add atomic adapter as submodule

* Change UART frequency

* Add atomic memory adapter

* Bump AXI exclusive submodule version

* Re-name ariane_next to ariane-dev

* Switch to official `atop` branch on `axi_node`
2019-03-18 11:51:58 +01:00
Florian Zaruba
b1bdc0c02c Add System Verilog FPU (#163)
* Change reset strategy in ariane_verilog_wrap.sv, remove unneeded sigs in serpent_peripherals.

* saving...

* ⬆️ Updates for new FPU

* Add sv fpu to FPGA flow

* Use multi-threading capabilities of verilator

- Deactivate non-standard floating point arguments
- Make multi-threading conditional on the availability of verilator 4

* Remove DPI threadsafety

* Reduce FPGA clock frequency

- Remove couple of -v- tests to reduce test-time

* Fix documentation and fpga flow

- Fix cycle time to accommodate FPU
- Fix FPGA constraints

* Change UART frequency
2019-03-18 11:51:58 +01:00
Florian Zaruba
90cebe6e70
🐛 Fix HINT instructions in compressed decoder (#156)
* 🐛 Fix HINT instructions in compressed decoder
* Fix compressed illegal instruction issues
2019-02-18 14:16:31 +01:00
jrrk
3ca3a28aa5 Adjust Memory size to Genesys2 maximum (1GByte) (#177) 2019-02-15 19:45:26 +01:00
msfschaffner
f5bc68618d Fix register access issue in debug mode, only affects A0 (fix #179). (#180) 2019-02-14 17:15:56 +01:00
Florian Zaruba
2504c1fb00
Merge pull request #176 from pulp-platform/fix-preloading-issue
Fix an alignment issue when preloading the memories
2019-02-08 15:50:35 +01:00
Florian Zaruba
381dbb04be
Merge branch 'master' into fix-preloading-issue 2019-02-08 10:45:03 +01:00
Florian Zaruba
3a5973402d
Merge pull request #175 from lowRISC/noila_1GHz
Correct mdio_oe naming, streamline to allow 1GHz capability
2019-02-08 10:44:39 +01:00
Florian Zaruba
0ded59a380
Fix an alignment issue when preloading the memories 2019-02-07 14:44:25 +01:00
Jonathan Richard Robert Kimmitt
40bc4de924 Correct mdio_oe naming, streamline to allow 1GHz capability 2019-02-06 09:32:40 +00:00
Florian Zaruba
d0dfdc6386
Merge pull request #174 from pulp-platform/Moschn-patch-1
Bugfix in FPGA bootrom
2019-02-05 18:36:40 +01:00
Moritz Schneider
a43ebc15ae
Bugfix in FPGA bootrom
Thanks @janhoogerbrugge
2019-02-05 11:19:46 +01:00
Florian Zaruba
716f53d205
Merge pull request #170 from jrrk/noila
Disable ILAs in ethernet subsystem by default
2019-01-31 13:21:08 +01:00
Jonathan Richard Robert Kimmitt
0ab318ad4f Disable ILAs by default 2019-01-31 10:46:45 +00:00
Florian Zaruba
5d3260196b
Merge pull request #167 from msfschaffner/master
Switch JTAG from PMOD to FTDI chip, update OpenPiton file list and OpenOCD cfg files.
2019-01-30 17:53:02 +01:00
Michael Schaffner
66b8495c62
Modify file list for openpiton 2019-01-30 16:30:19 +01:00
Michael Schaffner
11c8b4a58d
Update changelog 2019-01-30 15:36:39 +01:00
Michael Schaffner
40be845580
Rerouting RISC-V DTM JTAG from PMOD header to 2nd channel of FTDI chip. 2019-01-30 11:36:34 +01:00
Florian Zaruba
46d29c4827
Merge pull request #166 from jrrk/rgmii_eth
Add RGMII ETH
2019-01-29 16:26:45 +01:00
Jonathan Richard Robert Kimmitt
0cdd6ae5a4 Update device tree source and associated FSBL code 2019-01-29 11:30:59 +00:00
Jonathan Richard Robert Kimmitt
12a3b742e8 Correct spelling in README.md and add backup~ files to .gitignore 2019-01-29 09:11:01 +00:00
Jonathan Richard Robert Kimmitt
4a62b8c2ba Update Makefile with path to ethernet submodule Verilog files 2019-01-29 08:51:23 +00:00
Jonathan Richard Robert Kimmitt
b5ab439a96 Update .dts for Linux driver recognition 2019-01-28 17:09:01 +00:00
Jonathan Richard Robert Kimmitt
694bb87c26 Merging upstream updates 2019-01-28 17:02:50 +00:00
Jonathan Richard Robert Kimmitt
3b2c97b2e2 Move RGMII modules to submodule 2019-01-28 16:59:14 +00:00
msfschaffner
78bf1dd5e9
Merge branch 'master' into rgmii_eth 2019-01-28 16:32:51 +01:00
Dr Jonathan Kimmitt
29ffdf1b55 Correct style issues and changes to pass Travis 2019-01-25 09:34:39 +00:00
msfschaffner
424d6302d3
Merge pull request #161 from msfschaffner/dm-reloc-fix
This patch makes the dm relocatable to an arbitrary base address.
2019-01-24 19:13:38 +01:00
Michael Schaffner
7951802a01
This patch makes the dm relocatable to an arbitrary base address (last 12bit need to be zero however). 2019-01-24 12:44:21 +01:00
Jonathan Richard Robert Kimmitt
1311a8da0b Remove unused modules from Ethernet hierarchy 2019-01-23 14:50:15 +00:00
Jonathan Richard Robert Kimmitt
24d37830db Remove obsolete Xilinx Ethernet Lite 2019-01-23 14:34:51 +00:00
Jonathan Richard Robert Kimmitt
ef37d20fad Adapt rgmii ethernet core from Alex Forencich for Ariane on Genesys2 2019-01-23 13:53:50 +00:00
Florian Zaruba
ac078f9b8b
Merge pull request #162 from pulp-platform/ariane-fix-libpath
Fix library path also for Modelsim
2019-01-15 18:28:39 +01:00
Florian Zaruba
f4ec843b35
Fix library path also for Modelsim 2019-01-15 11:04:20 +01:00
msfschaffner
4fd90a3017
Merge pull request #160 from msfschaffner/master
Fix for address offset issue (fix #158)
2019-01-12 15:20:06 +01:00
Michael Schaffner
b734090ad8
Clean up build cache after compilation to reduce packing / depacking time. 2019-01-12 13:13:40 +01:00