www.delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2011/11/27/17:20:39

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 <sd AT imi DOT aau DOT dk>
Cc: ghdl-discuss AT gna DOT org, geda-user AT delorie DOT com
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!



- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019