samuelkcrow
3dac89d041
fixing named variables passed between array modules
2023-02-04 21:06:41 -08:00
Eren Dogan
e5fc25da6f
Update copyright year
2023-01-28 22:56:27 -08:00
samuelkcrow
2f795f8068
fix height calculation bug for replica array
2023-01-26 17:38:24 -08:00
samuelkcrow
03adf94b6a
fix offsets to match original replica array, and make array translation statically sized
2023-01-26 12:31:14 -08:00
samuelkcrow
8fc93bc91a
point local array to new capped array module
2023-01-24 11:09:57 -08:00
samuelkcrow
ebe163c57e
fix placement bug for cap cells including wrong height from replica array
2023-01-24 11:07:52 -08:00
samuelkcrow
5573c6b241
fix pin shape issue
2023-01-18 22:44:32 -08:00
samuelkcrow
d460eacfcc
standardize rbl arguments interface
2023-01-18 22:43:37 -08:00
samuelkcrow
78c4ba5fc0
clean up comments
2023-01-18 21:01:30 -08:00
samuelkcrow
7021b80506
remove unused side argument from side routing functions
2023-01-18 20:36:36 -08:00
samuelkcrow
8522f32e43
radically simplify unused wordline routing code... bit of a facepalm tbh
2023-01-18 20:32:40 -08:00
samuelkcrow
78cabf9ca3
make capped array name more descriptive and add x mode to tests
2023-01-17 10:20:16 -08:00
samuelkcrow
b5cddb9394
fix remaining lvs issues by adding an offset to pins gotten from subinstances and appropriately grounding wls in cap cells
2023-01-16 17:54:17 -08:00
samuelkcrow
29c79abaf8
move layout pins when copying them
2023-01-15 20:33:38 -08:00
samuelkcrow
d8e0f4275d
fix capped array after merge with dev
2022-12-14 14:20:54 -08:00
samuelkcrow
6a8a76dd23
Merge branch 'dev' of github.com:VLSIDA/PrivateRAM into no_rbl
2022-12-14 08:13:08 -08:00
samuelkcrow
119bcb9197
route unused wordlines (still failing lvs)
2022-12-14 08:12:55 -08:00
samuelkcrow
d224c06b25
placement positions problem fixed, incorrect w,h calculations were the problem
2022-12-10 19:03:55 -08:00
Eren Dogan
6a4f6cbbed
Move sram and sram_config to openram namespace
2022-12-02 15:28:06 -08:00
Eren Dogan
7396899769
Add empty build_graph() for dummy bitcells
2022-12-02 12:14:40 -08:00
samuelkcrow
68fb4e3c63
introduced some other bugs but scmos tiling is correct
2022-12-02 09:42:33 -08:00
Eren Dogan
96e57507bf
Add copyright check to code format test
2022-11-30 14:50:43 -08:00
Eren Dogan
e15454ebb9
Make sram_config optional for sram
2022-11-29 10:33:32 -08:00
Eren Dogan
fccdc3c45b
Use library imports globally
2022-11-27 13:01:20 -08:00
samuelkcrow
ac8a15acc0
fix get_replica_top and get_replica_left return values
2022-11-21 17:42:50 -08:00
samuelkcrow
5a82c45a33
Change how lists of BLs and WLs are named and organized for proper connection between these modules
2022-10-24 20:08:13 -07:00
mrg
9b6eb4a120
Fix whitespace
2022-10-20 16:38:23 -07:00
mrg
8fd08916a1
Move is_non_inverting graph code to bitcell_base class to work with pbitcell too.
2022-10-20 15:16:10 -07:00
samuelkcrow
55d89fbae8
copy supply pins to top level in replica array, now passing tests
2022-10-19 17:13:54 -07:00
samuelkcrow
f9419e8ff7
fix self.rbls and fix handling of rbl WLs (kinda)
2022-10-17 20:51:42 -07:00
samuelkcrow
a1ca7c312d
remove grounded WLs from replica array
2022-10-11 11:43:26 -07:00
samuelkcrow
cfd52a6065
fix offsets so array ends up at 0,0
2022-09-26 14:24:16 -07:00
samuelkcrow
8bc3903a04
remove end caps from replica column (will not pass sky130 drc)
2022-09-26 14:23:09 -07:00
Jesse Cirimelli-Low
3b02a8846d
sky130 rba passing :)
2022-09-12 16:07:00 -07:00
samuelkcrow
f1f18b3b54
replica code working but failing lvs
2022-09-07 19:32:25 -07:00
samuelkcrow
3ef52789be
first pass splitting replica array into capped and replica array modules
2022-09-07 12:39:35 -07:00
Bugra Onal
25cc08db80
Further fixes for new verilog naming convention
2022-08-18 11:03:13 -07:00
Bugra Onal
a7c6406d0d
Changed verilog file naming convention
2022-08-18 10:36:54 -07:00
Bugra Onal
1a23d156c0
remove references to bank_sel
2022-08-18 10:33:46 -07:00
Bugra Onal
242d90f543
Code format fixes
2022-08-13 13:58:53 -07:00
Bugra Onal
aefe46394c
Merge branch 'dev' into multibank
2022-08-12 21:45:26 -07:00
Bugra Onal
6ba2a9bca7
Make sure num_wmasks is 0 when no wmask is generated
2022-08-10 16:35:39 -07:00
Bugra Onal
f743b1f068
Convert to new modules format
2022-08-10 16:34:49 -07:00
Bugra Onal
2d849aef39
Write size updated in recompute_sizes
2022-08-10 15:36:41 -07:00
Bugra Onal
48fce6485d
write_size None initialization fixed
2022-08-04 16:37:21 -07:00
Bugra Onal
2ed107f9ff
Fix the total addr_size
2022-08-04 16:36:26 -07:00
Bugra Onal
0ca14a3662
Fix typo on w_en
2022-08-04 16:35:09 -07:00
samuelkcrow
1177df6193
move most of place_instances to base
2022-08-01 10:33:48 -07:00
Bugra Onal
7fe0f647ef
fix
2022-07-28 17:00:16 -07:00
Bugra Onal
a361d9f7bb
Fixed write_size checks for None
2022-07-28 16:45:58 -07:00
Bugra Onal
6efe974d7b
Delete sram_base form rebase
2022-07-28 16:02:39 -07:00
Bugra Onal
9771bb7056
Don't generate wmask and if word per line is 1
2022-07-28 15:59:28 -07:00
Bugra Onal
02d8eca640
Fix indentation
2022-07-28 15:07:19 -07:00
Bugra Onal
36e23dc80f
Moved template module to new modules folder
2022-07-28 15:05:34 -07:00
Bugra Onal
3f1a5a2051
Shrunk address register in multibank verilog
2022-07-28 15:03:41 -07:00
Bugra Onal
5f45f7db15
Fixed the bad commas with post-process regex
2022-07-28 15:03:41 -07:00
Bugra Onal
a75951b5b1
write_size init in sram_config
2022-07-28 15:03:41 -07:00
Bugra Onal
898a1f07f5
Fixed verilog filename double extension
2022-07-28 15:03:41 -07:00
Bugra Onal
c1e891b2fb
Multibank file generation (messy)
2022-07-28 15:03:41 -07:00
Bugra Onal
846dfc79dc
modified template engine & sram multibank class
2022-07-28 15:03:41 -07:00
Bugra Onal
30f5638b9f
Replaced instances of addr_size with bank_addr
2022-07-28 15:03:41 -07:00
Bugra Onal
29079bd6ac
Added conditional sections to template
2022-07-28 15:03:41 -07:00
Bugra Onal
24bb6f8c11
Multibank file generation (messy)
2022-07-28 15:03:37 -07:00
samuelkcrow
1c8aeaa68a
fix imports
2022-07-27 11:09:10 -07:00
samuelkcrow
2ff9ea4f78
move generic functions from control_logic module to new control_logic_base module
2022-07-26 23:22:02 -07:00
mrg
69d5731d67
Merge branch 'dev' of github.com:VLSIDA/PrivateRAM into dev
2022-07-22 13:47:19 -07:00
Eren Dogan
e3fe8c3229
Remove line ending whitespace
2022-07-22 19:52:38 +03:00
Bugra Onal
6d6063ef4e
modified template engine & sram multibank class
2022-07-21 15:56:29 -07:00
mrg
6707a93c3c
Add fudge factor for bitcell array side rail spacings to fix DRC in freepdk45.
2022-07-20 10:27:30 -07:00
mrg
ff7ceaf92d
Fix syntax error for module scope in row/col caps.
2022-07-13 17:19:09 -07:00
mrg
d92c7a634d
Use packages for imports.
...
Must set PYTHONPATH to include OPENRAM_HOME now.
Reorganizes subdirs as packages.
Rewrites unit tests to use packages.
Update README.md with instructions, dependencies etc.
Update sky130 module imports.
Change tech specific package from modules to custom.
2022-07-13 15:55:57 -07:00
mrg
cf03454ecf
Don't add wdriver_sel_n pins which aren't used.
2022-06-10 09:18:40 -07:00
mrg
d30f05a1ae
Update power layer on li for sky130
2022-06-08 17:19:26 -07:00
mrg
280582d4d6
Add missing via in dff array
2022-06-08 14:24:17 -07:00
mrg
ad6633ddca
Update versions of tools. Fix supply bug in predecode.
2022-06-08 13:50:25 -07:00
mrg
8c85230033
Remove experimental power option.
2022-05-23 10:08:35 -07:00
mrg
735d66c9f1
Start dff array supplies on first rather than second bit.
2022-05-17 15:54:54 -07:00
mrg
3e02a0e7df
Update column decoder and dff array supplies
2022-05-17 15:49:50 -07:00
mrg
f1f4453d14
Add column decoder module with power supply straps.
2022-05-17 13:32:19 -07:00
mrg
9b592ab432
Fix missing hash recompute in vector class.
2022-05-17 13:30:41 -07:00
mrg
bdd334bce9
Add layer and directions to pbitcell
2022-05-16 16:11:13 -07:00
mrg
4345136d1a
Fix offsets for local bitcell arrays.
2022-05-13 10:46:00 -07:00
mrg
357f967a93
Leave supply routing to new helper functions.
2022-05-11 11:01:14 -07:00
mrg
b6c3580e24
Fix width of replica routes. Don't enclose pins if they overlap sufficiently.
2022-05-09 11:44:46 -07:00
mrg
50045e54e8
Fix a couple supply routing issues.
2022-05-03 11:45:51 -07:00
mrg
f8f3f16b1f
Move delay line supply strap for pin access.
2022-05-02 16:42:14 -07:00
mrg
b1bb9151c4
Reimplement off grid pins.
...
Long pins aren't accessed on end pins anymore.
Fix problem with multiple non-enclosed space causing blockages.
Add partial pin offgrid enclosure algorithm.
2022-05-02 15:43:14 -07:00
mrg
64f2f90664
Rework replica_bitcell_array supplies
...
Uses layer and direction preferences in tech file.
Places straps on left/right or top/bottom.
2022-04-19 08:50:11 -07:00
mrg
5e546ee974
New power strapping mostly working.
...
Each module uses M3/M4 power straps with pins on the ends.
Works in all technologies for a single no mux, dual port SRAM.
2022-04-05 13:51:55 -07:00
mrg
01a73b31e1
Fix power ring routing boundary bug.
2022-03-18 10:32:25 -07:00
mrg
7e7670581c
Add some vertical/horizontal pins for sky130 only
2022-03-16 07:58:29 -07:00
mrg
8c911f70b9
Build changes.
...
Don't pull docker since it will be build by CI.
Shuffle tests to stagger technologies and test types.
2022-03-06 10:31:43 -08:00
mrg
d69e55c2e3
Power routing changes.
...
Make the power rails an "experimental_power" option and conditional.
Rename route_vdd_gnd to route_supplies everywhere for consistency.
2022-03-06 09:56:00 -08:00
mrg
8b3c10ae79
Improvements to power routing.
...
Improved the route horizontal and vertical pin functions to
create a single pin at the end.
Swapped A and B on wordline driver input for cleaner routing
in most technologies.
Fixed vertical supply routing in port_address.
2022-03-04 15:44:07 -08:00
mrg
e139b4aa81
Swap A and B pins in wordline driver.
2022-03-03 09:53:24 -08:00
mrg
7654cd7295
Allow supply pins on m4 too
2022-03-02 16:47:17 -08:00
mrg
51ba88d896
Port address with vertical power stripes
2022-03-02 16:29:43 -08:00
mrg
f7e3672c89
Route horizontal supplies in write driver.
2022-03-01 14:37:51 -08:00
mrg
2520d9f590
Remove commented code in precharge array
2022-02-25 16:21:12 -08:00
mrg
7b77378927
Add layer to horizontal pin help and use in precharge
2022-02-25 10:45:25 -08:00