peakrdl-busdecoder 0.6.1__tar.gz → 0.6.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/.github/workflows/test.yml +9 -0
  2. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/PKG-INFO +5 -4
  3. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/README.md +4 -3
  4. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/pyproject.toml +1 -1
  5. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/apb4/apb4_tmpl.sv +0 -2
  6. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/exporter.py +0 -2
  7. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/module_tmpl.sv +0 -1
  8. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/package_tmpl.sv +0 -1
  9. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/validate_design.py +1 -25
  10. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder.egg-info/PKG-INFO +5 -4
  11. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/uv.lock +1 -1
  12. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/.devcontainer/Dockerfile +0 -0
  13. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/.devcontainer/devcontainer.json +0 -0
  14. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  15. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  16. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/.github/ISSUE_TEMPLATE/question.md +0 -0
  17. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/.github/pull_request_template.md +0 -0
  18. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/.github/workflows/build.yml +0 -0
  19. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/.github/workflows/docs.yml +0 -0
  20. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/.github/workflows/format.yml +0 -0
  21. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/.github/workflows/lint.yml +0 -0
  22. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/.github/workflows/release.yml +0 -0
  23. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/.github/workflows/typecheck.yml +0 -0
  24. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/.gitignore +0 -0
  25. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/.readthedocs.yaml +0 -0
  26. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/CONTRIBUTING.md +0 -0
  27. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/LICENSE +0 -0
  28. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/MANIFEST.in +0 -0
  29. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/Makefile +0 -0
  30. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/api.rst +0 -0
  31. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/architecture.rst +0 -0
  32. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/conf.py +0 -0
  33. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/configuring.rst +0 -0
  34. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/cpuif/apb.rst +0 -0
  35. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/cpuif/avalon.rst +0 -0
  36. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/cpuif/axi4lite.rst +0 -0
  37. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/cpuif/customizing.rst +0 -0
  38. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/cpuif/internal_protocol.rst +0 -0
  39. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/cpuif/introduction.rst +0 -0
  40. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/cpuif/passthrough.rst +0 -0
  41. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/dev_notes/Alpha-Beta Versioning +0 -0
  42. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/dev_notes/Hierarchy-and-Indexing +0 -0
  43. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/dev_notes/Program Flow +0 -0
  44. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/dev_notes/Resets +0 -0
  45. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/dev_notes/Signal Dereferencer +0 -0
  46. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/dev_notes/Validation Needed +0 -0
  47. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/dev_notes/template-layers/1-port-declaration +0 -0
  48. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/dev_notes/template-layers/1.1.hardware-interface +0 -0
  49. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/dev_notes/template-layers/2-CPUIF +0 -0
  50. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/dev_notes/template-layers/3-address-decode +0 -0
  51. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/dev_notes/template-layers/4-fields +0 -0
  52. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/dev_notes/template-layers/5-readback-mux +0 -0
  53. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/dev_notes/template-layers/6-output-port-mapping +0 -0
  54. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/diagrams/arch.png +0 -0
  55. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/diagrams/diagrams.odg +0 -0
  56. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/diagrams/rbuf.png +0 -0
  57. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/diagrams/readback.png +0 -0
  58. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/diagrams/wbuf.png +0 -0
  59. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/faq.rst +0 -0
  60. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/hwif.rst +0 -0
  61. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/img/err.svg +0 -0
  62. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/img/ok.svg +0 -0
  63. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/img/warn.svg +0 -0
  64. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/index.rst +0 -0
  65. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/licensing.rst +0 -0
  66. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/limitations.rst +0 -0
  67. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/props/addrmap.rst +0 -0
  68. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/props/field.rst +0 -0
  69. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/props/reg.rst +0 -0
  70. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/props/rhs_props.rst +0 -0
  71. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/props/signal.rst +0 -0
  72. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/rdl_features/external.rst +0 -0
  73. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/requirements.txt +0 -0
  74. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/docs/udps/intro.rst +0 -0
  75. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/hdl-src/README.md +0 -0
  76. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/hdl-src/apb3_intf.sv +0 -0
  77. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/hdl-src/apb4_intf.sv +0 -0
  78. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/hdl-src/avalon_mm_intf.sv +0 -0
  79. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/hdl-src/axi4lite_intf.sv +0 -0
  80. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/setup.cfg +0 -0
  81. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/__init__.py +0 -0
  82. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/__peakrdl__.py +0 -0
  83. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/body/__init__.py +0 -0
  84. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/body/body.py +0 -0
  85. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/body/combinational_body.py +0 -0
  86. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/body/for_loop_body.py +0 -0
  87. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/body/if_body.py +0 -0
  88. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/body/struct_body.py +0 -0
  89. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/__init__.py +0 -0
  90. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/apb3/__init__.py +0 -0
  91. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/apb3/apb3_cpuif.py +0 -0
  92. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/apb3/apb3_cpuif_flat.py +0 -0
  93. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/apb3/apb3_interface.py +0 -0
  94. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/apb3/apb3_tmpl.sv +0 -0
  95. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/apb4/__init__.py +0 -0
  96. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/apb4/apb4_cpuif.py +0 -0
  97. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/apb4/apb4_cpuif_flat.py +0 -0
  98. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/apb4/apb4_interface.py +0 -0
  99. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/axi4lite/__init__.py +0 -0
  100. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/axi4lite/axi4_lite_cpuif.py +0 -0
  101. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/axi4lite/axi4_lite_cpuif_flat.py +0 -0
  102. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/axi4lite/axi4_lite_interface.py +0 -0
  103. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/axi4lite/axi4_lite_tmpl.sv +0 -0
  104. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/base_cpuif.py +0 -0
  105. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/fanin_gen.py +0 -0
  106. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/fanin_intermediate_gen.py +0 -0
  107. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/fanout_gen.py +0 -0
  108. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/cpuif/interface.py +0 -0
  109. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/decode_logic_gen.py +0 -0
  110. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/design_scanner.py +0 -0
  111. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/design_state.py +0 -0
  112. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/identifier_filter.py +0 -0
  113. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/listener.py +0 -0
  114. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/py.typed +0 -0
  115. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/struct_gen.py +0 -0
  116. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/sv_int.py +0 -0
  117. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/udps/__init__.py +0 -0
  118. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder/utils.py +0 -0
  119. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder.egg-info/SOURCES.txt +0 -0
  120. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder.egg-info/dependency_links.txt +0 -0
  121. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder.egg-info/entry_points.txt +0 -0
  122. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder.egg-info/requires.txt +0 -0
  123. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/src/peakrdl_busdecoder.egg-info/top_level.txt +0 -0
  124. {peakrdl_busdecoder-0.6.1 → peakrdl_busdecoder-0.6.4}/tools/shims/xargs +0 -0
@@ -45,6 +45,15 @@ jobs:
45
45
  - name: Run tests
46
46
  run: uv run pytest tests/ --cov=peakrdl_busdecoder --cov-report=xml --cov-report=term
47
47
 
48
+ - name: Upload coverage to Coveralls
49
+ if: matrix.python-version == '3.12'
50
+ env:
51
+ COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
52
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
53
+ run: |
54
+ uv pip install coveralls
55
+ uv run coveralls --service=github
56
+
48
57
  - name: Upload coverage to Codecov
49
58
  uses: codecov/codecov-action@v4
50
59
  if: matrix.python-version == '3.12'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: peakrdl-busdecoder
3
- Version: 0.6.1
3
+ Version: 0.6.4
4
4
  Summary: Generate a SystemVerilog bus decoder from SystemRDL for splitting CPU interfaces to multiple sub-address spaces
5
5
  Author: Arnav Sacheti
6
6
  License: LGPLv3
@@ -26,9 +26,10 @@ Provides-Extra: cli
26
26
  Requires-Dist: peakrdl-cli>=1.2.3; extra == "cli"
27
27
  Dynamic: license-file
28
28
 
29
- [![Documentation Status](https://readthedocs.org/projects/peakrdl-busdecoder/badge/?version=latest)](http://peakrdl-busdecoder.readthedocs.io)
30
- [![build](https://github.com/arnavsacheti/PeakRDL-BusDecoder/workflows/build/badge.svg)](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions?query=workflow%3Abuild+branch%3Amain)
31
- [![Coverage Status](https://coveralls.io/repos/github/arnavsacheti/PeakRDL-BusDecoder/badge.svg?branch=main)](https://coveralls.io/github/arnavsacheti/PeakRDL-BusDecoder?branch=main)
29
+ [![Build](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/build.yml/badge.svg)](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/build.yml)
30
+ [![Test](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/test.yml/badge.svg)](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/test.yml)
31
+ [![Documentation](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/docs.yml/badge.svg)](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/docs.yml)
32
+ [![Coverage Status](https://coveralls.io/repos/github/arnavsacheti/PeakRDL-BusDecoder/badge.svg?branch=tests/coveralls)](https://coveralls.io/github/arnavsacheti/PeakRDL-BusDecoder?branch=tests/coveralls)
32
33
  [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/peakrdl-busdecoder.svg)](https://pypi.org/project/peakrdl-busdecoder)
33
34
 
34
35
  # PeakRDL-BusDecoder
@@ -1,6 +1,7 @@
1
- [![Documentation Status](https://readthedocs.org/projects/peakrdl-busdecoder/badge/?version=latest)](http://peakrdl-busdecoder.readthedocs.io)
2
- [![build](https://github.com/arnavsacheti/PeakRDL-BusDecoder/workflows/build/badge.svg)](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions?query=workflow%3Abuild+branch%3Amain)
3
- [![Coverage Status](https://coveralls.io/repos/github/arnavsacheti/PeakRDL-BusDecoder/badge.svg?branch=main)](https://coveralls.io/github/arnavsacheti/PeakRDL-BusDecoder?branch=main)
1
+ [![Build](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/build.yml/badge.svg)](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/build.yml)
2
+ [![Test](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/test.yml/badge.svg)](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/test.yml)
3
+ [![Documentation](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/docs.yml/badge.svg)](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/docs.yml)
4
+ [![Coverage Status](https://coveralls.io/repos/github/arnavsacheti/PeakRDL-BusDecoder/badge.svg?branch=tests/coveralls)](https://coveralls.io/github/arnavsacheti/PeakRDL-BusDecoder?branch=tests/coveralls)
4
5
  [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/peakrdl-busdecoder.svg)](https://pypi.org/project/peakrdl-busdecoder)
5
6
 
6
7
  # PeakRDL-BusDecoder
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "peakrdl-busdecoder"
7
- version = "0.6.1"
7
+ version = "0.6.4"
8
8
  requires-python = ">=3.10"
9
9
  dependencies = [
10
10
  "jinja2~=3.1",
@@ -6,8 +6,6 @@
6
6
  assert_bad_data_width: assert($bits({{cpuif.signal("PWDATA")}}) == {{ds.package_name}}::{{ds.module_name|upper}}_DATA_WIDTH)
7
7
  else $error("Interface data width of %0d is incorrect. Shall be %0d bits", $bits({{cpuif.signal("PWDATA")}}), {{ds.package_name}}::{{ds.module_name|upper}}_DATA_WIDTH);
8
8
  end
9
- assert_wr_sel: assert property (@(posedge {{cpuif.signal("PCLK")}}) {{cpuif.signal("PSEL")}} && {{cpuif.signal("PWRITE")}} |-> ##1 ({{cpuif.signal("PREADY")}} || {{cpuif.signal("PSLVERR")}}))
10
- else $error("APB4 Slave port SEL implies that cpuif_wr_sel must be one-hot encoded");
11
9
  `endif
12
10
  {%- endif %}
13
11
 
@@ -1,5 +1,4 @@
1
1
  import os
2
- from datetime import datetime
3
2
  from importlib.metadata import version
4
3
  from pathlib import Path
5
4
  from typing import TYPE_CHECKING, Any, TypedDict
@@ -115,7 +114,6 @@ class BusDecoderExporter:
115
114
 
116
115
  # Build Jinja template context
117
116
  context = { # type: ignore
118
- "current_date": datetime.now().strftime("%Y-%m-%d"),
119
117
  "version": version("peakrdl-busdecoder"),
120
118
  "cpuif": self.cpuif,
121
119
  "cpuif_decode": DecodeLogicGenerator,
@@ -3,7 +3,6 @@
3
3
  // Description: CPU Interface Bus Decoder
4
4
  // Author: PeakRDL-BusDecoder
5
5
  // License: LGPL-3.0
6
- // Date: {{current_date}}
7
6
  // Version: {{version}}
8
7
  // Links:
9
8
  // - https://github.com/arnavsacheti/PeakRDL-BusDecoder
@@ -3,7 +3,6 @@
3
3
  // Description: CPU Interface Bus Decoder Package
4
4
  // Author: PeakRDL-BusDecoder
5
5
  // License: LGPL-3.0
6
- // Date: {{current_date}}
7
6
  // Version: {{version}}
8
7
  // Links:
9
8
  // - https://github.com/arnavsacheti/PeakRDL-BusDecoder
@@ -4,7 +4,7 @@ from systemrdl.node import AddressableNode, AddrmapNode, FieldNode, Node, Regfil
4
4
  from systemrdl.rdltypes.references import PropertyReference
5
5
  from systemrdl.walker import RDLListener, RDLWalker, WalkerAction
6
6
 
7
- from .utils import is_pow2, ref_is_internal, roundup_pow2
7
+ from .utils import ref_is_internal
8
8
 
9
9
  if TYPE_CHECKING:
10
10
  from .exporter import BusDecoderExporter
@@ -159,27 +159,3 @@ class DesignValidator(RDLListener):
159
159
  else:
160
160
  # Exiting top addrmap. Resolve final answer
161
161
  self.contains_external_block = contains_external_block
162
-
163
- if contains_external_block:
164
- # Check that addressing follows strict alignment rules to allow
165
- # for simplified address bit-pruning
166
- if node.external:
167
- err_suffix = "is external"
168
- else:
169
- err_suffix = "contains an external addrmap/regfile/mem"
170
-
171
- req_align = roundup_pow2(node.size)
172
- if (node.raw_address_offset % req_align) != 0:
173
- self.msg.error(
174
- f"Address offset +0x{node.raw_address_offset:x} of instance '{node.inst_name}' is not a power of 2 multiple of its size 0x{node.size:x}. "
175
- f"This is required by the busdecoder exporter if a component {err_suffix}.",
176
- node.inst.inst_src_ref,
177
- )
178
- if node.is_array:
179
- assert node.array_stride is not None
180
- if not is_pow2(node.array_stride):
181
- self.msg.error(
182
- f"Address stride of instance array '{node.inst_name}' is not a power of 2"
183
- f"This is required by the busdecoder exporter if a component {err_suffix}.",
184
- node.inst.inst_src_ref,
185
- )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: peakrdl-busdecoder
3
- Version: 0.6.1
3
+ Version: 0.6.4
4
4
  Summary: Generate a SystemVerilog bus decoder from SystemRDL for splitting CPU interfaces to multiple sub-address spaces
5
5
  Author: Arnav Sacheti
6
6
  License: LGPLv3
@@ -26,9 +26,10 @@ Provides-Extra: cli
26
26
  Requires-Dist: peakrdl-cli>=1.2.3; extra == "cli"
27
27
  Dynamic: license-file
28
28
 
29
- [![Documentation Status](https://readthedocs.org/projects/peakrdl-busdecoder/badge/?version=latest)](http://peakrdl-busdecoder.readthedocs.io)
30
- [![build](https://github.com/arnavsacheti/PeakRDL-BusDecoder/workflows/build/badge.svg)](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions?query=workflow%3Abuild+branch%3Amain)
31
- [![Coverage Status](https://coveralls.io/repos/github/arnavsacheti/PeakRDL-BusDecoder/badge.svg?branch=main)](https://coveralls.io/github/arnavsacheti/PeakRDL-BusDecoder?branch=main)
29
+ [![Build](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/build.yml/badge.svg)](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/build.yml)
30
+ [![Test](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/test.yml/badge.svg)](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/test.yml)
31
+ [![Documentation](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/docs.yml/badge.svg)](https://github.com/arnavsacheti/PeakRDL-BusDecoder/actions/workflows/docs.yml)
32
+ [![Coverage Status](https://coveralls.io/repos/github/arnavsacheti/PeakRDL-BusDecoder/badge.svg?branch=tests/coveralls)](https://coveralls.io/github/arnavsacheti/PeakRDL-BusDecoder?branch=tests/coveralls)
32
33
  [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/peakrdl-busdecoder.svg)](https://pypi.org/project/peakrdl-busdecoder)
33
34
 
34
35
  # PeakRDL-BusDecoder
@@ -608,7 +608,7 @@ wheels = [
608
608
 
609
609
  [[package]]
610
610
  name = "peakrdl-busdecoder"
611
- version = "0.6.1"
611
+ version = "0.6.4"
612
612
  source = { editable = "." }
613
613
  dependencies = [
614
614
  { name = "jinja2" },