Jesse Cirimelli-Low
8eb6caa248
fix bitcell array opc errors
2021-12-14 22:15:27 -08:00
mrg
d8d8636d0f
Comment out calibre in freepdk45
2021-11-22 15:54:22 -08:00
mrg
66c9501621
Remove klayout from scmos
2021-11-22 11:33:27 -08:00
mrg
fc0516460d
Use klayout in SCMOS too.
2021-11-22 11:33:27 -08:00
mrg
32c7e90662
Do not run same well spacing for backwards compatibility. Add pbitcell cheat.
2021-11-22 11:33:27 -08:00
mrg
48e35588f4
Fix cheat on wordline driver name.
2021-11-22 11:33:27 -08:00
mrg
bfb33ecbb4
Add DRC rules and display files
2021-11-22 11:33:27 -08:00
mrg
779d6ad2b2
Debugging klayout for SCMOS and FreePDK45.
2021-11-22 11:33:27 -08:00
mrg
0c3ee643ab
Remove add_mod and add module whenever calling add_inst.
2021-11-22 11:33:27 -08:00
mrg
735f9cf450
Remove klayout from scmos
2021-11-22 11:33:27 -08:00
mrg
552811b41b
Use klayout in SCMOS too.
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
43bbd2e722
Fixed incorrect via2 spacing rule in tech file.
2021-11-22 11:33:27 -08:00
mrg
8f296810be
Fix cheat on wordline driver name.
2021-11-22 11:33:27 -08:00
mrg
6ee4697711
Change cell names in lvs file
2021-11-22 11:33:27 -08:00
mrg
5d33db0ee4
Add write driver to well connect list
2021-11-22 11:33:27 -08:00
mrg
5dc885a674
Update nwell spacing to be same potential
2021-11-22 11:33:27 -08:00
mrg
2e846cb22f
Fix regexes for cells without well taps
2021-11-22 11:33:27 -08:00
mrg
acc9b2d223
Connect pwell and bulk when no tap
2021-11-22 11:33:27 -08:00
mrg
141b42dc0e
Add DRC rules and display files
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
f764ac446c
Use Caravel-like sky130 install path with ngspice models.
2021-11-17 13:19:23 -08:00
mrg
968a233b82
Don't install in share/pdk
2021-11-08 09:31:56 -08:00
mrg
c102ed728c
Move tests to test Makefile
2021-11-03 11:36:19 -07:00
mrg
af67b738af
Add ability to run a single unit test in docker
2021-11-03 08:32:29 -07:00
mrg
d7a20bc69b
Debug initial docker run scripts
2021-11-02 15:07:18 -07:00
mrg
fa2232fc11
Initial commit of sky130 config files
2021-10-04 15:16:28 -07:00
Hunter Nichols
39ae1270d7
Merge branch 'dev' into cacti_model
2021-09-20 17:01:50 -07:00
Hunter Nichols
bd57a043d7
Removed reference to lamba in freepdk45 tech file. Fixed issue with transconductance equation.
2021-09-20 16:51:02 -07:00
mrg
f2882782e7
Use calibre by default until klayout LVS is clean.
2021-09-20 11:05:49 -07:00
mrg
10753a0802
Change via2 to 65nm to be compatible with Calibre FreePDK45 deck
2021-09-16 15:42:02 -07:00
mrg
0a91bd01c8
Fix DRC and LVS scripts
2021-09-16 15:37:26 -07:00
mrg
8081bea708
Shrink 70nm contacts to 65nm
2021-09-16 15:28:39 -07:00
mrg
c5f372c264
Fix via2 to match incorrect FreePDK45 rules
2021-09-15 11:58:31 -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
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
Hunter Nichols
de2dae4030
Changed unit capacitance from CACTI estimation to PTM estimation.
2021-08-25 15:23:12 -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
mrg
c117238fa7
Initial klayout DRC/LVS options
2021-08-03 14:41:09 -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
mrg
e391186581
Update klayout tech files
2021-07-28 11:42:56 -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
10085d85ab
Changed CACTI drain cap function to be roughly equivalent but use less parameters. Added drain cap functions to relevant modules. Added drain cap parameters in tech files.
2021-07-21 14:59:02 -07:00
Hunter Nichols
a312639ef8
Added tech params for on-resistance and load capacitances
2021-07-21 11:00:32 -07:00
Hunter Nichols
ebc91814e5
Fixed various issues with imported code from CACTI, added CACTI as an option for analytical sim, added placeholder names in tech files for CACTI
2021-07-12 15:48:47 -07:00
mrg
9720e5af29
Remove default array row/col multiple
2021-06-29 11:28:19 -07:00
Hunter Nichols
294ccf602e
Merged with dev, addressed conflict in port data
2021-06-21 17:23:32 -07:00
Hunter Nichols
8ee6d3be6c
Added more data for regression modules.
2021-06-21 17:21:00 -07:00
Jesse Cirimelli-Low
8346ad736e
add dimension contraints to other tech files
2021-06-18 14:36:15 -07:00
Hunter Nichols
4ec2e1240f
Merge branch 'dev' into automated_analytical_model
2021-06-09 15:45:41 -07:00
Hunter Nichols
c50ffe70b3
Added more configs for model and respective data.
2021-06-09 15:42:15 -07:00
Hunter Nichols
7a60eabdfe
Add more freepdk45 data from regression model.
2021-06-09 13:31:38 -07:00
Hunter Nichols
a73bfe6c2c
Added more configs for model and data from scn4m_subm run.
2021-06-09 10:35:58 -07:00
Hunter Nichols
54639bbb94
Added more data for regression models
2021-06-04 13:37:21 -07:00
Jesse Cirimelli-Low
6705f99855
merge in dev
2021-05-28 14:06:23 -07:00
Hunter Nichols
a53c6c51ed
Added sim data for freepdk45 and removed stale data
2021-05-26 18:40:46 -07:00
Hunter Nichols
a4cb539f72
Removed old sim data csvs and added a new version. Added a default check for LAS in data extraction.
2021-05-24 10:44:46 -07:00
Jesse Cirimelli-Low
e976c4043b
Merge branch 'dev' into laptop_checkpoint
2021-04-14 15:58:06 -07:00
ota2
15e57d89ca
fix end subckt typo
2021-02-27 18:28:07 -05:00
ota2
8403749fec
Add Q and Qbar labels
2021-02-27 18:27:08 -05:00
jcirimel
b18e2eae8d
remove debug lines and merge
2021-02-09 20:53:23 -08:00
jcirimel
dbe8a7f1af
fix pwell pin shape bug
2021-02-09 20:51:50 -08:00
Hunter Nichols
df8d59f32e
Merge branch 'dev' into automated_analytical_model
2021-02-01 01:49:45 -08:00
Matt Guthaus
4b1c359089
update copyright year.
2021-01-22 11:24:53 -08:00
Hunter Nichols
c8e631108a
Updated sim_data for scmos
2021-01-22 00:51:14 -08:00
Hunter Nichols
59200d1048
Added updated data for scmos, removed unused files.
2021-01-13 13:09:21 -08:00
Hunter Nichols
ed3d39a1b8
Added updated model data with slews and loads. Changed linear regressions to account for additional models.
2021-01-13 13:04:34 -08:00
Hunter Nichols
32ad436153
Added freepdk45 data for linear regression
2020-12-22 15:19:31 -08:00
Hunter Nichols
d6177b34f0
Added data which includes corner as an input feature
2020-12-17 12:59:06 -08:00
Hunter Nichols
f1f6a1a520
Removed windows end of line characters.
2020-12-15 12:08:31 -08:00
Hunter Nichols
06232dee8f
Added leakage and slew data. Added temporary fix to model output format.
2020-12-14 14:32:10 -08:00
Hunter Nichols
25544c3974
Added similar interface to linear regression as elmore
2020-12-14 13:59:31 -08:00
Hunter Nichols
b1a7e0e55b
Added power data
2020-12-09 15:21:22 -08:00
Hunter Nichols
ce9036af76
Moved model scripts to characterizer dir
2020-12-02 13:25:03 -08:00
Hunter Nichols
acf8e46b55
Fixed import of utility scripts for model generation
2020-11-20 13:43:36 -08:00
Hunter Nichols
1143dbec94
Added initial scripts and data to generate analytical model
2020-11-20 12:40:04 -08:00
mrg
8021430122
Fix pbitcell erros
2020-11-13 15:55:55 -08:00
mrg
c472a94f1e
Rework bitcells.
...
Name them 1port and 2port consistently.
Allow cell overrides to cell_1rw and cell_2rw or other.
Will use 2rw for 1rw/1r, 2rw, 1w/1r, etc.
2020-11-13 10:07:40 -08:00
mrg
cf63499e76
Convert bitcells to 1port and 2port
2020-11-13 08:09:21 -08:00
mrg
a2f29e5edd
Fix missing nand4_leakage #97
2020-11-12 09:48:08 -08:00
mrg
66633a843b
Add PDK layer names to tech file
2020-11-09 09:10:43 -08:00
mrg
423e2c165f
Remove test cell in scn4m_subm tech.py
2020-11-03 16:38:55 -08:00
mrg
29ac541b28
Refactor dynamic cell name to utilize base class
2020-11-03 13:18:46 -08:00
mrg
87419bd640
Fix bitcell and pbitcell with different cell names
2020-11-03 11:30:40 -08:00
mrg
da721a677d
Remove EOL whitespace globally
2020-11-03 06:29:17 -08:00
mrg
611a4155b9
Add initial custom layer properties.
2020-10-27 15:11:04 -07:00
mrg
fecf3b2009
Remove sky130 link
2020-10-12 16:25:07 -07:00
mrg
ef310970bf
Use new Google PDK lib
2020-10-12 15:46:11 -07:00
jcirimel
888646cdf9
merge in wlbuf and begin work on 32kb memory
2020-10-06 05:03:59 -07:00
jcirimel
d22164bd48
single port progess
2020-09-14 18:11:38 -07:00
mrg
71d86f88b0
Merge branch 'dev' into wlbuffer
2020-09-10 13:05:14 -07:00
mrg
138cbfac15
Flatten dummy pbitcell too
2020-09-09 12:58:22 -07:00
jcirimel
9cecf367ee
Merge branch 'dev' into pex
2020-08-17 17:49:41 -07:00
jcirimel
35eac54c0d
update freepdk bitcell for pex
2020-08-17 17:47:43 -07:00
mrg
dfb593e9b4
Add draft lyt file -- connectivity not working
2020-08-14 10:38:22 -07:00
jcirimel
19f4e30989
change Qbar to Q_bar in freepdk45 bitcells
2020-08-04 15:21:54 -07:00
jcirimel
df4a231c04
fix merge conflicts
2020-07-21 11:38:34 -07:00
mrg
80070dff41
Move write_driver din left to avoid control signal in spare columns.
2020-07-16 14:47:14 -07:00
mrg
a989ea63a0
Move magic/netgen files to tech dir
2020-07-09 11:33:14 -07:00
mrg
20324ab3c4
Revert write driver pin spacing
2020-06-28 14:55:58 -07:00
mrg
e774314add
Separate write driver pins by M3 pitch
2020-06-28 14:14:48 -07:00
mrg
a7ee17eb2d
Move output of sense amp to side like other techs
2020-06-26 15:29:27 -07:00
mrg
cddb16dabc
Separate active and poly contact to gate rule
2020-06-24 09:17:39 -07:00
mrg
157926960b
Flip freepdk45 flop, dff_buf route layer change
2020-06-09 13:48:16 -07:00
mrg
e69b665689
Flatten pbitcell_1 too
2020-06-02 09:31:43 -07:00
mrg
b7c66d7e07
Changes to simplify metal preferred directions and pitches.
...
Changes to allow decoder height to be a 2x multiple of bitcell height.
Split of control logic tests.
Fixed track spacing in SRAM and channel router
PEP8 cleanup.
2020-05-10 11:32:45 -07:00
mrg
5f76514cf0
Remove end of line whitespace
2020-04-21 15:20:51 -07:00
Jesse Cirimelli-Low
aedbc5f968
merge custom cell and module properties
2020-02-12 04:09:40 +00:00
Jesse Cirimelli-Low
18573c0e42
add module properties to other technologies
2020-02-05 22:25:35 +00:00
mrg
79391b84da
Cleanup and rename vias.
2020-01-30 01:45:33 +00:00
Matt Guthaus
3147b99ce0
Merge remote-tracking branch 'bkoppelmann/bit-sym' into dev
2020-01-29 11:24:09 -08:00
Bastian Koppelmann
df9f351a91
Add custom cell properties to technologies
...
this is technology specific database to store data about the custom
design cells. For now it only contains on which axis the bitcells are
mirrored. This is a first step to support thin cells that need to be
mirrored on the x and y axis.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-01-28 15:46:14 +01:00
Bastian Koppelmann
407bd026ee
tech: Make m3_stack the power_grid stack for FreePDK45/scn4m
...
explicitly stating the power_grid makes people porting a new technology
aware of this option.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-01-28 12:06:38 +01:00
Jesse Cirimelli-Low
30604fb093
add multiport support for pex labels
2020-01-28 00:28:55 +00:00
mrg
9beb0f4ece
Add separate well design rules.
...
Needed to fix various pgates with wells.
Did some cleanup of these gates as well.
2020-01-23 19:43:41 +00:00
Jesse Cirimelli-Low
2733c3bf3f
fix custom bitcell labeling; fix gds scaling in labeling
2020-01-15 09:00:02 +00:00
Jesse Cirimelli-Low
3ab99d7f9c
update gds library, generalize geometry reverse transform function
2019-12-24 05:01:55 +00:00
Jesse Cirimelli-Low
5b44dce50d
added labels to scn4m magic libaries
2019-12-23 02:22:11 +00:00
Matt Guthaus
a8d370ee8c
Improved comments in tech files
2019-12-20 16:35:31 -08:00
Matt Guthaus
b7d78ec2ec
Fix ptx active contact orientation to non-default M1 direction.
2019-12-19 12:54:10 -08:00
jcirimel
f0958b0b11
squashed update of pex progress due to timezone error
2019-12-18 03:03:13 -08:00
Matthew Guthaus
8e151553e4
Update contact types.
...
Use preferred directions in tech files.
Programmatically generate based on interconnect stacks.
2019-12-17 23:45:07 +00:00
Matt Guthaus
24546461ad
Fix over-writing of active spacing rule.
2019-12-17 11:23:59 -08:00
Matt Guthaus
ed28b4983b
Clean up and generalize layer rules.
...
Convert metalN to mN.
Generalize helper constants in modules for
space, width, enclose, etc.
Use layer stacks whever possible.
Try to remove drc() calls in liu of helper constants.
2019-12-17 11:03:36 -08:00
Bastian Koppelmann
1380cbc50c
technology: Add tech_module to all technologies
...
this allows each technology to override each cell class.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2019-12-16 16:51:41 +01:00
Matt Guthaus
3ad7c8a8b5
Fix freepdk45 tech layer stacks
2019-12-13 14:25:00 -08:00
Matt Guthaus
e143a6033f
Use layer stacks from tech file in design class and throughout
2019-12-13 14:13:41 -08:00
Matt Guthaus
e048ada23c
Abstract basic DRC checks
2019-12-11 17:56:55 -08:00
Matthew Guthaus
d2cbc46527
Fix error
2019-12-06 00:05:26 +00:00
Matthew Guthaus
7397f110c5
Add bbox for special DRC rule boundary
2019-12-05 23:14:25 +00:00
Matt Guthaus
69bb245f28
Updates to gdsMill/tech layers
...
Create active and poly contact types.
Define standard cell boundary option.
DataType and PurposeLayer are the same. Text must have type 0.
Remove vector from vlsiLayout. More debug in reader.
2019-12-04 16:12:53 -08:00
Matt Guthaus
6ef1b6a4ec
Blackbox option for DRC waivers
2019-11-29 15:50:32 -08:00
Matt Guthaus
2a912dab7a
Remove unused config files
2019-11-29 12:35:35 -08:00
Matt Guthaus
d511f648c6
Move DRC/LVS/PEX tools to tech file.
2019-11-29 12:01:33 -08:00
Matt Guthaus
b71d630643
None for layer means unused.
2019-11-26 13:34:39 -08:00
Matt Guthaus
102758881a
Use layer instead of special flags for wells
2019-11-26 13:22:52 -08:00
Matthew Guthaus
131f4bda4a
Add layer-purpose GDS support. Various PEP8 fixes.
2019-11-14 18:17:20 +00:00
Matt Guthaus
ecbed870c0
Remove blockage layer.
2019-10-30 06:54:11 -07:00
Matt Guthaus
38213d998f
Add separate layer and purpose pairs to tech layers.
2019-10-25 10:03:25 -07:00
Matt Guthaus
31825d9d77
Fix magicrc for multiple openram tech paths
2019-10-24 13:17:33 -07:00
Hunter Nichols
e4b490051d
Adjusted vth0 of FF and SS models in scn4m from nominal.
2019-10-07 15:26:20 -07:00
Hunter Nichols
1bdd9f56d6
Changed scn4m tau and parasitic model values to account for spice model changes.
2019-09-30 14:22:34 -07:00
Hunter Nichols
84d41dd380
Replaced scn4m models. FF/SS are duplicated from nominal models.
2019-09-26 23:45:36 -07:00
Matt Guthaus
4c3b171b72
Share nominal temperature and voltage. Nominal instead of typical.
2019-09-04 16:53:58 -07:00
Matt Guthaus
585ce63dff
Removing unused tech parms. Simplifying redundant parms.
2019-09-04 16:08:18 -07:00
Matt Guthaus
283183ae9f
Add Metal3/Via3/Metal4 on right gds layers
2019-09-03 15:28:20 -07:00
Matt Guthaus
2af72db5dc
Add comment layer to display.drf so it is included in .lyp file.
2019-08-27 08:51:34 -07:00
Matt Guthaus
fc0fe91bb4
Added auto-converted lyp files to use klayout for viewing results
2019-08-26 10:41:14 -07:00
jsowash
d5e331d4f3
Connected en together in write_mask_and_array.
2019-08-09 14:27:53 -07:00