Return to Support Page
 homesearchagentssupportask xilinxmap

Answers Database


Using MakeTNM and addTNM in order to add TNMS to a .XNF file.


Record #1016

Product Family:  Documentation

Product Line:  FPGA Core

Problem Title:
Using MakeTNM and addTNM in order to add TNMS to a .XNF file.


Problem Description:
The MakeTNM and AddTNM programs allow the user to add TNMS
to a behavioral design. The user will then be able to define
some timespecs in a constraint file.


Solution 1:

The latest versions of addtnm and maketnm are:

addtnm v.2.3.4
maketnm v2.3.3

The latest version of those two PERL scripts can be obtained
via the Xilinx FTP site in
/pub/swhelp/synopsys/addmaketnm.tar.Z or the Xilinx
BBS(408-559-9327) in \swhlp\synopsys\amtnm.zip.

Maketnm reads the .xff file and makes a template file (.tt)
listing all of the flip-flops, rams and pads in the design.
This file is then rename to a .tnm extension. Also, the user
needs to edit it and put each flip-flop, ram or pad in it's own
group.
Wildcards can be used with the hierarchical names to make this
job a little less tedious.

Once this is done, run "maketnm design". This will read your
.xff and .tnm files, and put the "TNM=GROUP_NAME" attribute
onto each of the components listed in your .tnm file. The
output file from this script has a .txff extension. You then
need to change this to a .xff extension.

You then put the actual timing constraints into your .cst file
before running XNFPREP. If your design has X-BLOX components
(where XNFPREP is run twice), this timing information is only
looked at the *FIRST* time you run XNFPREP, so make sure the
FROM:TO groups are in the .cst file then.

This is then put into the .xtf/.xtg file, so by the time PPR gets it, all the Ti
mespecs are in the file. After PPR runs, you
can check the .tsi file to see which paths are not spec'ed.

Since these are PERL scripts, you do need to get the perl
executable for the PC. I think this is available at
http://www.perl.comInternet Link.

Synopsys is very consistent about what it names flops, so from
one synthesis run to the next, the old .tnm file is usable.
Exemplar sometimes calls things "my_register8800" or some
logical name with an ill-logical number on it.
Hopefully, this number won't change with every new compilation.

Refer to the Reference Guide volume1 and the HDL Synthesis user
guide (p3-53) for further informations.



End of Record #1016

For the latest news, design tips, and patch information on the Xilinx design environment, check out the Xilinx Expert Journals!

© 1998 Xilinx, Inc. All rights reserved
Trademarks and Patents