Hunter Nichols
009f6e94ea
Reverted gds/sp to reprevious widths.
2018-12-05 17:42:31 -08:00
Hunter Nichols
722bc907c4
Merged with dev. Fixed conflicts in tests.
2018-12-02 23:09:00 -08:00
Matt Guthaus
90d1fa7c43
Bitcell supply routing fixes.
...
Flatten and simplify 1rw 1r bitcell.
Move bitcell vias to M3 if rotation is limited.
Simplify replica bitcell vdd routing.
2018-11-30 12:32:13 -08:00
Matt Guthaus
5d59863efc
Fix p_en_bar at top level. Change default scn4m period to 10ns.
2018-11-27 14:44:55 -08:00
Matt Guthaus
58e41a998f
Replace write driver with human readable sp file.
2018-11-27 11:49:08 -08:00
Matt Guthaus
b5e05ee7a9
Replace write driver with human readable sp file.
2018-11-27 11:42:58 -08:00
Hunter Nichols
05773ad16e
Altered 1rw,1r cell and replica to match tx widths pbitcell in freepdk45
2018-11-14 11:53:13 -08:00
Hunter Nichols
80bc5b49c1
Replaced bb layer with comment layer in 1rw,1r cell. Changed widths in replica cell.
2018-11-14 11:00:37 -08:00
Hunter Nichols
8b6a28b6fd
Changed scmos bitcell 1rw,1r to have same tx widths as pbitcell.
2018-11-13 22:24:18 -08:00
Hunter Nichols
bad55cfd05
Merged with dev. Fixed merge conflict.
2018-11-09 17:18:19 -08:00
Matt Guthaus
83aadc47c9
Remove layer 230 labels from library cells
2018-11-09 11:12:31 -08:00
Matt Guthaus
05c25eb506
Remove layer 230 labels from library cells
2018-11-09 11:08:20 -08:00
Matt Guthaus
9fe64b486c
Remove layer 230 labels from library cells
2018-11-09 11:02:19 -08:00
Hunter Nichols
8957c556db
Added sense amp enable delay calculation.
2018-11-08 23:54:18 -08:00
Hunter Nichols
b8061d3a4e
Added initial code for determining the logical effort delay of the wordline.
2018-11-08 23:54:18 -08:00
Matt Guthaus
c01f0f5274
Merge branch 'dev' into fix_rbl_cell_connections
2018-11-05 16:38:46 -08:00
Matt Guthaus
35f795d44d
Merge branch 'fix_rbl_cell_connections' of https://github.com/VLSIDA/PrivateRAM into fix_rbl_cell_connections
2018-11-05 13:33:17 -08:00
Matt Guthaus
86ef618efd
Update SCN4M_SUBM Magic tech file.
2018-11-05 13:31:53 -08:00
Matt Guthaus
0ec16c2b68
Modify replica cell spice in FreePDK45 to short Qbar to vdd
2018-11-05 11:42:42 -08:00
Matt Guthaus
de6d9d4699
Change freepdk45 rbl cell too.
2018-11-05 11:02:11 -08:00
Matt Guthaus
3c5dc70ede
Comment spice cells. Change replica to short Q to vdd instead of Qbar to gnd.
2018-11-05 10:59:08 -08:00
Hunter Nichols
7461f2b1bf
Merged with dev.
2018-11-02 17:22:09 -07:00
Hunter Nichols
f05865b307
Fixed drc issues with replica bitline test.
2018-11-02 17:16:41 -07:00
Matt Guthaus
6d48bdf55a
Merge branch 'supply_routing' into dev
2018-11-02 11:51:32 -07:00
Matt Guthaus
4e09f0a944
Change layer text to comment to avoid glade reserved keyword
2018-11-02 10:58:00 -07:00
Hunter Nichols
b00fc040a3
Added replica 1rw+1r cell python modules. Also added drc/lvs checks in replica bitline, but test is failing due to pin error in freepdk45 and metal spacing error in scmos.
2018-11-01 12:29:49 -07:00
Hunter Nichols
9321f0461b
Fixed error in control logic test. Added gds/sp for replica cell 1rw+1r.
2018-10-31 00:06:34 -07:00
Hunter Nichols
e5dcf5d5b1
Altered bitline with heuristic to have a larger delay chain for larger column muxes. Also have to alter the feasible period for functional tests to pass.
2018-10-30 22:19:26 -07:00
Hunter Nichols
6efe0f56c2
Added gds/sp for scn4m 1rw+1r bitcell. Passes DRC/LVS in both technologies for single and array.
2018-10-26 00:08:13 -07:00
Hunter Nichols
8e243258e4
Added updated 1rw 1r bitcell with a text boundary. Added bitcell array test for the bitcell.
2018-10-26 00:08:12 -07:00
Hunter Nichols
016604f846
Fixed spacing in golden lib files. Added column mux into analytical model.
2018-10-24 00:16:26 -07:00
Hunter Nichols
62439bdac6
Fixed merge conflicts with sram.py
2018-10-22 17:29:14 -07:00
Hunter Nichols
4f08062268
Added custom 1rw+1r bitcell. Testing are currently failing.
2018-10-22 17:02:21 -07:00
Matt Guthaus
ab7a83b7a5
Remove old setup.tcl and edit one in tech dir
2018-10-20 15:20:15 -07:00
Matt Guthaus
4bf1e206e2
Merge branch 'dev' into supply_routing
2018-10-17 09:47:18 -07:00
Michael Timothy Grimes
e60deddfea
adding 6T transistor size parameters to tech files for use in pbitcell.
2018-10-17 07:28:56 -07:00
Matt Guthaus
4932d83afc
Add design rules classes for complex design rules
2018-10-12 09:44:36 -07:00
Matt Guthaus
823cb04b80
Fix metal4 rules in FreePDK45. Multiport still needs updating.
2018-10-11 09:56:15 -07:00
Matt Guthaus
1ed74cd571
Add minarea_metal4 in freepdk45
2018-10-10 15:33:16 -07:00
Matt Guthaus
c0ffa9cc7b
Clean up magic config file copying. Add warning for missing files.
2018-10-05 08:36:12 -07:00
Matt Guthaus
b3fa6b9d52
Make setup.tcl file a technology file
2018-10-05 08:30:25 -07:00
Matt Guthaus
8d2804b9cb
Supply router working except:
...
Off grid pins. Some pins do now span enough of the routing track and must be patched.
Route track width. Instead of minimum width route, it should be the track width.
2018-09-18 12:57:39 -07:00
Matt Guthaus
60cceab50a
Merge branch 'dev' into supply_routing
2018-09-17 11:34:31 -07:00
Matt Guthaus
f4389bdd8f
Add extra track spacings in some routes.
2018-09-13 14:12:24 -07:00
Matt Guthaus
c9806feb01
Add convert script for mag to gds
2018-09-13 12:55:10 -07:00
Matt Guthaus
63d0523228
Added scn4m_subm.
...
Added scn4m_subm files (instead of scn4me_subm).
Fixed missing cifoutput/cifinput in magic tech file and gds files.
Fixed incorrect M3/via3/M4 design rules.
2018-09-13 12:53:35 -07:00
Matt Guthaus
3539887ee4
Updating ms_flop removal.
...
Updated characterizer for dff.
Added new setup/hold results for dff instead of ms_flop.
Removed ms_flop references in sram-base.
Fixed syntax errors in SCN3ME tech file.
2018-09-13 11:40:24 -07:00
Matt Guthaus
6ab4f5363a
Initial scn4me_subm cells and rules.
2018-09-13 11:03:35 -07:00
Matt Guthaus
f8fc7c12b3
Remove ms_flop and replace with dff. Might break setup_hold tests.
2018-09-13 11:02:28 -07:00
Matt Guthaus
30a77f8527
Convert scn3me_subm tech to lambda rules
2018-09-13 11:01:30 -07:00
Hunter Nichols
5dfa8bc2c6
Fixed known typos of the word transition.
2018-09-10 14:27:26 -07:00
Matt Guthaus
ee05865919
Change SCMOS comment drawing to stipple for easier visibility
2018-09-05 13:43:45 -07:00
Matt Guthaus
93b24d8c85
Merge remote-tracking branch 'origin/dev' into supply_routing
2018-09-05 11:05:41 -07:00
Matt Guthaus
2a27fbc98e
Fix temp directory preservation option.
...
Make labels in freepdk45 replica bitcell lower case.
2018-09-05 10:02:12 -07:00
Matt Guthaus
73e2bd2653
Removed solid display format for comments to allow grid/blockage visibility.
2018-09-04 16:43:59 -07:00
Matt Guthaus
378993ca22
Found rotate bug in transformCoordinate. Cleaned up transFlags.
2018-09-04 16:35:40 -07:00
Matt Guthaus
d721fae5b0
Change labels in replica cell for freepdk45 too
2018-09-04 14:33:14 -07:00
Matt Guthaus
763f1e8dee
Finish renaming replica bitcell and bitline pin names.
2018-09-04 14:03:15 -07:00
Matt Guthaus
4fc9278b73
Convert bounding box layer for SCMOS to bb, gds layer 63.
2018-09-04 13:05:21 -07:00
Matt Guthaus
c3bd54696f
Merge branch 'dev' into multiport
2018-08-31 12:56:25 -07:00
Matt Guthaus
3ab0b569cb
Use a .magicrc in the technology directory to read magic tech files
2018-08-30 14:20:41 -07:00
Matt Guthaus
e36452622c
Preserve same order of design rules in each tech file
2018-08-29 16:12:06 -07:00
Michael Timothy Grimes
1f53a82d56
Fixed name for poly_to_polycontact rule. Previously said poly_to_contactpoly in error.
2018-08-29 15:04:17 -07:00
Michael Timothy Grimes
0182309f92
Editting comment on rule 5.5.b in scmos tech file. Adding complimentary rule to freepdk45 tech file.
2018-08-29 14:51:50 -07:00
Matt Guthaus
6e332e581a
Updated to include local magic rules
2018-08-15 09:46:23 -07:00
Matt Guthaus
49bee6a96e
Remove OEB signal since we split DIN/DOUT ports
2018-08-13 14:09:49 -07:00
Matt Guthaus
368ab718d6
Change internal nets of 6T cell and write driver to have useful names for debugging.
2018-07-26 11:26:47 -07:00
Michael Timothy Grimes
8f131ddb2f
commiting changes from most recent pull from dev
2018-05-22 17:30:51 -07:00
Michael Timothy Grimes
d8cb3653e0
changing case of pins in handmade cell_6t for freepdk45
2018-05-22 14:19:26 -07:00
Michael Timothy Grimes
766042fe69
changed case of handmade bitcell pins from upper case to lower case. Made changes in other modules that are affected by this case. Only for SCMOS for this commit
2018-05-22 14:16:51 -07:00
Matt Guthaus
f34c4eb7dc
Convert entire OpenRAM to use python3. Works with Python 3.6.
...
Major changes:
Remove mpmath library and use numpy instead.
Convert bytes to new bytearrays.
Fix class name check for duplicate gds instances.
Add explicit integer conversion from floats.
Fix importlib reload from importlib library
Fix new key/index syntax issues.
Fix filter and map conversion to lists.
Fix deprecation warnings.
Fix Circuits vs Netlist in Magic LVS results.
Fix file closing warnings.
2018-05-14 16:15:45 -07:00
Matt Guthaus
85b7b73903
Flip sense amp y axis
2018-04-23 10:19:26 -07:00
Matt Guthaus
269d553857
Move sense amp to tri gate routing to M3... not ideal.
2018-04-23 09:14:18 -07:00
Matt Guthaus
e1f4c933e1
Flip sense amp and increase pin size
2018-04-20 17:04:26 -07:00
Matt Guthaus
248decd004
Hand edit sense amp to have full pins rather than split from magic gds write.
2018-04-20 15:46:39 -07:00
Matt Guthaus
c75eafe085
Fix some errors
2018-04-18 09:37:33 -07:00
Matt Guthaus
63a8f7c653
Remove m2 from write driver
2018-04-16 16:15:35 -07:00
Matt Guthaus
e2f93a0a99
Fix via overlap DRC error
2018-04-11 15:48:40 -07:00
Matt Guthaus
ef99d13f1b
Fix via overlap DRC error
2018-04-11 15:46:44 -07:00
Matt Guthaus
6640d3491d
Tri gate and array supply to M2 and M3
2018-04-11 15:11:47 -07:00
Matt Guthaus
06c132b695
Fix drc overlap error
2018-04-11 15:00:56 -07:00
Matt Guthaus
21bc5b7d05
Fix drc overlap error
2018-04-11 14:59:04 -07:00
Matt Guthaus
14ff20fc9e
Fix drc overlap error
2018-04-11 14:56:59 -07:00
Matt Guthaus
d1862eda90
Fix drc overlap error
2018-04-11 14:55:04 -07:00
Matt Guthaus
46c18f53ba
Add M2 vias in ms_flop
2018-04-11 14:10:57 -07:00
Matt Guthaus
0e6720be66
Fix write driver gnd pin layer text
2018-04-11 09:34:13 -07:00
Matt Guthaus
4f8ab78ee2
Change write driver supply pins to M2
2018-04-11 09:29:54 -07:00
Matt Guthaus
80829aa0af
Sense amp vdd/gnd to M2
2018-04-06 17:15:36 -07:00
Matt Guthaus
a6c2e77bcf
Move precharge and column mux cells to pgate directory.
...
Move gnd to M3 in column mux.
Create column mux cell unit test.
2018-04-06 17:15:14 -07:00
Matt Guthaus
a35fc1f339
Add contact to cell6t and replica.
2018-04-04 13:18:12 -07:00
Matt Guthaus
a0bf5345f8
Mostly working for 1 bank.
2018-03-23 08:14:26 -07:00
Matt Guthaus
1f81b24e96
Single bank passing DRC and LVS again.
...
Unfold hierarchical decoder to improve routability.
2018-03-23 08:13:10 -07:00
Matt Guthaus
c020d74f26
Add dff_buf and dff_array modules.
2018-03-23 08:11:51 -07:00
Matt Guthaus
8d9b79dfd8
Add dff_buf for buffered flop arrays.
2018-03-04 16:13:10 -08:00
Matt Guthaus
fc441fe568
Add LICENSE and README from NCSU CDK
2018-03-02 10:42:23 -08:00
Matt Guthaus
7293eb33bc
Merge branch 'dev' of https://github.com/mguthaus/OpenRAM into dev
2018-03-02 10:30:16 -08:00
Matt Guthaus
ae2dbb4cd5
Add display techfiles from NCSU PDKs.
2018-03-02 10:30:03 -08:00
Hunter Nichols
d0dcd9f34b
Fixed comment style on power functions. Also added power parameters to scn3me_subm tech file and tested functionality.
2018-03-01 23:34:15 -08:00
Hunter Nichols
9317eb7e8b
Merge branch 'dev' of https://github.com/mguthaus/OpenRAM into analytical_power
2018-03-01 20:52:40 -08:00
Matt Guthaus
9a6081de0e
Remove KP from SCMOS models to get rid of ngspice error.
2018-03-01 11:10:04 -08:00
Hunter Nichols
e6d6680da1
Fixed conflict in delay.py
2018-02-27 13:02:22 -08:00
Matt Guthaus
2b839d34a3
Get rid of netgen error of undefined dlatch. Fix sp_read to find correct subckt name and pins.
2018-02-27 08:59:46 -08:00
Hunter Nichols
d0e6dc9ce7
First version of analytical power models. Still huge room for improvement. Analytical power printed with 1 verbose level.
2018-02-26 16:32:28 -08:00
Matt Guthaus
9d1f31467e
Move internal power to clock pin. Differentiate leakge power when CSb is high.
2018-02-23 12:21:32 -08:00
Hunter Nichols
d4a0f48d4f
Added power calculations for inverter. Still testing.
2018-02-21 19:51:21 -08:00
Matt Guthaus
b31f3c18af
Change BSIM3 models to version 3.3.0. Add comment about multithreading selection.
2018-02-21 17:50:12 -08:00
mguthaus
5e8dff1e90
Fix unit tests with newest RBL delays. Fix tech problem with new spice models.
2018-02-16 13:54:05 -08:00
mguthaus
1297cb4e40
Convert dff to VTG transistors in 45nm. Correct pin order in dff library cell.
2018-02-16 10:40:05 -08:00
Matt Guthaus
bab9ae8201
Fix off-grid pin and overlap problems for pins in freepdk dff cell.
2018-02-15 17:54:26 -08:00
Matt Guthaus
e66a37c916
Put DFF pins on 2.5nm grid in 45nm.
2018-02-15 11:08:57 -08:00
Matt Guthaus
2d3acb03a1
Add bbox for dff in freepdk45
2018-02-14 17:04:31 -08:00
Matt Guthaus
d89e49aecc
Add metal2 pins to freepdk45 dff.
2018-02-14 16:58:41 -08:00
Matt Guthaus
9559421ca8
Connect dff array clk in rows and columns.
2018-02-14 16:46:26 -08:00
Matt Guthaus
2d87dcda46
dff array done except for clock net
2018-02-14 16:03:29 -08:00
Matt Guthaus
0804a1eceb
Add new DFF. Create DFF module. Start dff_array, not tested.
2018-02-14 15:16:28 -08:00
mguthaus
767990ca3b
Update golden lib tests. Add new generic SCMOS models. Fix tech error with new msflop_in_cap name.
2018-02-13 15:54:50 -08:00
Matt Guthaus
ccc8ed2b48
Add slow and fast SCMOS spice models.
2018-02-12 17:16:40 -08:00
mguthaus
6bf4190dde
Fix missing tech name in path to spice models. Rename models to p,n.
2018-02-12 10:24:15 -08:00
Matt Guthaus
a12ebeed9f
Add multiple process corners. Unit tests use nominal corner only. Add fake SCMOS nominal models, but they are broken.
2018-02-12 09:33:23 -08:00
Matt Guthaus
f86985821a
Begin modifications for corner-based characterization. Made stimuli.py a class. Golden output files are not updated.
2018-02-09 15:33:03 -08:00
Matt Guthaus
f4a99be9d8
Add poly_to_field_poly rule in SCMOS
2018-02-08 16:08:20 -08:00
Matt Guthaus
ed194ad47b
Remove spice dir env variable for freepdk.
2018-02-07 10:05:21 -08:00
Matt Guthaus
4505c0f74e
Improve error to setup model dir path. Use it to override FreePDK45 too.
2018-02-05 15:12:12 -08:00
Matt Guthaus
6f8744712d
Add extra pwc to 6T SCMOS cell.
2018-02-05 14:44:15 -08:00
Matt Guthaus
fb90b8f5fe
Fix pin nameon sense amp spice. Fix NAND2 bug in hierarchical decoder.
2018-02-02 14:08:56 -08:00
Matt Guthaus
64546ad3dd
Change wen to en in spice lib files. Check lvs report insted of stdout with netgen.
2018-02-01 05:38:48 -08:00
Matt Guthaus
512448f9e8
Fix pin names to lower case. Fix write driver DRC errors and LVS error.
2018-01-31 17:37:16 -08:00
Matt Guthaus
51a72e26c7
Fix via1 BL disconnect error.
2018-01-31 10:35:28 -08:00
Matt Guthaus
58da8af619
Make both gnd rails in 6T cell from top to bottom in SCMOS. Connect in bitcell array.
2018-01-31 10:04:28 -08:00
Matt Guthaus
9d10ccff37
Remove spice model dir env variable for scn3me.
2018-01-30 10:54:29 -08:00
Matt Guthaus
c63eb3be3b
Fixed bug with missing tri gate via.
2018-01-29 17:29:30 -08:00
Matt Guthaus
8fcc8a1674
Increase height slightlty to allow pnand3 to pass DRC.
2018-01-29 15:30:58 -08:00
Matt Guthaus
1dc7752429
Fix 6T and replica cell contact spacing issues with Magic DRC.
...
DRC/LVS passing for all parameterized gates.
Magic and GDS match for SCMOS rules again.
2018-01-26 12:39:00 -08:00
Matt Guthaus
fb0355ebaf
Duplicate gnd label on metal1 pin in tri gate.
2018-01-24 13:20:34 -08:00
Matt Guthaus
039f531243
Capitalize bitline labels in write driver
2018-01-24 13:15:14 -08:00
Matt Guthaus
d84242719b
Change pin names in trigate and write_driver.
2018-01-24 13:12:36 -08:00
Matt Guthaus
ac8eada0d8
Fix devices sizes in SCMOS sense amp. Elaborate magic/netgen scripts in comments.
2018-01-24 13:02:55 -08:00
Matt Guthaus
2468f224d9
SCMOS library cells passing LVS (with property errors though). Permute must be enabled before compare, duh.
2018-01-22 17:14:39 -08:00
Matt Guthaus
fb2ed1d46c
Add wells to fix DRC errors in SCMOS library cells.
2018-01-22 16:28:20 -08:00
Matt Guthaus
490a70dee9
Simplify configuration file to allow all options to be over-riden. Move default module types to options.py to simplify config file.
2018-01-19 16:38:19 -08:00
Matt Guthaus
efa465757c
Remove dead code ptx_port.
2018-01-19 16:19:05 -08:00
Matt Guthaus
1701eac1a9
Added workaround to import layouts into Magic. Select and well layers in active contacts. Fixed missing implant enclose active DRC rule in parameterized cells.
2018-01-11 10:24:44 -08:00
Matt Guthaus
e95988c639
Document tech files. Remove unused/redundant rules. Made rule names consistent/simple.
2018-01-08 11:57:51 -08:00
Matt Guthaus
8df46abb30
Move nmos gate to the top of the ptx.
2017-12-01 08:31:16 -08:00
Matt Guthaus
7ff82a2aed
Improved ptx code but removed internal active/poly positions.
2017-11-28 18:13:32 -08:00
Matt Guthaus
257cd62d25
Remove tools from tech file and have search order preference like spice.
2017-11-14 15:27:03 -08:00
Matt Guthaus
3e0f39cd8e
Skeleton code for indirect DRC/LVS/PEX tools.
2017-11-14 14:59:14 -08:00
Matt Guthaus
e06e1691c8
Two bank SRAMs working in both technologies.
2017-09-29 16:22:13 -07:00
Matt Guthaus
d17711c394
Fixed several LVS errors. Bank passes LVS for 2-way and 4-way, but not 1-way or 8-way.
2017-08-24 16:22:14 -07:00
Matt Guthaus
cf940fb15d
Development version of new pin data structure. Tests pass LVS/DRC except for bank level.
2017-08-23 15:02:15 -07:00
Matt Guthaus
20d8c0bc45
Improved characterizer.
2017-07-06 08:42:25 -07:00
Matt Guthaus
34e180b901
Analytical delay model from Bin Wu. Unit test not passing.
2017-05-30 12:50:07 -07:00
mguthaus
7ca5c0b34f
Added zoom to technology file so labels in each tech are readable size. Made default size.
2017-05-23 16:18:11 -07:00
Matt Guthaus
fef708cffd
Add slash in layers.map
2016-11-18 15:05:17 -08:00
Matt Guthaus
8934c1d3a4
Fixed layer map in runset files
2016-11-18 11:21:12 -08:00
Matt Guthaus
b7b3a796f5
Back out spice override for freepdk.
2016-11-10 11:08:48 -08:00
Matt Guthaus
36e3a08fcc
Override spice model dir by environment variable in FREEPDK as well
2016-11-10 09:35:06 -08:00
Matt Guthaus
4f90308c92
Allow spice model to be overriden by environment variable in SCMOS
2016-11-10 09:26:52 -08:00
Matt Guthaus
b51c124810
Moved spice path to technology setup files instead of tech file itself.
2016-11-09 13:29:33 -08:00
Matt Guthaus
04949e093d
Fixed path to non-distributable SCMOS spice models
2016-11-09 13:19:08 -08:00
Matt Guthaus
db8a675d90
Clean up tech files to remove old parameters moved to premade cell classes.
2016-11-09 11:35:32 -08:00
Matt Guthaus
7475004600
Fix path expansion problem with sym link directories.
2016-11-09 11:26:14 -08:00
Matt Guthaus
8b86ee3e2e
Change setup scripts to be dir independent
2016-11-09 09:32:36 -08:00
Matt Guthaus
b04e63dd65
Add back scn3me_subm rule files
2016-11-09 09:32:26 -08:00
Matt Guthaus
f48272bde6
RELEASE 1.0
2016-11-08 09:57:35 -08:00