.gitignore
.pre-commit-config.yaml
.readthedocs.yaml
CHANGELOG.md
CONTRIBUTING.md
LICENSE
MANIFEST.in
Makefile
README.md
pyproject.toml
requirements.txt
.github/dependabot.yml
.github/pull_request_template.md
.github/ISSUE_TEMPLATE/bug_report.md
.github/ISSUE_TEMPLATE/feature_request.md
.github/ISSUE_TEMPLATE/question.md
.github/workflows/build_icarus.yml
.github/workflows/build_verilator.yml
.github/workflows/setup_icarus.yml
.github/workflows/setup_verilator.yml
.github/workflows/test_environment.yml
.github/workflows/test_etana_icarus.yml
.github/workflows/test_etana_verilator.yml
.github/workflows/test_regblock_verilator.yml
.github/workflows/test_regblock_vhdl_ghdl.yml
.github/workflows/test_regblock_vhdl_nvc.yml
cursor_help/COCOTB_MIGRATION_GUIDE.md
cursor_help/UPSTREAM_SYNC_STATUS.md
docs/Makefile
docs/api.rst
docs/architecture.rst
docs/conf.py
docs/configuring.rst
docs/hwif.rst
docs/hwif_report.rst
docs/index.rst
docs/licensing.rst
docs/limitations.rst
docs/requirements.txt
docs/template_generation.rst
docs/testing.rst
docs/cpuif/ahb.rst
docs/cpuif/apb.rst
docs/cpuif/avalon.rst
docs/cpuif/axi4lite.rst
docs/cpuif/customizing.rst
docs/cpuif/internal_protocol.rst
docs/cpuif/introduction.rst
docs/cpuif/obi.rst
docs/cpuif/passthrough.rst
docs/dev_notes/Alpha-Beta Versioning
docs/dev_notes/Hierarchy-and-Indexing
docs/dev_notes/Program Flow
docs/dev_notes/Resets
docs/dev_notes/Signal Dereferencer
docs/dev_notes/Validation Needed
docs/dev_notes/template-layers/1-port-declaration
docs/dev_notes/template-layers/1.1.hardware-interface
docs/dev_notes/template-layers/2-CPUIF
docs/dev_notes/template-layers/3-address-decode
docs/dev_notes/template-layers/4-fields
docs/dev_notes/template-layers/5-readback-mux
docs/dev_notes/template-layers/6-output-port-mapping
docs/diagrams/arch.png
docs/diagrams/diagrams.odg
docs/diagrams/rbuf.png
docs/diagrams/readback.png
docs/diagrams/wbuf.png
docs/img/err.svg
docs/img/ok.svg
docs/img/warn.svg
docs/props/addrmap.rst
docs/props/field.rst
docs/props/reg.rst
docs/props/rhs_props.rst
docs/props/signal.rst
docs/rdl_features/external.rst
docs/udps/extended_swacc.rst
docs/udps/intro.rst
docs/udps/read_buffering.rst
docs/udps/write_buffering.rst
hdl-src/README.md
hdl-src/ahb_intf.sv
hdl-src/apb3_intf.sv
hdl-src/apb4_intf.sv
hdl-src/avalon_mm_intf.sv
hdl-src/axi4lite_intf.sv
hdl-src/regblock_udps.rdl
scripts/strip_trailing_whitespace.py
scripts/update_copyright_year.py
scripts/hwif_wrapper_tool/FINAL_SUMMARY.md
scripts/hwif_wrapper_tool/IMPLEMENTATION_SUMMARY.md
scripts/hwif_wrapper_tool/INDEX.md
scripts/hwif_wrapper_tool/MAKEFILE_INTEGRATION.md
scripts/hwif_wrapper_tool/QUICK_START.md
scripts/hwif_wrapper_tool/README.md
scripts/hwif_wrapper_tool/SCRIPT_USAGE.txt
scripts/hwif_wrapper_tool/STANDALONE_TOOL_SUMMARY.md
scripts/hwif_wrapper_tool/USAGE.md
scripts/hwif_wrapper_tool/VERIFICATION.md
scripts/hwif_wrapper_tool/example.py
scripts/hwif_wrapper_tool/generate_wrapper.py
scripts/hwif_wrapper_tool/pyproject.toml
scripts/hwif_wrapper_tool/test_standalone.sh
scripts/hwif_wrapper_tool/verify_equivalence.sh
scripts/hwif_wrapper_tool/hwif_wrapper_tool/__init__.py
scripts/hwif_wrapper_tool/hwif_wrapper_tool/cli.py
scripts/hwif_wrapper_tool/hwif_wrapper_tool/generator.py
scripts/hwif_wrapper_tool/hwif_wrapper_tool/parser.py
scripts/hwif_wrapper_tool/hwif_wrapper_tool/template_generator.py
scripts/hwif_wrapper_tool/hwif_wrapper_tool/wrapper_builder.py
scripts/hwif_wrapper_tool_vhdl/README.md
scripts/hwif_wrapper_tool_vhdl/TOOL_SUMMARY.md
scripts/hwif_wrapper_tool_vhdl/generate_wrapper_vhdl.py
scripts/hwif_wrapper_tool_vhdl/hwif_wrapper_tool_vhdl/__init__.py
scripts/hwif_wrapper_tool_vhdl/hwif_wrapper_tool_vhdl/vhdl_parser.py
scripts/hwif_wrapper_tool_vhdl/hwif_wrapper_tool_vhdl/vhdl_wrapper_builder.py
src/peakrdl_etana/__about__.py
src/peakrdl_etana/__init__.py
src/peakrdl_etana/__peakrdl__.py
src/peakrdl_etana/addr_decode.py
src/peakrdl_etana/dereferencer.py
src/peakrdl_etana/entry_points.py
src/peakrdl_etana/exporter.py
src/peakrdl_etana/external_acks.py
src/peakrdl_etana/forloop_generator.py
src/peakrdl_etana/hwif_report_generator.py
src/peakrdl_etana/identifier_filter.py
src/peakrdl_etana/module_tmpl.sv
src/peakrdl_etana/package_tmpl.sv
src/peakrdl_etana/parity.py
src/peakrdl_etana/scan_design.py
src/peakrdl_etana/sv_int.py
src/peakrdl_etana/template_generator.py
src/peakrdl_etana/utils.py
src/peakrdl_etana/validate_design.py
src/peakrdl_etana.egg-info/PKG-INFO
src/peakrdl_etana.egg-info/SOURCES.txt
src/peakrdl_etana.egg-info/dependency_links.txt
src/peakrdl_etana.egg-info/entry_points.txt
src/peakrdl_etana.egg-info/requires.txt
src/peakrdl_etana.egg-info/top_level.txt
src/peakrdl_etana/cpuif/__init__.py
src/peakrdl_etana/cpuif/base.py
src/peakrdl_etana/cpuif/ahb/__init__.py
src/peakrdl_etana/cpuif/ahb/ahb_tmpl.sv
src/peakrdl_etana/cpuif/apb3/__init__.py
src/peakrdl_etana/cpuif/apb3/apb3_tmpl.sv
src/peakrdl_etana/cpuif/apb4/__init__.py
src/peakrdl_etana/cpuif/apb4/apb4_tmpl.sv
src/peakrdl_etana/cpuif/avalon/__init__.py
src/peakrdl_etana/cpuif/avalon/avalon_tmpl.sv
src/peakrdl_etana/cpuif/axi4lite/__init__.py
src/peakrdl_etana/cpuif/axi4lite/axi4lite_tmpl.sv
src/peakrdl_etana/cpuif/obi/__init__.py
src/peakrdl_etana/cpuif/obi/obi_tmpl.sv
src/peakrdl_etana/cpuif/passthrough/__init__.py
src/peakrdl_etana/cpuif/passthrough/passthrough_tmpl.sv
src/peakrdl_etana/field_logic/__init__.py
src/peakrdl_etana/field_logic/bases.py
src/peakrdl_etana/field_logic/generators.py
src/peakrdl_etana/field_logic/hw_interrupts.py
src/peakrdl_etana/field_logic/hw_interrupts_with_write.py
src/peakrdl_etana/field_logic/hw_set_clr.py
src/peakrdl_etana/field_logic/hw_write.py
src/peakrdl_etana/field_logic/sw_onread.py
src/peakrdl_etana/field_logic/sw_onwrite.py
src/peakrdl_etana/field_logic/sw_singlepulse.py
src/peakrdl_etana/field_logic/wide_field.py
src/peakrdl_etana/field_logic/templates/counter_macros.sv
src/peakrdl_etana/field_logic/templates/external_block.sv
src/peakrdl_etana/field_logic/templates/external_reg.sv
src/peakrdl_etana/field_logic/templates/field_storage.sv
src/peakrdl_etana/field_logic/templates/field_storage_sig.sv
src/peakrdl_etana/hwif/__init__.py
src/peakrdl_etana/hwif/generators.py
src/peakrdl_etana/read_buffering/__init__.py
src/peakrdl_etana/read_buffering/implementation_generator.py
src/peakrdl_etana/read_buffering/storage_generator.py
src/peakrdl_etana/read_buffering/template.sv
src/peakrdl_etana/readback/__init__.py
src/peakrdl_etana/readback/generators.py
src/peakrdl_etana/readback/templates/readback.sv
src/peakrdl_etana/udps/__init__.py
src/peakrdl_etana/udps/extended_swacc.py
src/peakrdl_etana/udps/rw_buffering.py
src/peakrdl_etana/write_buffering/__init__.py
src/peakrdl_etana/write_buffering/declarations.sv
src/peakrdl_etana/write_buffering/implementation.sv
src/peakrdl_etana/write_buffering/implementation_generator.py
src/peakrdl_etana/write_buffering/storage_generator.py
src/peakrdl_etana/write_buffering/template.sv