Close

VCD File Sizes

A project log for FPGA Boot Camp #4: State Machines

Most FPGA projects will have at least one state machine. Learn how to create these powerful little dedicated CPUs in your designs.

al-williamsAl Williams 10/12/2018 at 04:411 Comment

If you start doing serious work, you probably won't want to use EDA Playground for everything. You can use commercial tools, which makes sense if you are targeting a specific FPGA. Some vendors have their own simulation tools and others use ModelSim or another commercial product. However, you can always use Icarus, which is open source and does a great job of simulation. In fact, that's the tool we usually pick when using EDA Playground, so even if you aren't using Icarus directly, you are probably using it through EDA Playground.

In the instructions, I offer some tips on how to use gtkwave to view the results of your simulation and give state values meaningful names as well as save your setup for future use. However, another issue with using Icarus and GTK is the size of the VCD files from meaningful simulations.

The problem is the VCD file is ASCII and not very terse. However, if your waveform viewer supports better formats (gtkwave does) you can dump your waves in LXT2 format or fst. LXT2 and fst are fast binary formats. 

To use these you probably want to change the $dumpfile directive in your test bench to use a .lxt or .fst extension. Then you can pass -lxt2 or -fst to the vpp command when you run your simulation. Then you can open that much smaller file much faster using gtkwave or any other tool that supports those formats.

Discussions

ahmadsb101 wrote 02/09/2022 at 10:50 point

Helpful note!

I have a question, if we want trace only specific signals what is the hack?

I have a large system which take days to trace but i only want specific signals not the whole 160000 signals!

  Are you sure? yes | no