Commit Graph

4900 Commits

Author SHA1 Message Date
Alan Mishchenko 03bb1e49bf Experiments with LUT mapping for small functions. 2021-08-01 12:14:38 -07:00
Alan Mishchenko 4cf906d2fc Experiments with LUT mapping for small functions. 2021-08-01 12:13:27 -07:00
Alan Mishchenko e162a26197 Allow retiming to skip some logic. 2021-07-31 22:46:47 -07:00
Alan Mishchenko 692dd76319 Upgrading choice computation. 2021-07-31 15:34:46 -07:00
Alan Mishchenko d925e4802c Experiments with cofactoring. 2021-07-31 11:30:19 -07:00
Alan Mishchenko a162b1f47a Experimental simulation commands. 2021-07-25 14:11:34 -07:00
Alan Mishchenko 62180f3576 Command to move CI/CO names. 2021-07-16 13:46:41 -07:00
Alan Mishchenko 6e5a797a6d Command to move CI/CO names. 2021-07-16 13:44:38 -07:00
Alan Mishchenko d9aeaade3b Several unrelated changes. 2021-07-15 18:23:04 -07:00
Alan Mishchenko 3e67d167f5 Experiments with LUT mapping for small functions. 2021-07-13 19:05:02 -07:00
Alan Mishchenko be14c39740 Experiments with MUX decomposition. 2021-07-11 00:04:59 -07:00
Alan Mishchenko 9fac6c7a8b Experiments with CEC. 2021-07-10 10:50:33 -07:00
Alan Mishchenko fdc9e89d66 Simple AIGER reader/writer. 2021-07-09 11:53:50 -07:00
Alan Mishchenko 4116e13b5e Experiments with MUX decomposition. 2021-07-08 21:54:46 -07:00
Alan Mishchenko 96b9192c78 Experiments with MUX decomposition. 2021-07-08 21:54:07 -07:00
Alan Mishchenko 5a135c8799 Experiments with MUX decomposition. 2021-07-08 21:42:15 -07:00
Alan Mishchenko 4c90af0f10 Potential upgrade to 'dsec'. 2021-06-25 07:05:38 -07:00
Alan Mishchenko 28ba2c5213 Adding place holder file for resub experiments. 2021-06-24 19:18:28 -07:00
Alan Mishchenko b4f099c511 Experiments with LUT mapping for small functions. 2021-06-19 19:26:41 -07:00
Alan Mishchenko db3f5b6d0b Experiments with cut computation. 2021-06-08 11:39:42 -07:00
Alan Mishchenko 7d18d6b7aa Experiments with cut computation. 2021-06-05 17:48:12 -07:00
Alan Mishchenko 84ec53fbf9 Disabled special handling of 2-input LUTs. 2021-06-03 08:39:30 -07:00
Alan Mishchenko 7fcbffd2af Disabled special handling of 2-input LUTs. 2021-06-02 18:57:22 -07:00
Alan Mishchenko 8889ccb18c Updating LUT synthesis code. 2021-05-26 23:25:08 -07:00
Alan Mishchenko 49078ffebf Updating LUT synthesis code. 2021-05-25 23:12:30 -07:00
Alan Mishchenko d35b05859c Adding command &extract. 2021-05-18 16:42:16 -07:00
Alan Mishchenko 91a2eafc7a Fixing memory leak in the SAT sweeper. 2021-05-16 20:39:47 -07:00
Alan Mishchenko 93849685b3 Updating LUT synthesis code. 2021-05-16 20:35:55 -07:00
Alan Mishchenko 0ce11851bc Updating LUT synthesis code. 2021-05-16 20:33:53 -07:00
Alan Mishchenko 610a3d3fc2 Adding switch muxes -a to create networks of ADDs. 2021-05-15 13:28:06 -07:00
Alan Mishchenko ed13c6d4d2 Updating LUT synthesis code. 2021-05-11 17:45:20 -07:00
Alan Mishchenko e6a47c3e41 Disable cube-sort when deriving SOPs. 2021-05-11 15:54:43 -07:00
Alan Mishchenko aa9fe1f240 Updating LUT synthesis code. 2021-05-11 15:04:15 -07:00
Alan Mishchenko 76bed2055c Updating LUT synthesis code. 2021-05-08 20:10:44 -07:00
Alan Mishchenko 17476146ca Fixing mismatch in &cec -x which should return undecided rather than non-equivalent when the miter cannot be reduced to constant 0. 2021-05-08 19:07:10 -07:00
Alan Mishchenko 45acbef882 Updating cost function in &save/&load. 2021-05-08 14:02:51 -07:00
Alan Mishchenko 13a0bb97b5 Updating cost function in &save/&load. 2021-05-08 14:00:32 -07:00
Alan Mishchenko 174f27d981 Bug fix in &blut. 2021-05-08 13:28:27 -07:00
Alan Mishchenko 7d90895dcf Experiments with LUT mapping for small functions. 2021-05-01 22:44:29 -07:00
Alan Mishchenko 645752f7d6 Making sure read_bench can read nodes up to 15 inputs. 2021-04-30 16:12:15 -07:00
Alan Mishchenko 9b75906740 Several changes for standard mapping. 2021-04-28 00:11:02 -07:00
Alan Mishchenko 5f8a8a596a Upgrade to the circuit-based solver. 2021-04-27 14:46:05 -07:00
Alan Mishchenko de71e5f610 Passing node labels. 2021-04-26 18:52:44 -07:00
Alan Mishchenko 75981f7fee Computing sum of PO support sizes. 2021-04-09 13:46:52 -07:00
Alan Mishchenko 796c29039a Making default value (-M 0) work correctly in &mfs. 2021-04-07 21:32:52 -07:00
Alan Mishchenko 9145a5c20d An option to extend the number of primary inputs. 2021-03-28 15:40:27 -10:00
Alan Mishchenko 18088bd7dc Compiler warnings. 2021-03-28 14:54:07 -10:00
Alan Mishchenko 35a4ce557c Compiler warnings. 2021-03-28 14:52:11 -10:00
Alan Mishchenko 6a03ece98d Command &iwls21test for evaluating the results of 2021 IWLS Contest. 2021-03-28 14:49:27 -10:00
Alan Mishchenko 66098723eb Adding a random seed to control randomness in 'permute' (correction). 2021-03-11 17:50:56 -10:00
Alan Mishchenko b2ca837521 Adding a random seed to control randomness in 'permute'. 2021-03-11 17:45:01 -10:00
Alan Mishchenko f87c8b434a Modification suggested by David Geiger to fix an obscure memory problem. 2021-02-03 16:01:16 -10:00
Alan Mishchenko e463930709 Updating the mapper when user-specific matching is used. 2021-01-09 18:39:37 -08:00
Alan Mishchenko cd8843c06c Preventing command history from being overwritten by internal scripts. 2021-01-09 13:06:45 -08:00
Alan Mishchenko bf96f0b31d Experiments with simulation. 2021-01-01 00:44:02 -08:00
Alan Mishchenko d0efef2fe9 Experiments with simulation. 2020-12-30 11:24:35 -08:00
Alan Mishchenko e44f409c1d Integrating Glucose into &sat. 2020-12-21 13:23:53 -08:00
Alan Mishchenko f06217e25a Compiler warnings. 2020-12-21 12:45:50 -08:00
Alan Mishchenko 73dcdab6d8 Adding solver type in &sat. 2020-12-16 22:04:06 -08:00
Alan Mishchenko 8066fdbcb5 Adding generation of combinational speculative miters. 2020-12-16 10:31:25 -08:00
Alan Mishchenko 06094ade87 Adding switch to replace proved outputs by const0. 2020-12-16 00:06:31 -08:00
Alan Mishchenko 901560bb23 Deriving equivalent nets from proved equivalences. 2020-12-09 21:59:49 -10:00
Alan Mishchenko 5b8e56b2e5 Adding timeout to several commands. 2020-12-07 17:15:31 -10:00
Alan Mishchenko 206527045e Deriving structural choices from proved equivalences. 2020-12-07 16:28:14 -10:00
Alan Mishchenko 925418d562 Corner case bug fix in &cec. 2020-12-02 09:46:31 -10:00
Alan Mishchenko 6eee09c51c Added switch -y to control blasting divide-by-zero condition. 2020-11-29 13:46:21 -10:00
Alan Mishchenko fa87d16b97 Window resub testing. 2020-11-29 12:23:17 -10:00
Alan Mishchenko d4fb192575 Renaming one command. 2020-11-23 07:31:54 -10:00
Alan Mishchenko 22f36299aa Added an option to keep PI/PO names unchanged in 'short_names'. 2020-11-22 23:02:35 -10:00
Alan Mishchenko 2e92256fb7 Passing conflict limit to &cec. 2020-11-22 21:34:33 -10:00
Alan Mishchenko 4757c7febc Removing unused printouts. 2020-11-22 20:50:35 -10:00
Alan Mishchenko 0e5af861e0 Fixing a memory corruption problem accidentally introduced by fixing memory leaks on Sep 28. 2020-11-21 09:52:08 -10:00
Alan Mishchenko 48f71adacd Integration with several commands. 2020-11-19 19:22:27 -08:00
Alan Mishchenko 36817328a5 Improvements to the SAT sweeper. 2020-11-16 14:53:56 -08:00
Alan Mishchenko 230b759d16 Extending sweeper to handle XORs. 2020-11-16 08:42:04 -08:00
Alan Mishchenko d350b1a82f Experiments with MFFC computation. 2020-11-16 07:12:26 -08:00
Alan Mishchenko ecafca53d8 Experiments with MFFC computation (bug fix). 2020-11-15 21:30:01 -08:00
Alan Mishchenko b28c4b5c17 Experiments with MFFC computation. 2020-11-15 21:06:58 -08:00
Alan Mishchenko dd07ec57be Extending sweeper to handle XORs. 2020-11-15 19:02:41 -08:00
Alan Mishchenko 28ea3adedb Improvements to the SAT sweeper (bug fix). 2020-11-15 00:55:43 -08:00
Alan Mishchenko 36e8567e77 Sweeping up to a given level (bug fix). 2020-11-15 00:12:03 -08:00
Alan Mishchenko 4c78f37a5a Sweeping up to a given level. 2020-11-14 23:57:34 -08:00
Alan Mishchenko 581f2e5972 Improvements to the SAT solver. 2020-11-14 22:45:23 -08:00
Alan Mishchenko f95476b45d Improvements to the SAT sweeper (bug fix). 2020-11-14 20:53:06 -08:00
Alan Mishchenko fef0c368bc Improvements to the SAT sweeper. 2020-11-14 17:17:26 -08:00
Alan Mishchenko bab4c1ddfc Upgrading the SAT solvers. 2020-11-14 14:23:49 -08:00
Alan Mishchenko cc840d8bd8 Improvements to the SAT sweeper. 2020-11-13 19:12:34 -08:00
Alan Mishchenko 22388f901a Adding and integrating new SAT solver APIs. 2020-11-13 10:29:31 -08:00
Alan Mishchenko 38d72c4343 Duplicating Glucose package. 2020-11-13 00:14:33 -08:00
Alan Mishchenko 2f65566d43 Duplicating Glucose package. 2020-11-13 00:07:57 -08:00
Alan Mishchenko 5415fe521f Duplicating Glucose package. 2020-11-13 00:06:16 -08:00
Alan Mishchenko fd41920a10 Duplicating Glucose package. 2020-11-13 00:03:26 -08:00
Alan Mishchenko b3d3f7dd3a Duplicating Glucose package. 2020-11-12 23:57:46 -08:00
Alan Mishchenko 890aa684ab Adding Glucose API to return a CEX. 2020-11-12 08:30:33 -08:00
Alan Mishchenko 83519c320c Experiments with SAT sweeping. 2020-11-11 20:17:20 -08:00
Alan Mishchenko c0bb4bb047 Experiments with SAT sweeping. 2020-11-10 23:15:42 -08:00
Alan Mishchenko 3da87edbb4 Setting default conflict limit in &fraig to be high. 2020-11-09 15:25:32 -08:00
Alan Mishchenko 40bfe2fb88 Experiments with SAT sweeping. 2020-11-09 13:24:07 -08:00
Alan Mishchenko 0b89fd387e Removing local file 'stdint.h' which was included by mistake, not even a header file. 2020-11-06 18:21:50 -08:00
Alan Mishchenko 6e6cc08bec Improving resub window computation by always including the TFI of the pivot node. 2020-11-03 18:02:32 -08:00
Alan Mishchenko ce95366e51 Trying to explicitly compute don't-cares during optimization. 2020-11-01 14:23:17 -08:00
Alan Mishchenko 3a7b3d27f1 Experimental cost function in technology mapping. 2020-11-01 09:56:01 -08:00
Alan Mishchenko 2325cd77e3 Adding an option to write Verilog with LUT instances (compiler warnings). 2020-10-31 16:14:52 -07:00
Alan Mishchenko f9af41ba1b Adding an option to write Verilog with LUT instances. 2020-10-31 15:08:40 -07:00
Alan Mishchenko 73f8b598ac Rare bug fix in mapping with choices. 2020-10-29 17:21:37 -07:00
Alan Mishchenko b2aa245eaa Fixing a clang error related to 'unlink'. 2020-10-09 23:28:23 -07:00
Alan Mishchenko ada073110e New command 'read_sf'. 2020-10-01 21:24:32 -07:00
Alan Mishchenko f1eb933992 Bug fix in window output computation. 2020-09-30 10:23:01 -07:00
Alan Mishchenko 947eeb9501 Memory leaks. 2020-09-28 23:02:26 -07:00
Alan Mishchenko 41c937e4c8 Memory leaks. 2020-09-25 20:35:11 -07:00
Alan Mishchenko f21bafeb23 Changing SAT sweepers (ifraig and &fraig) to be stronger by default. 2020-09-24 23:49:01 -07:00
Alan Mishchenko 55a67a115c Improvement to reconv-driven windowing. 2020-09-21 09:00:30 -07:00
Alan Mishchenko d953425275 Performance bug in k-resub and faster windowing. 2020-09-18 21:50:27 -07:00
Alan Mishchenko 55f4751f75 Experiment with using MUXes in k-resub engine. 2020-09-17 18:08:31 -07:00
Alan Mishchenko 63fc01ccbd Compiler warnings. 2020-09-17 13:07:14 -07:00
Alan Mishchenko 083c1218e5 Improving MFFC computation code. 2020-09-17 13:04:09 -07:00
Alan Mishchenko fb769cf9ab Bug fixed in the resub code. 2020-09-16 19:55:38 -07:00
Alan Mishchenko bab462d5cd Compiler warnings. 2020-09-13 20:33:59 -07:00
Alan Mishchenko 07bf95f480 Experiments with iterative synthesis. 2020-09-13 19:17:16 -07:00
Alan Mishchenko a2c3c21031 Deleting unused info left by the SAT sweeper. 2020-09-10 21:52:15 -07:00
Alan Mishchenko d556ad65ff Adding switch &cec -w to print SAT solver stats. 2020-09-06 23:15:21 -07:00
Alan Mishchenko fe968e9d79 Fixing a typo in setting the miter type. 2020-09-06 22:53:24 -07:00
Alan Mishchenko 8ef4404542 Verifying new resub code. 2020-09-06 22:34:45 -07:00
Alan Mishchenko 4b4646283f Experiments with ICCAD CAD benchmarks (Problem A). 2020-09-03 16:43:53 -07:00
Alan Mishchenko 26e03ef6a0 Experiments with window computation. 2020-08-15 17:12:41 -07:00
Alan Mishchenko 850d39fec3 Making &cec use precomputed simulation info. 2020-08-12 19:32:42 -07:00
Alan Mishchenko b74b7dfc2d Extending &sim_read to use non-64-divisible pattern counts. 2020-08-12 15:33:09 -07:00
Alan Mishchenko 5c8ee4a2c1 New ways of reading MiniAIG. 2020-07-29 19:50:10 -07:00
Alan Mishchenko aaeadb1438 New ways of reading MiniAIG. 2020-07-29 19:48:36 -07:00
Alan Mishchenko 448f263443 Fixing new resub code. 2020-07-20 19:56:06 -07:00
Alan Mishchenko 25538c23c5 Fixing new resub code. 2020-07-20 19:52:45 -07:00
Alan Mishchenko 22d9b1d38b Experiment with structural similarity. 2020-07-16 20:33:03 -07:00
Alan Mishchenko ba063a1b55 Correctly handling transfer of additional AIG info when AIG has no internal nodes. 2020-07-13 11:23:11 -07:00
Alan Mishchenko 2ba092e4cc Fixing commands 'putontop' and 'topmost'; adding command 'bottommost'. 2020-07-11 10:14:43 -07:00
Alan Mishchenko 0b734d10e0 Adding new resub code. 2020-07-08 10:56:59 -07:00
Alan Mishchenko 83f54185ef Bug fix in &cec (properly updating the status after the corner case bug fix\). 2020-06-24 10:57:47 -07:00
Alan Mishchenko 322cea8234 Bug fix in &cec (handling the case when the miter is disproved by the all-0 pattern). 2020-06-24 10:20:28 -07:00
Alan Mishchenko 58e3a5caff Compiler error. 2020-06-04 16:48:06 -07:00
Alan Mishchenko a3c6f33a87 Experimental simulation. 2020-06-04 16:24:43 -07:00
Alan Mishchenko 491e4ebfd1 Experimental simulation. 2020-06-03 14:52:42 -07:00
Alan Mishchenko 97c826a6e6 Dumping BDD variable order after 'clp'. 2020-05-18 16:02:57 -07:00
Alan Mishchenko 0ae0744e73 Experimental resubstitution. 2020-05-15 22:11:10 -07:00
Alan Mishchenko a8bd59bd68 Experimental resubstitution. 2020-05-13 10:40:09 -07:00
Alan Mishchenko 9bfccf76c1 Experimental resubstitution. 2020-05-11 17:40:40 -07:00
Alan Mishchenko 1c0ea1022f Adding new utility procedures. 2020-05-11 17:08:00 -07:00
Alan Mishchenko a3ada00d86 Adding new utility procedures. 2020-05-10 19:44:59 -07:00
Alan Mishchenko a7871d24cd Experimental resubstitution. 2020-05-08 13:50:29 -07:00
Alan Mishchenko a918e2dab1 Experimental resubstitution. 2020-05-07 21:44:35 -07:00
Alan Mishchenko 372eb7bdef Experimental resubstitution. 2020-05-07 20:06:39 -07:00
Alan Mishchenko f8b6d615bf Fixing the accidentally broken build. 2020-05-06 12:48:11 -07:00
Alan Mishchenko 234b5d771b Experiment with permutations. 2020-05-03 21:59:33 -07:00
Alan Mishchenko f543d39ec8 Experiment with permutations. 2020-05-03 21:09:02 -07:00
Alan Mishchenko f026e65339 Compiler warnings and errors. 2020-05-03 19:09:02 -07:00
Alan Mishchenko e149cdcd77 Compiler warnings. 2020-05-03 12:15:54 -07:00
Alan Mishchenko 2b58a83ac0 Adding dumping of genlib library in Verilog. 2020-05-03 12:11:48 -07:00
Alan Mishchenko 559f8f5b5e Adding dumping of genlib library in Verilog. 2020-05-03 12:09:55 -07:00
Alan Mishchenko 3e150dd553 Adding dumping of genlib library in Verilog. 2020-05-03 12:07:52 -07:00
Alan Mishchenko d51f798956 Experimental resubstitution. 2020-05-03 10:32:30 -07:00
alanminko 8de27b691b
Merge pull request #57 from whitequark/patch-1
Make use of setrlimit conditional on ABC_NO_RLIMIT
2020-04-30 14:03:26 -07:00
alanminko fb8d13a1c5
Merge pull request #65 from FPGeh/fix_seq_synth
Gia_ManDupPermFlop to behave as Gia_ManDupPerm
2020-04-30 14:01:08 -07:00
whitequark 8afd927d60 Make use of setrlimit conditional on ABC_NO_RLIMIT.
This is useful for POSIX-like platforms that do not have rlimit,
such as WASI.
2020-04-30 02:17:03 +00:00
Alan Mishchenko 5f16cd94d6 Adding new API to MiniAIG. 2020-04-29 15:13:36 -07:00
Alan Mishchenko f030a2a5e2 Adding new API to MiniAIG. 2020-04-29 14:41:57 -07:00
Alan Mishchenko cf1fdc82e4 Bug fix in 'resub' to enable additional divisors, by Siang-Yun Lee. 2020-04-27 18:52:19 -07:00
Eddie Hung f2316ab7c8 Gia_ManDupPermFlop to behave as Gia_ManDupPerm
Fixes sequential synthesis (e.g. &scl) for multiple domains
2020-04-27 15:09:04 -07:00
Alan Mishchenko ea1fbfc971 New AIG restructuring feature. 2020-04-23 15:33:49 -07:00
Alan Mishchenko 978b5db039 Fix a bug in comb loop detection. 2020-04-22 16:49:21 -07:00
Alan Mishchenko 94a2cffefe Improving simulation patterns by local search. 2020-04-17 18:58:21 -07:00
Alan Mishchenko d0e316df5b Improving simulation patterns by local search. 2020-04-17 18:56:12 -07:00
Alan Mishchenko 5f163c0152 Fixing broken build and compiler warnings. 2020-04-17 10:32:38 -07:00
Alan Mishchenko 61a88f164c Fixing broken build and compiler warnings. 2020-04-17 10:16:26 -07:00
Alan Mishchenko 203a7d6ad8 Fixing broken build and compiler warnings. 2020-04-17 10:14:44 -07:00
Alan Mishchenko 92abe5cb87 Removing debug stop. 2020-04-17 09:55:54 -07:00
Alan Mishchenko fbf70c5fbb Memory leak. 2020-04-17 09:54:17 -07:00
Alan Mishchenko d7dfd06ca1 Adding check for comb loops in NDR. 2020-04-17 09:53:23 -07:00
Alan Mishchenko 423d929d5a QBF-based code generation (extending beyond 32 bits). 2020-04-13 17:02:22 -07:00
Alan Mishchenko de82737e26 QBF-based code generation. 2020-04-12 11:56:31 -07:00
Alan Mishchenko 34ae42495b QBF-based code generation. 2020-04-12 11:52:01 -07:00
Alan Mishchenko f79809050a Procedures to explore structural support of an AIG. 2020-04-10 17:44:15 -07:00
Alan Mishchenko 8eebe633d3 Various changes. 2020-04-10 12:43:01 -07:00
Alan Mishchenko 747c6a6da5 Various changes. 2020-04-10 12:40:04 -07:00
Alan Mishchenko 6e2e054509 Debugging a combo loop in NDR. 2020-04-09 10:14:40 -07:00
Alan Mishchenko a2d33837bc Adding option to &saveaig to compare AIGs by node count. 2020-04-09 09:51:46 -07:00
Alan Mishchenko dab716878f Various changes. 2020-04-08 21:11:09 -07:00
Alan Mishchenko 5d580c05de Adding option to &saveaig to compare AIGs by node count. 2020-04-07 13:14:31 -07:00
Alan Mishchenko b661fdeee7 Adding option to &saveaig to compare AIGs by node count. 2020-04-07 13:12:46 -07:00
Alan Mishchenko 2dfadb9607 Corner-case bug fix in SAT-based sim info generation. 2020-04-07 13:04:02 -07:00
Alan Mishchenko 71fd9165e3 Correctly updating the failed output when recording the CEX in bmc3 -a. 2020-04-03 23:35:47 -07:00
Alan Mishchenko 5a20a27c62 Extend ISOP to return the truth table. 2020-04-02 18:29:39 -07:00
Alan Mishchenko 65dce2fa80 Corner-case bug in MiniLUT computation. 2020-04-02 17:52:43 -07:00
Alan Mishchenko 3f758f20e8 Updating parameter in 'dump_equiv'. 2020-04-02 15:43:43 -07:00
Alan Mishchenko 1b83b4b273 Various changes. 2020-03-29 20:32:06 -07:00
Alan Mishchenko 8654192586 Various changes. 2020-03-28 18:45:48 -07:00
Alan Mishchenko a277d450bf Experiments with simulation-based engines. 2020-03-25 12:17:12 -07:00
Alan Mishchenko c7bc6b6329 Experiments with simulation-based engines. 2020-03-22 19:39:00 -07:00
Alan Mishchenko a4518e6f83 Various changes. 2020-03-21 19:03:41 -07:00
Alan Mishchenko fb6e4ee290 Various changes. 2020-03-21 14:02:54 -07:00
Alan Mishchenko 6a6ffed8c5 Various changes. 2020-03-18 22:34:08 -07:00
Alan Mishchenko e72438b2d3 Downgrading random number generator to be not inlined. 2020-03-18 19:03:20 -07:00
Alan Mishchenko f8b1be8bbf Extending TT-based ISOP to handle ISFs. 2020-03-18 19:01:45 -07:00