Chapter 3: Tcl

R

Example 2:

% set colVar_2 [collection copy $colVar_1]

 

 

Description:

In this example, the set command creates the collection variable

 

colVar_2. The nested collection copy command makes a duplicate of

 

the colVar_1 collection and assigns it to the colVar2 collection

 

variable, making it a completely separate collection.

Tcl Return:

A new collection.

equal (compare two collections)

The collection equal command compares the contents of two collections. Collections are considered equal when the objects in both collections are the same. If the same objects are in both collections, the result is 1. If the objects in the compared collections are different, then the result is 0. By default, the order of the objects does not matter. Optionally, the order_dependent command can be specified for the order of the objects to be considered.

% collection equal <colVar_1> <colVar_2> [-order_dependent]

collection is the name of the Xilinx Tcl command.

equal is the name of the collection subcommand.

colVar_1 specifies the base collection for the comparison.

colVar_2 specifies the collection to compare with the base collection.

order_dependent optionally specifies that the collections are considered different when the order of the objects in both collections are not the same.

Note: When two empty collections are compared, they are considered identical and the result is 1.

Example:

% set colVar_1 [search * -type instance]

 

% set colVar_2 [search /top/T* -type instance]

 

% collection equal $colVar_1 $colVar_2

 

 

Description:

In this example, the contents of two collections are compared. First,

 

the Tcl set command is used to assign a collection of instances to the

 

collection variable colVar_1; then another collection of filtered

 

instance names is assigned to the collection variable colVar_2.

 

The collection equal command is used to specify the two collections

 

to compare. The dollar sign ($) syntax is used to obtain the values of

 

the collection variables. In this case, the values of colVar_1 and

 

colVar_2 to determine if they are equal.

 

 

Tcl Return:

0 if the collections are not the same, 1 if the collections are the same.

 

 

84

www.xilinx.com

Development System Reference Guide

Page 84
Image 84
Xilinx 8.2i Equal compare two collections, Set colVar2 collection copy $colVar1, Set colVar2 search /top/T* -type instance

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.