X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com MIME-Version: 1.0 Path: p16g2000yqd.googlegroups.com!not-for-mail Newsgroups: comp.lang.vhdl Date: Sun, 27 Nov 2011 14:09:33 -0800 (PST) Followup-To: comp.lang.vhdl Complaints-To: groups-abuse AT google DOT com Injection-Info: p16g2000yqd.googlegroups.com; posting-host=87.60.144.211; posting-account=TTEhNQoAAABt3FC2bHuMAVnWW8CNEKrZ NNTP-Posting-Host: 87.60.144.211 User-Agent: G2/1.0 X-Google-Web-Client: true X-Google-Header-Order: HUALESNKRC X-HTTP-UserAgent: Mozilla/5.0 (X11; Linux i686; rv:8.0) Gecko/20100101 Firefox/8.0,gzip(gfe) Message-ID: <206288c2-4052-4621-8e8c-69ccc9c817e4@p16g2000yqd.googlegroups.com> Subject: [geda-user] A python grepper script to split / select / filter VCD signals From: sdaau Cc: ghdl-discuss AT gna DOT org, geda-user AT delorie DOT com Content-Type: text/plain; charset=ISO-8859-1 Reply-To: geda-user AT delorie DOT com Hi everyone, Apologies for cross-posting - just wanted to post about this, since I had trouble finding something similar elsewhere. The GHDL webpage currently says: http://ghdl.free.fr/ghdl/Simulation-options.html > Currently, there is no way to select signals to be dumped: > all signals are dumped, which can generate big files. ... and as I didn't have much luck finding existing VCD signal "splitters" (that would isolate a signal from a bundle), here's my attempt at a python script that will act as a "grepper" for vcd signals: http://sdaaubckp.svn.sourceforge.net/viewvc/sdaaubckp/single-scripts/vcd-sig-grep.py?view=markup As always, the usual YMMV applies :) For myself, the script was tested under python 2.7 (which seems slightly faster) and 3.2 on Ubuntu 11.04 Linux, and should work with piping to stdin - I have pretty much tested it only with GHDL output, as in: ghdl -r test_workbench --stop-time=20000us --vcd=/dev/stdout | python2.7 vcd-sig-grep.py --sigs="signal1,signal2" > tmpout.vcd ... and for test workbench, I've just used the file/approach here: SourceForge.net: ngspice: VHDL sim'd .vcd data - as analog sim source - http://sourceforge.net/projects/ngspice/forums/forum/133842/topic/4839104 Note there is no special handling of '$dumpvars' and such (however, GHDL seems not to output them anyways)... I've tested the .vcd output with gtkwave only, seems to be read in fine. Well, if there's a similar tool that I obviously missed (apart from gtkwave used with a tcl script, which is used in the above ngspice- users entry), I sure would like to know about it. Otherwise, I hope the community may find this useful... Cheers!