Mohamed Gaber
083be40a8b
chore: switch out json11 for nlohmann json in read_liberty2json
2025-12-31 12:10:35 +02:00
Mohamed Gaber
1a561f42fa
read_liberty2json: propagate src attribute
2025-12-02 15:47:33 +02:00
Akash Levy
2d60ff8e44
One more fix for splitnetlist
2025-11-12 10:46:48 -08:00
Akash Levy
963dcd33af
Fix bus_rebuild
2025-11-12 09:46:07 -08:00
Mohamed Gaber
e4f5334f52
read_liberty2json: relax dont_touch/dont_use typing
...
As it turns out, some test cases use "TRUE", "true", "yes", etc. The previous behavior used Python's truthiness behavior, which I am going to simply emulate.
2025-11-09 13:46:20 +02:00
Mohamed Gaber
9a1798fb20
documentation + some constrefs for good measure
2025-11-04 14:23:37 +02:00
Mohamed Gaber
9beabd2ba6
chore: address review concerns
2025-11-04 13:50:41 +02:00
Mohamed Gaber
32d952944d
new pass `read_liberty2json`
...
Moves the processing of liberty2json translated-files to c++. Essentially a 1:1 translation of the original internal code as much as possible, with the addition of strict type-checking.
2025-11-04 13:37:55 +02:00
Akash Levy
a353716202
Update fanoutbuf
2025-10-01 20:59:36 -07:00
Akash Levy
66abd04b5a
Remove annotate_logic_depth
2025-10-01 20:57:51 -07:00
Akash Levy
c8d8c4f408
Add fanoutbuf pass
2025-10-01 19:23:45 -07:00
Akash Levy
17e3ed3258
Remove annotate_unqcoef (for now)
2025-10-01 19:23:13 -07:00
Akash Levy
dee059bee8
Fix minor Yosys issues
2025-09-30 12:05:36 -07:00
Akash Levy
a0d1c8b30f
More minor cleanup
2025-09-28 07:19:53 -07:00
Akash Levy
507d43a9b8
Fixups
2025-09-28 06:16:07 -07:00
Akash Levy
cd37b064f9
Minor cleanup
2025-09-23 01:07:41 -07:00
Akash Levy
f2aa7cc65b
Reduce verbosity of opt_balance_tree
2025-09-10 06:07:15 -07:00
Akash Levy
6fc38e15a1
Update passes/silimate/opt_balance_tree.cc
...
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2025-09-09 04:47:28 -07:00
Akash Levy
b7a4ce8b42
Fix opt balance tree and wreduce
2025-09-09 04:32:15 -07:00
Akash Levy
414c9e8898
Fix annotate_cell_fanout issue by double uniquifying... hopefully should fix the issue?
2025-06-25 22:09:43 -07:00
Akash Levy
828cfc0039
Fix issue with buffer naming uniquification
2025-06-23 02:25:34 -07:00
Akash Levy
3f94486a1c
Merge pull request #82 from donn/splitlarge
...
splitlarge: new pass to split wide arithmetic operators
2025-05-15 15:00:45 -07:00
Mohamed Gaber
1d9fbb6143
misc: review feedback, remove MUL vestiges
2025-05-15 18:01:13 +03:00
Mohamed Gaber
46ba89059a
splitlarge: new pass to split wide arithmetic operators
...
Adds a new pass, `splitlarge`, that recursively divides $add/$sub
cells into smaller cells until each cell's width doesn't exceed a
given max_width (128 by default.) An $add/$sub cell's width for
this purpose is defined as the higher of the widths of its two
inputs.
A test was written in Tcl for it, which tests this matrix:
- cell: $add/$sub
- b: unsigned, signed
- a: unsigned, signed
This is the first test for a Silimate pass in Tcl and thus
`run-test.sh` was modified to include it.
2025-05-15 17:45:08 +03:00
Akash Levy
f97587db61
Fix fanout buffer src annotation and refactor naming
2025-05-13 20:05:16 -07:00
williamzhu17
39be4f29bd
opt_balance_tree test cases
2025-05-11 10:58:29 -07:00
Akash Levy
239b0a6db0
Fix opt_balance_tree issue
2025-05-08 19:35:19 -07:00
Akash Levy
e4a8cc60d3
Remove recover_names from longloop_select
2025-05-08 07:20:28 -07:00
Akash Levy
36bd30d9eb
Add recover_names into build and longloop_select
2025-05-06 18:58:07 -07:00
Akash Levy
507308d34e
Add muxpacker draft
2025-04-03 21:38:16 -07:00
Akash Levy
d4119e1ad3
lut2bmux fix
2025-04-03 21:37:27 -07:00
Akash Levy
f488b0e74c
Add lut2bmux, annotate_unqcoef, and seed tests
2025-03-31 05:55:54 -07:00
Akash Levy
f72d27fae0
Robustness fixes
2025-03-30 22:23:21 -07:00
Akash Levy
161ff0fa3f
Add muxmode pass and tests
2025-03-30 17:54:18 -07:00
Akash Levy
dacd882383
Remove selectconst
2025-03-28 17:40:40 -07:00
Alain Dargelas
e29c1839c4
Fix corner case with assign stmts for fanout buffering
2025-03-17 14:25:05 -07:00
Akash Levy
d9af46538c
opt_expand peepopt (still needs testing)
2025-03-17 04:12:06 -07:00
Akash Levy
dc75774c5b
Breakreduce pass (still needs testing)
2025-03-17 04:10:08 -07:00
Akash Levy
11dd7becdd
Add opt_balance_tree -arith_only
2025-03-17 02:30:18 -07:00
Akash Levy
e6da1a2d69
Fix unused warning in annotate_cell_fanout
2025-03-12 20:54:03 -07:00
Akash Levy
6cfa779bfa
Reduce verbosity of splitfanout
2025-03-09 22:07:30 -07:00
Akash Levy
3098dcc86c
Merge pull request #56 from alaindargelas/limit_fanout
...
Fanout limit with buffer tree
2025-03-07 14:19:45 -08:00
Alain Dargelas
52b1cbf456
Separate into 2 passes
2025-03-07 14:11:25 -08:00
Alain Dargelas
c54c3f66b7
Single call to splitnets
2025-03-06 16:46:22 -08:00
Alain Dargelas
81ab3b5fed
call splitnets for the whole design
2025-03-06 16:21:11 -08:00
Alain Dargelas
d4e4ece9fe
bit split initial splitfanout call
2025-03-06 10:47:27 -08:00
Alain Dargelas
4b598e317b
getfanout factor
2025-03-05 13:10:53 -08:00
Alain Dargelas
f65d822935
cleanup dangling buffers
2025-03-05 11:49:12 -08:00
Alain Dargelas
7d46ab08d5
clocks, resets filters
2025-03-05 10:28:49 -08:00
Alain Dargelas
bc05f4fead
Use buf instead of pos
2025-03-05 09:40:26 -08:00