mrg
c8905c410a
Fix case where distance is zero length comparison
2022-05-17 15:49:06 -07:00
mrg
f1f4453d14
Add column decoder module with power supply straps.
2022-05-17 13:32:19 -07:00
mrg
8217a84165
Uniquify overlap points during segment overlap computation.
2022-05-17 13:31:23 -07:00
mrg
9b592ab432
Fix missing hash recompute in vector class.
2022-05-17 13:30:41 -07:00
mrg
bed12d2a9e
pbitcell vdd/gnd are on layer m1 only.
2022-05-16 17:02:53 -07:00
mrg
bdd334bce9
Add layer and directions to pbitcell
2022-05-16 16:11:13 -07:00
mrg
4be075e586
Overlap length can include a rectangle overlap.
2022-05-16 14:57:32 -07:00
mrg
3101643964
Check for no pins and fix closest pin return type
2022-05-13 14:34:26 -07:00
mrg
74c2c5ae0e
Don't double prefix a name
2022-05-13 14:32:52 -07:00
mrg
fbb2ea5fb6
Intersection now returns a pin_layout fixed during LEF computation.
2022-05-13 13:56:16 -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
8f2d787d53
Add min area metal in preferred direction
2022-05-11 10:50:32 -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
942ab89754
Remove debug output.
2022-05-02 16:42:04 -07:00
mrg
3e48991acb
Skip partial pins if they are too small to prevent DRC overlap errors.
2022-05-02 16:07:05 -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
23b5655cab
Split replica_bitcell_array test
2022-03-23 15:59:29 -07:00
mrg
9f7426052d
Split port_address tests
2022-03-23 14:46:41 -07:00
mrg
e31bec131c
Remove 1rw1r combined test and add separate tests.
2022-03-22 11:59:04 -07:00
mrg
a8f50f212e
Change track spacing for freepdk45
2022-03-18 16:01:57 -07:00
mrg
2bfc94fcdd
Add unblocking of source and destination pins to router.
2022-03-18 14:44:13 -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
229a3b5b3d
By default uniquify instances based on macro name.
2022-03-11 18:01:45 -08:00
mrg
4567c2ebcd
Add space after docker command. Regress to klayout v0.27.4
2022-03-10 08:37:48 -08:00
mrg
e16defdae4
Add a sleep to see if problem is async one
2022-03-09 10:24:50 -08:00
mrg
b841e18abd
Remove breakpoint
2022-03-07 16:59:55 -08:00
mrg
2796800898
Fix bug with incorrect pitch while adding channel route trunks.
2022-03-07 16:12:20 -08:00
mrg
772fbd6f96
Remove extra well tap to save area.
2022-03-07 15:38:25 -08:00
mrg
f17d661e3a
Add spare column option to tests for sky130
2022-03-07 07:58:41 -08:00
mrg
4faf97005f
Add even columns for sky130 to ring test
2022-03-06 12:21:09 -08:00
mrg
6eeb81b9fe
Skip sky130 23_lib tests and 4096 row hierarchical decoder test
2022-03-06 11:27:13 -08:00
mrg
a0f1327f5e
Add odd rows to 23_lib tests
2022-03-06 11:26:18 -08:00
mrg
6da3e44b6f
Split up 06_hierarchical_decoder test
2022-03-06 11:26:03 -08: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
febf7031b1
Fix wrong power layer for min area constraint
2022-03-02 17:04:54 -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
4fac069c3c
Skip hspice tests in docker
2022-03-01 14:44:04 -08:00
mrg
f7e3672c89
Route horizontal supplies in write driver.
2022-03-01 14:37:51 -08:00
mrg
0908aa9e25
Add route vertical pins
2022-03-01 14:37:09 -08:00
mrg
c12c006799
Add verbose option
2022-03-01 10:50:49 -08:00
mrg
38494458e3
Fix incorrect port 1w to 1r
2022-03-01 10:44:56 -08:00
mrg
c223c1ad1c
Run docker pull before running all tests for regression
2022-03-01 10:33:40 -08:00
mrg
184888b370
Skip 16 way test for now
2022-02-28 12:03:01 -08:00
mrg
27b4d2edb1
Add 16 way mux SRAM tests
2022-02-28 11:53:24 -08:00
mrg
54bd022efc
Rework precharge route supply horizontally
2022-02-28 11:36:10 -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
mrg
82c2bc329f
Split bank and col mux tests.
2022-02-23 15:39:32 -08:00
mrg
5376b5bf20
Fix offset to center select signal between bitlines
2022-02-23 15:38:11 -08:00
mrg
6389d4ac82
Skip all func tests
2022-02-23 15:31:15 -08:00
mrg
baf369fc96
Convert power to rails rather than pins in sense amp and precharge
2022-02-23 14:06:49 -08:00
mrg
d4c14d7d19
Add horizontal pin helper function
2022-02-23 14:06:19 -08:00
mrg
5451a8d07a
Don't make internal bus pins because magic will extract ports
2022-02-23 14:06:01 -08:00
mrg
6a295aeb38
Give feedback warnings in magic output
2022-02-23 13:05:03 -08:00
mrg
1742927751
Split port data tests into individual tests
2022-02-23 11:12:32 -08:00
mrg
53e4c45038
Add tap to nand in pnand
2022-02-23 09:30:31 -08:00
mrg
abac5a11ab
Move power supply stack to design
2022-02-18 15:02:45 -08:00
mrg
4590874ffa
Merge branch 'dev' into sky130_fixes
2022-02-16 09:31:49 -08:00
Jesse Cirimelli-Low
1a0861539a
Merge branch 'opc_fix' into dev
2022-02-15 14:38:20 -08:00
Jesse Cirimelli-Low
a54eb90371
place decoder rail contacts at least m2 min spacing away
2022-02-15 14:37:07 -08:00
mrg
a75d9fcc76
Fix failing test output of Makefile
2022-02-11 13:11:24 -08:00
mrg
ab3acb99da
Fix offsets of new nwell/pwell contacts.
2022-02-11 12:09:42 -08:00
mrg
a35ab45843
Conditionally set TEST_TECHS. Skip pand4 for sky130.
2022-02-10 11:30:20 -08:00
mrg
c471823626
Run individual tests on all technologies by default
2022-02-10 11:18:52 -08:00
mrg
51097b2c8b
Revert rm in makefile
2022-02-02 09:38:27 -08:00
mrg
39f1199b63
Always delete result subdir to prevent bad and ok simultaneously
2022-02-02 09:36:19 -08:00
mrg
8fdd4966a7
Initial update of new psdm/nsdm implants
2022-02-02 09:36:05 -08:00
mrg
2d2620d21a
Remove dir from bad tests
2022-02-02 07:11:13 -08:00
mrg
c75968401c
Update for detailed skips. Added some sky130 skips.
2022-02-08 16:04:43 -08:00
mrg
16238af584
Print failing tests before exit
2022-02-08 13:07:37 -08:00
mrg
4d62cbd345
Move pdk paths to docker invocation
2022-02-08 12:05:39 -08:00
mrg
b1e1763e14
Fix PDK path for freepdk45 and list FAILED tests explicitly at end.
2022-02-08 11:35:29 -08:00
mrg
b641bc8eef
Check proper subdir for bad files
2022-02-07 16:30:18 -08:00
mrg
a3d3aa514b
Add target for all technologies
2022-02-07 11:27:10 -08:00
mrg
ee97d87bdf
Fix total regress pass or fail check.
2022-02-06 12:36:22 -08:00
mrg
89688de3cf
Remove outside of docker space
2022-02-06 09:48:30 -08:00
mrg
93c6565b66
Add total failure of tests
2022-02-06 09:13:36 -08:00
mrg
8653b88206
Remove working temp directories
2022-02-06 09:06:20 -08:00
mrg
d716a1c361
Don't stop on fail, archive all results, create .bad file on fail.
2022-02-05 07:50:06 -08:00
mrg
e45e2f77c9
Rework regression to use docker.
2022-02-04 17:43:48 -08:00
mrg
049751ae1f
FreePDK45 running with klayout and Sky130 running with magic.
2022-02-03 10:19:28 -08:00
mrg
63a6168b35
Merge branch 'dev' into klayout
2022-02-01 11:57:56 -08:00
mrg
06d391b3e3
Keep files during runs in Makefile
2022-01-13 14:41:24 -08:00
mrg
47690e0076
Merge branch 'dev' into docker
2021-12-29 14:42:32 -08:00
Jesse Cirimelli-Low
9e85d17fbe
merge rbc lvs fixes
2021-12-23 21:21:10 -08:00
Jesse Cirimelli-Low
c24c37a15a
Merge branch 'dev' into lvs
2021-12-22 15:46:09 -08:00
mrg
34dd46c918
Exceptions for sky130 spare columns tests
2021-12-17 10:30:43 -08:00
mrg
82a1a8d87f
Add exception for sky130 klayout LVS device output
2021-12-17 10:28:12 -08:00
mrg
e460eff014
Add per tool lvs directories
2021-12-17 10:21:34 -08:00
mrg
4fa084f272
Add 1rw decoder test
2021-12-17 10:18:20 -08:00
Jesse Cirimelli-Low
8879820af4
replica col lvs fix
2021-12-15 14:19:52 -08:00
mrg
0c3ee643ab
Remove add_mod and add module whenever calling add_inst.
2021-11-22 11:33:27 -08:00
mrg
b94dd79125
Add labels to noconn in dummy bitcell for klayout lvs
2021-11-22 11:33:27 -08:00
mrg
b7362ba011
Do not run same well spacing for backwards compatibility. Add pbitcell cheat.
2021-11-22 11:33:27 -08:00
mrg
7d7ffe76e0
Debugging klayout for SCMOS and FreePDK45.
2021-11-22 11:33:27 -08:00
mrg
c2e258709b
Merge branch 'lvs' into dev
2021-11-22 11:33:12 -08:00
mrg
ce40f2ae28
Allow non-unique matching for replica bitcell test.
2021-11-19 09:42:06 -08:00
Jesse Cirimelli-Low
2fb08af684
change col mux array poly routing from straight to 'L'
2021-11-17 17:22:03 -08:00
mrg
edf3a701e4
Update options for arguments and readme.
2021-11-16 14:33:35 -08:00
mrg
c102ed728c
Move tests to test Makefile
2021-11-03 11:36:19 -07:00
mrg
9d49a369ea
Initial docker setup
2021-11-02 11:10:59 -07:00
mrg
e6a009312e
Move mem reg before usage for compatibility
2021-10-13 09:46:02 -07:00
Jesse Cirimelli-Low
5792256db1
route spare col
2021-10-05 15:28:20 -07:00
samuelkcrow
dfbf0ba6e1
Make git dependency visible and enforce it.
...
resolves #87
2021-10-04 14:43:14 -07:00
Hunter Nichols
39ae1270d7
Merge branch 'dev' into cacti_model
2021-09-20 17:01:50 -07:00
Hunter Nichols
116f102ebf
Fixed units in LIB files when cacti is selected as the model. Changed model data gather to only use the extended config.
2021-09-20 16:35:16 -07:00
mrg
fe077e79d5
Use local temp DRC/LVS rules file for running.
2021-09-20 11:06:27 -07:00
mrg
be92282150
Prefer open source over commercial
2021-09-20 11:02:40 -07:00
Hunter Nichols
11ff8713c5
Added shared config which is imported in all model configs. Shared config only hold model type for now.
2021-09-15 13:00:51 -07:00
mrg
11c5a644eb
Remove previous breakpoint
2021-09-15 11:43:40 -07:00
mrg
f3d1c6edc3
klayout DRC/LVS working
2021-09-15 11:33:39 -07:00
mrg
554b3f4ca7
Initial klayout DRC/LVS options
2021-09-07 16:51:16 -07:00
mrg
8d9a4cc27b
PEP8 cleanup
2021-09-07 16:49:44 -07:00
mrg
03f87cd681
Add str function for sram_config
2021-09-07 16:49:31 -07:00
mrg
178f1197ca
Use spare rows only for sky130
2021-09-07 16:49:11 -07:00
Hunter Nichols
1236a0773a
Added SA parameters for CACTI delay. Fixed syntax issues in several modules. Fixed issue with slew not being propogated to the next delay stage.
2021-09-07 15:56:27 -07:00
mrg
83f2d14646
Fix unit test errors.
...
Skip test 50s for now.
Change golden power values in xyce delay test.
2021-09-07 14:07:22 -07:00
mrg
b2389fe00f
Change tolerance to 30%
2021-09-03 14:04:39 -07:00
mrg
3f031a90db
Specify two stage wl_en driver to prevent race condition
2021-09-03 12:52:17 -07:00
Hunter Nichols
6b8d143073
Changed cacti RC delay function to better match cacti code in bitcell. Sense amp also has similar changed but is missing transconductance parameter.
2021-09-01 14:27:13 -07:00
Matt Guthaus
ea04900acb
Merge pull request #121 from erendo/fix_verilog
...
Fix Verilog
2021-08-30 09:33:35 -07:00
erendo
e9b370bf21
Fix write masks in Verilog
2021-08-29 00:31:32 +03:00
Hunter Nichols
680d7b5d93
Added special RC delay functions for the bitline and sense amp to match CACTI. Contains temporary parameters which need to be defined.
2021-08-25 16:12:05 -07:00
mrg
6f4d9f17af
v1.1.18
2021-08-18 11:30:00 -07:00
Hunter Nichols
12c03ddd9f
Fixed issues with load capcitance units. Changed freepdk45 r and c wire values to be more in line with cacti.
2021-08-16 22:58:26 -07:00
Hunter Nichols
b3500982ca
Fixed issue with wire resistance in total resistance equations for cacti. Fixed issue with sense amp resistance values.
2021-08-04 16:10:27 -07:00
Hunter Nichols
134bf573ec
Removed windows EOL characters.
2021-08-04 16:09:04 -07:00
Hunter Nichols
b44f840814
Changed delay calculation to include wire resistance and wire capacitance. Added bitline r and c values.
2021-08-01 19:25:54 -07:00
Hunter Nichols
1b89533d7b
Added unit r and c values with m2 minwidth incorporated to match CACTI params
2021-08-01 00:23:59 -07:00
biarmic
85955ce298
Fix addr flop in Verilog
2021-07-30 12:22:55 +03:00
mrg
e88f927e01
v1.1.17
2021-07-29 11:41:41 -07:00
mrg
aa0e221863
Merge branch 'dev' of github.com:VLSIDA/PrivateRAM into dev
2021-07-28 12:07:05 -07:00
mrg
90a4ad4d75
Update size of 30 config tests to 2 bits.
2021-07-28 12:05:31 -07:00
mrg
9694237dba
Flip MSB and LSB in lib file due to bug report
2021-07-28 08:12:33 -07:00
Hunter Nichols
54cbef1aff
Replaced cacti tech params with already existing params. Added an existence check in design_rules.
2021-07-27 14:31:22 -07:00
Hunter Nichols
1e08005639
Merge branch 'dev' into cacti_model
2021-07-26 14:35:47 -07:00
Hunter Nichols
3e0a49e58d
Added options for the model type in timing graph (cacti or elmore)
2021-07-25 22:28:23 -07:00
Hunter Nichols
5ad86538d4
Renamed graph_util to timing_graph to match the module name
2021-07-25 20:21:54 -07:00
Hunter Nichols
7fc4469b97
Converted input load to Farads for cacti module to fit other units.
2021-07-25 17:22:03 -07:00
Hunter Nichols
7dd9023ce4
Uncommented horowitz delay function.
2021-07-21 15:02:39 -07:00