This release focused mainly of making it easier for new users to get started, and polishing up existing features. This release also contains numerous bug fixes which were reported, most significantly issues experienced by some users where specific designs failed to run property on InTime's run targets due to issues while distributing the designs to the run targets.
This post looks at some of the highlights of this release. For a detailed list of changes, please see the release notes.
Routing-Only Exploration Added
It is now possible to perform routing-only educated exploration. Previously, educated exploration always performed synthesis and routing exploration. The new approach provides more flexibility from an user's perspective:
- For designs which are very sensitive to tool options, full educated exploration has the chance of using settings which can cause problems in the design. Although InTime's blocklist feature can be used to work around this, finding out which settings are actually causing the problems might be tricky from an user's perspective. Using the routing-only exploration solves this issue by keeping the synthesis results of the project intact and only exploration the routing.
- Routing-only exploration provides a trade-off between runtime and improvement factors. Strategies run faster, but improvement factors are likely to be lower. Initial tests on internal designs indicates that full educated exploration provides roughly 2x higher improvement factors compared to routing-only exploration.
The plot below shows the results of two jobs done on an internal test design. The left side of the results are linked to a job for which full exploration was performed, and the right side a job for which routing-only exploration was performed.
The full educated exploration achieved a 40% median improvement compared to the original design, while the routing-only exploration achieved a median improvement of around 20%. To enable this, set the "Reuse Synthesis Results" property to true before running the "Educated Exploration" recipe.
Improved InTime GUI
For this release we decided to spend some time on improving and polishing the InTime GUI. The goals of this exercise were:
- To make it easier for new users to understand what the different recipes does and to get help with regard to the selected recipe and flow configuration,
- To utilize screen real estate better in order to display better on small screens,
- And finally to make it easier to analyze a recipe after it was run.
An overview of the changes we've implemented is shown below:
We also improved the way recipe selection is done:
A number of smaller improvements were included in this release:
- A new recipe called "InTime Default" is now available and selected by default. The goal of this recipe is to perform initial calibration, exploration and optimization of new designs which are optimized by InTime for the first time.
- Added option to prompt for toolchain version to use when multiple toolchains are registered. This option can be enabled through the "Vendor Toolchains" settings page.
- It is now possible to export results data from the project history to .csv files using new actions under "Export" in the project history's right-click menu.
- When stopping a recipe which has an active remote job associated with it, the option is now given to cancel the remote job as well, shown below:
This release also contains numerous bug fixes which were reported. Most significantly issues experienced by some users where specific designs failed to run property on InTime's run targets due to issues while distributing the designs to the run targets. A detailed list of resolved issues are available here.
Detailed release notes for this and previous releases are available here. If you are experiencing any issues with this release, or would like to give feedback of any sort, please get in touch at firstname.lastname@example.org.