FPGA Central - World's 1st FPGA / CPLD Portal

FPGA Central

World's 1st FPGA Portal

 

Go Back   FPGA Groups > NewsGroup > Verilog

Verilog comp.lang.verilog newsgroup / usenet

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 10-22-2006, 02:53 PM
Schüle Daniel
Guest
 
Posts: n/a
Default looking for - value change dump - format

Hello all,

I am looking for the definition of vcd format
I wrote a simple simulator for digital nets
and I am now trying to extend it to make it
output a vcd file. (eg to be viewed with gtkwave)

I guess I won't need to understand/use all
options of this format since my variables are
all of type wire 1 bit wide. I would appreciate
examples how to log changes on such variables.


Regards, Daniel
Reply With Quote
  #2 (permalink)  
Old 10-23-2006, 12:10 AM
mk
Guest
 
Posts: n/a
Default Re: looking for - value change dump - format

On Sun, 22 Oct 2006 14:53:38 +0200, Schüle Daniel
<[email protected]> wrote:

>Hello all,
>
>I am looking for the definition of vcd format
>I wrote a simple simulator for digital nets
>and I am now trying to extend it to make it
>output a vcd file. (eg to be viewed with gtkwave)
>
>I guess I won't need to understand/use all
>options of this format since my variables are
>all of type wire 1 bit wide. I would appreciate
>examples how to log changes on such variables.
>
>
>Regards, Daniel


Google is your friend:

http://www.google.com/search?hl=en&l...ge&btnG=Search

Take a look at the first link.
Reply With Quote
  #3 (permalink)  
Old 10-23-2006, 02:03 PM
Schüle Daniel
Guest
 
Posts: n/a
Default Re: looking for - value change dump - format

Hi,

[...]
>
> Google is your friend:
>
> http://www.google.com/search?hl=en&l...ge&btnG=Search
>
> Take a look at the first link.


Of course I did google search on my own
I found this page too but it didn't help me much
there are no explanations how constructs suppose to work
for example what does the following do?
$dumpon x*@ 0*# x*$ b1 (k $end

it looks cryptic yes, like perl
but what are the meanings of @,#,$ and where are the timing informations
of a happened change

I would appreciate it very much if someone could give me some pointers
to more (maybe simpler) examples

Regards, Daniel
Reply With Quote
  #4 (permalink)  
Old 10-24-2006, 12:31 AM
[email protected]
Guest
 
Posts: n/a
Default Re: looking for - value change dump - format


Schüle Daniel wrote:
>
> I am looking for the definition of vcd format


The IEEE 1364 standard for Verilog includes such a definition.

Reply With Quote
  #5 (permalink)  
Old 10-24-2006, 12:54 AM
Alex
Guest
 
Posts: n/a
Default Re: looking for - value change dump - format

This link can be helpful for you:

http://www-ee.eng.hawaii.edu/~msmith.../15/ch15.2.htm

Regards,
-Alex

Schüle Daniel wrote:
> Hi,
>
> [...]
> >
> > Google is your friend:
> >
> > http://www.google.com/search?hl=en&l...ge&btnG=Search
> >
> > Take a look at the first link.

>
> Of course I did google search on my own
> I found this page too but it didn't help me much
> there are no explanations how constructs suppose to work
> for example what does the following do?
> $dumpon x*@ 0*# x*$ b1 (k $end
>
> it looks cryptic yes, like perl
> but what are the meanings of @,#,$ and where are the timing informations
> of a happened change
>
> I would appreciate it very much if someone could give me some pointers
> to more (maybe simpler) examples
>
> Regards, Daniel


Reply With Quote
  #6 (permalink)  
Old 10-24-2006, 01:13 AM
[email protected]
Guest
 
Posts: n/a
Default Re: looking for - value change dump - format

Schüle Daniel wrote:

> I would appreciate it very much if someone could give me some pointers
> to more (maybe simpler) examples


VCD files aren't complicated. Those weird symbols you see are base-95
encoded handles for the signal identifiers. In the value change
section they will match the corresponding encoded handle in the $var
statements. Everything else should appear straightforward: lines with
'#' as the first char indicate time values, lines with 'b' are
multi-bit value changes, and lines with '0', '1', 'x', 'z' followed by
an encoded handle are single-bit value changes.

If you want to wrap your head around it more, go to
ftp://metalab.unc.edu/pub/linux/apps/circuits/ and look at libvcddump,
specifically the fprintf statements using context->handle. The
libvcddump code is MIT licensed so you don't need to be concerned with
licensing issues if you simply want to call the library code within
your own program.

BTW, note that if you're only using gtkwave for now, you don't have to
be concerned at first with doing scope/upscope but can simply generate
flat earth signal names from your simulator. That might save you work
of generating a proper hierarchy.

You can also look at the dumper in Icarus.

-Tony

p.s.: I just noticed that gtkwave currently dies on the example vcd
emitted by libvcddump so you'll have to use --legacy at the command
line in order to use the old loader which can handle uninitialized
nets. This will be fixed in 3.0.15.

Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
vcd file generator for signal dump in tcl [email protected] Verilog 1 02-01-2006 12:52 AM
NCSIM *.fsdb dump vs *.shm dump eda_employee Verilog 0 11-06-2005 06:27 PM
Data width change in opencores Ethernet MAC [email protected] Verilog 0 10-13-2005 11:59 AM
how to use fsdb dump Karthikeyan Subramaniyam Verilog 1 10-01-2005 10:46 AM
Value Change Dump Viewer Uwe Bonnes Verilog 9 07-16-2005 01:53 AM


All times are GMT +1. The time now is 02:00 AM.


Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
Copyright 2008 @ FPGA Central. All rights reserved