Commit Graph

1635 Commits

Author SHA1 Message Date
tangxifan 2d2b8f67aa [core] adding new option '--group_config_block' to command 'build_fabric' 2023-07-31 17:32:48 -07:00
chungshien c1b5ca0941
Merge branch 'master' into openfpga-issue-1256 2023-07-31 01:18:10 -07:00
cschai aae037bf77 Address comment 2023-07-30 02:18:48 -07:00
cschai 838cf0d818 Address comment 2023-07-30 01:14:11 -07:00
cschai 56d76741d5 Address comment 2023-07-30 00:39:16 -07:00
cschai 63459218e5 Address comment 2023-07-30 00:24:40 -07:00
tangxifan beaa687a20 [core] fixed bugs on supporting heterogeneous blocks in tile modules 2023-07-27 20:29:18 -07:00
tangxifan c2066cc63c [core] fixed a bug where pb/cb/sb instance name is not assigned correctly in bitstream manager under tile modules 2023-07-27 13:33:23 -07:00
tangxifan 156cb800aa [core] fixed a critical bug which causes wrong connections in tile modules 2023-07-27 12:22:16 -07:00
tangxifan dd486f5ccb [core] fixed a bug on checking if cb is in a tile 2023-07-27 11:14:05 -07:00
tangxifan cfec6c88f1 [core] fixed a bug in cb instance naming 2023-07-27 10:59:46 -07:00
tangxifan be0715a81c [core] fixed a bug on cb instance name. Spot some bug in port naming for tile modules 2023-07-27 10:42:56 -07:00
tangxifan 97219fd825 [core] add more verbose to help debug failed test cases 2023-07-26 23:26:11 -07:00
tangxifan 19ed9ea669
Merge branch 'master' into openfpga-issue-1256 2023-07-26 10:32:30 -07:00
tangxifan f5e8f175fb [core] fixed a bug which causes flow failures when group_tile is not enabled 2023-07-25 21:27:58 -07:00
tangxifan 83428a209e [core] fixed a bug on io indexing which causes tile-based test cases failed in dv 2023-07-25 16:03:50 -07:00
tangxifan de6956530f [core] disable pnr sdc for tile-based fabric 2023-07-25 15:38:41 -07:00
tangxifan 6ecbbb3a94 [core] fixed a bug in fabric bitgen due to tile modules 2023-07-25 14:49:12 -07:00
tangxifan 95a32628ab [core] fixed the bug in arch bitgen due to the tile modules 2023-07-25 14:15:15 -07:00
tangxifan 64698443c9 [core] fixed a bug on io location map for tile modules 2023-07-24 22:11:57 -07:00
tangxifan 2105abdbca [core] fixed a bug 2023-07-24 21:26:29 -07:00
tangxifan e7d714b94d [core] fixed a bug on the tile module port addition: some grid output was not pulled out 2023-07-24 21:21:25 -07:00
tangxifan b8d080b08e [core] fixed a bug where undriven cb ports are not connected to tile 2023-07-24 20:40:25 -07:00
tangxifan 3745897ff6 [core] fixed a few bugs 2023-07-24 16:10:29 -07:00
tangxifan 48b0ba8b78 [core] format 2023-07-24 15:00:26 -07:00
tangxifan 4294914987 [core] fixed compiler warnings 2023-07-24 14:59:43 -07:00
tangxifan 812473ef04 [core] fixed the bug on io location map for tiled top module 2023-07-24 14:50:39 -07:00
tangxifan da36b735c6 [core] syntax 2023-07-24 12:13:45 -07:00
tangxifan f031148959 [core] syntax 2023-07-23 22:39:36 -07:00
tangxifan f551188d0f [core] developed tile directs to support tile modules 2023-07-23 21:45:45 -07:00
tangxifan 14666f3ae5 [core] sync 2023-07-23 20:45:59 -07:00
tangxifan 0b3b7b5472 [core] hotfix 2023-07-23 13:39:06 -07:00
tangxifan 1ee7448070 [core] supporting tile annotation (for global port) in tile modules 2023-07-23 13:38:16 -07:00
tangxifan 399259ea1d [core] adding prog clock arch support for tile modules 2023-07-23 13:11:13 -07:00
tangxifan 0f3f4b0d81 [core] now tile module use unique port name (for heterogeneous blocks) 2023-07-22 23:55:54 -07:00
tangxifan 003d9515ff [core] developing tile-based top module builder 2023-07-22 17:13:30 -07:00
tangxifan 93c5a68592 [core] developing top-level nets for tiles 2023-07-21 23:21:53 -07:00
Chung Shien Chai 6c03819c5f 100% limited new flow for flatten bl/wl protocol 2023-07-21 03:14:26 -07:00
tangxifan fcf308fcd6 [core] developing inter-tile connections for top module 2023-07-20 23:00:35 -07:00
Chung Shien Chai 39934f9d16 Address issue 1256 2023-07-20 22:34:18 -07:00
tangxifan b70f7fb1b6 [core] now option conflicts in command 'build_fabric' can error out 2023-07-20 21:22:07 -07:00
tangxifan 6b92299e39 [core] start working on the net build-up for tile instances under the top-level module 2023-07-20 17:38:13 -07:00
tangxifan 88c5d122ca [core] syntax 2023-07-20 17:12:10 -07:00
tangxifan db179ec4bb [core] split tile instance builder and the classic fine-grained builder 2023-07-20 17:07:07 -07:00
tangxifan ef214f4590 [core] code format 2023-07-20 17:00:29 -07:00
tangxifan 6458580e3e [core] move child instance builder to a separated source file as these codes are expanding in size 2023-07-20 16:59:39 -07:00
tangxifan bd265334b5 [core] added tile instances to top module builder 2023-07-19 23:26:55 -07:00
tangxifan a06b9a0f48 [core] now start to develop the tile instances under the top module 2023-07-19 22:22:07 -07:00
tangxifan 2e69eebea0 [core] now tile module builder is working 2023-07-19 17:23:44 -07:00
tangxifan 0d03d7b483 [core] now fabric tile cache both grid and gsb coord for pb 2023-07-19 17:20:53 -07:00
tangxifan 778d03610c [core] debugging 2023-07-19 15:27:05 -07:00
tangxifan 001b3b3f8b [core] debugging 2023-07-19 14:38:07 -07:00
tangxifan d03fa92ddf [core] debugging 2023-07-19 12:49:35 -07:00
tangxifan 48e207d3e4 [core] debugging 2023-07-19 12:22:57 -07:00
tangxifan 6607bb7e48 [core] now fpga verilog supports tile modules 2023-07-18 22:35:22 -07:00
tangxifan 5ae146bd86 [core] finish up tile module builder 2023-07-18 21:17:40 -07:00
tangxifan 0dcec9d8e5 [core] finishing up tile module builder 2023-07-18 17:56:27 -07:00
tangxifan 403ed4ea60 [core] still developing tile module port and net builder 2023-07-18 16:03:47 -07:00
tangxifan aabcc25567 [core] developing tile module port and net builder 2023-07-17 23:06:55 -07:00
tangxifan ba4b7e3522 [core] developing tile module builder 2023-07-16 15:18:09 -07:00
tangxifan 98c598cec2 [core] unique tile identifier done 2023-07-15 22:54:33 -07:00
tangxifan ea8d128789 [core] syntax 2023-07-15 20:29:21 -07:00
tangxifan c2ef5ca408 [core] developing top-left style tile info 2023-07-14 22:48:44 -07:00
tangxifan 091ac88c7e [lib] code format 2023-07-14 12:16:40 -07:00
tangxifan 3bc959dcec [lib] create tile config lib and start integration to core 2023-07-14 12:13:31 -07:00
tangxifan c58035dbd4 [core] start developing option --group_tile for build_fabric 2023-07-14 11:01:04 -07:00
tangxifan 3de4d3fc09 [core] add a new command 'write_fabric_key' and now writer supports module-level keys 2023-07-08 18:12:51 -07:00
tangxifan 433391eec4 [core] move new functions to a separated source file 2023-07-07 15:03:03 -07:00
tangxifan d3aa4c53d0 [core] now support rebuild configuarable children for ccff submodules 2023-07-07 14:51:21 -07:00
tangxifan a1b13b8e12 [core] overload submodule configurable children from fabric key 2023-07-06 22:47:57 -07:00
tangxifan d3109ee88b [core] developing configurable children reloading from fabric key 2023-07-06 21:53:22 -07:00
tangxifan ddfb0c4afd [core] now mock fpga top supports fpga core wrapper 2023-06-26 15:06:11 -07:00
tangxifan 83fa6a421e [core] code format 2023-06-26 10:06:17 -07:00
tangxifan 70f40cd21a [core] fixing bugs in the preconfig module when supporting dut module of fpga_core 2023-06-26 10:03:19 -07:00
tangxifan 919d6d8608 [test] added more testcases to validate the dut module option; fixing bugs on preconfigured testbenches 2023-06-25 22:49:51 -07:00
tangxifan 205881d0e7 [core] fixed the bug when using fpga_core instead of fpga_top 2023-06-25 18:03:15 -07:00
tangxifan 150653287d [core] supporting io naming for verilog testbench generators 2023-06-25 15:29:27 -07:00
tangxifan 987a562e0f [core] fixed the bug when checking mapping status of fpga core ports 2023-06-23 17:21:52 -07:00
tangxifan 463332c77a [core] code complete for adding nets between top and core module 2023-06-23 13:21:25 -07:00
tangxifan b30148f8fb [core] apply more sanity checks on top module port 2023-06-23 12:37:46 -07:00
tangxifan 2484150ab6 [core] working on port addition to top module 2023-06-23 12:21:47 -07:00
tangxifan 8bd9ae02fd [core] io name map now supports dummy port direction 2023-06-23 11:09:33 -07:00
tangxifan 7961223eac [core] enabling io naming rules in fabric builder 2023-06-22 22:18:09 -07:00
tangxifan 61544af2b4 [core] start adding new options 2023-06-21 14:01:00 -07:00
tangxifan b2d1d1b6bd [core] fixed a bug on fpga bitstream when supporting fpga_core 2023-06-19 14:40:38 -07:00
tangxifan 299b42873d [core] fix no warning build 2023-06-19 13:01:43 -07:00
tangxifan a4f26798b0 [core] fixed the bug which causes wrong fpga top connections and failed in fpga sdc 2023-06-19 11:59:48 -07:00
tangxifan 63ee0c980e [core] fixed some bugs 2023-06-18 22:12:54 -07:00
tangxifan d9499f2b40 [core] now fpga bitstream supports the wrapper module 2023-06-18 21:58:36 -07:00
tangxifan bdda695cc0 [core] format 2023-06-18 21:18:35 -07:00
tangxifan cef573529d [core] now fpga verilog can output fpga core netlist 2023-06-18 21:17:50 -07:00
tangxifan c7ade72200 [core] code complete for the core wrapper creator. Start debugging 2023-06-18 19:17:42 -07:00
tangxifan 8bc70b590a [core] developing fpga_core insertion 2023-06-17 23:42:45 -07:00
tangxifan ee59bdb675 [core] code format 2023-06-07 18:55:34 -07:00
tangxifan 327f7f4dab [core] now adapt to latest API of DeviceGrid 2023-06-07 18:54:48 -07:00
tangxifan b6c90eb99a [core] fixed several bugs which causes bgf and pcf support in mock wrapper failed 2023-05-27 12:13:16 -07:00
tangxifan e1feebc96d [core] fixing bugs on pcf and bgf support for mock efpga wrapper 2023-05-26 21:54:08 -07:00
tangxifan 0abc5af1a9 [core] fixed the bug supporting global nets 2023-05-26 20:44:04 -07:00
tangxifan a9e5e1af89 [core] now fabric netlist include mock wrapper 2023-05-26 18:49:57 -07:00
tangxifan 788b1495dd [core] split a big function to 4 sub functions so that we can efficiently reuse for mock wrapper 2023-05-26 17:31:07 -07:00
tangxifan f7afbfa0bd [core] fixed some bugs 2023-05-26 12:26:30 -07:00
tangxifan e9848c5728 [core] typo 2023-05-26 10:24:21 -07:00
tangxifan 45e25e4152 [core] hooking up API with command 2023-05-25 19:50:39 -07:00
tangxifan affe5c5d1e [core] developing mock wrapper generator 2023-05-25 18:50:47 -07:00
tangxifan ab263aa5b1 [core] code format 2023-05-25 15:02:03 -07:00
tangxifan 8d7429fc2b [core] adding the new command 'write_mock_fpga_wrapper' 2023-05-25 12:58:12 -07:00
tangxifan dab89322b3 [core] fixed the bug in I/O location map build-up when supporting subtiles 2023-05-04 09:51:05 +08:00
tangxifan cb0e6b9e17 [core] fixed a critical bug 2023-05-03 21:46:35 +08:00
tangxifan 6c48c57421 [core] fixed some bugs in the subtile support 2023-05-03 21:23:52 +08:00
tangxifan 7bedc965ac [core] supporting subtile 2023-05-03 17:30:58 +08:00
tangxifan 18b078d1d5 [core] fixed bugs which cause ci failed 2023-04-24 21:20:07 +08:00
tangxifan e11e4dc3f4 [core] comment on current limitations 2023-04-24 14:59:43 +08:00
tangxifan d9af8dd722 [core] did some dirty fix but now dv should pass. Not sure why usig a shorter bitstream does not work 2023-04-24 14:50:42 +08:00
tangxifan 679c6e9b43 [core] debugging 2023-04-24 14:05:51 +08:00
tangxifan 3c6a4d34d8 [core] code format 2023-04-24 13:36:59 +08:00
tangxifan 715765d81b [core] code complete for top testbench generator on ccffv2 upgrades 2023-04-24 13:34:44 +08:00
tangxifan 667d9df028 [core] developing testbench generator for ccff v2 2023-04-24 11:36:21 +08:00
tangxifan 1ba3c56cf3 [core] code format 2023-04-23 16:49:19 +08:00
tangxifan ba90f5020b [core] fixed some bugs which cause netlist generation failed 2023-04-23 16:48:14 +08:00
tangxifan 28b7a12f68 [core] code format 2023-04-23 14:31:35 +08:00
tangxifan bd511ba515 [core] fixed syntax errors 2023-04-23 14:26:08 +08:00
tangxifan 592765af48 [core] code complete for upgrading netlist generator w.r.t. ccff v2 2023-04-23 13:57:37 +08:00
tangxifan 5500b9a289 [core] upgrading netlist generator 2023-04-22 16:27:27 +08:00
tangxifan ea8ae29b53 [core] code format 2023-04-22 15:12:38 +08:00
tangxifan 297a23dee7 [core] fixed syntax errors 2023-04-22 15:09:39 +08:00
tangxifan 5e8e982334 [core] finished developing checkers 2023-04-22 12:44:34 +08:00
tangxifan f70cc32824 [core] developing checkers for configuration protocol w.r.t. the programming clocks 2023-04-22 08:46:36 +08:00
tangxifan aeeee6d8bd [core] code format 2023-04-20 15:07:54 +08:00
tangxifan 40598d25a3 [core] fixed a bug which causes multi-clock programmable network failed in routing 2023-04-20 15:05:45 +08:00
tangxifan 928c7d5736 Merge branch 'master' into xt_clk_arch 2023-04-19 22:17:33 +08:00
tangxifan 9690cea115 [core] fix clang syntax 2023-04-19 15:46:42 +08:00
tangxifan cb4512b925 [core] code format 2023-04-19 11:10:42 +08:00
tangxifan a84cc52d7c [core] fixed a few bugs due to the changes in vtr regarding flat router 2023-04-19 11:08:18 +08:00
tangxifan 11f09db556 [core] fixed a bug where clock tracks do not pass through at higher level 2023-03-07 15:05:56 -08:00
tangxifan 50e201feeb [core] now clock routing for programmable clock network works for 1 clock design 2023-03-07 13:13:25 -08:00
tangxifan 550e68c68b [core] fixed a bug: node_fan_in seems buggy 2023-03-06 22:26:27 -08:00
tangxifan 2ff3ad61ce [core] format 2023-03-06 21:57:44 -08:00
tangxifan 45107bf14f [core] debugging 2023-03-06 21:48:19 -08:00
tangxifan c23b8e579d [core] fixed a bug 2023-03-06 17:10:14 -08:00
tangxifan 9823983b30 [core] debuggign 2023-03-06 15:57:37 -08:00
tangxifan 1633279c65 [core] fixed a bug in building edges for nodes 2023-03-06 14:50:28 -08:00
tangxifan 953625b1ca [core] format 2023-03-05 22:32:05 -08:00
tangxifan de1e300ec7 [core] now resize rr_node for clock graph is working 2023-03-05 22:21:55 -08:00
tangxifan 81e9187aac [core] debugging 2023-03-03 22:55:14 -08:00
tangxifan 4423d917fa [core] debugging 2023-03-03 18:00:43 -08:00
tangxifan 29ee6e7136 [core] debugging 2023-03-03 17:33:53 -08:00
tangxifan 5a43b451c1 [core] debugging 2023-03-03 16:56:20 -08:00
tangxifan c4ad21451c [core] debugging 2023-03-02 21:54:48 -08:00
tangxifan 46510388be [core] now fabric generator can wire clock ports to routing blocks 2023-03-02 12:33:26 -08:00
tangxifan 974263f0fa [core] dev 2023-03-01 23:27:29 -08:00
tangxifan 099d9f32f4 [core] dev 2023-03-01 16:08:15 -08:00
tangxifan 9baaf9ea06 [core] fix compiler warnings 2023-02-28 20:40:14 -08:00
tangxifan 7732907623 [core] format 2023-02-28 17:01:11 -08:00
tangxifan 2ff8fb8737 [core] wrapping up clock routing command 2023-02-28 16:52:54 -08:00
tangxifan bd2608d3e0 [core] dev 2023-02-28 15:41:37 -08:00
tangxifan 6f2572324e [core] developing route clock rr_graph command 2023-02-28 11:52:38 -08:00
tangxifan 8d5c21b14d [core] code format 2023-02-27 23:00:15 -08:00
tangxifan 2735b708d3 [core] reworked the tapping XML syntax 2023-02-27 22:59:44 -08:00
tangxifan ff69664c14 [core] syntax 2023-02-27 22:39:12 -08:00
tangxifan d4e19edc71 [core] finishing up clock rr_graph appending 2023-02-27 22:31:16 -08:00
tangxifan 2df1609616 [core] add a new API to get pin index from a tile 2023-02-27 21:44:00 -08:00
tangxifan 0dfe96bcf1 [core] dev 2023-02-27 19:37:49 -08:00
tangxifan b3dec93eb9 [core] code format 2023-02-27 15:12:59 -08:00
tangxifan 9ec4d690db [core] clock edges interconnecting clock tracks across levels 2023-02-27 15:10:36 -08:00
tangxifan b6eace8fac [core] now switch id is linked in clock network 2023-02-27 13:10:54 -08:00
tangxifan cae05a14e1 [core] dev 2023-02-26 23:10:50 -08:00
tangxifan 009d711ba5 [core] code format 2023-02-26 22:23:41 -08:00
tangxifan 87a9146082 [core] adding rr spatial lookup for clock nodes only 2023-02-26 22:23:17 -08:00
tangxifan db36f87dfa [core] enhance clock tree arch validation 2023-02-26 18:39:53 -08:00
tangxifan b9e5ae7ae9 [core] developing 2023-02-26 18:31:08 -08:00
tangxifan 780fc0f26d [core] developing validators and annotate rr_segment for clock arch 2023-02-26 18:03:55 -08:00
tangxifan 4bd952027f [core] dev 2023-02-26 15:31:07 -08:00
tangxifan 75773ddd4e [code] format 2023-02-26 12:46:29 -08:00
tangxifan 3db5acfb37 [core] dev 2023-02-26 12:40:13 -08:00
tangxifan 06f77d0435 [core] dev 2023-02-25 22:59:07 -08:00
tangxifan 8f0d94ba73 [code] format 2023-02-25 22:43:21 -08:00
tangxifan 0b33650761 [core] dev 2023-02-25 22:41:33 -08:00
tangxifan 8be6e7d0a0 [core] dev 2023-02-25 11:04:48 -08:00
tangxifan cf84e1df53 [core] dev 2023-02-24 22:50:27 -08:00
tangxifan 7f07a9d031 [lib] add default seg/switch to clock arch. Fixed syntax 2023-02-24 19:15:39 -08:00
tangxifan ee0459d729 [core] developing append_clock_rr_graph function 2023-02-24 17:58:37 -08:00
tangxifan aa55c692d7 [core] starting developing core function for clock rr_graph build-up 2023-02-23 18:04:07 -08:00
tangxifan 786b458a27 [core] adding new command 'append_clock_rr_graph' 2023-02-23 13:30:18 -08:00
tangxifan b78ca69fe5 [core] enable clock arch link 2023-02-22 22:29:16 -08:00
tangxifan e1dab3d227 [code] format 2023-02-22 22:01:24 -08:00
tangxifan e175472a07 [core] adding new commands 2023-02-22 21:58:25 -08:00
tangxifan f25dc461dc [code] format 2023-01-31 12:52:59 -08:00
tangxifan f00acf1e62 [code] fixed all the compiler warnings under openfpga/src 2023-01-31 12:51:52 -08:00
tangxifan 46368de6ff [script] now cmake allows strict compilation 2023-01-31 12:41:15 -08:00
tangxifan 101bb40d40 [engine] code format 2023-01-20 21:52:32 -08:00
tangxifan 059f8ca112 [engine] fixed a bug in repack when only invisible routing sinks are found 2023-01-20 21:50:59 -08:00
tangxifan 693404d1ac [engine] code format 2023-01-19 11:23:34 -08:00
tangxifan 3bcec24dca [engine] fixed a bug 2023-01-19 11:22:44 -08:00
tangxifan 2ba4249518 [engine] add black list for repacker to pick routing traces 2023-01-19 11:01:31 -08:00
tangxifan ac8c0e243c [core] code format 2023-01-15 12:13:59 -08:00
tangxifan cab7e04901 [core] fixed a bug in repacker to avoid routing constrained nets 2023-01-15 12:13:12 -08:00
tangxifan 2a0e512ac9 [code] format 2023-01-14 23:05:42 -08:00
tangxifan 4242c39b01 [core] fixed a bug in handling design constraints in repack 2023-01-14 23:05:04 -08:00
tangxifan c55d54d325 [code] format 2023-01-11 17:19:04 -08:00
tangxifan c00c43cbd4 [core] fixed a few bugs 2023-01-11 16:39:25 -08:00
tangxifan 9bbb09ef0f [core] adding a new command 'exec_external' to run system call 2023-01-11 16:31:26 -08:00
tangxifan b569d6b603 [core] format 2023-01-07 11:40:17 -08:00
tangxifan c7a4d25e35 [core] now all the commands can be optionally hidden 2023-01-07 11:36:10 -08:00
tangxifan 4385b364af [code] now setup command can be hidden optionally 2023-01-07 11:18:43 -08:00
tangxifan 9b5b1b0da7 [core] clang syntax error 2023-01-07 09:18:58 -08:00
tangxifan 52e803804d [core] add missing file 2023-01-06 22:37:55 -08:00
tangxifan 279e790fd8 [core] rename file to avoid collision 2023-01-06 21:41:52 -08:00
tangxifan 2fc047daff [core] format 2023-01-06 21:11:12 -08:00
tangxifan cf824e7161 [core] now bitstream commands follow templates 2023-01-06 21:08:50 -08:00
tangxifan 26c294679a [core] now setup commands follow templates 2023-01-06 20:52:37 -08:00
tangxifan a99794f51c [core] now FPGA-SDC commands follow templates 2023-01-06 19:22:51 -08:00
tangxifan 401b640852 [core] format 2023-01-06 17:50:47 -08:00
tangxifan 12134f4106 [core] now openfpga verilog commands follow templates 2023-01-06 17:48:00 -08:00
tangxifan 93c00207ab [core] now command functions are templates, which can be used by other extensions 2023-01-06 17:23:01 -08:00
tangxifan 5606566839 [engine] format 2023-01-01 17:37:44 -08:00
tangxifan 7610e536bf [engine] now 'source' command can be seen in help desk 2023-01-01 12:01:37 -08:00
tangxifan 76570e653c [engine] format 2023-01-01 10:23:18 -08:00
tangxifan c90f8389f1 [engine] debugged 2023-01-01 10:22:47 -08:00
tangxifan 8d947c7bdb [engine] now developers can write their superset command based on other commands through openfpga shell 2023-01-01 10:10:09 -08:00
tangxifan bffb4eedc9 [engine] typo 2022-12-30 18:18:51 -08:00
tangxifan d329f0bb44 [engine] code format 2022-12-30 18:17:19 -08:00
tangxifan 5c4e749b95 [engine] add standalone vpr commands 2022-12-30 18:12:51 -08:00
tangxifan 90bbb50047 [script] rename shared library name for tcl, so that it is straightforward to load in tcl 2022-12-01 15:59:52 -08:00
tangxifan 338e191f77 [script] enable swig flags when compiling vtr 2022-12-01 15:16:58 -08:00
tangxifan 78d4991a4e [script] add missing flags required 2022-12-01 14:49:05 -08:00
tangxifan 33b400de39 [script] compilation passed but failed when loading .so to tclsh 2022-12-01 13:51:50 -08:00
tangxifan 819b716260 [script] debugging 2022-12-01 12:30:57 -08:00
tangxifan 2e585024f7 [script] debugging 2022-12-01 12:26:30 -08:00
tangxifan 48a9a97562 [script] enabling swig in cmake compilation 2022-12-01 12:23:01 -08:00
tangxifan 0574efa9b3 [script] reworking cmakefile for swig integration 2022-12-01 12:06:27 -08:00
tangxifan 10d52f1f8b [engine] add swig interface file 2022-12-01 11:54:59 -08:00
tangxifan 74b32c3a5c [script] enable shared library for openfpga 2022-12-01 11:42:25 -08:00
tangxifan f1a317b384 [engine] format 2022-11-24 21:04:04 -08:00
tangxifan 24a174c7a4 [engine] fixed syntax errors 2022-11-23 17:06:27 -08:00
tangxifan 07424b1e7f [engine] now main() is encapuslated in a class OpenfpgaShell 2022-11-23 16:52:22 -08:00
tangxifan c4de6655b6 [engine] bug 2022-10-17 15:26:21 -07:00
tangxifan 0f2b8da7f0 [engine] code format 2022-10-17 14:55:34 -07:00
tangxifan 63d8b00630 [engine] syntax 2022-10-17 14:54:18 -07:00
tangxifan 11624cd0c6 [engine] enabling new feature: pin_table_direction_convention 2022-10-17 14:08:21 -07:00
tangxifan 0af6c76239 [engine] code format 2022-10-13 16:27:57 -07:00
tangxifan d1f3338837 [engine] now repacker find only routable pins when given a net to search routing traces 2022-10-13 16:26:45 -07:00
tangxifan 31da9bf6ea [engine] now repack can find a routing trace from the port in the same type at top-level pb_graph_node 2022-10-13 15:10:25 -07:00
tangxifan afdc071c4c [engine] apply code format 2022-10-06 18:13:33 -07:00
tangxifan e2debd2dde [engine] add missing header files after coding formatter sorts the include files 2022-10-06 18:08:57 -07:00
tangxifan 6d31b319a2 [engine] update source files subject to code formatting rules 2022-10-06 17:08:50 -07:00
tangxifan 0d8d8446ee [test] fixed a bug where OPIN for direct connection is included in GSB 2022-09-30 15:24:51 -07:00
tangxifan fb2693171b [engine] fixed a bug which causes errors in repacker 2022-09-28 16:30:11 -07:00
tangxifan 36b3e64b35 [engine] now pb_fixup can also accept vtr's post-routing-clustering sync up results 2022-09-28 12:17:16 -07:00
tangxifan 3285af4107 [engine] syntax 2022-09-28 11:39:37 -07:00
tangxifan 51f54bbf20 [engine] developing the steps to annotate clustering results 2022-09-27 16:54:48 -07:00
tangxifan 8272d2dcbc [engine] enrich verbose output for repacker, easier to debug 2022-09-27 10:46:57 -07:00
tangxifan e19ca1c6d1 [engine] fixed a bug when decoding bitstream for connnection blocks: now use incoming edges from gsb 2022-09-19 18:49:54 -07:00
tangxifan c922259c23 [engine] remove warnings and update vtr 2022-09-19 14:53:30 -07:00
tangxifan 90ddd2ce32 [engine] now get incoming edges for IPINs only from GSB 2022-09-19 14:02:13 -07:00
tangxifan 3c6ef1925c [engine] now sort ipin incoming edges 2022-09-19 11:00:08 -07:00
tangxifan 373566416c Merge branch 'master' of https://github.com/lnis-uofu/OpenFPGA into vtr_upgrade 2022-09-16 16:47:21 -07:00
tangxifan f0fe781dbc [engine] fixed a bug 2022-09-16 10:45:27 -07:00
tangxifan bba5b7b070 [engine] syntax 2022-09-15 23:04:37 -07:00
tangxifan cbc71c75c4 [engine] now io indexing follows a natural way 2022-09-15 23:01:35 -07:00
tangxifan 8378ad4bf3 [engine] fixed a bug on mistakenly adding I/O child modules for direct connections 2022-09-14 17:13:23 -07:00
tangxifan 036933dc14 [engine] fixed more bugs due to the extra modules added to top-level module when using memory bank or frame-based protocols 2022-09-14 16:46:10 -07:00
tangxifan 0425b00af5 [engine] fixed a bug for frame-based protocols 2022-09-14 16:41:30 -07:00
tangxifan cb89488f76 [engine] now support a custom list for indexing I/O children in each module 2022-09-14 15:54:55 -07:00
tangxifan eb8b7e6901 [engine] fixed a bug in i/o indexing 2022-09-14 11:30:34 -07:00
tangxifan 1c2192a87d [engine] fixed a few bugs 2022-09-12 16:50:32 -07:00
tangxifan 2fc124e109 [engine] now repack has a new option "--ignore_global_nets_on_pins" 2022-09-12 16:18:26 -07:00
tangxifan e5c7a3df9f [engine] syntax 2022-09-07 15:51:54 -07:00
tangxifan 56619f9a47 Merge branch 'master' of https://github.com/lnis-uofu/OpenFPGA into vtr_upgrade 2022-09-07 15:04:05 -07:00
tangxifan 8d09773e65 [engine] remove unnecessary checks from sb mirror checker 2022-09-07 11:55:08 +08:00
tangxifan e748c7697d [engine] update code comments 2022-09-06 13:51:29 -07:00
tangxifan eab3580f79 [engine] now consider circuit model rather than switchId and SegmentId when identifying GSB structure similarity 2022-09-06 13:40:29 -07:00
tangxifan 59440082ed [engine] fixed some syntax errors 2022-09-06 11:55:40 -07:00
tangxifan 2f84ce5955 [engine] now move rr_gsb mirror function outside the class, because of the circuit_lib should be used 2022-09-06 11:48:21 -07:00
tangxifan b26b2d0ed0
Merge branch 'master' into vtr_upgrade 2022-09-02 10:05:23 -07:00
coolbreeze413 04abd1a36f add <array> declaration to fix gcc error 2022-09-02 19:26:28 +05:30
tangxifan 9e1abf5898
Merge branch 'master' into vtr_upgrade 2022-09-01 21:39:14 -07:00
tangxifan d3f08a893c [engine] now frame view will not build nets for configuration bus 2022-09-01 20:02:00 -07:00
tangxifan 001367ea41 [engine] syntax 2022-09-01 16:40:17 -07:00
tangxifan 1f5e4d4215 [engine] update fabric bitstream implementation 2022-09-01 16:29:42 -07:00
tangxifan ea6f609181 [engine] fixing a bug in fabric bitstream encoding 2022-09-01 16:28:17 -07:00
tangxifan e4aa6e0ee5 [engine] syntax 2022-09-01 15:17:39 -07:00
tangxifan ee87b5c348 [engine] fixed all the remaining syntax errors due to API mismatches 2022-09-01 09:57:12 -07:00
tangxifan 7c5046cf4e [engine] include the correct header file 2022-09-01 09:23:05 -07:00
tangxifan 71ad0721a1
Merge branch 'master' into vtr_upgrade 2022-08-31 13:56:17 -07:00
tangxifan 26388dfb2f [engine] fixed a bug which causes errors when writing unique GSB to files 2022-08-30 15:45:00 -07:00
tangxifan 3656154913 [engine] fixed syntax errors 2022-08-29 21:17:48 -07:00
tangxifan 2321ea6274 [engine] complete the code required to output rr_gsb with options 2022-08-29 20:44:16 -07:00
tangxifan 12a30196e0 [engine] updating gsb writer; Unfinished!!! 2022-08-29 16:58:48 -07:00
tangxifan b9abdbc5d4 [engine] enable verbose output 2022-08-27 19:59:57 -07:00
tangxifan e9d6e7e38a [engine] update vtr and enable more debugging info 2022-08-27 19:12:43 -07:00
tangxifan 0c2b49ddb9 [engine] remove debugging log output 2022-08-27 13:06:05 -07:00
tangxifan 25f6c529e0 [engine] fixed syntax errors when using clang 2022-08-25 09:58:43 -07:00
tangxifan b432ac05b4 [script] fixed typo on IPO options 2022-08-24 21:51:29 -07:00
tangxifan f853040875 [script] enable IPO in cmakefile 2022-08-24 14:34:33 -07:00
tangxifan ba6ae05091 [engine] update vtr and add in_edge checks to link_arch 2022-08-24 12:22:20 -07:00
tangxifan d1edc51165 [engine] clean up header files that include rr_graph_obj 2022-08-23 18:38:21 -07:00
tangxifan b3e4a06969 [engine] adapt vpr wrapper to the latest main.cpp from vtr 2022-08-23 14:28:05 -07:00
tangxifan 892770a8fb [engine] debugging subtile index failures 2022-08-23 14:13:10 -07:00
tangxifan 0a6b794ef0 [engine] fixed bugs in subtiles. Revisited the usage of client functions 2022-08-23 12:35:04 -07:00
tangxifan 019e663e12 [engine] fixing the bugs on building global nets to sub tile pins 2022-08-23 11:58:44 -07:00
tangxifan 10cefebca8 [engine] fixing bugs on using subtile index 2022-08-23 11:00:23 -07:00
tangxifan ba0ddd01d3 [engine] fixing the bugs on subtiles 2022-08-23 10:52:05 -07:00
tangxifan c17e5d46ab [engine] fixed a bug due to the API of subtile data structure 2022-08-22 21:44:05 -07:00
tangxifan 5d6a90d983 [engine] remove compile warnings 2022-08-22 20:59:50 -07:00
tangxifan 800ce6a290 [engine] avoid function naming conflicts 2022-08-18 19:33:56 -07:00
tangxifan 903dd6cef6 [engine] remove warnings 2022-08-18 15:56:18 -07:00
tangxifan a52597361b [script] remove duplicated libraries in dependency list for some libopenfpga 2022-08-18 11:34:01 -07:00
tangxifan e9c4d102c1 [engine] rename files to avoid conflicts with VPR files 2022-08-17 20:01:50 -07:00
tangxifan 40100c1ba3 [engine] remove warnings 2022-08-17 19:07:49 -07:00
tangxifan cb4b106d4e [engine] correcting syntax errors 2022-08-17 16:36:14 -07:00
tangxifan dfe30df462 [engine] resolve compilation warnings 2022-08-17 16:32:21 -07:00
tangxifan e0ae851e28 [engine] correcting compilation errors due to vpr upgrade 2022-08-17 16:25:12 -07:00
tangxifan ce32c3b30b [engine] fixing api errors 2022-08-17 14:47:14 -07:00
tangxifan 3c2bf5159b [engine] use new API to get node side 2022-08-17 14:38:40 -07:00
tangxifan 3c12810ad9 [engine] debugging 2022-08-17 14:37:13 -07:00
tangxifan 8f1aac885e [engine] fixing mismatches in APIs 2022-08-17 14:19:02 -07:00
tangxifan 4e871be357 [engine] adapt the use of API in RRGraph for annotation functions 2022-08-17 10:50:16 -07:00
tangxifan 01d53db484 [script] Adapt timing analysis APIs 2022-08-17 10:28:58 -07:00
tangxifan ade8f43a36 [engine] Updating RRGraph Annotation and VTr 2022-08-17 10:16:55 -07:00
tangxifan 716929536d [engine] adapting source files for new APIs in VTR 2022-08-17 09:54:31 -07:00
tangxifan d3d81f0b18 [engine] keep adapting to latest VTR 2022-08-16 21:05:50 -07:00
tangxifan 0c329866da [engine] Use RRGraphView in openfpga source codes 2022-08-16 16:48:32 -07:00
tangxifan ce7204daec [engine] debugging 2022-08-16 16:35:08 -07:00
tangxifan c1256ae818 [engine] added command 'pcf2place' to openfpga 2022-07-28 11:30:36 -07:00
tangxifan 2a5bffa6b9 [engine] developing pcf2place integration to openfpga 2022-07-28 10:30:43 -07:00
tangxifan 1c9da96f59 [lib] move io_location_map to libpcf 2022-07-26 16:00:28 -07:00
tangxifan 27fea8bbbe [lib] Merge librepackdc into libpcf 2022-07-26 15:54:32 -07:00
tangxifan 23f98d6a3b [engine] fixed a few bugs 2022-07-26 13:55:29 -07:00
tangxifan 85bcb36f34 [engine] fix compiler errors 2022-07-26 12:25:40 -07:00
tangxifan 0862eceed0 [engine] add an XML write to io location map: In the long run, we should decouple the writer function from the data structure!!! 2022-07-26 12:17:45 -07:00
taoli4rs 3762a3aae4 Code clean up based on review. 2022-07-20 14:34:44 -07:00
taoli4rs cfc0d08060 Add constrain_pin_location command in openfpga; add full flow test. 2022-07-20 11:51:00 -07:00
tangxifan a7e87b9432 [FPGA-Bitstream] note limitations 2022-05-25 18:38:01 +08:00
tangxifan ffac5a66e1 [FPGA-Bitstream] Now encode address bits to save memory in bitstream database 2022-05-25 17:45:08 +08:00
tangxifan bf1a81fbb5 [FPGA-bitstream] add timer to computing intensive functions 2022-05-25 14:52:32 +08:00
tangxifan a20f6eaf06 [Engine] Fixed a few bugs 2022-04-10 21:29:38 +08:00
tangxifan 755be78b39 [Engine] Now GSB output file contains segments name and pin name in SB module 2022-04-10 21:22:30 +08:00
tangxifan 6171abdf95 [FPGA-Bitstream] Now report_bitstream_distribution includes fabric bitstream stats 2022-03-29 19:41:15 +08:00
tangxifan 4d67864c2c [Engine] Now global port can be connected partial pins of a tile port 2022-03-20 11:36:03 +08:00
tangxifan 8ab090651a [FPGA-Verilog] Now port/wire names uses "__" to avoid collision with FPGA global ports 2022-03-16 20:51:37 +08:00
tangxifan 235887e03a [FPGA-Verilog] Fixed a bug on config-enable signals 2022-02-23 22:35:23 -08:00
tangxifan 086642d134 [FPGA-Verilog] Now preconfigured wrapper can handle config_enable signals correctly 2022-02-23 15:33:24 -08:00
tangxifan 1c18d14ad5 [FPGA-Verilog] Add big/little endian support to output ports 2022-02-19 09:23:48 -08:00
tangxifan 3e43a60fdc [FPGA-Verilog] Add big/little endian support when instanciate reference benchmarks 2022-02-19 09:15:38 -08:00
tangxifan 671188dfa4 [FPGA-Verilog] Now support big/little-endian in bus group 2022-02-18 23:05:03 -08:00
tangxifan 790715f46a [FPGA-Verilog] Fixing bugs when using bus group in full testbench generator 2022-02-18 15:41:35 -08:00
tangxifan 401f673f16 [FPGA-Verilog] Streamline codes by using APIs 2022-02-18 14:47:36 -08:00
tangxifan c16ea8d082 [FPGA-Verilog] Fixing bugs in naming wires in verilog testbenches 2022-02-18 14:34:32 -08:00
tangxifan a4dc86a33d [FPGA-Verilog] Now output atom block name removal has a dedicated function 2022-02-18 14:30:46 -08:00
tangxifan f5dd89bbd9 [FPGA-Verilog] Fixed bugs in preconfigured wrapper generator when bus group is used 2022-02-18 14:08:03 -08:00
tangxifan 0d620888ab [FPGA-Verilog] Now instance can output bus ports with all the pins 2022-02-18 12:03:26 -08:00
tangxifan aa375fd7a4 [FPGA-Verilog] Fixed a bug due to the use of bus group in testbench generator 2022-02-18 11:31:11 -08:00
tangxifan 6da0ede9b0 [FPGA-Verilog] Adding bus group support to all Verilog testbench generators 2022-02-17 23:48:44 -08:00
tangxifan c96f0d199d [FPGA-Verilog] Adding bus group support in Verilog testbenches 2022-02-17 23:14:28 -08:00
tangxifan 38601f325b [Engine] Add bus group to OpenFPGA core 2022-02-17 17:28:55 -08:00
tangxifan e67f8ad8b2 [FPGA-Verilog] Now full testbench does not check any output vectors during configuration phase 2022-02-15 17:19:50 -08:00
tangxifan be8f18310d [FPGA-Verilog] Fix a bug on the polarity of reset signals that drive FPGA instances 2022-02-14 17:16:26 -08:00
tangxifan d3f68db228 [FPGA-Verilog] fixing bugs in reset ports for counters in full testbenches 2022-02-14 17:00:54 -08:00
tangxifan 34e192c5ca [FPGA-Verilog] Fixed a bug on wiring FPGA global ports 2022-02-14 15:21:29 -08:00
tangxifan 8d48492ec0 [FPGA-Verilog] Add clock ports to the white list when adding postfix 2022-02-14 11:09:00 -08:00
tangxifan 5794561f7b [FPGA-Verilog] Now shared input wire/register has a postfix in full testbench 2022-02-14 10:39:27 -08:00
tangxifan 2ca73d79e4 [FPGA-Verilog] Fixed the bug on pin constraints 2022-02-13 22:08:06 -08:00
tangxifan b1377f0d34 [FPGA-Verilog] Fix syntax errors 2022-02-13 20:29:05 -08:00
tangxifan 6e132aace4 [FPGA-Verilog] Remove the prefix added by VPR in preconfigured top module 2022-02-13 20:26:21 -08:00
tangxifan fb4106de19 [FPGA-Verilog] Fixed a bug in naming mismatch 2022-02-13 20:06:35 -08:00
tangxifan a068237082 [FPGA-Verilog] Rename internal wire names in testbenches, in order to be consistent with reference benchmarks 2022-02-13 19:55:16 -08:00
tangxifan 1c94d0f285 [FPGA-Verilog] Now preconfig testbench generator has a new option ``--use_relative_path`` 2022-02-01 13:25:09 -08:00
tangxifan f311a034bb [FPGA-Verilog] Now full testbench generator has a new option ``--use_relative_path`` 2022-02-01 12:17:02 -08:00
tangxifan 2b8e2de0c9 [FPGA-Verilog] Fix bugs 2022-01-31 14:23:04 -08:00
tangxifan 6c29c286bc [FPGA-Verilog] Fix a bug which cause errors 2022-01-31 14:06:58 -08:00
tangxifan 63f44adf15 [FPGA-Verilog] Now have a new option ``--use_relative_path`` 2022-01-31 12:48:05 -08:00
Emin Cetin 6c2c4e8b14 adding comment 2022-01-28 08:57:45 +03:00
Emin Cetin f9b47c3b34 missing semicolon 2022-01-27 16:49:04 +03:00
Emin Cetin 8f7ee4e338 changing condition of bitstream downloading 2022-01-27 11:49:55 +03:00
tangxifan a9a56686e2 [Engine] Add a new option ``--unique`` to command ``write_gsb_to_xml`` 2022-01-26 11:10:29 -08:00
tangxifan a9e6b7c12e [FPGA-Bitstream] Remove version numbers when ``--no_time_stamp`` is enabled 2022-01-25 20:33:49 -08:00
tangxifan 33064ca4cf [FPGA-SDC] Add a new option ``--no_time_stamp`` to all the commands 2022-01-25 15:51:28 -08:00
tangxifan b09e13b42c [FPGA-Verilog] Fixed a bug on invalid option of a command 2022-01-25 13:45:44 -08:00
tangxifan 25143d07f1 [FPGA-Bitstream] Now has a new option ``--no_time_stamp`` to all the commands that output bitstream files 2022-01-25 13:37:54 -08:00
tangxifan 62b57b05d2 [Engine] Now FPGA-Verilog commands have a new option ``--no_time_stamp`` 2022-01-25 12:09:08 -08:00
nadeemyaseen-rs dbe8616837 Merge remote-tracking branch 'upstream/master' into update_from_upstream 2021-12-23 00:00:22 +05:00
Tarachand Pagarani 02e4ae9740 allow bitstream setting on hard blocks 2021-12-07 03:42:22 -08:00
tangxifan ff264c00a2 Merge branch 'master' of https://github.com/lnis-uofu/OpenFPGA into upstream 2021-10-31 11:51:34 -07:00
tangxifan 91627abe12 [FPGA-Verilog] Fixed a bug on the non-inverted reset signal in testbenches when pin constraints are provided 2021-10-30 11:53:46 -07:00
tangxifan 6586ea7816 [Engine] Bug fix for fabric key writer which errors out when there is no BL/WL banks in the architecture 2021-10-11 09:40:02 -07:00
tangxifan 546350ae41 [FPGA-Verilog] Revert back to the previous precomputing strategy for shift register clocks 2021-10-10 23:19:39 -07:00
tangxifan b9c540ec3f [Engine] Upgrade fabric key writer to support BL/WL shift register banks 2021-10-10 21:14:14 -07:00
tangxifan 202b50c0e3 [FPGA-Verilog] Fixed a weird bug which causes totally different results in fixed and auto shift register clock freq; However, this is a dirty fix. Require further study to know why 2021-10-10 20:57:23 -07:00
tangxifan de3275e9ba [FPGA-Verilog] Fixed a critical in verilog testbench which caused the last bit of bitstream skipped when loading to shift register chains 2021-10-10 16:56:07 -07:00
tangxifan 1c46a92559 [FPGA-Bitstream] Bug fix 2021-10-09 21:59:56 -07:00
tangxifan 6aa4991314 [FPGA-Verilog] Bug fix 2021-10-09 21:34:07 -07:00
tangxifan 7810f376c8 [FPGA-Bitstream] Patch code comments 2021-10-09 21:03:01 -07:00
tangxifan 34575f7222 [FPGA-Bitstream] Upgrade bitstream generator to support multiple shift register banks in a configuration region for QuickLogic memory bank 2021-10-09 20:39:45 -07:00
tangxifan aac74d9163 [Engine] Bug fix 2021-10-09 18:46:20 -07:00
tangxifan fa08f44107 [Engine] Bug fix 2021-10-09 16:58:56 -07:00
tangxifan 19a551e641 [Engine] Upgrade fabric generator to support multiple shift register banks in a configuration region 2021-10-09 16:44:04 -07:00
tangxifan 932beb480a [Engine] Add fast look-up to the shift register bank data structure 2021-10-08 22:00:01 -07:00
tangxifan e3ff40d9e0 [Engine] Add missing return value 2021-10-08 20:17:55 -07:00
tangxifan 39a69e0d88 [Engine] Upgrading fabric generator to support customizable shift register banks from fabric key and configuration protocols 2021-10-08 17:58:06 -07:00
tangxifan 8f5f30792f [Engine] Now the MemoryBankShiftRegisterBanks data structure combines both BL/WL data structures as the unified interface 2021-10-08 15:25:37 -07:00
tangxifan f7484d4323 [Engine] Update the key memory data structure to contain shift register bank general information 2021-10-08 10:42:18 -07:00
tangxifan 9693a269ee [FPGA-Bitstream] Now dont' care bits are truelly seen in single-chain and flatten QuickLogic memory bank 2021-10-07 11:31:16 -07:00
tangxifan 54a8809b3c [FPGA-Verilog] Bug fix in computing clock frequency for shift register chains 2021-10-06 16:49:28 -07:00
tangxifan 27153bbc89 [FPGA-Verilog] Bug fix in matching shift register clocks between verilog ports and simulation setting definition 2021-10-06 13:38:51 -07:00
tangxifan bf473f50f8 [FPGA-Verilog] Correct bugs in logging clock frequencies 2021-10-06 11:55:57 -07:00
tangxifan fcb5470baa [Lib] Add validator to check if a clock is constrained in simulation settings 2021-10-06 11:48:23 -07:00
tangxifan 82ed6b177b [FPGA-Verilog] Now consider clock constraints for BL/WL shift registers 2021-10-06 11:39:28 -07:00
tangxifan 2ea9826b17 [FPGA-Bitstream] Bug fix in wrong option name 2021-10-05 18:58:47 -07:00
tangxifan ad54c8547e [FPGA-Bitstream] Added an option to ``write_fabric_bitstream`` command to enable outputting don't care bits in bitstream files 2021-10-05 18:54:02 -07:00
tangxifan fdd75c4ec8 [FPGA-Bitstream] Enable don't care bit to be outputted in bitstream file for QuickLogic memory banks 2021-10-05 17:54:07 -07:00
tangxifan 3efd6840a8 [Engine] Bug fix for missing WLR ports in auto-generated shift register banks 2021-10-04 16:58:01 -07:00
tangxifan 06b018cfe7 [FPGA-Bitstream] Reverse bitstream for shift register due to its FIFO nature 2021-10-03 16:05:33 -07:00
tangxifan 2badcb58f2 [FPGA-Verilog] Fixed a critical bug in verilog testbench generator for QL memory bank using BL/WL register which causes misalignment in shift register loading 2021-10-03 16:04:47 -07:00
tangxifan 28904ff526 [Engine] Bug fix on wrong port type for shift register chains 2021-10-03 12:31:58 -07:00
tangxifan 756b4c7dc8 [FPGA-Verilog] Bug fix in estimating the simulation period for QuickLogic memory bank using BL/WL shift registers 2021-10-03 12:11:20 -07:00
tangxifan 3eb601531a [FPGA-Verilog] Many bug fixes 2021-10-02 23:39:53 -07:00
tangxifan d453e6477d [FPGA-Verilog] Bug fix 2021-10-02 22:32:57 -07:00
tangxifan 02af633acd [FPGA-Verilog] Fixed several bugs in testbench generator which caused iVerilog errors 2021-10-02 22:14:15 -07:00
tangxifan fa7e168137 [FPGA-Verilog] Now testbench generator connects global shift register clocks to FPGA ports 2021-10-02 22:08:14 -07:00
tangxifan 76d58ebaa0 [FPGA-Verilog] Move clock generator to generic stimuli and shift register clock period is auto tuned by programming clock period 2021-10-02 21:48:10 -07:00
tangxifan 54ec74d8d2 [FPGA-Verilog] Bug fix in code generator 2021-10-02 17:31:37 -07:00
tangxifan 32fc0a1692 [FPGA-Verilog] Upgrading verilog testbench generator for QuickLogic memory bank using BL/WL shift register 2021-10-02 17:25:27 -07:00
tangxifan f686dd1f60 [FPGA-Bitstream] Do not reverse for now. Previous solution looks correct 2021-10-01 23:12:38 -07:00
tangxifan 198517a898 [FPGA-Bitstream] Bug fix on bitstream sequence for QuickLogic memory bank using shift registers 2021-10-01 19:59:50 -07:00
tangxifan 2de6be44d6 [Engine] Fixed a critical bug which causes bitstream wrong for QuickLogic memory bank when fast configuration is enabled 2021-10-01 18:27:42 -07:00
tangxifan 477c1cd062 [Engine] Fixed a critical bug which causes undriven BL/WLs between shift register banks and child modules at the top-level module 2021-10-01 17:38:26 -07:00
tangxifan 977d81679d [Engine] Upgrade check codes for WL CCFF 2021-10-01 17:23:10 -07:00
tangxifan 9e5debabe1 [FPGA-Bitstream] Enable fast configuration for QuickLogic memory banks 2021-10-01 16:23:38 -07:00
tangxifan 4f7ab01bf5 [FPGA-Bitstream] Reworked the bitstream writer to dump BL/WL words separately 2021-10-01 15:47:13 -07:00
tangxifan 2bd2788e77 [Engine] Upgrading testbench generator to support QuickLogic memory bank with shift registers 2021-10-01 11:23:40 -07:00
tangxifan cf96d9ff01 [Engine] Add programming shift register clock to internal global port data structure 2021-10-01 11:05:31 -07:00
tangxifan 7b010ba0f4 [Engine] Support programming shift register clock in XML syntax 2021-10-01 11:00:38 -07:00
tangxifan 96828e456a [FPGA-Bitstream] Fixed a critical bug which cause reshaping bitstream wrong 2021-09-30 22:07:46 -07:00
tangxifan 4bdff1554d [Engine] Fixed a critical bug which cause BL/WL sharing in shift-register-based memory bank broken 2021-09-30 21:20:56 -07:00
tangxifan 33972fc0ec [FPGA-Bitstream] Upgraded bitstream writer to support QuickLogic memory bank using shift registers 2021-09-30 21:05:41 -07:00
tangxifan 4526133089 [FPGA-Bitstream] Add a new data structure that stores fabric bitstream for memory bank using shift registers 2021-09-30 17:01:02 -07:00
tangxifan 43c569b612 [FPGA-Bitstream] Encapusulate the data structur storing memory bank fabric bitstream for flatten BL/WL into an object 2021-09-30 14:47:21 -07:00
tangxifan 4d8019b7c1 [FPGA-Bitstream] Bug fix in bitstream generator for shift-register-based memory bank 2021-09-29 22:32:45 -07:00
tangxifan 2d4c200d58 [FPGA-Verilog] Now FPGA-Verilog can output shift register bank netlists 2021-09-29 20:56:02 -07:00
tangxifan f456c7e236 [Engine] Add a new API to the MemoryBankShiftRegisterBank to access all the unique modules 2021-09-29 20:34:25 -07:00
tangxifan b87b7a99c5 [Engine] Add MemoryBankShiftRegisterBanks to openfpga context because their contents are required by netlist writers as well as bitstream generators 2021-09-29 20:21:46 -07:00
tangxifan 8f0ae937bc [Engine] Upgraded fabric generator to support single shift register bank per configuration region for QuickLogic memory bank 2021-09-29 16:57:49 -07:00
tangxifan ac6268d9ae [Engine] Bug fix on compilation errors 2021-09-29 16:24:36 -07:00
tangxifan c5ae93f177 [Engine] Upgraded fabric generator to support shifter register banks in Quicklogic memory bank 2021-09-29 16:17:40 -07:00
tangxifan 5da8f1db73 [Engine] Upgrading fabric generator to connect nets between top module and BL/WL shift register modules 2021-09-28 23:27:47 -07:00
tangxifan 7723e00e6c [Engine] Adding the function that builds a shift register module for BL/WLs 2021-09-28 22:49:24 -07:00
tangxifan 834bdd2b07 [Engine] Updating fabric generator to support BL/WL shift registers. Still WIP 2021-09-28 17:29:03 -07:00
tangxifan afd03d7eb7 [Engine] Add more check codes for the CCFF circuit model used by BL/WL shift registers 2021-09-28 15:56:07 -07:00
tangxifan 0d72e115ac [Engine] Bug fix for the undriven WLR nets in top-level modules 2021-09-28 11:53:38 -07:00
tangxifan 33e9b27cb8 [Engine] Fixed a critical bug when building final bitstream, which may cause loss when merging BLs 2021-09-25 20:22:27 -07:00
tangxifan 29c351f5a4 [Engine] Bug fix in estimating the configuration cycles for Verilog testbench generator 2021-09-25 19:34:21 -07:00
tangxifan e06ac11630 [Engine] Bug fix 2021-09-25 19:21:16 -07:00
tangxifan 3cf31f1565 [Engine] Fixed bugs 2021-09-25 18:22:55 -07:00
tangxifan a56d1f4fdb [FPGA-Verilog] Upgraded testbench generator to support memory bank using flatten BL/WLs 2021-09-25 17:49:15 -07:00
tangxifan 386812777c [FPGA-Bitstream] Upgraded bitstream writer to support flatten BL/WLs 2021-09-25 12:49:32 -07:00
tangxifan 1a2a2a6e63 [FPGA-Bitstream] Relax fabric bitstream address check 2021-09-25 12:03:33 -07:00
tangxifan 8b72447dad [FPA-Bistream] Updating fabric bitstream writer to organize bitstream for flatten BL/WLs 2021-09-24 18:07:07 -07:00
tangxifan a49e3fe57a [FPGA-bitstream] Upgraded bitstream generator to support flatten BL/WLs for QL memory bank 2021-09-24 16:30:18 -07:00
tangxifan 2de4a460a8 [Engine] Rework the function that counts the number of configurable children for fabric key writer and bitstream generator 2021-09-24 15:15:32 -07:00
tangxifan 74ffc8578f [Engine] Upgraded fabric generator to support flatten BL/WL bus for memory banks 2021-09-24 15:05:25 -07:00
tangxifan be4c850d2d [Engine] Split the function to add BL/WL configuration bus connections for support flatten BL/WLs 2021-09-24 12:03:35 -07:00
tangxifan 18257b3fa1 [Engine] Update BL/WL port addition for the top-level module in fabric generator 2021-09-24 11:07:58 -07:00
tangxifan 7e27c0caf3 [Engine] Upgrading top-module fabric generation to support QL memory bank with flatten BL/WLs 2021-09-23 16:16:39 -07:00
tangxifan 8c281a22b0 [Engine] Add check codes to validate circuit models for BL/WL protocols 2021-09-23 14:39:16 -07:00
tangxifan 962acda810 [Engine] Bug fix in fabric key generation when computing configurable children 2021-09-22 11:09:46 -07:00
tangxifan ad432e4d95 [Engine] Bug fix in finding the start index of BL/WL for each column/row; 2021-09-22 10:20:40 -07:00
tangxifan b0a471bdc9 [Engine] Bug fix in outputting fabric key with coordinates 2021-09-21 15:55:11 -07:00
tangxifan 7688c0570f [Engine] Support coordinate definition in fabric key file format; Now QL memory bank can accept fabric key 2021-09-21 15:08:08 -07:00
tangxifan c84c0d4a3f [FPGA-Verilog] Upgrade fpga-verilog to support decoders with WLR 2021-09-20 17:07:26 -07:00
tangxifan 36a4da863c [Engine] Support WLR port in OpenFPGA architecture file and fabric generator 2021-09-20 16:05:36 -07:00
tangxifan 2e45a6143b [Engine] Fix a critical bug which causes flatten memory tests failed 2021-09-15 15:11:58 -07:00
tangxifan f2aa31ddb1 [FPGA-Bitstream] Fix the bug which causes bitstream wrong for QL memory bank 2021-09-15 13:45:30 -07:00
tangxifan 061952b7fa [Engine] Bug fix in computing local WLs for GRID/CB/SB 2021-09-15 11:51:00 -07:00
tangxifan 26b1e48723 [Engine] Merge BL/WLs in the Grid/CB/SB modules 2021-09-15 11:27:55 -07:00
tangxifan 4af6413c97 [Engine] Fixed a critical bug on WL arrangement; Previously we always consider squart of a local tile. Now we apply global optimization where the number of WLs are determined by the max. number of BLs per column 2021-09-10 17:03:44 -07:00
tangxifan ba1e277dc9 [Engine] Fix a few bugs in the BL/WL arrangement and now bitstream generator is working fine 2021-09-10 15:05:46 -07:00
tangxifan 35c7b09888 [Engine] Bug fix for mistakes in calculating number of BLs/WLs for QL memory bank 2021-09-09 15:23:29 -07:00
tangxifan b787c4e100 [Engine] Register QL memory bank as a legal protocol 2021-09-09 15:06:51 -07:00
tangxifan 1aac3197eb [FPGA-Verilog] Upgrade testbench generator to support QL memory bank 2021-09-05 21:38:00 -07:00
tangxifan 6f09f5f7ad [FPGA-Bitstream] Upgrade bitstream generator to support QL memory bank 2021-09-05 21:25:58 -07:00
tangxifan 1085e468e2 [Engine] Move most utilized functions for memory bank configuration protocol to a separated source file 2021-09-05 20:45:56 -07:00
tangxifan 475ce2c6d9 [Engine] Upgrade fabric generator in support QL memory bank connections 2021-09-05 17:49:01 -07:00
tangxifan ed80d6b3f4 [Engine] Place QL memory bank source codes in a separated source file so that integration to OpenFPGA open-source version is easier 2021-09-05 13:23:38 -07:00
tangxifan cf2e479d18 [Engine] Refactor the TopModuleNumConfigBits data structure 2021-09-05 12:01:38 -07:00
tangxifan f75456e304 [Engine] Update BL/WL estimation function for QL memory bank protocol 2021-09-05 11:53:33 -07:00
tangxifan 5759f5f35b [Engine] Start developing QL memory bank: upgrade infrastructures of fabric builder 2021-09-03 17:55:23 -07:00
tangxifan e9d29e27e5 [Tool] Bug fix 2021-07-02 15:32:30 -06:00
tangxifan 6e6c3e9fa4 [Tool] Patch the critical bug in the use of signal polarity in pin constraints 2021-07-02 15:26:21 -06:00
tangxifan 9074bffa68 [Tool] Support customized default value in pin constraint file 2021-07-01 23:43:19 -06:00
tangxifan d0e4f8521f [Tool] Bug fix on the reset stimuli 2021-07-01 19:58:54 -06:00
tangxifan b5df1f9aeb [Tool] Bug fix for redundant endif in netlists 2021-06-29 17:02:16 -06:00
tangxifan b83eef47b4 [Tool] Bug fix for testbench generation without self checking codes 2021-06-29 16:27:29 -06:00
tangxifan 6a260cadbf [Tool] Remove option ``--no_self_checking`` option but use the existing option ``--reference_benchmark_path`` to achieve the same purpose 2021-06-29 15:42:23 -06:00
tangxifan 7ac7de789e [Tool] Add a new option ``--no_self_checking`` so that users can output a simple testbench without self checking codes 2021-06-29 15:26:40 -06:00
tangxifan 77dddaeb39 [Tool] Remove the preprocessing flags ``FORMAL_SIMULATION`` and ``FORMAL_VERIFICAITON`` because now ``write_testbench`` command can be called many times to generate different versions 2021-06-29 14:26:33 -06:00
tangxifan a3208b332b [Tool] Use 'force' in preconfigured testbenches to avoid instrusive code modification on flip-flop HDL 2021-06-29 11:50:53 -06:00
tangxifan dfe1db996a [Tool] Remove the hardcoded factor when computing simulation timing; There should be no hidden parameters impacting simulation time 2021-06-29 09:56:04 -06:00
tangxifan 87446a14c3 [Tool] Bug fix for the option ``--embed_bitstream none`` 2021-06-27 19:45:06 -06:00
tangxifan 991062e9bf [Tool] Bug fix 2021-06-25 15:22:42 -06:00
tangxifan 90163fab6c [Tool] Replace option '--support_icarus_simulator' with a new one '--preload_bitstream <string>' 2021-06-25 15:06:07 -06:00