Fix decoder generation for external nested addressable components and add max-decode-depth parameter (#12)
* Initial plan * Fix bus decoder to skip external nested components Co-authored-by: arnavsacheti <36746504+arnavsacheti@users.noreply.github.com> * Optimize external children check using generator expressions Co-authored-by: arnavsacheti <36746504+arnavsacheti@users.noreply.github.com> * Add max-decode-depth CLI argument Added --max-decode-depth argument that: - Is added to CLI arguments in __peakrdl__.py - Piped into design state via ExporterKwargs and DesignStateKwargs - Used to control max depth in listener.py - All 66 tests pass including new test for the parameter Co-authored-by: arnavsacheti <36746504+arnavsacheti@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: arnavsacheti <36746504+arnavsacheti@users.noreply.github.com>
This commit is contained in:
@@ -14,6 +14,7 @@ class DesignStateKwargs(TypedDict, total=False):
|
||||
package_name: str
|
||||
address_width: int
|
||||
cpuif_unroll: bool
|
||||
max_decode_depth: int
|
||||
|
||||
|
||||
class DesignState:
|
||||
@@ -35,6 +36,7 @@ class DesignState:
|
||||
user_addr_width: int | None = kwargs.pop("address_width", None)
|
||||
|
||||
self.cpuif_unroll: bool = kwargs.pop("cpuif_unroll", False)
|
||||
self.max_decode_depth: int = kwargs.pop("max_decode_depth", 1)
|
||||
|
||||
# ------------------------
|
||||
# Info about the design
|
||||
|
||||
Reference in New Issue
Block a user