Commit Graph

728 Commits

Author SHA1 Message Date
David Shah
c782f07b1b ecp5: Add IO buffer insertion
Signed-off-by: David Shah <dave@ds0.me>
2018-10-31 11:30:09 +00:00
David Shah
db0646be8a ecp5: Adding LPF parser
Signed-off-by: David Shah <dave@ds0.me>
2018-10-31 10:48:54 +00:00
David Shah
0ac48c6a08 ecp5: DSP fixes
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-22 16:18:29 +01:00
David Shah
535a6f625a ecp5: Working on DSPs
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-22 11:19:59 +01: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
1fc2318c53 ecp5: Optimise DCC placement
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-14 13:22:47 +01:00
David Shah
bda94aa5a5 ecp5: Fix BRAM tile names
Signed-off-by: David Shah <dave@ds0.me>
2018-10-11 11:51:17 +01:00
David Shah
848ce6d41c ecp5: Fixing BRAM initialisation
Signed-off-by: David Shah <dave@ds0.me>
2018-10-10 17:21:37 +01:00
David Shah
f7466110a5 ecp5: Working on BRAM initialisation
Signed-off-by: David Shah <dave@ds0.me>
2018-10-09 13:13:16 +01:00
David Shah
d716292e3d ecp5: BRAM improvements with constant/inverted inputs
Signed-off-by: David Shah <dave@ds0.me>
2018-10-06 15:59:22 +01:00
David Shah
cd688a2784 ecp5: Fixing EBR constant tie-offs
Signed-off-by: David Shah <dave@ds0.me>
2018-10-05 16:47:03 +01:00
David Shah
85a95ec250 ecp5: Bitstream gen for DP16KD BRAM
Signed-off-by: David Shah <dave@ds0.me>
2018-10-05 15:53:41 +01:00
David Shah
56ab547aeb ecp5: Infrastructure for BRAM bitstream gen
Signed-off-by: David Shah <dave@ds0.me>
2018-10-05 14:36:16 +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
48f08e6d39 ecp5: Adding constids for blockram
Signed-off-by: David Shah <dave@ds0.me>
2018-10-05 10:54:30 +01:00
David Shah
bf7161d2b4 ecp5: Negative clock support, general slice improvements
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-02 15:50:45 +01:00
David Shah
8cbc92b7f3 ecp5: Small DRAM routing fixes
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 18:45:14 +01:00
David Shah
9ebec3b87f clangformat
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 18:20:14 +01:00
David Shah
fd4498736e ecp5: Fix packing of FFs into carry/DRAM slices
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 18:19:56 +01:00
David Shah
2c96d4770d ecp5: Fix DRAM initialisation
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 18:15:11 +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
c8a9bb807c ecp5: Debugging DRAM packing
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 17:45:35 +01:00
David Shah
9518c5d762 ecp5: Working on DRAM packing
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 17:05:02 +01:00
David Shah
885fae8236 ecp5: Handling of DRAM initialisation and wiring
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 16:43:22 +01:00
David Shah
d770eb672f ecp5: Helper functions for distributed RAM support
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 15:23:12 +01:00
David Shah
931c78b1bb ecp5: Improve handling of constant CCU2C inputs
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 14:42:19 +01:00
David Shah
e7c8818424 ecp5: Fix carry feed out
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-30 19:27:06 +01:00
David Shah
6a1b49c311 ecp5: Improve mixed no-FF/FF placement
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-30 18:39:53 +01:00
David Shah
3e399c9f20 ecp5: Carry packing fixes
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-30 18:10:20 +01:00
David Shah
9218d2e56b ecp5: Relative placement and bitstream gen for carries
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-30 17:42:47 +01:00
David Shah
fef29d8762 ecp5: First stages of carry packing
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-30 17:18:30 +01:00
David Shah
e81a95cf7e ecp5: Add ccu2c_to_slice
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-30 17:06:06 +01:00
David Shah
2628344298 ecp5: Support code for carry chain handling
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-30 16:58:02 +01:00
David Shah
a27c7b45de Refactor chain finder to its own file
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-30 16:29:26 +01:00
David Shah
6afc2c75fd ecp5: Adding carry helper functions
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-30 15:13:31 +01:00
David Shah
0e0ad26f07 ecp5: Use ArchNetInfo to mark global nets to ignore
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 19:31:49 +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
f46f205782 ecp5: Fix handling of global to fabric connections
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 18:06:08 +01:00
David Shah
5e46d1eb98 ecp5: Remove excessive debugging from global promoter
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 17:38:39 +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
c2a062d254 ecp5: Fixing global to global user routing
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 17:13:50 +01:00
David Shah
9ff5d5a735 ecp5: Fixing global router bugs
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 17:01:19 +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
4cd582478b ecp5: Adding main global promoter/router function
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 16:37:18 +01:00
David Shah
f7a270a1d8 ecp5: Fix globals.cc following API update
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 16:15:17 +01:00
David Shah
c8674652dc ecp5: Add SPINE routing to global router
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 16:09:21 +01:00
David Shah
24414614d2 ecp5: Import SPINE data to database
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 16:09:21 +01:00
David Shah
dfdaaa6f57 ecp5: Adding DCCA insertion function
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 16:09:21 +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
bc10a5646d ecp5: Working on global router
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 16:06:30 +01:00
David Shah
d43138b022 ecp5: Global routing algorithm up to TAPs
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 16:06:30 +01:00
David Shah
7d48acff52 ecp5: Clock usage counter function
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 16:06:30 +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
cdc9dc545e ecp5: Add crude approximation of Pip delays
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-19 14:29:16 +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
David Shah
72a9a475fa ecp5: Speed up Bel availability/binding checks
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-18 18:36:13 +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
b8206d71ca ecp5: Speedup placement using ArchCellInfo
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-18 18:14:18 +01:00
Clifford Wolf
97520bb728 Merge branch 'master' of github.com:YosysHQ/nextpnr into archattr 2018-08-18 13:06:21 +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
Clifford Wolf
428f0b9eba Add Arch attrs API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-14 17:16:14 +02:00
Miodrag Milanovic
93a0d24560 Use settings for placer1 and router1 2018-08-09 18:39:10 +02:00
David Shah
ed602baa06
Merge pull request #42 from YosysHQ/floorplan
Add basic data structures for floorplanning
2018-08-09 10:49:11 +02:00
David Shah
834f7e4bfd ecp5: Implement getPipLocation and related API
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-09 10:39:53 +02:00
Miodrag Milanovic
61bce47f3c Use settings for json and pcf 2018-08-08 20:14:18 +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
cd4e761bb7
Merge pull request #44 from YosysHQ/improve_timing_spec
Speed up budget allocator using topographical ordering and update cell timing API
2018-08-08 19:23:47 +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
Miodrag Milanovic
fc5cee6fb8 clangformat 2018-08-08 18:17:34 +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
Miodrag Milanovic
5df90bc5a5 Merge remote-tracking branch 'origin/master' into common_main
# Conflicts:
#	ecp5/main.cc
#	ice40/main.cc
2018-08-08 10:48:05 +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
Miodrag Milanovic
fffaaa613f Added project loader 2018-08-06 19:32:17 +02: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
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
Miodrag Milanovic
3bb9a7df01 Added command parser and common implementation 2018-08-05 16:13:34 +02:00
Miodrag Milanović
dc34d4c9ed
Merge pull request #33 from YosysHQ/gui-ecp5
Gui ecp5
2018-08-04 04:05:38 -07:00
Miodrag Milanovic
a31c00ed96 Chip selection ui for ECP5 2018-08-04 11:48:29 +02:00
Eddie Hung
d66edf5223 Merge branch 'master' into slack_redist_freq 2018-08-03 23:43:53 -07:00
Eddie Hung
3d5dcda12c Auto frequency only if --freq 0 is set 2018-08-03 19:53:32 -07: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
Miodrag Milanovic
e68ca65e9e Unify interfaces for gui 2018-08-03 18:23:40 +02:00
David Shah
26c68c4bcc Remove old place legaliser, set placement constraints instead (currently ignored by placer)
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-03 13:18:48 +02:00
David Shah
90623b80e8 ecp5: Refresh Bels when they are modified
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-03 12:00:07 +02:00
Miodrag Milanović
775dba2bee
Merge pull request #15 from YosysHQ/fix-ecp5-msvc
Add missing files and missing includes for MSVC
2018-08-02 08:24:30 -07:00
David Shah
cc32290c1f ecp5: Write tiletype names in correct order
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-02 16:15:46 +02:00
Miodrag Milanovic
f1893f9681 Add missing files and missing includes for MSVC 2018-08-02 14:51:05 +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
David Shah
534465d3ad ecp5: Adding tilegrid helper functions to Arch
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-01 15:30:28 +02:00
David Shah
bcdcba66a6 ecp5: Add tilemap to chip database
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-01 15:23:27 +02:00
David Shah
305145ffe4 ecp5: Adding configuration data structures
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-01 15:07:05 +02:00
David Shah
2743d0fa9d ecp5: Tweak bitstream chip scope
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-01 14:41:36 +02:00
David Shah
1a34d6d334 ecp5: Memory fixes in packer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-08-01 14:39:56 +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
0eaa92bd6a Merge remote-tracking branch 'origin/master' into redist_slack 2018-07-28 12:51:37 -07:00
David Shah
b9d774041b ecp5: Fix typo
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-27 18:56:19 +02:00
David Shah
32559638d3 ecp5: Fix chipdb builder
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-27 18:48:02 +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
d5c2332ebf Merge remote-tracking branch 'origin/master' into redist_slack 2018-07-26 21:00:26 -07:00
Miodrag Milanovic
8db19778a0 Fix name clash for ecp5 2018-07-26 18:48:07 +02:00
Clifford Wolf
467e0926f9 Add getWireType()/getPipType() API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-26 16:38:11 +02: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
a21cc4dd5b Merge remote-tracking branch 'origin/master' into redist_slack 2018-07-25 17:55:20 -07:00
Eddie Hung
950f33c1bb clangformat 2018-07-25 17:53:01 -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
David Shah
8fffb0add9 ecp5: Add global network info to database
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-25 19:44:50 +02:00
Miodrag Milanovic
790d7159bb Fixed packing non pod 2018-07-25 17:42:32 +02:00
David Shah
4b6d78ebe7 ecp5: Update trellis_import to use new bbasm
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-25 14:15:39 +02:00
Eddie Hung
c71212d0e1 If --freq not set, attempt to find max by adjusting budget so min path slack == 0 2018-07-24 23:19:24 -07:00
Eddie Hung
9382938661 Merge branch 'master' into redist_slack 2018-07-24 22:20:10 -07:00
David Shah
32c7247785 ecp5: Bitsream gen tuning
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-24 22:26:26 +02:00
David Shah
5a7e7b2d03 Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-07-24 21:25:41 +02:00
David Shah
6a7f3cd336 ecp5: Working on LVDS inputs for Versa support
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-24 21:25:33 +02:00
Miodrag Milanovic
c9c3d970c9 Fixed pybiding so generic can work and ecp5 expose all needed 2018-07-24 20:21:31 +02: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
David Shah
35a6bc496e ecp5: Support for differential IO
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-24 12:57:54 +02:00
David Shah
f61e9e5609 ecp5: Set BANKREF to correct VccIO
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-24 12:22:57 +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
David Shah
baa673f9ed ecp5: Helper functions for I/O placement and checking
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-23 18:56:46 +02:00
Eddie Hung
771edd1fda Merge branch 'master' into redist_slack 2018-07-23 07:16:39 -07:00
Clifford Wolf
90fe002a36 Remove getBelsByType() API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-23 13:16:27 +02:00
David Shah
bfa1137fe0 clangformat
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-23 13:02:57 +02:00
David Shah
a3864c2936 ecp5: Add Add getGridDimX(), getGridDimY(), getTileDimZ()
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-23 13:02:37 +02: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
d0ed23d673 ecp5: Remove obsolete db entries, add Bel z-position
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-23 10:32:42 +02:00
Miodrag Milanovic
b9c413a5aa Move to new API and remove deprecated 2018-07-22 19:58:17 +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
Clifford Wolf
78f40ca0af Change DelayInfo semantics to what we actually need
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-21 13:52:59 +02:00
Clifford Wolf
c556242976 Add getWireDelay API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-21 13:38:44 +02:00
David Shah
50bf32665d ecp5: Tidying up examples
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-18 16:31:55 +02: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
5393841c66 ecp5: Adding PIO data to chipdb
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-18 15:34:22 +02:00
David Shah
74cbaa5b83 ecp5: Simple packer working
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-18 09:52:53 +02:00
David Shah
f138368e34 ecp5: Add simple constant packer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-18 09:35:40 +02:00
David Shah
edf7bd09cf ecp5: Function to handle constant LUT inputs
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-17 21:51:24 +02:00
Clifford Wolf
ddfc535df7 Add ArchNetInfo and ArchCellInfo
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-17 20:04:49 +02:00
David Shah
2eb783d626 ecp5: Fixing packer bugs
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-17 16:45:39 +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
6c54d4f93c ecp5: FF packer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-17 15:48:34 +02:00
David Shah
b52269bc19 ecp5: LUT packer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-17 15:44:36 +02:00
David Shah
c0567c0d30 ecp5: Working on packer LUT pairing functionality
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-17 15:25:10 +02:00
David Shah
7c89aed70e ecp5: Infrastructure for FF packing
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-17 14:19:21 +02:00
David Shah
eb773f246d ecp5: Working on packer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-17 13:41:33 +02:00
David Shah
ac4cdd6604 ecp5: Refactor skeleton of packer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-17 13:19:27 +02:00
David Shah
0e31a8e266 ecp5: Adding command line options for device type
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-17 12:50:22 +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
David Shah
044db02012 ecp5: Major improvements to Trellis importer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-17 12:21:24 +02:00
David Shah
889e1fc19f ecp5: Adding cell definitions
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-17 11:28:59 +02:00
Sergiusz Bazanski
d4a0feb1ad Revert "Add read/mutate context stubs for ECP5"
This reverts commit f333a68753.
2018-07-14 18:50:29 +01: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
Sergiusz Bazanski
f333a68753 Add read/mutate context stubs for ECP5 2018-07-14 11:25:38 +01:00
Clifford Wolf
c05bea12e0 Add ctx->pack() API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-13 15:16:44 +02:00
David Shah
e9668ed618 Fixing hash link problem
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-13 12:42:04 +02:00
Miodrag Milanovic
8e54ac1542 Use command line parameters settings for GUI as well. 2018-07-13 09:14:48 +02: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
d16d34736f ecp5/cmake: Improve error message when trellis/pytrellis not found
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-12 19:59:18 +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
David Shah
9e06954edb ecp5: Improving SLICE bel
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-12 10:09:56 +02:00
Clifford Wolf
6ffae27aa1 Deterministic chipdb blobs
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-11 18:36:15 +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
Clifford Wolf
2a01b5e4d3 New refreshUi API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-07-11 17:02:13 +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
bcc63091fb ecp5: New libtrellis tile lookup API
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 11:08:12 +02:00
David Shah
eac5a6dbd8 ecp5: Blinky tweaks
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah
610adfef7e ecp5: Make blinky more fancy
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah
9a2e8caf1c ecp5: Buttons working
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah
1830c9372e ecp5: *** Blinky working ***
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah
98cdb6082d ecp5: Bitstream progress
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah
29d65bd368 ecp5: Working on bitstream gen
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah
b397dd8071 ecp5: Adding bitstream gen for slice config
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +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
54f06fdf72 ecp5: Adding tiletypes to database
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah
6cc6113d5a ecp5: Link libtrellis library to ecp5 binary
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah
863c22620b ecp5: Dump routing as a sanity check
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
417913fd85 ecp5: Architecture fixes
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
93f379a488 ecp5: Adding JSON input option (not working yet)
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:42:09 +02:00
David Shah
c33aa259ad ecp5: Adding a simple prepacked synth script
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
6f90c3df61 ecp5: Adding complete binary blob writer to Trellis importer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:41:36 +02:00
David Shah
ee45f57909 ecp5: Starting to add BBA to importer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:41:36 +02:00
David Shah
12b0f7f162 ecp5: Adding Bels to import script
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:41:36 +02:00
David Shah
fdd13edff0 ecp5: Starting to develop a Trellis importer
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
David Shah
c4af52dd5b ecp5: Working on arch implementation
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:41:36 +02:00
David Shah
eaae6b7dca ecp5: Begin planning data structures
Signed-off-by: David Shah <davey1576@gmail.com>
2018-07-11 10:40:16 +02:00