Commit Graph

4172 Commits

Author SHA1 Message Date
Alan Mishchenko f5240276cb Updates to arithmetic verification. 2017-01-13 15:25:35 +07:00
Alan Mishchenko d52dafa6c2 Updates to arithmetic verification. 2017-01-12 16:12:48 +07:00
Alan Mishchenko 55b6b4bdab Updates to arithmetic verification. 2017-01-11 16:08:23 +07:00
Alan Mishchenko 8b8b410af2 Changing file naming in 'show' and '&show'. 2017-01-11 13:44:27 +07:00
Alan Mishchenko 89d08cfd06 Updates to arithmetic verification. 2017-01-11 13:36:54 +07:00
Alan Mishchenko 4bfb97d3e1 Updates to arithmetic verification. 2017-01-10 19:19:02 +07:00
Alan Mishchenko 5fbc0cd7f0 Updates to arithmetic verification. 2017-01-10 16:58:24 +07:00
Alan Mishchenko fbdf28e4c9 Updated to arithmetic verification. 2017-01-09 19:50:05 +07:00
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
Mathias Soeken 5af44731bf Merged alanmi/abc into default 2016-12-07 10:08:44 +01: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 f9b7e92904 Exact synthesis. 2016-11-02 19:27:12 +01: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
Mathias Soeken 95d2ab9c17 Improvements in exact synthesis. 2016-08-08 12:59:21 +02:00
Mathias Soeken 5b9e520caa Bugfixes in exact synthesis. 2016-08-08 10:59:29 +02:00
Alan Mishchenko d3ec4493b2 Windows complier errors. 2016-08-06 00:24:07 -07:00
Alan Mishchenko 2ded05127a Merged in petkovska/abc-pullreq/hier-npn_fast-exact (pull request #29)
Exact hierarchical NPN classification
2016-08-06 00:20:47 -07:00
Alan Mishchenko f03512bad1 Unsuccessful attempt to improve quality of factoring by limiting distance-1 merge during preprocessing. 2016-08-06 00:17:18 -07:00
Alan Mishchenko 9f02d23832 Fix some warnings. 2016-08-05 20:47:53 -07:00
Alan Mishchenko 92023a2925 Fix some warnings. 2016-08-05 20:45:56 -07:00
Alan Mishchenko c42aeb81a4 Handling constant and buffer cut in exact synthesis. 2016-08-05 20:43:45 -07:00
Alan Mishchenko 640100954a Updates to arithmetic verification. 2016-08-05 20:34:44 -07:00
Alan Mishchenko 2ad79b94a5 Merged in msoeken/abc-exact (pull request #35)
Updates to delay-estimation API with exact synthesis
2016-08-05 11:11:04 -07:00
Alan Mishchenko 2792979594 Updates to arithmetic verification. 2016-08-05 11:08:12 -07:00
Mathias Soeken 46a1c81603 Read and write to exact store. 2016-08-04 18:51:35 +02:00
Mathias Soeken 11ec43181c Exact synthesis minimization. 2016-08-04 14:22:31 +02:00
Mathias Soeken 718266f64a Update from parent. 2016-08-03 15:44:46 +02:00
Mathias Soeken 333bd87353 Free memory. 2016-08-03 15:23:34 +02:00
Alan Mishchenko af20a8177b Bug in 'dump_equiv -n'. 2016-08-02 12:20:19 -07:00
Mathias Soeken 33c6d01291 Tests and bug fixes for exact store manager. 2016-08-02 13:24:21 +02:00
Mathias Soeken 1f47fb7151 Dynamic number of variables in exact store manager. 2016-08-02 11:25:16 +02:00
Mathias Soeken 160c697f32 Merged alanmi/abc into default 2016-08-02 11:21:51 +02:00
Alan Mishchenko 8bc4894ccb Compiler errors on Windows. 2016-08-01 13:21:58 -07:00
Bruno Schmitt f59788f611 Several updates to FXCH including:
- Cube Grouping
- New sub-cube hash table
2016-08-01 13:13:46 -03:00
Mathias Soeken 8246af894d Fixes in DelayCost and BuildNode. 2016-08-01 08:37:14 +02:00
Mathias Soeken a7b244c5a9 Merged alanmi/abc into default 2016-08-01 08:29:37 +02:00
Alan Mishchenko fd8eb8c855 Adding one argument to the delay-estimation API used for exact synthesis. 2016-07-31 13:31:57 -07:00
Mathias Soeken a4f8e601b9 Create and cleanup store, revert arrival times. 2016-07-31 13:08:14 +02:00
Mathias Soeken fdc9b180f8 Create network from solution in store. 2016-07-31 12:47:09 +02:00
Mathias Soeken 19e78a35d4 Store for exact results. 2016-07-31 12:24:02 +02:00
Mathias Soeken a6352369a5 Depth optimal synthesis. 2016-07-30 15:21:57 +02:00
Mathias Soeken 59077dab9f Implementation of Abc_ExactDelayCost. 2016-07-30 15:01:59 +02:00
Mathias Soeken 3641a3f18b Extract delay information into solution. 2016-07-30 14:40:12 +02:00
Mathias Soeken 90a6c38329 Check whether exact network can be found. 2016-07-30 14:39:11 +02:00
Mathias Soeken 6d0214edc9 Extract solution into intermediate format. 2016-07-30 13:34:39 +02:00
Alan Mishchenko 0b01f5ec27 Infrastructure for using the results of exact SAT-based synthesis during mapping. 2016-07-29 16:46:28 -07:00
Alan Mishchenko cf91699e05 Infrastructure for using the results of exact SAT-based synthesis during mapping. 2016-07-29 16:34:47 -07:00
Alan Mishchenko 71a051f8cd Compiler warnings. 2016-07-29 16:09:34 -07:00
Alan Mishchenko fb33d69db8 Infrastructure for using the results of exact SAT-based synthesis during mapping. 2016-07-29 16:03:42 -07:00
Alan Mishchenko 02d56ea04c Merged in boschmitt/abc (pull request #31)
Make FX able to handle SCC
2016-07-28 11:48:34 -07:00
Mathias Soeken 80fdd58c28 Several updates to exact synthesis. 2016-07-28 20:37:09 +02:00
Alan Mishchenko 0f1624e5d2 The same bug fix in 'scorr -c' (signal correspondence with constraints). 2016-07-28 10:49:59 -07:00
Alan Mishchenko 1bb918167e Serious bug fix in 'scorr -F <num>' with <num> > 1. 2016-07-28 10:41:55 -07:00
Bruno Schmitt daadd43b64 Merged alanmi/abc into default 2016-07-27 23:32:15 -03:00
Bruno Schmitt dcd37b6a25 Make FX able to handle SCC and remove its SOP preprocessing.
Some other small changes.
2016-07-27 23:30:46 -03:00
Alan Mishchenko 9895f30d95 Extending command 'dump_equv' to match inputs by name. 2016-07-27 18:09:52 -07:00
Alan Mishchenko a6db8bc157 Extending command 'dump_equv' to match inputs by name. 2016-07-27 18:07:51 -07:00
Bruno Schmitt 5604657bdb Make fx able to handle degenerate divisors:
- Constant-1 (a + !a)
	- Divisors "a + !ab" and "a!b + b" are equal to "a + b"
Change the way divisors are printed.
Removal of dead code from fx.
2016-07-26 23:53:34 -03:00
Alan Mishchenko 42309cacaa Extending command 'exact' to handle delay constraints. 2016-07-23 13:13:07 -07:00
Alan Mishchenko 4c6444e34a Bug fix in 'dump_equiv'. 2016-07-22 13:36:22 -07:00
Alan Mishchenko 3c2c19ce51 Adding new command 'dump_equiv'. 2016-07-21 16:47:30 -07:00
Alan Mishchenko bfe7333f41 Adding new command 'dump_equiv'. 2016-07-21 16:40:56 -07:00
Alan Mishchenko aa3d8a65b4 Fix in reading initial state for edge-detection. 2016-07-20 12:55:50 -07:00
Alan Mishchenko 2ba46d52f0 Extension in the detection code. 2016-07-19 20:44:02 -07:00
Alan Mishchenko 190dc37600 Fix in reading initial state for edge-detection. 2016-07-19 13:26:24 -07:00
Alan Mishchenko 0f59f00c74 Tuning &blut implementation. 2016-07-18 20:52:24 -07:00
Alan Mishchenko 2f86667326 Adding output range support to %blast. 2016-07-18 08:34:05 -07:00
Alan Mishchenko 32d1516c64 Adding command 'exact' developed by Mathias Soeken to implement Knuth's exact synthesis algorithm. 2016-07-16 07:51:58 -07:00
Alan Mishchenko abdf39711f Several corner-case bugs in %read, &cec, and st. 2016-07-16 07:28:20 -07:00
Alan Mishchenko 1343b8a80c Fixes and adjustments for the edge computation flow. 2016-07-15 19:56:34 -07:00
Alan Mishchenko 3f8b5cd890 Small fixes and improvements in reporting node counts. 2016-07-15 19:11:17 -07:00
Alan Mishchenko 8bfe8d5210 Adding a debug way to print cuts used in the CNF-generator. 2016-07-13 10:35:02 -07:00
Alan Mishchenko 42ae280089 Removing verbose output in &cec and &syn4. 2016-07-13 09:00:39 -07:00
Alan Mishchenko 3b76bc2792 Bug-fix in SMT-LIB parser (incorrect handling of arithmetic right-shift). 2016-07-12 13:34:06 -07:00
Alan Mishchenko 4ffc14fd56 Small change to make &if not abort the scripts. 2016-07-04 23:54:07 -07:00
Alan Mishchenko 3ad4be259e Bit-blasting Booth multipliers. 2016-07-04 20:41:50 -07:00
Alan Mishchenko f3ecc3ffaa Experiments with edge-based mapping (bug fix). 2016-07-02 12:14:18 -07:00
Alan Mishchenko 84a277b491 Bug fix in blasting shifters with large bit-width. 2016-06-29 15:37:37 -07:00
Alan Mishchenko d02f9dd4df Bug fix in blasting shifters with large bit-width. 2016-06-29 15:36:31 -07:00
Alan Mishchenko 7dcba3e27b Experiments with edge-based mapping. 2016-06-29 15:29:24 -07:00
Alan Mishchenko 688f0269db Bug fix in blasting shifters with large bit-width. 2016-06-28 09:53:09 -07:00
Ana Petkovska 8e5af90c41 Return the class representative of each function. 2016-06-18 18:51:38 +02:00
Ana Petkovska 6842b8cdbc Group based exact NPN classification. 2016-06-18 18:42:57 +02:00
Alan Mishchenko a309569390 New multi-output PLA reader and preprocessor (read_plamo) (updated dist-1 merge). 2016-06-17 22:30:54 -07:00
Alan Mishchenko 720d025234 Complier fix. 2016-06-17 21:54:50 -07:00
Alan Mishchenko 22406e7101 Merged in boschmitt/abc (pull request #28)
Handling D1C and SCC in FXCH
2016-06-17 21:53:04 -07:00
Alan Mishchenko c912875261 New command 'phase_map'. 2016-06-17 20:21:39 -07:00
Alan Mishchenko 92a448e6ab Experiments with edge-based mapping. 2016-06-17 19:57:30 -07:00
Bruno Schmitt 85428a60cc Enables FXCH to handle Distance-1 cubes (D1C) and Single Cube Containment (SCC) as by product of extraction.
D1C: Whenever they appear a constant divisor (x! + x)  will be created and handle as any other divisor.
SCC: Will be taken care of as soon as they appear.
2016-06-17 17:24:58 -03:00
Alan Mishchenko 3c3a770a17 New multi-output PLA reader and preprocessor (read_plamo) (added dist-1 merge). 2016-06-16 21:09:39 -07:00
Alan Mishchenko e06c04a3ef Change to BENCH reader to read DFF with four inputs. 2016-06-16 16:48:45 -07:00
Alan Mishchenko 0923d543ad Adding a switch 'retime -o' to use old flop naming conventions. 2016-06-16 16:13:13 -07:00
Alan Mishchenko ada21a655f New multi-output PLA reader and preprocessor (read_plamo). 2016-06-16 15:22:03 -07:00
Alan Mishchenko e1b51d1863 Experiments with edge-based mapping. 2016-06-15 18:47:10 -07:00
Alan Mishchenko db43d6fbd8 Adding switch -P <num> to command 'cover'. 2016-06-14 20:43:50 -07:00
Alan Mishchenko 0a1b6f8fcc Detecting properties of internal nodes. 2016-06-14 15:37:59 -07:00
Alan Mishchenko a18da5c878 Detecting properties of internal nodes. 2016-06-12 19:07:46 -07:00
Alan Mishchenko 699dd39035 Support bit-blasting of shifts with more than 32 bits (fix). 2016-06-08 22:25:12 -05:00
Alan Mishchenko cad3d8d419 Support bit-blasting of shifts with more than 32 bits. 2016-06-07 15:20:38 -07:00
Alan Mishchenko 820a48b2cb Changes to Wlc to accommodate signed signals in SMT-LIB. 2016-06-07 15:05:21 -07:00
Alan Mishchenko 4efbd7b3ca Detecting properties of internal nodes. 2016-06-07 14:32:38 -07:00
Alan Mishchenko 998aeff15e Improvement to CNF encoding of cardinality constraints proposed by Mathias Soaken. 2016-06-07 00:22:32 -07:00
Alan Mishchenko 31b2e8bebd Switch 'fx -x' to use only canonical divisors in 'fx'. 2016-06-06 19:31:56 -07:00
Alan Mishchenko 00242f2fb2 New profiling features for word-level optimizations. 2016-06-04 17:31:15 -07:00
Alan Mishchenko 93c785e802 Small changes for today's experiments. 2016-06-03 13:22:24 -07:00
Alan Mishchenko e33d6e8d9d Small changes to compile on Windows. 2016-06-03 10:12:00 -07:00
Bruno Schmitt fe6a647f37 Merged alanmi/abc into default 2016-06-02 20:30:04 -03:00
Bruno Schmitt b6ab087952 Removing the memory saving mode, it is no longer necessary. 2016-06-02 17:26:12 -03:00
Bruno Schmitt 4937fb09ed Minimizing memory usage. The implementation was using twice as much memory as necessary. 2016-06-02 17:23:35 -03:00
Alan Mishchenko e1b32ee756 Silencing several messages. 2016-06-01 11:57:29 -07:00
Alan Mishchenko 1d26d58a17 Adding switch 'pdr -o' to control using property output in induction. 2016-05-25 13:47:38 -07:00
Alan Mishchenko 58c81ec097 Improving SMT-LIB parser. 2016-05-23 11:15:37 -07:00
Alan Mishchenko c688d1b158 Improving SMT-LIB parser. 2016-05-23 10:42:53 -07:00
Alan Mishchenko 0f29f0aec9 Improving SMT-LIB parser. 2016-05-21 20:08:05 -07:00
Alan Mishchenko 34c5ac88d4 Improving SMT-LIB parser. 2016-05-20 20:38:43 -07:00
Alan Mishchenko 7b570b6241 Enabling AIGs without structural hashing (&get -c to import logic network). 2016-05-20 18:01:01 -07:00
Alan Mishchenko ce126db5f5 Enabling AIGs without structural hashing. 2016-05-20 16:37:58 -07:00
Alan Mishchenko 3b62ee4575 Enabling AIGs without structural hashing. 2016-05-20 16:23:48 -07:00
Alan Mishchenko 27c44fd644 Switch &miter -y to convert a two-word miter into a dual-output miter. 2016-05-20 14:03:07 -07:00
Alan Mishchenko 555ed0b158 Enabling AIGs without structural hashing. 2016-05-20 13:50:19 -07:00
Alan Mishchenko c6a290ee97 Merged in boschmitt/abc (pull request #26)
Fix the problem of not identifying divisors when its originating cubes had only 2 literals.
2016-05-19 23:34:20 -07:00
Alan Mishchenko 2ded89cca5 Added switch 'bmc3 -r' to disable periodic restarts in the SAT solver. 2016-05-19 22:33:40 -07:00
Alan Mishchenko 2d0a8fb4cb Improving SMT-LIB parser. 2016-05-19 22:07:52 -07:00
Bruno Schmitt fe6bb87e54 Merged alanmi/abc into default 2016-05-19 22:11:14 -03:00
Bruno Schmitt f93fbc2303 Fix the problem of not identifying divisors when its originating cubes had only 2 literals.
With this change, 'empty' sub-cubes (sub-cubes with an ID equal to zero) are inserted  in the 0th bin of the hash table.
2016-05-19 22:10:30 -03:00
Alan Mishchenko 07d074fd88 New feature for area minimization in standard cell mapping. 2016-05-19 15:22:25 -07:00
Baruch Sterin 031015e7f8 fix end of line problem that prevents the cmake build system from working 2016-05-17 15:21:03 -07:00
Alan Mishchenko d7912acfca Bug fix in &demiter. 2016-05-16 17:34:25 -07:00
Alan Mishchenko 7c089a3ac6 Factoring out library preprocessing code in &nf and putting it elsewhere. 2016-05-16 16:50:01 -07:00
Alan Mishchenko 20a2b0a0f2 Added switch 'read_genlib -n' to anonymize Genlib library. 2016-05-16 15:44:54 -07:00
Alan Mishchenko fa111ff81b Experiments with generating sat assignments. 2016-05-15 16:43:10 -07:00
Alan Mishchenko 8a56721494 Experiments with generating sat assignments. 2016-05-15 16:18:23 -07:00
Alan Mishchenko be769ca3e8 Experiments with generating sat assignments. 2016-05-15 14:25:55 -07:00
Alan Mishchenko 0533fc7de9 Experiments with generating sat assignments. 2016-05-15 14:24:38 -07:00
Alan Mishchenko 12688ac9ee Experiments with generating sat assignments. 2016-05-14 23:14:20 -07:00
Alan Mishchenko 4ffbd0b2df Adding switch -r to &dch to prevent combo-loops. 2016-05-13 13:40:08 -07:00
Alan Mishchenko 5b6e5b8178 New command 'expand' to expand SOPs against the offset. 2016-05-12 22:41:20 -07:00
Alan Mishchenko ea7d10d45d Adding 'read_pla -d' to read dc-set along with on-set (useful to derive offset). 2016-05-12 13:59:30 -07:00
Alan Mishchenko 9e4d24aa5d Cosmetic changes after incorporating new code of 'fxch'. 2016-05-11 20:04:58 -07:00
Alan Mishchenko c5befad518 Cosmetic changes after incorporating new code of 'fxch'. 2016-05-11 20:03:13 -07:00
Alan Mishchenko c30819cb05 Cosmetic changes after incorporating new code of 'fxch'. 2016-05-11 19:59:56 -07:00
Bruno Schmitt 3cf495c831 Add a new module which implements the fast extract with cube hashing (fxch) algorithm.
Removes old partial implementation of this algorithm from the "pla" module.
2016-05-11 19:41:31 -03:00
Alan Mishchenko 6e8efec57d Experiments with CEC for arithmetic circuits. 2016-05-11 11:07:34 -07:00
Alan Mishchenko c89f987dc7 Invalidate packing after mapping is updated. 2016-05-09 11:25:26 -07:00
Alan Mishchenko 652b279234 Experiments with CEC for arithmetic circuits. 2016-05-08 19:01:46 -07:00
Alan Mishchenko 4771b598c0 Experiments with CEC for arithmetic circuits. 2016-05-07 19:50:09 -07:00
Alan Mishchenko 236d412255 Experiments with CEC for arithmetic circuits. 2016-05-07 19:47:02 -07:00
Alan Mishchenko 40d90ae69c Small changes. 2016-05-04 13:46:07 -07:00
Alan Mishchenko 21896ba6bc Update to &show to show AIGs with XORs and MUXes (derived by &st -m). 2016-05-04 07:22:13 -07:00
Alan Mishchenko 28cbb280b7 Update to &show to show AIGs with XORs and MUXes (derived by &st -m). 2016-05-04 07:05:43 -07:00
Alan Mishchenko 11f1a249ae Updating GIG parser. 2016-05-01 17:43:50 -07:00
Alan Mishchenko a093091004 Fanout restriction in &edge. 2016-04-30 17:47:23 -07:00
Alan Mishchenko e3e6236663 This code was accidentally deleted from the SAT solver (effectively disabling restarts!) 2016-04-30 10:42:10 -07:00
Alan Mishchenko 2de8f04c0d Suggested bug fix in st__strhash(). 2016-04-30 10:40:54 -07:00
Alan Mishchenko 59f3389c9b Experiments with arithmetic circuits. 2016-04-28 20:54:38 -07:00
Alan Mishchenko 53e8647719 Adding option to rehash AIG after mapping. 2016-04-27 18:33:23 -07:00
Alan Mishchenko e8f961671c Extending &satlut to work for 6-LUTs. 2016-04-27 18:12:41 -07:00
Alan Mishchenko 62f13100d0 Adding missing code to 'dress'. 2016-04-27 17:33:36 -07:00
Alan Mishchenko 53ca51f61a Using seed assignment of edges in &edge. 2016-04-27 16:27:48 -07:00
Alan Mishchenko 6f370462d1 Bug fix in bit-blasting of remainder. 2016-04-26 20:24:46 -07:00
Alan Mishchenko b87554b98a Improved algo for edge computation. 2016-04-24 22:06:03 +03:00
Alan Mishchenko e37ec2aac5 Improved algo for edge computation. 2016-04-24 20:49:05 +03:00
Alan Mishchenko f91f23bed0 Adding new switch 'bdd -s' to translate SOP directly into BDD. 2016-04-24 00:13:07 +03:00
Alan Mishchenko 67bfb4ba09 Improved algo for edge computation. 2016-04-23 15:13:22 +03:00
Alan Mishchenko 1b550cb87b Improved algo for edge computation. 2016-04-22 08:36:05 +03:00
Alan Mishchenko 813b0e5851 Experimental algorithm for edge optimization. 2016-04-13 15:54:14 -07:00
Alan Mishchenko b9e403b46e Bug fix: change in the ordering of the reset flop (should be last, not first). 2016-04-13 09:14:54 -07:00
Alan Mishchenko 89d4ac5029 Adding new implementation of LEXSAT. 2016-04-12 19:44:21 -07:00
Alan Mishchenko 8de7383edd Restructing sat_solver_solve() method for pushing/popping assumptions. 2016-04-12 19:43:15 -07:00
Alan Mishchenko b4bb88ae5d Removing unused feature of the SAT solver (user-guided variable ordering). 2016-04-12 12:04:03 -07:00
Alan Mishchenko 3a553e15ac Removing unused feature of the SAT solver (native support for cardinality constraint). 2016-04-12 11:58:55 -07:00
Alan Mishchenko 847ac96f6e Updates to Exorcism package 2016-04-11 22:55:06 -07:00
Alan Mishchenko 9522aeea19 Updates to Exorcism package 2016-04-11 22:29:37 -07:00
Alan Mishchenko a02be725e9 Updates to Exorcism package 2016-04-11 21:48:54 -07:00
Alan Mishchenko 2d6a6f6654 Added Exorcism package, reading ESOP (read_pla -x file.esop) and deriving AIG (cubes -x; st). 2016-04-11 21:42:00 -07:00
Alan Mishchenko 2d1d315ece Supporting edge information during mapping. 2016-04-11 18:41:18 -07:00
Alan Mishchenko d0a0cf6395 Command &esop to convert AIG into ESOP. 2016-04-09 17:00:46 -07:00
Alan Mishchenko 8b07237bf5 Adding hashing of windows in &satlut. 2016-04-07 20:52:49 -07:00
Alan Mishchenko 3b694a7089 Adding AIG rehashing after LUT mapping in Gia. 2016-04-07 20:03:31 -07:00
Alan Mishchenko 26ec3868f6 Adding AIG rehashing after LUT mapping in Gia. 2016-04-07 19:16:51 -07:00
Alan Mishchenko 887f3c21cc Supporting edges in delay-optimization in &satlut. 2016-04-07 17:15:24 -07:00
Alan Mishchenko f05986f7b3 Supporting edges in delay-optimization in &satlut. 2016-04-07 15:54:50 -07:00
Alan Mishchenko 95ab749087 Supporting edges in delay-optimization in &satlut. 2016-04-07 13:20:41 -07:00
Alan Mishchenko b31b6fec77 Supporting edge information during mapping. 2016-04-06 15:43:03 -07:00
Alan Mishchenko ee17cbbf4b Supporting negative and reverse ranges of word-level variables in Wlc. 2016-04-04 18:09:41 -07:00
Alan Mishchenko ac7a799076 Improvements to delay-optimization in &satlut. 2016-04-04 14:27:14 -07:00
Alan Mishchenko 720082753f Improvements to delay-optimization in &satlut. 2016-04-04 12:51:05 -07:00
Alan Mishchenko 4a954c1b23 Improvements to delay-optimization in &satlut. 2016-04-04 08:43:22 -07:00
Alan Mishchenko e0ad9de7ea Improvements to delay-optimization in &satlut. 2016-04-03 16:44:13 -07:00
Alan Mishchenko d53161a7e1 Enabling native Gia visualization in &show. 2016-04-03 15:42:08 -07:00
Alan Mishchenko 9074d19d69 Allowing Cba manager to be derived from another Cba manager. 2016-04-02 16:04:15 -07:00
Alan Mishchenko 7724dfcca2 Windowing for technology mapping. 2016-03-30 21:51:50 -07:00
Alan Mishchenko 31430043c2 Windowing for technology mapping. 2016-03-29 20:16:30 -07:00
Alan Mishchenko e026f05ae3 Bug fix in truth table reading for funcs with less than 6 vars. 2016-03-28 10:18:17 -07:00
Alan Mishchenko 81b70c4d20 Corner-case bug fix in 'satclp' with conflict limit. 2016-03-25 13:51:05 -07:00
Alan Mishchenko 72ffddb0ad Sorting multiplier inputs based on the number of constant bits. 2016-03-24 17:45:51 -07:00
Alan Mishchenko ecb2780a72 Procedure to check inductive invariant for Gia package. 2016-03-21 15:47:29 -07:00
Alan Mishchenko a4d6e2f8c9 Typo in operator in Wlc_Ntk_t. 2016-03-18 20:47:21 -07:00
Alan Mishchenko 65ee47c515 Supporting bit-wise XNOR operator in Wlc_Ntk_t. 2016-03-18 13:58:22 +08:00
Alan Mishchenko b2ad140adb Supporting complemented reduction operators. 2016-03-11 15:12:52 +09:00
Alan Mishchenko 22a5ab19c8 Adding API to convert Genlib into a simple Liberty. 2016-03-11 00:15:13 +09:00
Alan Mishchenko 74328f52da Supporting complemented reduction operators. 2016-03-10 23:03:53 +09:00
Alan Mishchenko 847d661bee Change error to warning in 'scorr'. 2016-03-09 09:33:10 +09:00
Alan Mishchenko 73cbe319ff Bug fix in &fftest: not outputting test patterns when user test patterns are given. 2016-03-09 09:28:31 +09:00
Alan Mishchenko 12fac91fba Supporting ~^ as equality operator in Wlc. 2016-03-04 09:17:39 +09:00
Alan Mishchenko cf702af6f1 New hierarchical TT NPN matching. 2016-02-26 18:20:57 +08:00
Alan Mishchenko 5a47990043 Disabling formula cleaner to avoid problems with reading GENLIB on some libraries. 2016-02-21 18:15:05 -08:00
Alan Mishchenko 460a13a102 Re-doing the same change. 2016-02-15 00:27:27 -08:00
Alan Mishchenko e663db6638 Temporarily undoing one of the recent changes. 2016-02-15 00:26:59 -08:00
Alan Mishchenko c8962e94e2 Improving bit-blasting of a multiplier and squarer. 2016-02-13 18:51:42 -08:00
Alan Mishchenko 390a145f0a Adding support for a different bit-blasting of a multiplier and squarer. 2016-02-13 15:15:01 -08:00
Alan Mishchenko e0616441b3 Adding support for a different bit-blasting of a multiplier and squarer. 2016-02-12 09:46:49 -08:00
Alan Mishchenko 66796c3808 Experiments with SAT-based mapping. 2016-02-08 16:29:36 -08:00
Alan Mishchenko 67f4f1adae Experiments with SAT-based mapping. 2016-02-07 21:13:33 -08:00
Alan Mishchenko 59aea7639f Bug fix in liberty parser and change suggested by Clifford. 2016-02-07 12:54:13 -08:00
Alan Mishchenko 0224039132 Added recursive bit-blasting of a carry-lookahead adder. 2016-02-06 12:08:23 -08:00
Alan Mishchenko 355865e81b GENLIB parsing bug, which led to a crash. 2016-02-06 12:07:42 -08:00
Alan Mishchenko 76670892c2 Fixing the problem of identically named signals in 'retime'. 2016-02-05 16:21:37 -08:00
Alan Mishchenko fc1897fb18 Making flop names after 'retime' more meaningful. 2016-02-03 13:56:47 -08:00
Alan Mishchenko be35a13a4c Preserving internal signal names when 'strash' is not used. 2016-02-03 13:56:27 -08:00
Alan Mishchenko 8bcf8fd3c9 Supporting X-valued constants in Wlc_Ntk_t. 2016-02-02 16:40:29 -08:00
Alan Mishchenko 094c68f921 Supporting X-valued constants in Wlc_Ntk_t. 2016-02-02 16:20:19 -08:00
Alan Mishchenko c81b6cb515 Supporting X-valued constants in Wlc_Ntk_t. 2016-02-02 15:43:19 -08:00
Alan Mishchenko 02725c9eca An add-on to write Verilog for circuits mapped into simple gates. 2016-02-01 15:56:53 -08:00
Alan Mishchenko 81dade194e Rare bug fix in 'dch' resulting in choice nodes having internal fanout. 2016-01-31 16:38:49 -08:00
Alan Mishchenko 367b20f04d Fixing mismatch in the TLS flow induced by adding cell configs in the DSD manager. 2016-01-30 20:59:57 -08:00
Alan Mishchenko 951ca48b9c Small changes to sort for timing. 2016-01-24 15:32:12 -08:00
Alan Mishchenko 9ef447658e Bug fix in 'aig', for the case of non-min-base SOPs. 2016-01-20 15:01:53 -08:00
Alan Mishchenko df34a26216 Generating sorting network as a PLA file. 2016-01-20 15:01:27 -08:00
Alan Mishchenko f5ee46eb3c New command to dump LUT network. 2016-01-16 17:35:46 -08:00
Alan Mishchenko 334f4a29ca Compiler warning. 2016-01-14 20:44:45 -08:00
Alan Mishchenko c4446189a9 Changes to PDR to compute f-inf clauses and import invariant (or clauses) as a network. 2016-01-14 20:42:22 -08:00
Alan Mishchenko f30facfec8 Experiments with SAT-based mapping. 2016-01-14 14:03:53 -08:00
Alan Mishchenko 4ecf43f1f0 Adding a way to derive cardinality constraint as a sorting network. 2016-01-13 20:32:26 -08:00
Alan Mishchenko 87f6828d50 Adding support for delay/area tradeoff. 2016-01-13 12:13:54 -08:00
Alan Mishchenko 8dd31fb4a9 Integrating new CNF generation into &bmc. 2016-01-12 22:07:01 -08:00
Alan Mishchenko de695c9d4c Better print-out of SOPs. Changing default of 'fx'. Updating 'satclp' to fine prine SOPs. 2016-01-12 11:55:50 -08:00
Alan Mishchenko 7984628d7f Experiments with SAT-based mapping. 2016-01-10 21:06:04 -08:00
Alan Mishchenko 1bbf239843 Experiments with SAT-based mapping. 2016-01-10 21:04:17 -08:00
Alan Mishchenko d6178631be Adding support of candinality clause to the SAT solver. 2016-01-10 10:19:26 -08:00
Alan Mishchenko a4f9776388 Consolidating timing manager Scl_Con_t and propagating changes. 2016-01-07 16:50:01 -08:00
Alan Mishchenko 15a891f97a Bug fix in constraint file reader. 2016-01-07 11:57:16 -08:00
Alan Mishchenko 5453820cd5 Adding switch &miter -x for XORs outputs of two word-level POs. 2016-01-06 16:50:42 -08:00
Alan Mishchenko 3240abdb63 Fixing last-minute bug fix in &nf. 2016-01-05 22:35:44 -08:00
Alan Mishchenko b9e71bba0c Buf fix in floating time reporting. 2016-01-05 19:45:07 -08:00
Alan Mishchenko 7bf3f5e186 Fix in &nf for the case when PO can be driven by an inverter. 2016-01-05 19:25:46 -08:00
Alan Mishchenko 30d09e2cbe Fix in &nf for the case when PO can be driven by an inverter. 2016-01-05 18:40:38 -08:00
Alan Mishchenko c158dd5a94 Migrating to using 32-bit timing representation in &nf. 2016-01-05 16:40:00 -08:00
Alan Mishchenko 19ad75f125 Migrating back to using 'float' in area-flow computation in &nf. 2016-01-05 14:05:07 -08:00
Alan Mishchenko 6642e40af5 Corner-case bug in 'read_profile'. 2015-12-22 22:09:25 -10:00
Alan Mishchenko 68bc46be0e Adding names to GIA inputs/outputs (addressing x-valued flops). 2015-12-22 14:58:04 -10:00
Alan Mishchenko 617055f5a2 Adding names to GIA inputs/outputs. Changing polarity of invariant generated by PDR. 2015-12-22 06:39:13 -10:00
Alan Mishchenko 2e8543fca1 Adding names to GIA inputs/outputs. Changing polarity of invariant generated by PDR. 2015-12-21 23:22:17 -10:00
Alan Mishchenko 1228e26cc3 Adding names to GIA inputs/outputs. Changing polarity of invariant generated by PDR. 2015-12-21 23:21:16 -10:00
Alan Mishchenko ba5e69952d Corner-case bug in invariant profiling. 2015-12-18 12:25:24 -10:00
Alan Mishchenko 54269c7cec Compiler warning. 2015-12-16 09:18:56 -10:00
Alan Mishchenko 19586f105c Adding code to support gate profiles. 2015-12-14 00:44:33 -08:00
Alan Mishchenko 64afe6e9f8 Extending Verilog parser to handle 'default' in the case-statement. 2015-12-07 16:17:17 -08:00
Alan Mishchenko e9abb0f489 Adding code to support gate profiles. 2015-12-07 01:31:41 -08:00
Alan Mishchenko 0f29ba75f6 Adding commands to read/write/print gate profiles. 2015-12-05 18:10:43 -08:00
Alan Mishchenko 56880eab52 New command %psinv. 2015-11-23 23:42:20 +07:00
Baruch Sterin 63fcf25aea add a new #define ABC_NAMESPACE_USING_NAMESPACE that adds a using decelaration when needed 2015-11-20 21:07:01 -08:00
Baruch Sterin 11581ca9ee move namespace logic into a separate file. It is useful for users of ABC that need to use symbols without the entire baggage of including abc_global.h 2015-11-20 21:06:23 -08:00
Baruch Sterin 5df0cf98e6 main: add option -Q for execute command quietly, then interactive 2015-11-18 16:32:39 -08:00
Alan Mishchenko f7c969ca66 Improvements to timing optimization. 2015-11-11 23:12:05 -08:00
Alan Mishchenko 71847b9d17 Bug fix in 'satclp'. 2015-11-11 17:17:40 -08:00
Baruch Sterin 58cb230855 load_plugin: remove a comment that became redundant and cleaned up a bit 2015-11-10 12:30:14 -08:00
Baruch Sterin e561eb0f78 load_plugin: remove a check that the binary exists when a plugin command runs - the registration was successful, so the binary should exist. The check was remove to allow the -p option for load_plugin to work. 2015-11-10 12:17:21 -08:00
Alan Mishchenko 19e4604b1f Improvements to 'satclp'. 2015-11-09 09:23:39 -08:00
Alan Mishchenko 58c2584e2a Improvements to 'satclp'. 2015-11-09 08:33:56 -08:00
Alan Mishchenko 232bffd3a2 Extending and improving timing manager. 2015-11-08 20:03:18 -08:00
Alan Mishchenko 3c9f7d2bc8 Extending and improving timing manager. 2015-11-08 19:59:34 -08:00
Alan Mishchenko 81e1f9fef3 g++ compiler warnings. 2015-11-08 12:19:59 -08:00
Alan Mishchenko efb8ad0af8 Extending and improving timing manager. 2015-11-08 12:08:50 -08:00
Alan Mishchenko 7f65f0d7b2 Merging two branches. 2015-11-08 11:47:45 -08:00
Alan Mishchenko 96d8f899d9 Extending and improving timing manager. 2015-11-08 11:44:37 -08:00
Baruch Sterin 7258b02eaa Add a -p option to load_plugin, given this option, the command does not require an absolute path for theplugin. Instead, the shell searches PATH for it. 2015-11-07 19:48:11 -08:00
Alan Mishchenko e50fc467fd Improvements to 'satclp' (unfinished). 2015-11-06 13:49:23 -08:00
Alan Mishchenko dd365cbaf3 Improvements to 'satclp' (unfinished). 2015-11-06 09:05:17 -08:00
Alan Mishchenko 83da5a0384 Improvements to storing and reusing simulation info. 2015-11-05 20:37:08 -08:00
Alan Mishchenko 6b7aa389a6 Improvements to storing and reusing simulation info. 2015-11-05 15:27:33 -08:00
Baruch Sterin c610c03661 pyabc: remove python integration from abc, it is moved to a separate extension 2015-11-05 01:24:26 -08:00
Baruch Sterin aa62165a1c main: allow the -c -C -q -f -F -s command line options to be repeated and the commands they sepcify be executed in order instead of overriding each other 2015-11-05 01:24:26 -08:00
Baruch Sterin c0ba25a693 silence clang errors when compiling as C++ 2015-11-05 01:23:31 -08:00
Alan Mishchenko 8ee49ff150 Bug fix in constructing internal choices by 'amap'. 2015-11-04 15:15:18 -08:00
Alan Mishchenko df6c9415c1 Adding procedure Abc_NtkSetAndGateDelay(). 2015-11-04 14:43:00 -08:00
Alan Mishchenko ae96723ad6 Small fix in one procedure to make it compile. 2015-11-02 11:23:56 -08:00
Alan Mishchenko cb50fadb55 Changes to VC6.0 makefile to accommodate new package 'opt/fret' and compiler warnings. 2015-10-28 20:18:21 -07:00
Alan Mishchenko 9c4c95b6b1 Merged in sterin/abc (pull request #13)
Restoring Aaron Hurst's "fretime" command
2015-10-28 20:12:04 -07:00
Alan Mishchenko a3725e4427 Improvements in delay optimization. 2015-10-28 20:11:26 -07:00
Baruch Sterin 91d8040bd6 Restoring Aaron Hurst's "fretime" command 2015-10-28 19:59:57 -07:00
Alan Mishchenko 229ee5df22 Enabling reverse topo order in area minimization. 2015-10-28 16:10:50 -07:00
Alan Mishchenko 9521d1345b Improvements to 'satclp'. 2015-10-28 13:44:29 -07:00
Alan Mishchenko fe0487dab6 Improvements to command print_fanio. 2015-10-27 20:20:54 -07:00
Alan Mishchenko 35143e830b Experiments with precomputation and matching. 2015-10-27 10:48:40 -07:00
Alan Mishchenko bd586dd355 Changes for delay-oriented computation. 2015-10-26 16:44:04 -07:00
Alan Mishchenko 9b6ff10687 Compiler warnings. 2015-10-25 20:27:14 -07:00
Alan Mishchenko 9519341aaf Extending library handling to 8 inputs. 2015-10-25 20:23:44 -07:00
Alan Mishchenko 9d67bbe583 New command &isost. 2015-10-25 16:59:09 -07:00
Alan Mishchenko 85b1e1cc93 Better logic cone proprocessor for 'satclp' to reduce runtime. 2015-10-25 16:58:53 -07:00
Alan Mishchenko 0b7734ca99 Added switch 'satclp -Z' to control the max size of the cone to work with (fix overlow). 2015-10-25 10:24:57 -07:00
Alan Mishchenko 45bf632452 Changes for delay-oriented computation. 2015-10-24 18:53:18 -07:00
Alan Mishchenko a43d8273b7 Changes for delay-oriented computation. 2015-10-24 16:13:19 -07:00
Alan Mishchenko 61d4623207 Adding switch in 'print_genlib' and 'write_genlib' to print area-min gates only. 2015-10-23 17:17:23 -07:00
Alan Mishchenko 701565eb7b Set the default cube limit in 'satclp' to be 0. 2015-10-23 15:44:53 -07:00
Alan Mishchenko 637da8baea Added switch 'satclp -Z' to control the max size of the cone to work with. 2015-10-23 15:34:49 -07:00
Alan Mishchenko 3712dd30d0 Changes for delay-oriented computation. 2015-10-23 15:14:31 -07:00
Alan Mishchenko ea7b813638 Quality improvement in 'satclp'. 2015-10-22 16:50:02 -07:00
Alan Mishchenko 1332dc419f Minor tuning in 'satclp'. 2015-10-22 11:45:23 -07:00
Alan Mishchenko 2c37498bfb Compiler warnings. 2015-10-21 23:53:42 -07:00
Alan Mishchenko 17718a4c7d Corner case bug in 'satclp'. 2015-10-21 20:47:47 -07:00
Alan Mishchenko ce232aca4e Code inserts to profile runtime of 'satclp'. 2015-10-21 12:26:43 -07:00
Alan Mishchenko a677a67976 Gate combination precomputation with delay profile. 2015-10-21 09:13:41 -07:00
Alan Mishchenko b3f164961c Corner case bug in 'satclp'. 2015-10-21 09:12:50 -07:00
Alan Mishchenko 3da746858f Added several knobs to control QoR in &nf. 2015-10-20 14:12:39 -07:00
Alan Mishchenko 924dcb4fc6 Added several knobs to control QoR in &nf. 2015-10-20 14:09:48 -07:00
Alan Mishchenko 226405528d Code simplification and improvements in &nf. 2015-10-19 13:45:19 -07:00
Alan Mishchenko 9faaf802f7 Additional improvements in 'satclp'. 2015-10-18 15:26:23 -07:00
Alan Mishchenko 69df5462cb Additional improvements in 'satclp'. 2015-10-18 15:24:12 -07:00
Alan Mishchenko edf3144543 Added approximate SAT-based irredundant procedure to 'satclp'. 2015-10-17 12:31:22 -07:00
Alan Mishchenko 3bc5f32e50 Typo in src/bdd/extrab/module.make. 2015-10-17 09:22:23 -07:00
Alan Mishchenko 187cbfb6c4 Typo in src/bdd/extrab/module.make. 2015-10-17 09:18:32 -07:00
Alan Mishchenko 8093611068 Added comment how to print binary clauses in procedure Sat_SolverWriteDimacs(). 2015-10-16 19:54:28 -07:00
Alan Mishchenko 17cbe3567e Bug fix in 'satclp -r'. 2015-10-16 19:45:25 -07:00
Alan Mishchenko aa546b46d9 Fix to the #include <stdlib.h> problem for Debug version on Window. 2015-10-16 19:27:12 -07:00
Alan Mishchenko 0145b0ca72 Moving BDD-based threshold function detection to the BDD part of the code. 2015-10-16 18:34:06 -07:00
Baruch Sterin 0e1eb98988 make sure all of ABC and related libraries are in the same namespace (when compiled with ABC_NAMESPACE) by removing extern "C" from function definitions 2015-10-16 14:02:38 -07:00
Baruch Sterin 8810ef12da Fix C++ compilation errors 2015-10-16 14:02:30 -07:00
Alan Mishchenko 8268553369 Experiments with precomputation and matching. 2015-10-16 10:36:53 -07:00
Alan Mishchenko 40bb7089da Experiments with precomputation and matching. 2015-10-15 18:50:03 -07:00
Alan Mishchenko 15a86aefd2 Experiments with precomputation and matching. 2015-10-15 15:32:36 -07:00
Alan Mishchenko 01fc95695c Experiments with precomputation and matching. 2015-10-14 18:45:40 -07:00
Alan Mishchenko b5e0b7d4fc Experiments with precomputation and matching. 2015-10-13 18:48:38 -07:00
Alan Mishchenko 9df63f5291 Experiments with precomputation and matching. 2015-10-13 15:11:08 -07:00
Alan Mishchenko 20c46b5a45 Experiments with precomputation and matching. 2015-10-12 18:29:15 -07:00
Alan Mishchenko d25473b307 Experiments with functional matching. 2015-10-09 11:05:35 -07:00
Alan Mishchenko 1ca82c87b4 Experiments with functional matching. 2015-10-08 23:27:56 -07:00
Alan Mishchenko 46223f903b Two fixes in 'dsd_filter'. 2015-10-07 17:48:07 -07:00
Alan Mishchenko a2692b70fb New switch 'satclp -r' to reverse variable order. 2015-10-07 17:35:36 -07:00
Alan Mishchenko b19d09f04c Bug fix in 'if -g' (incorrect use of a macro). 2015-10-07 08:37:25 -07:00
Alan Mishchenko 72f4dfff1b Experiments with functional matching. 2015-10-05 16:10:57 -07:00
Alan Mishchenko a1e9f668a8 Adding support for black boxes in extended AIG. 2015-10-04 17:45:24 -07:00
Alan Mishchenko 26dc25b7f5 Adding support for flop init-states in extended AIG. 2015-10-04 09:51:57 -07:00
Alan Mishchenko 7d9e3c2ffe Experiments with functional matching. 2015-10-03 06:57:17 -07:00
Alan Mishchenko ac16c95706 Bug fix in propagating required times in &nf (another issue). 2015-10-01 13:52:08 -07:00
Alan Mishchenko d76a96d22f Bug fix in propagating required times in &nf. 2015-10-01 11:47:58 -07:00
Alan Mishchenko 0e0f2e64af Naive LUT packing algorithm (command &pack). 2015-09-30 20:21:40 -07:00
Alan Mishchenko 10c31c6576 Experiments with LUT structure mapping. 2015-09-30 18:07:54 -07:00
Alan Mishchenko bc1eae790b Experiments with LUT structure mapping. 2015-09-29 20:05:27 -07:00
Alan Mishchenko d4d1ae9869 Experiments with LUT structure mapping. 2015-09-29 19:23:01 -07:00
Alan Mishchenko b01b47e571 Experiments with LUT structure mapping. 2015-09-28 21:43:02 -07:00
Alan Mishchenko ac6066dce1 Experiments with LUT structure mapping. 2015-09-28 20:49:45 -07:00
Alan Mishchenko 1ba9536c00 Experiments with LUT structure mapping. 2015-09-27 19:18:23 -07:00
Alan Mishchenko 1ba16ff782 Experiments with LUT structure mapping. 2015-09-27 19:16:08 -07:00
Alan Mishchenko e3eea01dbb Bug fix in &nf and in propagating timing info. 2015-09-27 15:23:06 -07:00
Alan Mishchenko d49bb36654 New command &rexwalk. 2015-09-26 14:56:43 -07:00
Alan Mishchenko d0af09a209 New command &rexwalk. 2015-09-26 14:55:07 -07:00
Alan Mishchenko 62e5ff900e Bug fix in 'satclp'. 2015-09-26 08:57:32 -07:00
Alan Mishchenko 78951b4c6f Improvements to Scl_Lib/SC_Cell data-structure. 2015-09-24 12:12:36 -07:00
Alan Mishchenko 3f77172a7e Adding API to set the number of flops after reading MiniAIG. 2015-09-24 09:47:05 -07:00
Alan Mishchenko f1bc346894 Several bug-fixed related to synthesis, library handling, and timimg info. 2015-09-23 18:44:07 -07:00
Alan Mishchenko a84c8174e7 Improving bit-blasting of full-adder. 2015-09-23 16:04:06 -07:00
Alan Mishchenko 19a4bb930e Threshold logic checking code by Augusto Neutzling and Jody Matos. 2015-09-23 15:24:25 -07:00
Alan Mishchenko 643aef2ecd Bug fix in &rex2gia. 2015-09-23 13:23:33 -07:00
Alan Mishchenko bfebc0751c Fixing corner-cases in 'tempor' and in 'unfold'. 2015-09-22 19:51:24 -07:00
Alan Mishchenko edf6c13721 Adding new command &rex2gia. 2015-09-22 18:43:12 -07:00
Alan Mishchenko 7a85a0ee8d Improvements to &b -das. 2015-09-18 18:29:00 -07:00
Alan Mishchenko 815dfdc0c4 Adding switch to &b to prevent dumplicated area when used in delay-mode (&b -da). 2015-09-18 09:50:22 -07:00
Alan Mishchenko 37a5a36cf9 Commenting out assertion in &b, which does not hold. 2015-09-18 09:34:36 -07:00
Alan Mishchenko f06ca216ab Tuning SAT solver for QBF instances. 2015-09-18 09:05:27 -07:00
Alan Mishchenko fdf00d8044 Tuning SAT solver for QBF instances. 2015-09-18 08:38:53 -07:00
Alan Mishchenko 3b838b953d Tuning SAT solver for QBF instances. 2015-09-18 08:10:18 -07:00
Alan Mishchenko c30a0af71c Improvements to QBF solver; new quantification command &qvar. 2015-09-18 05:05:22 -07:00
Alan Mishchenko 97751e43b7 New constraint manager and memory reporting 'ps'. 2015-09-08 19:53:49 -07:00
Alan Mishchenko f623b04da4 Cleaning up boolean operators; adding unique name support; minor changes. 2015-09-07 19:23:17 -07:00
Alan Mishchenko 2540f02e7e More tuning in &nf. 2015-09-06 21:28:04 -07:00
Alan Mishchenko 50fe603b83 More tuning in &nf. 2015-09-06 20:48:25 -07:00
Alan Mishchenko 2bc14356f6 More tuning in &nf. 2015-09-06 17:04:11 -07:00
Alan Mishchenko 34fa6addc9 More tuning in &nf. 2015-09-06 16:37:02 -07:00
Alan Mishchenko 45a948ab21 More tuning in &nf. 2015-09-04 20:55:40 -07:00
Alan Mishchenko b11344b454 Experiments with SAT-based collapsing. 2015-09-04 15:40:53 -07:00
Alan Mishchenko a207f6c071 Experiments with SAT-based collapsing. 2015-09-04 11:52:27 -07:00
Alan Mishchenko 1ffd9aad76 Experiments with SAT-based collapsing. 2015-09-03 21:57:21 -07:00
Alan Mishchenko 5bcde4be2b Experiments with SAT-based collapsing. 2015-09-03 21:56:29 -07:00
Alan Mishchenko 5ca86b65ad Improvements to Cba data-structure. 2015-09-03 14:44:44 -07:00
Alan Mishchenko 6352d0b626 Improvements to Cba data-structure. 2015-09-03 14:33:53 -07:00
Alan Mishchenko af828a499d Removing unhelpful assertion in CEX minimization. 2015-09-01 12:02:44 -07:00
Alan Mishchenko 1a3c75bb04 Experimenting with area recovery. 2015-08-31 20:48:25 -07:00
Alan Mishchenko 02d128ed7c Experimenting with area recovery. 2015-08-31 20:46:32 -07:00
Alan Mishchenko bf75d7ab4d Experimenting with area recovery. 2015-08-31 20:33:05 -07:00
Alan Mishchenko ddf182da56 Experimenting with area recovery. 2015-08-31 16:50:50 -07:00
Alan Mishchenko f4a8107c3b Performance tuning of the Nf. 2015-08-31 16:19:08 -07:00
Alan Mishchenko dddcab167c Performance tuning of the Nf. 2015-08-31 15:51:23 -07:00
Alan Mishchenko faeeaeb5e7 Updating Mio to use int instead of float. 2015-08-31 15:09:46 -07:00
Alan Mishchenko bb7837ff86 Improvements to Cba data-structure. 2015-08-30 21:59:11 -07:00
Alan Mishchenko 4530ef6444 Alternative way to bit-blast a divisor. 2015-08-29 00:08:41 -07:00
Alan Mishchenko 4f74e00470 More tuning in &nf. 2015-08-28 19:17:48 -07:00
Alan Mishchenko 362a879d6b Adding switch to control area-recovery and more tuning in &nf. 2015-08-28 18:42:11 -07:00
Alan Mishchenko 04be8af560 Important bug fixes in standard-cell library handling and mapper &nf. 2015-08-28 17:47:00 -07:00
Alan Mishchenko cb439f2ecf Bug fix in Vec_IntInsert() and a couple of new APIs. 2015-08-26 14:30:42 -07:00
Alan Mishchenko 41d18ca051 Changing 'refactor' to work with truth tables. 2015-08-25 11:02:34 -07:00
Alan Mishchenko 24f2a120f2 Changes to be able to compile ABC without CUDD. 2015-08-24 21:09:50 -07:00
Alan Mishchenko eb699bbaf8 Changes to be able to compile ABC without CUDD. 2015-08-24 21:09:43 -07:00