Commit Graph

200 Commits

Author SHA1 Message Date
Miodrag Milanovic
ec47ce2320 Merge master 2019-06-25 18:14:51 +02:00
David Shah
fa77a5ae4a clangformat
Signed-off-by: David Shah <dave@ds0.me>
2019-06-24 11:43:01 +01:00
David Shah
e5c21afc7c timing: Add missing std::min
Signed-off-by: David Shah <dave@ds0.me>
2019-06-23 15:01:58 +01:00
Miodrag Milanovic
8d5724f4fd moved some context variables to settings 2019-06-15 15:23:51 +02:00
whitequark
f3339961fe Fix missing \n in log statement. 2019-06-04 13:15:23 +00:00
David Shah
23f2fff1c8 clangformat
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:39:05 +00:00
David Shah
bd12c0a486 HeAP: Add PlacerHeapCfg
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
c926b273de placer1: Tweaks
Signed-off-by: David Shah <davey1576@gmail.com>
2019-03-22 10:31:54 +00:00
Miodrag Milanovic
0bcf57bd47 Add flag timing-allow-fail to allow PnR to pass with warning 2019-03-04 12:29:19 +01:00
David Shah
89de4caf6c timing: Fix negative slack overflow issue
Signed-off-by: David Shah <dave@ds0.me>
2019-02-25 11:49:25 +00:00
David Shah
55b0b60d9d ecp5: Router performance improvements
Signed-off-by: David Shah <dave@ds0.me>
2019-02-25 11:49:25 +00:00
Eddie Hung
63a7f57b01 [timing] Fix off-by-one error 2019-02-11 08:32:01 -08:00
Eddie Hung
a520b38424
Merge pull request #226 from YosysHQ/190207
Fix slack_histogram computation accessing num_bins+1
2019-02-09 10:16:23 -08:00
Eddie Hung
f9f15e79cd Fix slack_histogram computation accessing num_bins+1 2019-02-07 09:26:41 -08:00
David Shah
564a7e27b1 timing: Add --ignore-loops option
Signed-off-by: David Shah <dave@ds0.me>
2019-02-05 08:20:05 +01:00
David Shah
cc53c312de timing: Path related fixes
Signed-off-by: David Shah <dave@ds0.me>
2019-01-27 16:45:37 +00:00
David Shah
f4d4244534 timing: Fix critical path print
Signed-off-by: David Shah <dave@ds0.me>
2018-12-13 12:10:18 +00:00
David Shah
56dfd5564a timing: Fix xclock crit calc and compiler warnings
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
f53dc8d3c9 timing_opt: Improve heuristics
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
a990a1576c timing_opt: Fix criticality and cost calculations
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
0f40e5fe8c timing: Fixes to criticality calculation
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
254c5ea359 clangformat
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
e1c74ad3db timing_opt: Fixes including single-move legality
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
2de506c071 timing_opt: Functions to calculate arc delay limits
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
83e3277577 timing_opt: Implement neighbour Bel finder
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
9a42b64a68 timing: Add criticality calculation to timing analysis
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
fe670cf3f6 clangformat
Signed-off-by: David Shah <dave@ds0.me>
2018-11-26 09:37:39 +00:00
David Shah
22ac41d627
Merge pull request #138 from YosysHQ/refactor_log
Tidy up logging code, add log file support, make timing failures non-fatal errors
2018-11-26 09:37:07 +00:00
David Shah
b035cb9fcf Add nonfatal error support and use for timing failures
Signed-off-by: David Shah <dave@ds0.me>
2018-11-26 09:22:42 +00:00
David Shah
51d1363dfe Change the log level of some timing-related messages
Signed-off-by: David Shah <dave@ds0.me>
2018-11-21 17:13:53 +00:00
David Shah
72b53016c0 timing: Improve crit path statistics
Signed-off-by: David Shah <dave@ds0.me>
2018-11-16 16:24:06 +00:00
David Shah
1ae722272a ecp5: clangformat timing changes
Signed-off-by: David Shah <dave@ds0.me>
2018-11-16 13:27:03 +00:00
David Shah
50b85da619 ecp5: Use speed-grade-specific delay estimate
Signed-off-by: David Shah <dave@ds0.me>
2018-11-16 13:26:28 +00:00
David Shah
13244e513b ecp5: Fix db import, improve timing data debugging
Signed-off-by: David Shah <dave@ds0.me>
2018-11-16 13:26:28 +00:00
David Shah
9c52afcf5f clangformat
Signed-off-by: David Shah <dave@ds0.me>
2018-11-16 13:25:51 +00:00
Eddie Hung
e1d2c595a1 Improve message spacing 2018-11-14 18:27:43 -08:00
Eddie Hung
06ddb632d1 Merge remote-tracking branch 'origin/master' into timingapi 2018-11-14 17:59:21 -08:00
David Shah
adc50a207f Timing fixes
Signed-off-by: David Shah <davey1576@gmail.com>
2018-11-14 08:46:10 +00:00
Eddie Hung
42d1990784 [timing] Path report to include pips when --verbose set 2018-11-13 16:32:06 -08:00
Eddie Hung
9f13bc7eb0 [timing] Crit path report to print out edges 2018-11-13 14:14:51 -08:00
David Shah
ba7a7a3733 timing: Fix compile warning
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
fc5e6bec9a timing: Add support for clock constraints
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
8af86ff37d ecp5: Update arch to new timing API
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
bd2b3e5e02 timing: Fix Fmax for clocks with mixed edge usage
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
07e265868b archapi: Add getDelayFromNS to improve timing algorithm portability
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
e633aa09cc timing: Fix handling of clock inputs
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
fad69d4930 timing: Don't include false startpoints in async paths
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
cba9b528e8 timing: Improve Fmax output and print cross-clock paths
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
143abc6034 timing: Multiple clock analysis
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
9687f7d1da Working on multi-clock analysis
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
3ca02cc55c Working on adding multiple domains to timing analysis
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
83b1c43630 timing: Working on a timing constraint API
Signed-off-by: David Shah <davey1576@gmail.com>
2018-11-12 14:03:58 +00:00
Eddie Hung
7af788f9e3 [timing] Fix combinational -> combinatorial 2018-11-11 13:49:09 -08:00
Eddie Hung
32517dfb04 [timing] Better messaging for failed timing analysis, allow --force to
continue
2018-11-11 13:23:00 -08:00
Eddie Hung
96efe48847
Merge pull request #88 from YosysHQ/issue72
Resolve issue #72
2018-10-11 02:54:19 -07:00
David Shah
9ebec3b87f clangformat
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 18:20:14 +01:00
David Shah
c8a9bb807c ecp5: Debugging DRAM packing
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 17:45:35 +01:00
Eddie Hung
8749327f1e [timing] Restore and skip false startpoints 2018-09-15 15:17:37 -07:00
Eddie Hung
32a4c5bd79 Fix for min_slack == max_slack => bin_size == 0 2018-08-22 09:24:30 -07:00
Miodrag Milanovic
8420cb4c80 Fix MSVC compile 2018-08-09 11:00:24 +02:00
David Shah
3e11ba8afb timing: Remove unused variable
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-08 17:55:54 +02:00
David Shah
8e593fb471 timing: Update to use getDelayNS
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-08 17:54:25 +02:00
Eddie Hung
03575a2a7a One more breadcrumb 2018-08-08 08:32:17 -07:00
Eddie Hung
91023d2a0e Leave comment behind about removing false paths 2018-08-08 08:31:08 -07:00
David Shah
90e3db324e clangformat
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-08 17:07:20 +02:00
Eddie Hung
936b52eafc Unfurl comments for clangformat 2018-08-08 08:01:24 -07:00
Eddie Hung
fca01f5447 Also include TMG_GEN_CLOCK as a timing startpoint 2018-08-08 07:49:07 -07:00
David Shah
d173ddba36 timing: Debugging implementation of new timing API
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-08 15:15:21 +02:00
David Shah
d8b3830031 timing: Update to new use API (currently broken)
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-08 14:58:43 +02:00
Eddie Hung
a1d626469f Cleanup nesting 2018-08-06 19:53:42 -07:00
Eddie Hung
676500b83f Do less work if update flag is false 2018-08-06 17:42:44 -07:00
Eddie Hung
f44a5fb904 clangformat 2018-08-06 17:35:23 -07:00
Eddie Hung
483f863106 Also add PLL outputs as timing startpoints 2018-08-06 17:20:29 -07:00
Eddie Hung
f3e46df709 Remove old timing code 2018-08-06 16:09:17 -07:00
Eddie Hung
06584f2e74 Compute critical path report 2018-08-06 14:14:41 -07:00
Eddie Hung
519b755acb Add comments 2018-08-06 13:12:24 -07:00
Eddie Hung
1b9a664bb1 Merge branch 'master' into assign_budget_speedup 2018-08-06 12:30:24 -07:00
David Shah
4f79b32c96
Merge pull request #39 from eddiehung/slack_histogram
Improve slack histogram clarity
2018-08-06 21:26:09 +02:00
Eddie Hung
95163ae1d0 Add name to copyright header 2018-08-06 12:14:00 -07:00
Eddie Hung
daedf73291 Use new Arch::isIOCell() function in Timing 2018-08-06 12:12:03 -07:00
Eddie Hung
3f5c0373a5 Consider clocked cells with COUT, consider constant nets 2018-08-06 12:03:58 -07:00
Eddie Hung
266b761f41 Merge branch 'fix_budget_overrides' into assign_budget_speedup
Conflicts:
	common/timing.cc
2018-08-06 09:02:49 -07:00
Eddie Hung
8e8ba0293c Fix use of getBudgetOverride in Timing::follow_net() 2018-08-06 08:34:37 -07:00
Eddie Hung
665202e936 Merge branch 'assign_budget_evenly' into assign_budget_speedup
Conflicts:
	common/timing.cc
2018-08-06 07:35:00 -07:00
Eddie Hung
dc685f2061 Enhance slack histogram with '+' to indicate less-than-granularity 2018-08-06 07:29:42 -07:00
Eddie Hung
2fb934b107 clangformat 2018-08-06 07:19:32 -07:00
Eddie Hung
fa773c3ce9 Add net_delays bool to Timing class to control net delay consideration 2018-08-06 07:18:06 -07:00
Eddie Hung
9b414594d2 Unless slack_redist is enabled, ignore net delays so that budget gets evenly divided between all nets on path 2018-08-05 23:00:15 -07:00
Eddie Hung
e314ea761a WIP for new assign_budget() using topographical ordering 2018-08-05 22:38:54 -07:00
David Shah
b3acd8095f timing: Fix slack histogram segfault with no paths
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-05 16:36:35 +02:00
Eddie Hung
8974ef3327 Slack histogram to use ps granularity via int(Arch::getDelayNS() * 1000) 2018-08-04 18:55:03 -07:00
Eddie Hung
76a7d67f74 Revert "Be cognisant that delay_t could be a non-integer type (if so, truncate to integer)"
This reverts commit b07f0eebc8.
2018-08-04 18:54:23 -07:00
Eddie Hung
b07f0eebc8 Be cognisant that delay_t could be a non-integer type (if so, truncate to integer) 2018-08-04 18:47:42 -07:00
Eddie Hung
dced12cbd2 Merge branch 'master' into slack_histogram
Conflicts:
	common/timing.cc
2018-08-03 23:53:33 -07:00
Eddie Hung
45304d049f clangformat 2018-08-03 23:42:25 -07:00
Eddie Hung
be481cb130 Add crude histogram feature, printed after placement and routing 2018-08-03 23:39:42 -07:00
Eddie Hung
85a436198c Remove space 2018-08-03 22:39:55 -07:00
Eddie Hung
ecb264d002 Refactor timing.cc into Timing class 2018-08-03 22:39:25 -07:00
Eddie Hung
3d5dcda12c Auto frequency only if --freq 0 is set 2018-08-03 19:53:32 -07:00
David Shah
faf309c1fe timing: Fix timing analysis when no paths found (e.g. ecp5 with no cell timing info yet)
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-01 11:23:11 +02:00