Xilinx Customer Support

Solutions Database


How to get a listing of all library cell names in a XSI Library


Record #1458

Product Family:  Software

Product Line:  Synopsys

Problem Title:
How to get a listing of all library cell names in a XSI Library


Problem Description:
The XSI release notes,
the Synopsys (XSI) for FPGAs Interface/Tutorial Guide,
and the Synopsys (XSI) fir EPLDs Interface/Tutorial Guide list
all library cells that can be instantiated in the XSI flow.

If you do not have these documents, you can obtain a listing
of the library cells by using Synopsys


Solution 1:

(1)
Start dc_shell or the design_analyzer in a directory
which contains your .synopsys_dc.setup file. The
.synopsys_dc.setup file should already be pointing to
the libraries you need for synthesizing a design
in the XSI flow.


(2)
In the command window of design_analyzer, or in
dc_shell, type the following and the hit the enter key:

read -f db link_library


(3)
Next, type in the command window of design_analyzer, or
in dc_shell, type the following and hit the enter key:


list -files


This will list all the library files in memory.

(4)
For each item on the list, type the following in the
command window, or dc_shell:


find cell filename/*


where filename is the string in front of the .db extentions.

For example, lets say that list -files gave you the following:


esign_analyzer> list -files
	File			Path
	----			----
	xfpga_4000e-3.db	/synopsys/libraries/syn
	xgen_4000e.db		/synopsys/libraries/syn
	xio_4000e-3.db		/synopsys/libraries/syn
	xprim_4000e-3.db	/synopsys/libraries/syn
	xprim_4025e-3.db	/synopsys/libraries/syn

Starting at the top of this list, type the following command:

find cell xfpga_4000e-3/*

which would list:

{"xfpga_4000e-3/clb_4000", "xfpga_4000e-3/iob_4000"}

Synopsys always list cell names with the name of the .db file
which contains the cell.  The actual cell name is the
name after the '/'.



(5)
Note, some cells, even though you can get a listing on them,
should never be instantiated by the user, like the clb_4000
or iob_4000 cells, which are FPGA Compiler primitives used
by the synthesizer only.



End of Record #1458