Commit Graph

1305 Commits

Author SHA1 Message Date
Eddie Hung d21e5a4b10 Disable assign_budget() after placement legalisation, unless slack redist 2018-08-08 07:58:01 -07:00
Eddie Hung acd2a92b03 Merge branch 'master' into improve_timing_spec 2018-08-08 07:57:30 -07:00
Eddie Hung fca01f5447 Also include TMG_GEN_CLOCK as a timing startpoint 2018-08-08 07:49:07 -07:00
David Shah e6eb203868 ice40: Add timing arcs through global buffers
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-08 16:34:41 +02: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 787fe5661c ice40: Timing arch fix
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-08 15:00:39 +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
David Shah bf42e525cb Arch API: New specification for timing port classes
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-08 14:37:59 +02:00
David Shah a0994d5154 common: Add TimingPortClass
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-08 10:44:42 +02:00
David Shah 8553573d24 place_common: Fix illegal cells left after relative constraint legalisation
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-07 11:01:48 +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 6768a5c03e Add Arch::isIOCell() to ecp5 and generic 2018-08-06 17:17:39 -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
David Shah 88d2c49440
Merge pull request #40 from eddiehung/fix_budget_overrides
Fix budget overrides
2018-08-06 21:25:30 +02:00
Eddie Hung 9addcac09c ice40's getBudgetOverride() to return correct delay for different devices 2018-08-06 12:22:13 -07: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 21cd1d7dd6 Add new Arch::isIOCell() API function 2018-08-06 12:11:47 -07:00
Eddie Hung 3f5c0373a5 Consider clocked cells with COUT, consider constant nets 2018-08-06 12:03:58 -07:00
Eddie Hung 0b1c67cad3
Merge pull request #38 from eddiehung/assign_budget_evenly
Restore original assign_budget behaviour (to distribute slack evenly)
2018-08-06 12:02:55 -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 c9141262b2 Modify doc 2018-08-06 08:39:11 -07:00
Eddie Hung 8e8ba0293c Fix use of getBudgetOverride in Timing::follow_net() 2018-08-06 08:34:37 -07:00
Eddie Hung 0f3459dbe5 Fix ice40's getBudgetOverride() to override only for COUT -> CIN 2018-08-06 08:22:08 -07:00
Eddie Hung d0312514bd Modify getBudgetOverride for generic and ecp5 too 2018-08-06 07:56:34 -07:00
Eddie Hung 823ceaacbf Change getBudgetOverride() signature to return bool and modify budget in place 2018-08-06 07:56:28 -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 f048deb33d Restore initial assign_budget() call after pack(), restrict call after initial_placement to slack_redist 2018-08-05 22:55:58 -07:00
Eddie Hung e314ea761a WIP for new assign_budget() using topographical ordering 2018-08-05 22:38:54 -07:00
Eddie Hung 8a6ff4b261 Modify getBudgetOverride for generic and ecp5 too 2018-08-05 22:33:14 -07:00
Eddie Hung 7aab4925b4 Change getBudgetOverride() signature to return bool and modify budget in place 2018-08-05 22:31:59 -07:00
Clifford Wolf 6c8319e29a
Merge pull request #37 from YosysHQ/ngapi
API change: Use CellInfo* and NetInfo* as cell/net handles
2018-08-05 16:46:24 +02: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
David Shah 736f2a0717 API change: Use CellInfo* and NetInfo* as cell/net handles (ECP5)
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-05 16:32:12 +02:00
David Shah 1ce0b5add2 API change: Use CellInfo* and NetInfo* as cell/net handles (Python bindings)
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-05 16:21:13 +02:00
Clifford Wolf 2853149c68 API change: Use CellInfo* and NetInfo* as cell/net handles (archapi docs)
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-05 15:39:44 +02:00
Clifford Wolf c3c9dab9f7 API change: Use CellInfo* and NetInfo* as cell/net handles (generic)
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-05 15:34:16 +02:00
Clifford Wolf 5e53075990 API change: Use CellInfo* and NetInfo* as cell/net handles (common, ice40)
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-05 15:25:42 +02:00
David Shah ba97c233fb
Merge pull request #36 from YosysHQ/lutperm
Add LUT input permutations, improvements in ice40 timing model, improvements in router
2018-08-05 14:31:43 +02:00