Commit Graph

236 Commits

Author SHA1 Message Date
David Shah
e005cc6754 ecp5: Add PLL support
Signed-off-by: David Shah <dave@ds0.me>
2018-10-31 19:52:41 +00:00
David Shah
1a06f4b2bd ecp5: Adding DSP support
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-21 20:07:18 +01:00
David Shah
b5faa7ad10 ecp5: Implement ECP5 equivalent of c9059fc
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-21 17:15:34 +01:00
David Shah
1cde208090 clangformat
Signed-off-by: David Shah <dave@ds0.me>
2018-10-16 14:37:58 +01:00
David Shah
8aac6db44b ecp5: Add support for correct tile naming in all variants
Signed-off-by: David Shah <dave@ds0.me>
2018-10-16 14:37:24 +01:00
David Shah
3aa3f5d796 ecp5: Add DP16KD timing analysis
Signed-off-by: David Shah <dave@ds0.me>
2018-10-16 13:30:23 +01:00
David Shah
19f828c91c ecp5: Dummy timing entry for BRAM
Signed-off-by: David Shah <dave@ds0.me>
2018-10-05 11:35:37 +01:00
David Shah
9ebec3b87f clangformat
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 18:20:14 +01:00
David Shah
3dfc5b864a ecp5: Remove broken DRAM timing arc
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 17:51:36 +01:00
David Shah
ab063b2456 clangformat
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 18:37:17 +01:00
David Shah
11cdc197bc ecp5: Fix global buffer connectivity and timing
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 18:29:23 +01:00
David Shah
c5f9a12bb1 ecp5: Global router produces a working bitstream
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 17:36:08 +01:00
David Shah
2a0bb2be29 ecp5: Integrate global router and debug naming
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 16:49:29 +01:00
David Shah
97b12fa741 ecp5: Add DCC Bels, fix global router post-rebase
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 16:09:21 +01:00
David Shah
30f122854a ecp5: Helper function and arch tweaks for global router
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 16:06:30 +01:00
David Shah
39e79db854 ecp5: clangformat
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-19 17:12:03 +01:00
David Shah
1b3a201a54 ecp5: Fix delay heuristic
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-19 17:10:55 +01:00
David Shah
ec94848774 ecp5: Add cell delays
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-19 16:59:36 +01:00
David Shah
45bd0a8c72
Merge pull request #54 from daveshah1/ecp5_speedup
ecp5: Improving placement speed
2018-08-19 14:04:01 +01:00
David Shah
0b35cb4e60 ecp5: Flatten bel_to_cell for performance
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-18 19:04:32 +01:00
Clifford Wolf
26be6f9761
Merge pull request #47 from YosysHQ/settings_propagate
Use settings for placer1 and router1
2018-08-18 19:25:19 +02:00
David Shah
5fe29922fd ecp5: Speedup router with slightly better estimates
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-18 11:54:53 +02:00
Miodrag Milanovic
93a0d24560 Use settings for placer1 and router1 2018-08-09 18:39:10 +02:00
Clifford Wolf
f6189e4677 Merge branch 'master' of github.com:YosysHQ/nextpnr into constids 2018-08-08 19:35:13 +02:00
David Shah
a3ae3f9791 ecp5: Update to use const IdStrings in place of PortPin/BelType
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-08 19:08:43 +02:00
David Shah
433ad6462e Arch API: Removing Arch::isIOCell
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-08 17:06:59 +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
Eddie Hung
f44a5fb904 clangformat 2018-08-06 17:35:23 -07:00
Eddie Hung
6768a5c03e Add Arch::isIOCell() to ecp5 and generic 2018-08-06 17:17:39 -07:00
Eddie Hung
d0312514bd Modify getBudgetOverride for generic and ecp5 too 2018-08-06 07:56:34 -07:00
Eddie Hung
8a6ff4b261 Modify getBudgetOverride for generic and ecp5 too 2018-08-05 22:33:14 -07: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
b937e6defe Add constraint weight as a command line option
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-03 18:31:54 +02:00
Clifford Wolf
6ccf8629b5 Add Router1Cfg
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-02 13:58:23 +02:00
David Shah
0658759495 ecp5: Remove libtrellis link for bitstream gen
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-01 15:58:38 +02:00
Clifford Wolf
29dd98420b Remove getFrameDecal() API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-01 11:30:11 +02:00
David Shah
fa4fb52665 ecp5: Making arch.cc compile
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-01 11:21:03 +02:00
Eddie Hung
92ec2cd138 clangformat for stuff I've touched 2018-07-31 20:57:36 -07:00
Eddie Hung
f646ec790a Modify the getNetinfo*() functions and getBudgetOverride() to not use
user_idx and to take a PortRef& instead
2018-07-31 19:31:54 -07:00
Eddie Hung
2d75053744 Merge remote-tracking branch 'origin/estdelay' into redist_slack
Conflicts:
	ecp5/arch.cc
	generic/arch.cc
	ice40/arch.cc
2018-07-31 16:18:08 -07:00
Eddie Hung
70747b9355 Merge branch 'redist_slack' into 'redist_slack'
# Conflicts:
#   common/timing.cc
2018-07-31 17:51:56 +00:00
Clifford Wolf
41726087b7 getChipName() should be const
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-31 17:01:38 +02:00
David Shah
f3127f7dfd ecp5: Add Bel graphics
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-31 14:39:37 +02:00
Eddie Hung
a82f6f4105 Modify predictDelay signature 2018-07-30 21:51:30 -07:00
David Shah
b09183db3b Use DelayInfo for cell timing instead of delay_t
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-30 16:59:30 +02:00
Clifford Wolf
0daffec2a0 Add predictDelay Arch API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-30 15:35:40 +02:00
Eddie Hung
d083451cd5 Update getBudgetOverride() for other arches 2018-07-26 22:31:16 -07:00
Eddie Hung
97e546041e Revert "Remove Arch::getBudgetOverride()"
This reverts commit 749dae4ae5.
2018-07-26 21:37:19 -07:00
Eddie Hung
749dae4ae5 Remove Arch::getBudgetOverride() 2018-07-25 23:02:31 -07:00
Eddie Hung
9d489e8198 Retry clangformat 2018-07-25 18:34:14 -07:00
Eddie Hung
7c8c13aba1 Merge remote-tracking branch 'origin/master' into redist_slack 2018-07-25 17:41:23 -07:00
David Shah
7a8e8999d2 clangformat
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-25 19:45:38 +02:00
Miodrag Milanovic
790d7159bb Fixed packing non pod 2018-07-25 17:42:32 +02:00
Eddie Hung
9382938661 Merge branch 'master' into redist_slack 2018-07-24 22:20:10 -07:00
David Shah
3931c84fed ecp5: Architecture testing and fixing
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-24 16:38:35 +02:00
David Shah
974ca143e8 Remove implementations of deprecated APIs
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-24 16:09:29 +02:00
Eddie Hung
9149012fd1 Merge remote-tracking branch 'origin/master' into redist_slack 2018-07-23 18:22:32 -07:00
David Shah
730e56e3dd ecp5: Add some more PIO helper functions
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-23 19:15:59 +02:00
Eddie Hung
771edd1fda Merge branch 'master' into redist_slack 2018-07-23 07:16:39 -07:00
Clifford Wolf
38962d0f02 clangformat
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-23 12:45:31 +02:00
David Shah
54d1b8adce ecp5: Implement new Grid APIs
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-23 10:53:07 +02:00
David Shah
987fdc1b29 ecp5: Adding new Bel pin API
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-22 17:07:38 +02:00
David Shah
38431bd420 ecp5: Fix regression following router update
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-22 16:55:10 +02:00
Clifford Wolf
62b66e0208 Rename getWireBelPin to getBelPinWire
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-22 10:59:21 +02:00
Eddie Hung
926c186ec7 Add Arch::getBudgetOverride() to eliminate hack for COUT 2018-07-21 13:05:09 -07:00
David Shah
c80934f953 ecp5: Add support for pin name constraints using 'LOC' attributes
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-18 16:01:53 +02:00
David Shah
2b86800c0f ecp5: Adding a slow and conservative placement validity checker
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-17 16:18:06 +02:00
David Shah
e6725dcde4 ecp5: Build all chip types
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-17 12:46:25 +02:00
Sergiusz Bazanski
ade67ecf21 Revert "Move read methods to ReadMethods, remove some legacy access to Arch"
This reverts commit 3352ff4abb.
2018-07-14 18:50:23 +01:00
Sergiusz Bazanski
cb1a5974f4 Revert "Make ECP5 proxy context compatible"
This reverts commit df5d7923ec.
2018-07-14 18:50:18 +01:00
Sergiusz Bazanski
df5d7923ec Make ECP5 proxy context compatible 2018-07-14 11:52:50 +01:00
Sergiusz Bazanski
3352ff4abb Move read methods to ReadMethods, remove some legacy access to Arch 2018-07-14 11:46:32 +01:00
Clifford Wolf
b8a42ff53b Updates from clang-format
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-12 22:04:13 +02:00
David Shah
a8a3ba2647 ecp5: Unbreaking groups
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-12 18:01:40 +02:00
Clifford Wolf
a436035424 Add Groups API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-12 17:22:29 +02:00
Clifford Wolf
7daa8524c8 Add ctx->place() API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-11 18:15:08 +02:00
Clifford Wolf
7df67c91b3 Add ctx->route() API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-11 18:04:09 +02:00
David Shah
35216298d5 ecp5: Update arch to use new graphics API
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 14:27:15 +02:00
David Shah
bad926bcc3 ecp5: Adding bitstream gen for pips and LUT init
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah
de82ecad59 ecp5: Make target device 45k on account of current hardware access
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah
981522b10e ecp5: Blinky example places and routes
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah
49f39b8d56 ecp5: Place design working, router now segfaults due to db issue
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah
59cb1600d9 ecp5: Fixing arch bugs
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah
bb683d71d6 ecp5: Add 25k database
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:41:36 +02:00
David Shah
83303bae5a ecp5: Implementing (at least stubs) most of arch.cc
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:41:36 +02:00
David Shah
7862d1b84b ecp5: Implementing core arch.h functions
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:41:36 +02:00