cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Adventurer
Adventurer
2,591 Views
Registered: ‎05-14-2009

ISE 14.7 problem with tcl script for parameters for Generate Programming File

Jump to solution

Hi,

I need to run the whole process: synthesis / implementation / Generate Programming File from a tcl script.

I have created it with ISE Project Navigator generate tcl scripts.

 

All works fine except that the following parameters are not taken into account:

   project set "UserID Code (8 Digit Hexadecimal)" "0x00030000" -process "Generate Programming File"

   project set "Unused IOB Pins" "Float" -process "Generate Programming File"

 

For the 2nd parameter, I can see that when the FPGA is being programmed, some part of my circuit does not behave as if the pins were float: they are set as PullDown !!!

After that all works fine.

 

Which is the problem with my tcl scripts?

Moreover, if I load the generated project (toplevel.xise) in ISE Project Navigator, I can check that all other parameters are set correctly, but not those.

 

Of course I could process all from ISE Project Navigator, but this is annoying for my development process ...

ISE: 14.7 / nt64 / Version P.20131013

The main tcl is create_compile_project.tcl, and it calls compilation_properties.tcl

0 Kudos
Reply
1 Solution

Accepted Solutions
Xilinx Employee
Xilinx Employee
2,891 Views
Registered: ‎07-22-2008

@jgomezco

It does not appear to be anything you are doing wrong.  I can reproduce what I believe you are seeing if just running the xtclsh command you have from a command shell. 

As long as the project, is open, I can retrieve the project properties and the values are correct.  However, once the project is closed, the values are not written to the .xise file.  Therefore, if I then open the project in the GUI or again by script, the default property values are shown.

This is true of any project and any property that is non-default from what I can tell.  So far the only way I've found to avoid this problem is to source the Tcl file from the Tcl console in the GUI.

View solution in original post

13 Replies
Xilinx Employee
Xilinx Employee
2,523 Views
Registered: ‎07-22-2008

Was there any warning indicating that they would not be set?

The two commands look fine and worked in a simple test that I ran?

 

What do you get if you run the following commands?

   project get "UserID Code (8 Digit Hexadecimal)"  -process "Generate Programming File"

   project get "Unused IOB Pins" -process "Generate Programming File"

 

When you've opened the project in the GUI, if you run those two failing commands from the Tcl console do they set correctly there?

Select View ->Panel -> Tcl console if you do not have it showing by default.

0 Kudos
Reply
Adventurer
Adventurer
2,510 Views
Registered: ‎05-14-2009

Hi,

 

- I can not see any Warnings related to those parameters

- I can run both command from the GUI /Tcl console and they set the parameters correctly.

0 Kudos
Reply
Xilinx Employee
Xilinx Employee
2,489 Views
Registered: ‎07-22-2008

I sourced your compilation_properties script for another spartan3An project and saw that the float was set as expected.  The script does not appear to have: project set "UserID Code (8 Digit Hexadecimal)" "0x00030000" -process "Generate Programming File"

0 Kudos
Reply
Adventurer
Adventurer
2,440 Views
Registered: ‎05-14-2009

Hi,

The property     project set "UserID Code (8 Digit Hexadecimal)" "0x00030000" -process "Generate Programming File" is set in create_compile_project.tcl.

This is the "main" file I call, then it calls compilation_properties.tcl where the general properties are defined.

 

 

0 Kudos
Reply
Xilinx Employee
Xilinx Employee
2,413 Views
Registered: ‎07-22-2008

I do not have you project sources so I modified the create project script and removed the xfile add commands and added one random vhd file I had.  When I sourced the create project script, and then looked in the project process properties, both of the properties you mention are set as intended.

 

Did you run the get commands I asked about to verify that the processes were not actually set?

What is your complete process?  Where are you sourcing the Tcl file from and what command do you use?

0 Kudos
Reply
Adventurer
Adventurer
2,405 Views
Registered: ‎05-14-2009

Hi,

- From inside ISEProject Navigator / Tcl console: I typed commands, they are correctly executed.

- The command I execute normally is: xtclsh create_compile_project.tcl rebuild_project > log.log

0 Kudos
Reply
Xilinx Employee
Xilinx Employee
2,892 Views
Registered: ‎07-22-2008

@jgomezco

It does not appear to be anything you are doing wrong.  I can reproduce what I believe you are seeing if just running the xtclsh command you have from a command shell. 

As long as the project, is open, I can retrieve the project properties and the values are correct.  However, once the project is closed, the values are not written to the .xise file.  Therefore, if I then open the project in the GUI or again by script, the default property values are shown.

This is true of any project and any property that is non-default from what I can tell.  So far the only way I've found to avoid this problem is to source the Tcl file from the Tcl console in the GUI.

View solution in original post

Adventurer
Adventurer
2,326 Views
Registered: ‎05-14-2009

Hi,

 

Thanks a lot for your explanation.!!!

0 Kudos
Reply
Adventurer
Adventurer
488 Views
Registered: ‎05-12-2016

Is there a real solution for this? I need to create a .xise project with specific project settings and opening it in the GUI must apply this properties. Otherwise, it's of no use at all and even counterproductive, as it can create bitfiles that are not what I intended, because the rational thought would be to expect this properties to be kept as I defined them.

0 Kudos
Reply
Adventurer
Adventurer
485 Views
Registered: ‎05-14-2009

Hi,

My problem was exclusively when running the full compilation in batch mode, with the tcl command xtclsh create_compile_project.tcl rebuild_project > log.log.

When running as normal from the GUI with the Menus, all is fine.

0 Kudos
Reply
Adventurer
Adventurer
476 Views
Registered: ‎05-12-2016

Thanks @jgomezco 

My problem is that I create the project using the TCL script and the .xise doesn't reflect property changes, so when opening it with ISE gui, Map or Place&Route properties are not set to those I chose, making the .xise file useless!

 

0 Kudos
Reply
Adventurer
Adventurer
473 Views
Registered: ‎05-14-2009

Hi,

It is the same case as mine.

But on my case, all the options are taken into acount OK, except the one I mentioned.

Have you tried to make a Cleanup ?

In any case, for ISE14.7 they will not make any update  

0 Kudos
Reply
Adventurer
Adventurer
470 Views
Registered: ‎05-12-2016

Yes, nothing changes after a cleanup. It simply doesn't store anywhere the modified parameters. It's pathetic.

I think I'm going to write a sed script or use a .diff file that modifies the resulting .xise file

Thanks!

0 Kudos
Reply