fhdl: support for naming related signals
authorSebastien Bourdeauducq <sebastien@milkymist.org>
Thu, 8 Aug 2013 09:32:37 +0000 (11:32 +0200)
committerSebastien Bourdeauducq <sebastien@milkymist.org>
Thu, 8 Aug 2013 09:32:37 +0000 (11:32 +0200)
migen/fhdl/structure.py

index 7928316c801508d338b988125e13c1afbb5af29f..8ad00617b7d367953bcc0699cea1fcd040b358bd 100644 (file)
@@ -113,7 +113,7 @@ class Replicate(Value):
                self.n = n
 
 class Signal(Value):
-       def __init__(self, bits_sign=None, name=None, variable=False, reset=0, name_override=None, min=None, max=None):
+       def __init__(self, bits_sign=None, name=None, variable=False, reset=0, name_override=None, min=None, max=None, related=None):
                from migen.fhdl.size import bits_for
 
                Value.__init__(self)
@@ -139,7 +139,10 @@ class Signal(Value):
                self.variable = variable # deprecated
                self.reset = reset
                self.name_override = name_override
-               self.backtrace = tracer.trace_back(name)
+               self.backtrace = []
+               if related is not None:
+                       self.backtrace += related.backtrace
+               self.backtrace += tracer.trace_back(name)
 
        def __repr__(self):
                return "<Signal " + (self.backtrace[-1][0] or "anonymous") + " at " + hex(id(self)) + ">"