Chapter 3: Tcl

R

file_name specifies the name of the file you wish to remove from the project.

Example:

% xfile remove stopwatch.vhd

 

 

Description:

In this example, the stopwatch.vhd file is removed from the current

 

ISE project.

Tcl Return:

True if the file was removed; false otherwise.

Note: When you remove a file, objects within the current ISE project may be invalidated (e.g., partitions and instances).

Tcl Commands for Advanced Scripting

Xilinx Tcl commands for advanced scripting use objects and collections. An object can be any element in an ISE project, like an instance, file, or process. Collections return groups of objects, based on values that you assign to object and collection variables.

In Tcl, the set command is used to assign a value to a variable, which is returned with the dollar sign ($) syntax, as shown in many examples throughout this section. It is not necessary to declare a Tcl variable before it is used. When the variable does not exist, it is created when the command is executed.

The collection command and its relative subcommands are used to create and manage large groups of objects. The search command is used with the collection command to define the value of the collection.

This section describes the Xilinx Tcl commands for advanced scripting. To view a sample script of how these commands are used, see the “Sample Tcl Script for Advanced Scripting” at the end of this chapter.

collection (create and manage a collection)

A collection is a group of Xilinx Tcl objects, similar to a list, that is exported to the Tcl interface. The collection command, in conjunction with its subcommands, is used to create and manage the objects in a specified collection.

A collection is referenced in Tcl by a collection variable, which is defined with the collection set command. Technically, the value of the collection variable is the collection.

The following syntax shows the collection command and its subcommands. Please refer to the description of each collection subcommand for an example of how the subcommand is used. Command line syntax is unique to each subcommand.

%collection <subcommand> <optional_arguments>

append_to (add objects to a collection)

The collection append_to command adds objects to a collection. This command treats a specified collection variable as a collection and appends all of the objects returned from a search, or from another collection, to the collection. If the collection variable does not exist, then it is created when the command is executed.

%collection append_to <collection_variable> <objects_to_append> [-unique]

collection is the name of the Xilinx Tcl command.

append_to is the name of the collection subcommand.

82

www.xilinx.com

Development System Reference Guide

Page 82
Image 82
Xilinx 8.2i Tcl Commands for Advanced Scripting, Collection create and manage a collection, Xfile remove stopwatch.vhd

8.2i specifications

Xilinx 8.2i is a significant version of the Xilinx ISE (Integrated Software Environment) that emerged in the early 2000s, marking an important milestone in the world of FPGA (Field-Programmable Gate Array) development. This version introduced a slew of advanced features, technologies, and characteristics that made it an indispensable tool for engineers and developers in designing, simulating, and implementing digital circuits.

One of the standout features of Xilinx 8.2i is its enhanced design entry capabilities. This version supports multiple design entry methods, including schematic entry, VHDL, and Verilog HDL, giving engineers the flexibility to choose their preferred approach. The integrated environment provides user-friendly graphical interfaces, making it accessible for both novice and experienced users.

Xilinx 8.2i's synthesis tools have been improved to enable more efficient design compilation and optimization. The new algorithms used in this version facilitate faster synthesis times while reducing power consumption and improving performance. Furthermore, it features support for advanced FPGA architectures, which allows for the implementation of more complex designs with greater efficiency.

The implementation tools in Xilinx 8.2i include advanced place and route capabilities, utilizing state-of-the-art algorithms for optimized resource usage. These tools enable designers to make better use of FPGA resources, ensuring that designs fit within the constraints of the target device while maximizing performance.

Another key characteristic of Xilinx 8.2i is its extensive support for various Xilinx devices such as the Spartan, Virtex, and CoolRunner series. This compatibility ensures that developers can leverage the powerful features of these FPGA families, including high-speed transceivers and DSP slices.

Xilinx 8.2i also places a strong emphasis on simulation and verification. The version integrates with various simulation tools, allowing for thorough testing of the designs before implementation. This reduces the risk of errors and ensures that the final product meets specifications.

In addition, this version includes support for design constraints, enabling engineers to specify timing, area, and other critical design parameters. By accommodating constraints, Xilinx 8.2i helps in achieving reliable and efficient designs tailored to project needs.

In summary, Xilinx 8.2i is a robust software development tool that enhances the design process for FPGAs. Its comprehensive features, including multiple design entry options, advanced synthesis and implementation tools, extensive device support, and strong simulation capabilities, make it a valuable resource for engineers and developers striving for innovation in digital design.