Quartus® Prime Pro Edition User Guide: Timing Analyzer

ID 683243
Date 4/01/2024
Public
Document Table of Contents

2.6.3.2. Adding and Removing Collection Items

Wildcards that you use with collection commands define collection items that the command identifies. For example, if a design contains registers with the name src0, src1, src2, and dst0, the collection command [get_registers src*] identifies registers src0, src1, and src2, but not register dst0. To identify register dst0, you must use an additional command, [get_registers dst*]. To include dst0, you can also specify a collection command [get_registers {src* dst*}].

To modify collections, use the add_to_collection and remove_from_collection commands. The add_to_collection command allows you to add additional items to an existing collection.

add_to_collection Command

add_to_collection < first collection > < second collection >

Note: The add_to_collection command creates a new collection that is the union of the two collections you specify.

The remove_from_collection command allows you to remove items from an existing collection.

 remove_from_collection Command

remove_from_collection < first collection > < second collection >

The following example shows use of add_to_collection to add items to a collection.

 Adding Items to a Collection

#Setting up initial collection of registers
set regs1 [get_registers a*]
#Setting up initial collection of keepers
set kprs1 [get_keepers b*]
#Creating a new set of registers of $regs1 and $kprs1
set regs_union [add_to_collection $kprs1 $regs1]
#OR
#Creating a new set of registers of $regs1 and b* 
#Note that the new collection appends only registers with name b*
# not all keepers
set regs_union [add_to_collection $regs1 b*]

In the Quartus® Prime software, keepers are I/O ports or registers. An .sdc file that includes get_keepers is incompatible with third-party timing analysis flows.