Optimizing a design, Attempting likely optimizations using option sets, 15 optimizing a design – Achronix ACE Version 5.0 User Manual
Page 307: Attempting likely optimiza, Tions using option sets, Attempting, Likely optimizations using option sets
![background image](/manuals/633956/307/background.png)
Optimizing a Design
Chapter 4. Tasks
Optimizing a Design
There are numerous methods of design optimization available to ACE users.
Many optimizations are able to be performed automatically by ACE, at the cost of additional runtime. These
automatic optimizations are managed at a granular level through the
, which may
be configured from the
and/or the Tcl command
Achronix optimization experts have also collected together implementation options which are known to
work well together into
. These option sets may be used to create new implementations for user
designs, allowing users to compare/contrast how various optimizations affect their achieved frequencies
and required runtimes.
Other optimizations must be performed manually by the user, typically by editing the design’s source RTL
or
.sdc
timing constraints.
is an important part of this process. Optimization
through RTL changes is currently beyond the scope of this document - ask your Achronix Field Applications
Engineer for more information on XP, XXP, and other source optimization possibilities.
Attempting Likely Optimizations Using Option Sets
In addition to
Running Multiple Flows in Parallel
, the
allows users to generate new
implementations with Achronix-selected combinations of
. These known-good
subsets of implementation options are called
. Achronix optimization experts have collected
several option sets which are known to result in increases for the achieved frequencies in a variety of
representative designs.
The Multiprocess view will allow users to select a starting template
, and will then generate
new implementations using the template implementation as a base. Each generated implementation will
override the implementation options found in the template implementation with the specified option set
configuration (an overriding subset of the full collection of implementation options). The majority of the
implementation options within the generated implementation will be left with the same settings as existed
in the template implementation. Only the options specified in the option set will be overridden to take on
new values. The newly generated implementation will be given a name which includes the option set name
for clarity. (The generated name will be the template implementation’s name as a prefix, with the option
set’s name as the suffix.)
Please see the information in
Running Multiple Flows in Parallel
, which discusses the basic use of the
and
- the rest of this section will build upon those
descriptions.
Selecting the Implementations to be Generated and Run in Parallel
After
Configuring the Execution Queues
, and
Flow to be Followed by the Selected Implementations
, the user is ready to select the implementations to
be generated.
First, select the radio button labeled Generate Implementations from Option Sets, found within the
Multiprocess view’s ”
” section.
Then, in the
, select (activate) the desired
and
. The Implementation
Table within the Multiprocess view’s ”
” section will then be updated to display a
collection of implementations based upon the
The first entry in the Implementation Table will be the active implementation itself. This implementation
will be the template from which all the generated implementations will be derived.
All other
implementations in the table will be generated, one for each option set, if they are selected (their checkbox
is checked) when background execution is started. The Description column of the table will indicate briefly
what implementation option changes are caused by each option set (thus describing how each generated
implementation will differ from the template, the active implementation).
295
UG001 Rev. 5.0 - 5th December 2012