General Description: A Design containing an ECS schematic is synthesized with XST and results in the following error:
"ERROR:HDLParsers:164 - <sch_file_name>.vhf Line xxx. parse error, unexpected IDENTIFIER"
The same schematic did not receive this error in 5.2.03i or in 6.1.01i.
Viewing the specified line number in the ".vhf" file shows the line in question to be an attribute line.
The problem is that ECS writes out incorrect syntax for the save net constraint to the ".vhf" file. The attribute line has a syntax error:
For example, a save net flag attribute applied on a signal, abc, in an ECS schematic, is written in the ".vhf" file as follows: attribute S of abc : SIGANL is "yes"; The correct syntax is: attribute S of abc : SIGNAL is "yes";
This spelling error in the attribute line has been corrected in the 6.1i Service Pack 3.
If the attribute is on a port, as is the case with pin location constraints, getting 6.1.03i will solve the problem. However, if the attribute is written to an internal net, there is a second error to look out for. You will notice for every attribute applied to an internal net, two net attributes are written to the ".vhf" file (one right after the attribute declaration, and the other just before component instantiation) by the ECS schematic editor. Only ONE attribute is needed. Having two will cause XST to flag an error.
Example: . . attribute S : STRING ; attribute S of abc : SIGANL is "yes"; . . . attribute S of abc : SIGNAL is "yes";
The double attribute issue will be addressed in ISE 7.1i. To work around the problem, you may do one of the following: 1. Manually edit the ".vhf" file and remove the repeated attribute line. 2. Create a ".ucf" file and apply the desired net flag constraints here.