Commit Graph

3762 Commits

Author SHA1 Message Date
Alan Mishchenko ab6a87a4db Delay-oriented performance improvement in &dch (make it conditional). 2017-01-09 11:35:13 +07:00
Alan Mishchenko 902377a45d Delay-oriented performance improvement in &dch. 2017-01-09 11:16:28 +07:00
Alan Mishchenko 9514c327e3 Bug fix in delay-opt framework. 2017-01-09 11:04:48 +07:00
Alan Mishchenko feb57982a9 Change suggested by Udi Finkelstein. 2017-01-09 10:46:29 +07:00
Alan Mishchenko 8ad3d6bec8 Bug fixes by Clifford Wolf. 2017-01-08 03:10:42 +07:00
Alan Mishchenko a281384731 Bug fix in delay-opt framework. 2017-01-07 14:42:47 +07:00
Alan Mishchenko 3dd2325aa8 Adding an option to not add buffers to decouple COs driven by the same internal node. 2017-01-07 09:51:38 +07:00
Alan Mishchenko 460167ec74 Compiler warnings. 2017-01-07 08:57:08 +07:00
Alan Mishchenko 5c9983d089 Dealing wit COs driven by inverters in MiniLUT. 2017-01-06 12:47:57 +07:00
Alan Mishchenko a2fcd0710d Creating file name from design name for PDR invariant. 2017-01-06 11:52:00 +07:00
Alan Mishchenko e9a7ad68c4 Updates to delay optimization project. 2017-01-05 13:23:27 +07:00
Alan Mishchenko 58622ed032 Adding two external APIs. 2017-01-05 12:53:15 +07:00
Alan Mishchenko 378bb41646 Updates to delay optimization project. 2017-01-02 19:18:55 +07:00
Alan Mishchenko 51e3a7c277 Updates to delay optimization project. 2017-01-02 18:43:41 +07:00
Alan Mishchenko 9be69dca36 Updates to delay optimization project. 2017-01-02 18:03:33 +07:00
Alan Mishchenko 8b898f85e6 Updates to delay optimization project. 2017-01-02 17:18:08 +07:00
Alan Mishchenko daf310cd4a Updates to delay optimization project. 2017-01-02 17:15:00 +07:00
Alan Mishchenko 74c8d35f33 Updates to delay optimization project. 2017-01-02 16:29:10 +07:00
Alan Mishchenko 6e1df46cd3 Updates to delay optimization project. 2017-01-01 20:49:36 +07:00
Alan Mishchenko d948f7259a Updates to delay optimization project. 2017-01-01 20:48:21 +07:00
Alan Mishchenko 26eb3f3684 Updates to delay optimization project. 2017-01-01 19:48:46 +07:00
Alan Mishchenko 385cb73d32 Updates to delay optimization project. 2017-01-01 19:47:30 +07:00
Alan Mishchenko 4b20003e0c Updates to delay optimization project. 2017-01-01 11:04:28 +07:00
Alan Mishchenko 1fef441a0d Updates to delay optimization project. 2017-01-01 11:01:47 +07:00
Alan Mishchenko 278c00242f Compiler warnings. 2017-01-01 00:33:06 +07:00
Alan Mishchenko 39f3225995 Updates to delay optimization project. 2017-01-01 00:32:19 +07:00
Alan Mishchenko ab8db51f37 Updates to delay optimization project. 2016-12-31 23:10:16 +07:00
Alan Mishchenko 290c70f73e Updates to delay optimization project. 2016-12-31 22:56:30 +07:00
Alan Mishchenko 3f2899d6ea Compiler warnings. 2016-12-31 22:00:26 +07:00
Alan Mishchenko 8eb5d1896a Updates to delay optimization project. 2016-12-31 21:46:25 +07:00
Alan Mishchenko 01924ca118 Updates to delay optimization project. 2016-12-31 20:21:46 +07:00
Alan Mishchenko 54b4692d4b Updates to delay optimization project. 2016-12-29 21:26:02 +07:00
Alan Mishchenko 4488ab83d0 Updates to delay optimization project. 2016-12-29 14:45:16 +07:00
Alan Mishchenko fdd8404bfc Updates to delay optimization project. 2016-12-28 12:34:53 +07:00
Alan Mishchenko 1f45cca621 C++ compatibility fix. 2016-12-28 09:43:28 +07:00
Alan Mishchenko 3581c94fec Updates to delay optimization project. 2016-12-27 21:08:52 +07:00
Alan Mishchenko fcd3133a9f Updates to delay optimization project. 2016-12-27 18:15:05 +07:00
Alan Mishchenko 398c4ec92c Updates to delay optimization project. 2016-12-27 18:08:39 +07:00
Alan Mishchenko ac3216cf23 Updates to delay optimization project. 2016-12-25 15:58:54 +07:00
Alan Mishchenko 7d0648e240 Correcting API names for inputing/outputing MiniLut. 2016-12-23 00:23:17 +07:00
Alan Mishchenko b56a532682 Several changes in arithmetic circuit manipulation. 2016-12-22 17:27:32 +07:00
Alan Mishchenko cf5d4ad07f Converting some errors into warnings. 2016-12-21 15:34:02 +07:00
Bruno Schmitt 123b425052 Fixes to make xSAT compile with old compilers.
Small typos and variables renaming.
2016-12-13 11:29:38 -02:00
Alan Mishchenko cb49c5d006 Bug fix in 'dsat <file.cnf>' when the number of classes in listed incorrectly. 2016-12-13 10:34:17 +08:00
Alan Mishchenko 81af996fee Bug fix in 'dsat <file.cnf>' when the number of classes in listed incorrectly. 2016-12-13 10:02:28 +08:00
Bruno Schmitt 5351ab4b13 xSAT is an experimental SAT Solver based on Glucose v3(see Glucose copyrights below) and ABC C version of
MiniSat (bsat) developed by Niklas Sorensson and modified by Alan Mishchenko. It’s development has reached
sufficient maturity to be committed in ABC, but still in a beta state.

TODO:
* Read compressed CNF files.
* Study the use of floating point for variables and clauses activity.
* Better documentation.
* Improve verbose messages.
* Expose parameters for tuning.
2016-12-12 16:20:38 -02:00
Alan Mishchenko cd92b1fea3 Improvements to GIA visualization. 2016-12-08 10:39:11 -08:00
Alan Mishchenko 211db8bf28 Improvements to GIA visualization. 2016-12-08 10:37:36 -08:00
Alan Mishchenko 77ef610919 Adding support for minimalistic representation of LUT mapping. 2016-12-05 21:18:51 -08:00
Alan Mishchenko d9fdd10960 Bug fix in Liberty parser. 2016-12-05 19:54:17 -08:00
Alan Mishchenko 3169bd96b7 Compiler warnings. 2016-12-05 17:48:21 -08:00
Alan Mishchenko 6a351c4dc0 Adding support for minimalistic representation of LUT mapping. 2016-12-05 17:45:15 -08:00
Alan Mishchenko 8ba6071a76 New SAT-based optimization package. 2016-12-04 21:59:10 -08:00
Alan Mishchenko 91aab10757 Analysis of arithmetic logic cones. 2016-12-04 13:05:51 -08:00
Alan Mishchenko c88a2421b4 New SAT-based optimization package. 2016-12-03 19:58:12 -08:00
Alan Mishchenko 1bf289c774 Changes to arithmetic logic detection. 2016-12-02 21:12:57 -08:00
Alan Mishchenko 2ff522df45 New SAT-based optimization package. 2016-11-30 20:58:53 -08:00
Alan Mishchenko 3b5527b620 New SAT-based optimization package. 2016-11-30 20:56:43 -08:00
Alan Mishchenko b3514ee7e0 Commenting out bailout in 'print_cex' when CEX has latches initialized to 1. 2016-11-30 12:07:08 -08:00
Alan Mishchenko 329cee4981 Small changes in handling arithmetic logic. 2016-11-30 11:30:38 -08:00
Alan Mishchenko 5d61e53c7a New SAT-based optimization package. 2016-11-28 15:50:15 -08:00
Alan Mishchenko 53adc97675 New SAT-based optimization package. 2016-11-27 11:56:40 -08:00
Alan Mishchenko de71ef44cd New command to profile arithmetic logic cones. 2016-11-26 17:06:54 -08:00
Alan Mishchenko 6b55bf0205 New SAT-based optimization package. 2016-11-26 14:28:12 -08:00
Alan Mishchenko 64bdbe1a74 Adding switch '-c' to generate only stuck-at faults in 'faultclasses -g'. 2016-11-22 20:09:25 -08:00
Alan Mishchenko b483c97fdd Minor bug fixes. 2016-11-21 11:52:50 -08:00
Alan Mishchenko a703052bc5 New SAT-based optimization package. 2016-11-19 18:15:06 -08:00
Alan Mishchenko 58476ea738 New SAT-based optimization package. 2016-11-17 17:32:34 -08:00
Alan Mishchenko 585f3a6407 New SAT-based optimization package. 2016-11-17 12:16:14 -08:00
Alan Mishchenko 254ac2df8f Fixed several compiler warnings. 2016-11-17 12:12:19 -08:00
Vinicius Callegaro 9f99f08d4c Merged alanmi/abc into default 2016-11-16 20:57:39 -02:00
Alan Mishchenko 71a52ae9e5 Renaming command 'detect' to be 'faultclasses'. 2016-11-10 09:38:07 -08:00
Alan Mishchenko 460a5700a5 Compiler warnings. 2016-11-09 21:19:52 -08:00
Alan Mishchenko c6afb9db63 Equivalent fault detection code. 2016-11-09 21:17:44 -08:00
Vinicius Callegaro faf8d6ecea Disjoint-support decomposition with cofactoring and boolean difference analysis
from V. Callegaro, F. S. Marranghello, M. G. A. Martins, R. P. Ribas and A. I. Reis,
entitled "Bottom-up disjoint-support decomposition based on cofactor and boolean difference analysis" presented in ICCD'15.
2016-11-08 17:00:35 -02:00
Alan Mishchenko 6cd66183e4 Isolating CBA types into a separate header. 2016-11-08 06:13:47 -08:00
Alan Mishchenko 85abb6bde7 Isolating CBA types into a separate header. 2016-11-07 09:39:29 -08:00
Mathias Soeken 16109b11f6 Exact synthesis. 2016-10-29 09:34:34 +02:00
Mathias Soeken bab90943dc Exact synthesis. 2016-10-26 17:54:00 +02:00
Mathias Soeken 0a87e72c6d Exact synthesis. 2016-10-26 13:36:29 +02:00
Mathias Soeken a25faed14c Merged alanmi/abc into default 2016-10-26 13:31:28 +02:00
Alan Mishchenko 76c4d22229 Parser for JSON format. 2016-10-25 17:17:37 -07:00
Mathias Soeken f47a4377e4 Exact synthesis. 2016-10-25 16:28:02 +02:00
Alan Mishchenko befb73079a Code for profiling arithmetic circuits. 2016-10-21 17:51:53 -07:00
Alan Mishchenko 9c7741efd9 Code for profiling arithmetic circuits. 2016-10-21 17:50:32 -07:00
Alan Mishchenko f5069d6675 Code for profiling arithmetic circuits. 2016-10-21 17:50:05 -07:00
Alan Mishchenko d22cb3f451 Improving robustness of &b. 2016-10-15 18:01:53 -07:00
Alan Mishchenko 710f5cd4bc Memory leak in scl package. 2016-10-12 11:59:32 -07:00
Alan Mishchenko 40375f8b93 Updates to arithmetic verification. 2016-10-09 19:38:30 -07:00
Alan Mishchenko 50e324ce11 Adding switch &mfs -b to preserve white boxes during optimization. 2016-10-07 18:05:20 -07:00
Bruno Schmitt 659d288967 Small FXCH bug fix. 2016-10-07 16:57:54 -03:00
Alan Mishchenko eb65c01888 Change Verilog reader to take a string rather than file name. 2016-10-06 22:04:11 -07:00
Alan Mishchenko 80327537bb Long standing bug fix in &mfs. 2016-10-06 18:30:09 -07:00
Alan Mishchenko c01f5fc4e0 Adding module name when reading SMT-LIB from stdin. 2016-10-02 11:14:34 -07:00
Alan Mishchenko 7f3842e186 Bug fix in SMT parser. 2016-10-02 11:11:10 -07:00
Alan Mishchenko 44550a67fa Bug fix in the SMT parser to address multi-argument operators and large constants. 2016-09-30 19:55:21 -07:00
Alan Mishchenko 50da7c290c Compiler warnings. 2016-09-30 14:40:07 -07:00
Mathias Soeken f5be157583 Merged alanmi/abc into default 2016-09-29 22:10:16 -07:00
Alan Mishchenko 9a35f82d5f Supporting 'define-fun' with an expression rather than a constant. 2016-09-29 18:00:52 -07:00
Alan Mishchenko 4f0f2e09f8 Adding flag 'pdr -e' to output only support variables in the invariant. 2016-09-28 16:27:39 -07:00
Mathias Soeken e601df9dea Some fixes in BMS. 2016-09-14 10:06:00 +02:00
Mathias Soeken bb8e1808e6 New search strategy in BMS. 2016-09-14 09:53:06 +02:00
Mathias Soeken 452303b77a Updates to BMS. 2016-09-10 14:23:43 +02:00
Mathias Soeken b44c519620 Fix in BMS. 2016-09-09 15:39:33 +02:00
Mathias Soeken 2f2ed1bce1 Fixes in BMS. 2016-09-09 12:40:55 +02:00
Mathias Soeken 5b2472d4b7 Missing case in BMS. 2016-09-09 12:08:52 +02:00
Mathias Soeken 6d7f2c4d54 Improvements to BMS. 2016-09-09 11:51:53 +02:00
Mathias Soeken b11406c566 Merged alanmi/abc into default 2016-09-09 11:49:43 +02:00
Alan Mishchenko ca93730781 Experimental code for polynomial construction. 2016-09-05 23:54:44 +03:00
Alan Mishchenko 198fe99416 Experimental code for polynomial construction. 2016-09-05 23:47:58 +03:00
Alan Mishchenko 478066f7a5 Experimental code for polynomial construction. 2016-09-03 18:12:02 +03:00
Mathias Soeken a46af9de7b Improvements to BMS. 2016-08-29 22:40:30 +02:00
Mathias Soeken 7e3032c0dd Improvements to BMS. 2016-08-29 13:37:29 +02:00
Mathias Soeken 2d71abd581 Symmetric variables in BMS. 2016-08-28 13:44:59 +02:00
Mathias Soeken 610fcb2712 Improvements to BMS. 2016-08-26 09:45:52 +02:00
Mathias Soeken e5636522bf BMS fixes and start gates parameter. 2016-08-25 10:56:59 +02:00
Mathias Soeken 360e85fce2 Fix errors in BMS. 2016-08-24 17:08:06 +02:00
Mathias Soeken fcf3335041 Improvements to BMS. 2016-08-24 15:03:52 +02:00
Mathias Soeken ea3836ea5d Improvements to BMS. 2016-08-24 09:29:02 +02:00
Mathias Soeken db1daf7b8a Merged alanmi/abc into default 2016-08-24 09:28:21 +02:00
Mathias Soeken 30b3a7ab91 BMS: Store I/O, better implications to stop search. 2016-08-22 10:57:38 +02:00
Mathias Soeken 6e7fb2ea52 BMS: restart solver instead of re-allocating it. 2016-08-21 19:28:55 +02:00
Mathias Soeken 8ec44da3fb More logging in exact synthesis. 2016-08-21 18:13:57 +02:00
Mathias Soeken 9bb5a2dd0d Merged alanmi/abc into default 2016-08-21 18:12:05 +02:00
Mathias Soeken 9ac7b05e2a Fix compile errors when using namespace with clang. 2016-08-19 13:24:29 +02:00
Alan Mishchenko 6ec77b5d95 Merged in boschmitt/abc (pull request #39)
Small bug fix in FXCH.
2016-08-19 06:03:47 +09:00
Bruno Schmitt 621fbcbd4d Small bug fix in FXCH. 2016-08-18 16:36:55 -03:00
Mathias Soeken 792e7e662d Merge with parent. 2016-08-18 10:32:17 +02:00
Alan Mishchenko 118eea8465 Changes to report quantum cost in Exorcism. 2016-08-17 21:26:16 +09:00
Mathias Soeken 433b9fe722 Missing code for CLI integration. 2016-08-16 18:55:20 +02:00
Mathias Soeken 85c751fbb8 Functions to compute T-count. 2016-08-16 18:46:45 +02:00
Mathias Soeken 2f149364eb Provide number of max cubes as parameter. 2016-08-16 18:33:53 +02:00
Mathias Soeken 0d1786d829 Don't output if not verbose. 2016-08-16 18:32:42 +02:00
Mathias Soeken 821029038d Used wrong truth table function in exact synthesis. 2016-08-16 08:20:28 +02:00
Mathias Soeken 077f8bdbb8 Merged alanmi/abc into default 2016-08-16 08:16:30 +02:00
Alan Mishchenko b83c6aaf97 Fix compiler problems by #including the header from FXCH package. 2016-08-16 11:20:43 +09:00
Mathias Soeken baca7e477f Fixes to exact synthesis. 2016-08-15 16:20:30 +02:00
Mathias Soeken 68f29c527e Merged alanmi/abc into default 2016-08-15 10:33:54 +02:00
Alan Mishchenko 9dc2f48858 Changes to report quantum cost in Exorcism. 2016-08-15 08:04:36 +08:00
Alan Mishchenko 21435aa6e3 Bug fix in 'edge -m'. 2016-08-10 14:18:39 -07:00
Mathias Soeken 24af634508 Exact synthesis (revert one change). 2016-08-09 10:55:40 +02:00
Mathias Soeken 4b2881bce6 Merge with parent. 2016-08-09 10:54:26 +02:00
Mathias Soeken ca8256fb4d Exact synthesis. 2016-08-09 10:53:58 +02:00
Mathias Soeken 97d5d5d2f6 Merged alanmi/abc into default 2016-08-09 10:33:09 +02:00
Alan Mishchenko 693b587c5c Adding truth table occurrence counters for 'if -c'. 2016-08-08 18:20:05 -07:00
Alan Mishchenko 713976f2cf Enabled progress bar in the 'if' mapper (warning). 2016-08-08 12:38:21 -07:00
Alan Mishchenko a819e33c6f Enabled delay computation for the cut output using cut inputs. 2016-08-08 12:36:10 -07:00
Alan Mishchenko 473012aaf0 Enabled progress bar in the 'if' mapper. 2016-08-08 11:56:33 -07:00
Mathias Soeken 80551de3c5 Small change in exact synthesis. 2016-08-08 18:52:11 +02:00
Mathias Soeken 7cc0094a0e Resource constraints in exact synthesis, arrival times in exact command. 2016-08-08 18:50:19 +02:00