Fix incorrect address width calculation for external blocks. #116
This commit is contained in:
@@ -362,7 +362,7 @@ class FieldLogicGenerator(RDLForLoopGenerator):
|
|||||||
def assign_external_block_outputs(self, node: 'AddressableNode') -> None:
|
def assign_external_block_outputs(self, node: 'AddressableNode') -> None:
|
||||||
prefix = "hwif_out." + get_indexed_path(self.exp.ds.top_node, node)
|
prefix = "hwif_out." + get_indexed_path(self.exp.ds.top_node, node)
|
||||||
strb = self.exp.dereferencer.get_external_block_access_strobe(node)
|
strb = self.exp.dereferencer.get_external_block_access_strobe(node)
|
||||||
addr_width = node.size.bit_length()
|
addr_width = (node.size - 1).bit_length()
|
||||||
|
|
||||||
retime = False
|
retime = False
|
||||||
if isinstance(node, RegfileNode):
|
if isinstance(node, RegfileNode):
|
||||||
|
|||||||
Reference in New Issue
Block a user