[myhdl-list] Lists of signals now do appear in vcd file
Brought to you by:
jandecaluwe
From: Frederik T. <sp...@ne...> - 2012-03-28 19:52:40
|
Hello everybody, I just had a look into _traceSignals.py . I wrote a few lines to write flattened memories into the vcd file. The vcd standard does not support multidimensional arrays. You can see it in the attached screenshot. If you have a signal like ram = [Signal(intbv(0, max=LMAX, min=-LMAX)) for i in range(N)] the list items now appear as ram(0), ram(1), .. , ram(N-1) in the vcd file. I attached a patch and the patched files, too. It would be nice if you could test this code on your designs. If there might be any problems or there are any please report them to me. This patch announces a new trace option called "traceSignalsAndMemories". If you use "traceSignals" no memories are dumped. Example: # The normal trace tb = traceSignals(testBenchDut) sim = Simulation(tb) sim.run() # can be changed to tb = traceSignalsAndMemories(testBenchDut) sim = Simulation(tb) sim.run() # .. to trace the memories as well. It works with both the stable 0.7-version and the version from the repository. Happy debugging, Frederik Am 28.03.2012 15:08, schrieb Oscar Diaz: > 2012/3/28 Frederik T. <sp...@ne...>: >> Hello Oscar, >> >> that sounds great. I would test it, if it would help you. > > This is a "very" preliminary version of signal_monitor, a class to > generate vcd files in myhdl. As you can guess, it has little > documentation (sorry for that) and probably needs a lot of adjustments > and improvements. Feel free to test it and send me any suggestions, > doubts or even complains about it. I'll try to finish it ASAP and > upload in the myhdl wiki (or somewhere else if needed). > > I hope this helps you or anyone on the mail list. > > Best regards > >> >> >> Regards, >> >> Frederik >> >> Am 28.03.2012 13:28, schrieb Oscar Diaz: >>> 2012/3/27 Christopher Felton <chr...@gm...>: >>>> On 3/27/2012 9:43 AM, Frederik T. wrote: >>>>> Hello everybody, >>>>> >>>>> I have a question concerning lists of signals. Whenever I use a list of >>>>> signals I don't see they don't appear in the vcd file created by >>>>> traceSignals(), see gtkwave.png . >>>>> >>>> >>>> That is correct, currently a "List of Signals" is not traced with >>>> traceSignals. >>> >>> I had this problem a couple months ago, and I make a custom vcd >>> generator that adds manually the signals that you need, assuming you >>> had the references to the desired signals (and it supports lists and >>> dicts of signals). The main idea is to make an object that returns >>> generators that react to traced signals and generate the vcd file. It >>> is completely unrelated to traceSignals function. >>> >>> It works for my needs but I'm afraid it needs refactoring. I can send >>> my code if you need it, anyway I'm planning to fix it, upload >>> somewhere and receive feedback on the list. >>> >>> As soon I fix it I'll announce it on the list. >>> >>>> >>>> Regards, >>>> Chris >>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> This SF email is sponsosred by: >>>> Try Windows Azure free for 90 days Click Here >>>> http://p.sf.net/sfu/sfd2d-msazure >>>> _______________________________________________ >>>> myhdl-list mailing list >>>> myh...@li... >>>> https://lists.sourceforge.net/lists/listinfo/myhdl-list >>> >>> Best regards >>> >> >> ------------------------------------------------------------------------------ >> This SF email is sponsosred by: >> Try Windows Azure free for 90 days Click Here >> http://p.sf.net/sfu/sfd2d-msazure >> _______________________________________________ >> myhdl-list mailing list >> myh...@li... >> https://lists.sourceforge.net/lists/listinfo/myhdl-list > > > > > > ------------------------------------------------------------------------------ > This SF email is sponsosred by: > Try Windows Azure free for 90 days Click Here > http://p.sf.net/sfu/sfd2d-msazure > > > > _______________________________________________ > myhdl-list mailing list > myh...@li... > https://lists.sourceforge.net/lists/listinfo/myhdl-list |