[myhdl-list] Lost in conversion ... _error.SignalInMultipleLists
Brought to you by:
jandecaluwe
From: Josy B. <jos...@gm...> - 2015-01-05 08:57:10
|
While converting a module I get the following: ---- File "C:\Python27\lib\site-packages\myhdl\conversion\_analyze.py", line 147, in _analyzeSigs raise ConversionError(_error.SignalInMultipleLists, s._name) myhdl.ConversionError: Signal in multiple list is not supported: pl_ple_2_enables(0) --- The 'ofending' section in _analyze.py: --- # handle the case where a named signal appears in a list also by giving # priority to the list and marking the signals as unused print '_analyzeSigs - memlist',memlist for m in memlist: if not m._used: continue # print m for i, s in enumerate(m.mem): s._name = "%s%s%s%s" % (m.name, open, i, close) print m.name, s._name, s._inList, s._used = False if s._inList: raise ConversionError(_error.SignalInMultipleLists, s._name) s._inList = True if not s._nrbits: raise ConversionError(_error.UndefinedBitWidth, s._name) if type(s.val) != type(m.elObj.val): raise ConversionError(_error.InconsistentType, s._name) if s._nrbits != m.elObj._nrbits: raise ConversionError(_error.InconsistentBitWidth, s._name) print'->', s._name, s._inList ---- I added some print statements to _analyze.py as you can see. The exception is raised when _inList is already set. _inList is however initialised to False in _Signal.py and only set to True in the above code. Here is the output of these 2 print statemants: --- pl_Enables pl_Enables(0) False -> pl_Enables(0) True pl_Enables pl_Enables(1) False -> pl_Enables(1) True pl_Enables pl_Enables(2) False -> pl_Enables(2) True pl_ple_2_lenables pl_ple_2_lenables(0) False -> pl_ple_2_lenables(0) True pl_ple_2_readies pl_ple_2_readies(0) False -> pl_ple_2_readies(0) True pl_ple_2_enables pl_ple_2_enables(0) True --- Can somebody shed some light? Regards, Josy |