Commit Graph

29 Commits

Author SHA1 Message Date
Alex Mykyta
543bf2be9a Remove dangerous usage of non-public parts of the systemrdl-compiler API 2025-11-04 23:05:50 -08:00
Alex Mykyta
529c4df98c Move port list generation out of Jinja template. #125, #153 2025-10-25 20:19:15 -07:00
sbaillou
d69af23be5 Error response for unmapped address or forbidden read/write access (#168)
* feat: add ability to enable error output on the cpuif, when decoding errors occur (generate_cpuif_err in API).

* fix: move signal to new place (after automatic vers)

* feat: add info about new api (generate_cpuif_err)

* fix: repair readback with latency

* Adding generate_cpuif_err argument to peakrdl-regblock to generate cpuif error response, when the address is decoded incorrectly

* add sw rd or/and wr attribure error response related and add error respone for external mem

* add sw rd or/and wr error response test

* add sw rd or/and wr error response for external register test and fix generation of rtl logic for external register

* add sw rd or/and wr error response for external mem test

* add sw rd or/and wr error response for apb3 imterfaces driver

* add error response test for APB4, AXI4Lite and Avalon interfaces

* rename --generate_cpuif_err to --generate-cpuif-err

* style: minor typo fixes and test clean-up

* refactor: move expected error check inside write/read functions

* feat: add error response check to OBI testbench interface

* feat: split generate-cpuif-err option into err-if-bad-addr and err-if-bad-rw options

* feat: add err_if_bad_addr/rw to cfg_schema

* feat: extend cpuif_err_rsp test to cover all combinations of bad_addr/bad_rw

* style: lint fixes

* fix: removed redundant if node.external condition to help coverage

* Fix dangling hwif_in signals in testcase

---------

Co-authored-by: Denis Trifonov <d.trifonov@yadro.com>
Co-authored-by: Dominik Tanous <tanous@kandou.com>
Co-authored-by: Sebastien Baillou <baillou@kandou.com>
Co-authored-by: Alex Mykyta <amykyta3@users.noreply.github.com>
2025-10-25 18:22:15 -07:00
Alex Mykyta
40687abd6b Type hinting cleanup 2025-03-03 21:37:07 -08:00
Aylon Chaim Porat
28ed82129f Add Addressmap block size to generated package (#134)
* add map size as a localparam in rdl map package

* rename from _SIZE -> _BYTES_SIZE

* fix names on new test & localparam

* wrap map size in SVInt
2025-03-03 21:16:25 -08:00
Alex Mykyta
1f193e87eb Fix edge case if exporting a block that contains no internal registers. #53 2023-06-28 22:24:10 -07:00
Alex Mykyta
b056a443f1 Use sized integer literals in comparisons. #49 2023-06-14 21:58:41 -07:00
Alex Mykyta
ac3f466fb2 Fix oversized address width calculation edge case. #46 2023-06-12 22:05:03 -07:00
Alex Mykyta
0d82154b9d Add support for field paritycheck. #35 2023-05-15 22:53:17 -07:00
Alex Mykyta
3e691cb5fb Fix bug where small designs with 3 or less sw readable addresses and readback retiming enabled generate incorrect output. 2023-05-14 22:46:23 -07:00
Alex Mykyta
b350da3e7c Add ability to control default reset style. #34 2023-05-13 17:15:31 -07:00
Alex Mykyta
5e76956618 Refactor exporter class to clean up the mess of random variables 2023-05-12 23:44:09 -07:00
Alex Mykyta
5b3cdd9d7a Move get_always_ff_event() to a more sensible location 2023-05-12 21:51:42 -07:00
Alex Mykyta
ca9185dac7 Add support for external components. (#4 & #36) 2023-05-11 21:52:26 -07:00
Alex Mykyta
2e37e580f6 simplify cpuif base cls 2023-04-21 21:50:33 -07:00
Hugh Jackson
0c7e493976 Add support for user defined enums in field encode property. #29 2023-04-12 23:09:06 -07:00
Alex Mykyta
03d3729ac3 Create output dir before export. #30 2023-04-03 21:23:54 -07:00
Alex Mykyta
9dd0c6a928 fix error msg phrasing 2023-01-18 20:24:33 -08:00
Alex Mykyta
c0427f5a73 Add option to override CPUIF address width. #25 2023-01-18 20:18:06 -08:00
Alex Mykyta
fcfd5c09f4 fixup 2022-11-08 21:09:58 -08:00
Alex Mykyta
ada050bf2d Add ability to generate a HWIF report. #13 2022-11-07 23:20:58 -08:00
Alex Mykyta
9e76a712a7 Implement read buffering. (#22) 2022-11-06 23:28:07 -08:00
Alex Mykyta
279a3c5788 Implement write buffering (#22) 2022-10-29 22:02:04 -07:00
Alex Mykyta
808067fac9 Fix synthesizability of fields with msb0 ordering 2022-10-17 23:24:35 -07:00
Alex Mykyta
e07e7d26b2 Add support for wide registers (where accesswidth < regwidth) 2022-10-17 22:13:29 -07:00
Alex Mykyta
3b4289f2c6 Add APB4 cpuif 2022-09-13 22:39:36 -07:00
Alex Mykyta
135b717486 Add identifier filter. closes #14 2022-07-20 23:35:17 -07:00
Alex Mykyta
34d2f7740c Add PeakRDL application entry point hook 2022-07-18 20:28:08 -07:00
Alex Mykyta
8d13a9d7fe Switch to use regular non-namespaced package 2022-06-09 20:24:53 -07:00