All about a Verilog Netlist Database project hosted at SourceForge: http://nldb.sourceforge.net

Friday, May 1, 2009

Check for port differences

I uploaded to http://nldb.sourceforge.net a script bin/portdiff (see ruby/srcs/portdiff.rb for details):

Usage: portdiff topModule gold.v rev.v libs.v ...

Load gold.v and rev.v and any remaining libraries: libs.v.
Link each (gold and rev) at level topModule.

Print ports which are not in the intersection set of ports
of gold and rev.

This utility is useful for communicating a block's pin changes to a place and route team, for example; since they will always want to know if there are new or removed block pins which could trigger a new floorplan exercise.

Once you download and install:

[karl@localhost nldb]$ pwd
/home/karl/projects/local/nldb
[karl@localhost nldb]$ cd tests/t2
[karl@localhost t2]$ java -version
java version "1.6.0_11"
Java(TM) SE Runtime Environment (build 1.6.0_11-b03)
Java HotSpot(TM) 64-Bit Server VM (build 11.0-b16, mixed mode)
[karl@localhost t2]$ jruby -v
jruby 1.2.0 (ruby 1.8.6 patchlevel 287) (2009-03-16 rev 9419) [amd64-java]
[karl@localhost t2]$ ../../bin/portdiff block block.gv block.rev.gv
Info: block.gv: processed in 0 (secs).
Info: linking references ...
Info: link (references) time: 0 (secs).
Info: linking connections ...
Info: link (connections) time: 0 (secs).
Info: 0 (secs): total elapsed.
Info: block.rev.gv: processed in 0 (secs).
Info: linking references ...
Info: link (references) time: 0 (secs).
Info: linking connections ...
Info: link (connections) time: 0 (secs).
Info: 0 (secs): total elapsed.
Info: block: 2 added, 1 removed in revised
Warn: block: port "i4" added in revised
Warn: block: port "i5" added in revised
Warn: block: port "z3" removed in revised


That's all for now.