All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- debug_rom: Add rst
- dm_csrs: Fix W1C behavior of
sberror
(#155) @andreaskurth - gen_rom.py: Port to python3 (#152) @andreaskurth
xprop_off
to Xprop-incompatible processes (#151) @andreaskurth
- 64-bit unaligned accesses (#145) @creinwar
- Various minor testbench fixes (#146)
- Halted, Resume and Exception addresses are now aligned to 8 bytes
- Testbench build (#141, #142)
- remote_bitbang tb build for newer GCC versions (#133) @epsilon537
- 32-bit access to abstract data (#27) @Silabs-ArjanB
dm_mem
: Clear state of hart upon ndmreset (#140) @andreaskurthdmi_jtag_tap
: Bring all state to initial value in test-logic-reset (#139) @andreaskurth- Fix DMI response when command or SBA are busy (#138) @andreaskurth
- Add expontential backoff to read_dmi in tb (#134) @colluca
- Fixed dmi_bscane_tap top-level signals
- Add sbaccess8 and sbaccess16 support (#106) @noytzach
- Implement SBA bad address error (#12) @msfchaffner
- Added random reset tests to dmi testbench.
- Implement
dmihardreset
functionaliy indtmcs
register. dmi_rst_ni
ofdm_top
is now a synchronous signal. However,dmi_rst_no
ofdmi_jtag
is glitch-free and asserted during all forms (functional or POR) of resets.
- Fixed documentation (csr)
- Fixed reset value of sbcs register (#127) @msfchaffner
- Fixed various ascent lint warnings @msfchaffner
- Implement proper CDC flushing behavior on functional resets and JTAG resets (asynchronous or TestLogicReset driven).
- Fix JTAG non-compliance in TestLogicReset state (IR should reset to IDCODE).
- Remove superfluous helper variable in dm_csrs.sv
- Synchronized Bender.yml entries
- Various Lint warnings
- Added parameter ReadByteEnable that may be disabled to revert SBA be behavior to 0 on reads
- Optional wrapper
dm_obi_top.sv
that wrapsdm_top
providing an OBI compliant interface tb
that runs dm in conjunction with ri5cy and OpenOCD.travis-ci.yml
runningtb
with verilator
- Made second scratch register optional (default is two) from @zarubaf
- Use latest version of CV32E40P in testbench (#82) @Silabs-ArjanB
- Move assertions into separate module (#82) @Silabs-ArjanB
- Fix for SBA be when reading to match the request size from (#70) @jm4rtin
- Off-by-one error in data and progbuf end address from @pbing
- Haltsum1-3 calculation
- A DMI read of SBAddress0 andSBAddress0 will (wrongly) trigger SBBUSYERROR when the system bus master is busy (#93) @Silabs-ArjanB
- When the two scratch mode is being used, a0 was loaded instead of saved into scratch1 (#90) @Silabs-ArjanB
- dmireset can be accidentally triggered (#89) @Silabs-ArjanB
- enumeration lint issue in ProgBuf (#84) @Silabs-ArjanB
- Fix faulty assertion because of bad
hartinfo_i
in testbench (#82) @Silabs-ArjanB - Return
CmdErrBusy
if accessing data or progbuf while command was executing (#79) @noytzach
- Documentation in
doc/
from @imphil
- Various linting issues and cleanups from @msfschaffner
- Corruption on debug exception entry @tomroberts-lowrisc
- truncation of
selected_hart
- Add Bender.yml
- Fix haltsum1, haltsum2 and haltsum3
- Fix minor linter issues
- Parametrize buswidth to support 32-bit and 64-bit cores
- Support arbitrary base addresses in debug ROM
- Add misc helper functions to facilitate code generation
- Add README
- Fork from Ariane
- Allow generic number of data registers
- Make JTAG IDCODE parametrizable
- Remove ariane specific packages
- Fix resumeack and resumereq behaviour to be cleared and set according to debug specification
- Add missing JTAG test logic reset handling
- Fix resume logic in multihart situations
- Fix missing else(s) in system bus access
- Fix bad transitions into program buffer
- Fix error handling when using unsupported abstract commands
- Prevent harts from being in multiple states
- Fix various style issues