50 Commits

Author SHA1 Message Date
Lukas Plevac
09a12f3df7 Fully working xorGateComponent
Some checks failed
CodeQL / Analyze (python) (push) Has been cancelled
BUILD / build (push) Has been cancelled
BUILD / test (push) Has been cancelled
BUILD / Python ${{ matrix.python-version }} test (3.10) (push) Has been cancelled
BUILD / Python ${{ matrix.python-version }} test (3.11) (push) Has been cancelled
BUILD / Python ${{ matrix.python-version }} test (3.7) (push) Has been cancelled
BUILD / Python ${{ matrix.python-version }} test (3.8) (push) Has been cancelled
BUILD / Python ${{ matrix.python-version }} test (3.9) (push) Has been cancelled
BUILD / documentation (push) Has been cancelled
2024-10-10 13:33:09 +02:00
Lukas Plevac
ad9f62e3de Added support for MIG excluded xor and xnor gate
Some checks are pending
CodeQL / Analyze (python) (push) Waiting to run
BUILD / build (push) Waiting to run
BUILD / test (push) Blocked by required conditions
BUILD / Python ${{ matrix.python-version }} test (3.10) (push) Blocked by required conditions
BUILD / Python ${{ matrix.python-version }} test (3.11) (push) Blocked by required conditions
BUILD / Python ${{ matrix.python-version }} test (3.7) (push) Blocked by required conditions
BUILD / Python ${{ matrix.python-version }} test (3.8) (push) Blocked by required conditions
BUILD / Python ${{ matrix.python-version }} test (3.9) (push) Blocked by required conditions
BUILD / documentation (push) Blocked by required conditions
2024-10-07 15:19:55 +02:00
Vojta
c1e8680e83 CGP with more than 26 inputs naming 2024-10-03 08:18:49 +02:00
Vojta Mrazek
04cd3e44d3 bug in cgp indexes with constant wires, they were encouted 2024-07-22 15:09:50 +02:00
Vojta Mrazek
f34471bfe3 signed version of python code 2024-07-18 13:16:15 +02:00
Vojta Mrazek
4cd1189d4a CGP circuit accepts BUS inputs 2024-07-18 13:15:56 +02:00
Vojta Mrazek
bc0104de12 ripple cary subtractor 2024-07-09 09:22:11 +02:00
honzastor
ce36ebf77b Fixed hierarchical BLIF generation for popcount_compare. 2024-04-17 18:47:41 +02:00
honzastor
6003886eb7 Fixed hierarchical Verilog generation of popcount compare. BLIF probably needs a similar treatment, TBD later 2024-04-14 16:29:10 +02:00
honzastor
97e79b93da Big code cleanup and some fixes. Hierarchical generation for popcount seems problematic. It seems bus connections are the issue. 2024-04-13 17:04:03 +02:00
honzastor
739d5fafce Added documentation to Recursive multiplier and hopefully fixed some issues with popcount output generation. 2024-04-08 21:37:34 +02:00
Vojta Mrazek
1219d7bec5
Merge branch 'popcount' into devel 2024-04-05 09:19:04 +02:00
Vojta Mrazek
2cf7b921ea Popcount implementation 2024-04-05 08:46:02 +02:00
honzastor
da733cf44e Added instantiation of wires and buses from inputs. Hopefully fixed now. 2024-03-28 00:06:53 +01:00
honzastor
d013a40145 Added unsigned recursive multiplier and made some bugfixes. 2024-03-27 23:00:13 +01:00
Vojta Mrazek
2e1694ccd5 popcount and compare 2024-03-22 14:19:23 +01:00
honzastor
7e1112cf81 Added individual input bus attributes to CGP Circuit objects to allow for the generation of output CGP representation. 2024-03-06 00:42:12 +01:00
Vojta Mrazek
f853a46703 CGP circuit checks 2023-04-13 12:09:07 +02:00
honzastor
7cf34d04f3 Bugfix in conditional statement. 2023-03-22 18:14:55 +01:00
honzastor
b88c502343 Addition of MUX2x1 PDK support and optimization of hierarchical Verilog code generation when using PDK modules (the gates and wires associated with native ArithsGen implementation are not generated). 2023-03-22 17:57:51 +01:00
honzastor
d52e67bb25 Implemented new parallel prefix adders and added the possibility for better configuration of partial product accumulators (adders) used in multipliers. 2023-02-24 11:13:46 +01:00
Vojta Mrazek
71a1d45045
string description (#15) 2023-02-22 09:45:14 +01:00
Honza
c0dcf42499 Added new (approximate) multiplier architectures and did some minor changes regarding sign extension for c output formats. 2022-04-17 13:04:17 +02:00
Honza
9e186d10ed Typos fix and code cleanup. 2022-02-18 17:24:09 +01:00
Honza
6f05db002e Implemented CSA and Wallace tree multiplier composing of CSAs. Also did some code cleanup. 2022-02-18 17:00:31 +01:00
Vojta Mrazek
3c47407f80 output rename 2022-02-07 11:29:12 +01:00
Vojta Mrazek
1e44c2e3dc
#10 CGP Circuits as inputs (#11)
* CGP Circuits as inputs

* #10 support of signed output in general circuit
2022-02-01 13:23:26 +01:00
Honza
d9b56e8a00 Fixed generation of unsigned variants of BAM and TM multipliers. Signed versions don't guarantee correct funcionality atm. 2022-01-06 19:23:56 +01:00
Honza
9aa0fb1858 Added broken array multiplier and truncated multiplier implementations. Tried testing them, but seems buggy. Needs further work. 2022-01-06 06:39:58 +01:00
Honza
f830029c54 Added truncated multiplier circuit implementation. Needs testing. 2022-01-04 03:13:21 +01:00
honzastor
f582ee729e Updated generation of hierarchical circuits to allow proper naming consistency between the subcomponent modules and their corresponding invocations. 2021-10-25 01:11:34 +02:00
honzastor
5d41997560 Added assertion checks for the same input bus lengths when initializing arithmetic circuits. 2021-10-24 18:48:00 +02:00
honzastor
d41c5f3c94 Updated exportation of signed arithmetic circuits to python representation. Also unified some methods from arithmetic_circuit.py into general_circuit.py. 2021-10-10 22:15:13 +02:00
honzastor
cfb5bba3ec Bitwise and operation fix. 2021-10-10 00:02:58 +02:00
honzastor
16c1757bc3 Added signedness support for the output C code representation. Also modified the testing scripts and the chr2c.py converter accordingly and did some documentation changes (even made a small change in readme.md). Signedness support for the output python representation is TBD. 2021-10-09 23:45:54 +02:00
Vojta Mrazek
152a6b1583
Python eval (#4)
* #3 basic clean up arithmetic circuit and general circuit

* #3 implementation of python generator

* #3 pytest in actions

* #3 pytest in actions fix
2021-10-04 11:58:28 +02:00
Vojta Mrazek
995107eecc Removing of file closing 2021-09-23 08:50:18 +02:00
honzastor
eba0a7a938 Made some minor changes concerning proper exportation of multiplier circuits. 2021-09-09 13:57:36 +02:00
honzastor
e16de78c2b Updated logic behind generating export representations, mainly focused around circuit and its buses and subcomponents namings. 2021-09-07 17:39:39 +02:00
Vojta Mrazek
8c0f24cd2d General MAC circuit 2021-09-06 12:52:13 +02:00
Vojta Mrazek
a4dca24fc2 CGP format minor 2021-06-23 14:09:46 +02:00
Vojta Mrazek
0a487ee699 CGP format 2021-06-23 14:08:49 +02:00
Vojta Mrazek
c6e542231c CGP tests; reversed output order 2021-06-23 13:43:58 +02:00
honzastor
0f66c5a2e9 Fixed proper connections in submodules instantiation in hierarchical Verilog generation. Sample generated circuits were also accordingly updated. 2021-04-23 11:49:24 +02:00
honzastor
670ba45ee5 Generated sample circuits for various representations. Updated C code circuits testing simulations and did some cleanup. 2021-04-23 02:44:14 +02:00
honzastor
8e950fc51f Optimized circuits generation, refactored code, fixed cla, added new csa, array divider circuits and create yosys equivalence check script. TBD: Documentation and sample generated circuits. 2021-04-21 11:33:07 +02:00
honzastor
068def0226 Added documentation of classes methods. 2021-04-06 01:39:11 +02:00
honzastor
a336a683e7 Added some code documentation and updated git action to generate it. 2021-03-31 04:40:54 +02:00
Jan Klhůfek
87105eaaa6
Delete ariths_gen/core/__pycache__ directory 2021-03-30 03:11:13 +02:00
honzastor
69e2514852 Updated project's structure. Renamed class names to properly fit Python naming convention. TBD: proper documentation. 2021-03-30 03:04:48 +02:00