Early this year, we released InTime under a closed-door early access program to a handful of customers. From the various feedback and feature requests, it is currently undergoing a series of rapid upgrades and improvements. We are excited by the support and insights that InTime is delivering to customers.
For the rest of the world whom we have not been able to reach out to, here's a quick preview of what it does.
The following shows a design where we ran InTime on. Originally, this design had 97% utilization and total negative slack of about 11ps.
We generated approximately 80 builds with different synthesis and place-&-route settings to "calibrate" its characteristics and to understand dependencies of the settings on its performance.
Seed sweeps were generally excluded as their effects on results were limited and random. (To be covered in detail in a later post)
1) 7.5% of the calibration builds already performed better.
6 out of the 80 builds had better timing scores and lower area than the original design. The encouraging thing was that we know more improvements can be further achieved.
(Putting things into perspective, the total number of possible combinations(brute-force) is about 70 factorial. This is around 1.19 × 10100, excluding seeds)
2) The best calibration result used 13% less area and had 8.3x better timing.
Because our approach is a multi-stage one, subsequent rounds of builds learn from the previous ones and try to perform better.
3) Total waiting time was about 8 hours on Plunify cloud platform, which runs on Amazon Web Services.
We understand that not all companies can use the public cloud. InTime does run in internal clouds or simply on a desktop PC.
If you are interested, click here for a quick start video. Enjoy!