Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 8 additions & 2 deletions src/peakrdl_regblock/read_buffering/implementation_generator.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
from typing import TYPE_CHECKING
from typing import TYPE_CHECKING, Optional

from systemrdl.node import RegNode
from systemrdl.node import RegNode, AddressableNode
from systemrdl.walker import WalkerAction

from ..forloop_generator import RDLForLoopGenerator

Expand All @@ -17,6 +18,11 @@ def __init__(self, rbuf: 'ReadBuffering') -> None:
"read_buffering/template.sv"
)

def enter_AddressableComponent(self, node: AddressableNode) -> Optional[WalkerAction]:
if node.external:
return WalkerAction.SkipDescendants
return super().enter_AddressableComponent(node)

def enter_Reg(self, node: RegNode) -> None:
super().enter_Reg(node)

Expand Down
10 changes: 8 additions & 2 deletions src/peakrdl_regblock/write_buffering/implementation_generator.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
from typing import TYPE_CHECKING
from typing import TYPE_CHECKING, Optional
from collections import namedtuple

from systemrdl.node import RegNode
from systemrdl.node import RegNode, AddressableNode
from systemrdl.walker import WalkerAction

from ..forloop_generator import RDLForLoopGenerator

Expand All @@ -18,6 +19,11 @@ def __init__(self, wbuf: 'WriteBuffering') -> None:
"write_buffering/template.sv"
)

def enter_AddressableComponent(self, node: AddressableNode) -> Optional[WalkerAction]:
if node.external:
return WalkerAction.SkipDescendants
return super().enter_AddressableComponent(node)

def enter_Reg(self, node: 'RegNode') -> None:
super().enter_Reg(node)

Expand Down