I want to change the XST option. For example, the -iobuf from within EDK.
How do I do this?
The XST options cannot be changed from the EDK GUI.
To add or remove XST options in EDK, these will have to be changed in the .SCR files of the synthesis folder in the project directory. There is a .SCR for each IP and one for the top level. So, you can add options to a specific IP, or the whole system.
Also, within EDK when the tools are run, the respective command line is logged in the "system.log" file in the project directory. This log file can be used to determine the exact command line that was used. So, to determine the commands, first run the tools in the GUI (Generate Netlist). This will run Platgen, and Synthesis.
Next, create a command.cmd (or command.sh if using Linux), and copy these commands into the .cmd/sh file. Then, copy the .scr file that needs to be modified. For example, in this answer record the top level will be modified. So, copy the newly created system_xst.scr file to the project directory and modify this system_xst.scr file to suit your design needs.
A list of all the XST switches can be found in the XST User Guide for Virtex-6, Spartan-6, and 7 Series Devices (starting on page 18):
The command.cmd/sh will first run Platgen. It then deletes the existing system_xst.scr file and copies in the modified version of the system_xst.scr that was copied to the project directory into the synthesis folder. Finally, it runs XST. An example "command.txt" file is attached at the end of this answer record. To use this example, change it to either a .cmd or .sh file.
The command.cmd/sh file can be called from the command line, or it can be linked to a custom button in EDK.
To add a cmd/sh file to a custom EDK button, follow the example below:
To run the command, double-click on the newly created custom button:
NOTE: To debug, make sure that the command works on the command line first before adding as a custom button.
Please note that the providedexample is to be used as a reference only.