Skip to content
Snippets Groups Projects

fixed index out of range error

Merged Martin Högstedt requested to merge 7-indexoutofrange-on-edit-memory-in-pm into main
All threads resolved!
Files
2
@@ -23,10 +23,10 @@ class Memory(Module):
# signals
signals = {
"in_input": input_signal,
"in_control": control_signal,
"in_address": address_signal,
"out_content": output_signal
"in_input": input_signal,
"in_control": control_signal,
"in_address": address_signal,
"out_content": output_signal,
}
# Init super class
@@ -54,11 +54,7 @@ class Memory(Module):
adr_sig = self.signals["in_address"]
ctrl_sig = self.signals["in_control"]
out_sig = self.signals["out_content"]
if (
adr_sig.get_value() is not None
and ctrl_sig.get_value() is not None
):
if adr_sig.get_value() is not None and ctrl_sig.get_value() is not None:
self.is_write = ctrl_sig.get_value()
self.current_address = adr_sig.get_value()
out_sig.update_value(self.memory[self.current_address])
@@ -98,12 +94,15 @@ class Memory(Module):
for i in range(len(self.memory)):
self.memory[i] = 0
def get_longest_line_len(self, ignore_keys=[]) -> int:
def get_longest_line_len(self, ignore_keys=None) -> int:
"""
Helper function for pretty_print that returns the length of
the longest value in the memory to print for a module.
"""
if ignore_keys is None:
ignore_keys = []
longest_memory_line = 0
for value in self.memory:
Loading