Answers Database


M1.5i/2.1i: NGDBUILD: UCF constraint on element with special char. gives "ERROR:baspr - SSLex0105e: Invalid token"


Record #3011

Product Family: Software

Product Line: Merged Core

Product Part: Timing

Problem Title:
M1.5i/2.1i: NGDBUILD: UCF constraint on element with special char. gives "ERROR:baspr - SSLex0105e: Invalid token"



Problem Description:
Urgency: standard

General Description:
If the UCF contains a constraint referencing
~ @ ! + # = , " ` ' ; ^ % | . { or }, then you may get the following:


ERROR:baspr - SSLex0105e: Invalid token, Line 1, Offset 6, ~
ERROR:bascp:26 - "PADS(~NOTMYSIG)" is not a legal string for a predefined group. Please check that the syntax is correct for one of the following predefined groups: PADS, LATCHES, RAMS, or FFS.


Solution 1:

Put the signal or instance name in quotes in the UCF file. Example:

TIMESPEC TS01 = FROM : PADS(MYSIG) : TO: PADS("~NOTMYSIG"): 30;

Some characters cannot be read in the UCF file as part of a signal or instance
name: semi-colon(;), equal sign(=), comma(,), double quote("). Even if you put ""
around the name, the UCF still cannot be parsed.

The wildcard characters asterisk (*) and question mark (?) can be
part of a signal name (not recommended), but you cannot use double quotes
around the name in the UCF file to prevent it from being treated as a wildcard. In other words, if there is a signal called *mysig in the design, and you reference "*mysig" in the UCF, then this will still be interpreted as meaning "every net that ends with the string mysig".

As a general rule, you should avoid using ; , " * ? = in the naming of signals and
instances.




End of Record #3011 - Last Modified: 07/13/99 16:00

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