jcirimel
13e2a9f5f7
fix missed self.left_rbl refactor
2020-10-06 05:11:15 -07:00
jcirimel
888646cdf9
merge in wlbuf and begin work on 32kb memory
2020-10-06 05:03:59 -07:00
mrg
a145a37cf7
PEP8 fixes in regress.py
2020-10-05 15:56:12 -07:00
mrg
cb35c0aff4
Add command line -j option for number of threads.
2020-10-05 15:49:00 -07:00
mrg
da83824a70
Merge branch 'wlbuffer' into dev
2020-10-05 15:33:54 -07:00
mrg
c4952ca8be
Skip full sram pex test too slow
2020-10-05 13:51:20 -07:00
mrg
9fe6358569
Change .spinit to .spiceinit
2020-10-05 13:50:04 -07:00
jcirimel
5246d0a93b
track s8 customs modules
2020-10-05 12:10:44 -07:00
mrg
4a58f09c1c
Use 4x16 decoder with dual port bitcell in tests.
2020-10-05 10:52:56 -07:00
mrg
c06b02e6fc
Rename single_level_column_mux to just column_mux
2020-10-05 08:56:51 -07:00
mrg
f8146e3f69
Add decoder4x16
2020-10-02 15:52:09 -07:00
mrg
64cc620440
Add sram pex test
2020-10-02 14:55:10 -07:00
mrg
1fc4040607
Add pand4 and pnand4
2020-10-02 14:54:12 -07:00
mrg
a62b82128c
Skip riscv func test because too slow
2020-10-02 13:33:58 -07:00
mrg
1e24b780bb
Initial pex sram test.
2020-10-02 13:32:52 -07:00
mrg
b32c123dab
PEP8 cleanup. Un-hard-code bitcell layers. Remove dead variable.
2020-10-01 11:10:18 -07:00
mrg
18c8ad265e
Unique name for sram channel routes
2020-10-01 09:55:34 -07:00
mrg
aaa36bf5cf
Default to 2 threads only
2020-10-01 09:55:17 -07:00
mrg
d315ff18e5
Add num_threads to options. PEP8 cleanup.
2020-10-01 08:07:03 -07:00
mrg
b81cdab0d6
Use unique instance names for channel routes.
2020-10-01 07:43:06 -07:00
mrg
8ce23d7f17
Provide unique WL driver instance name
2020-10-01 07:17:32 -07:00
mrg
bd125e2ed3
Check for duplicate instance names.
2020-10-01 07:17:16 -07:00
Matt Guthaus
2b475670f7
Check for failed result in functional simulation
2020-09-30 12:40:07 -07:00
Matt Guthaus
112d57d90a
Enable riscv tests
2020-09-30 12:39:40 -07:00
mrg
f4e6a8895b
Update riscv unit test
2020-09-30 08:50:58 -07:00
jcirimel
7cbf456a4f
sky130 rba done
2020-09-30 07:34:05 -07:00
mrg
b147e8485c
PEP8 formatting
2020-09-29 16:52:27 -07:00
mrg
066570bfeb
Fix length of write driver
2020-09-29 16:51:55 -07:00
mrg
8e908f016e
PEP8 formatting
2020-09-29 13:43:59 -07:00
mrg
bca69b24e3
Optional number of functional cycles
2020-09-29 13:43:54 -07:00
mrg
54890a8d77
Add new golden data
2020-09-29 13:43:34 -07:00
mrg
449a4c2660
Exclude bitcells in other local areas not of interest
2020-09-29 12:15:42 -07:00
mrg
0c280e062a
Fix func test with row/col of 0. PEP8 cleanup. Smaller global test case.
2020-09-29 11:35:58 -07:00
mrg
4b5bbe755f
PEP8 cleanup. Fix cur_slew bug.
2020-09-29 11:13:58 -07:00
mrg
9032bb9869
Add global wordline delay test
2020-09-29 10:28:57 -07:00
mrg
d7e2340e62
Lots of PEP8 cleanup. Refactor path graph to simulation class.
2020-09-29 10:26:31 -07:00
mrg
1eb8798bb6
Add global functional test
2020-09-28 16:12:09 -07:00
mrg
b2dab486fc
Add draft of path exclusion calls
2020-09-28 16:05:21 -07:00
mrg
4a987bef9a
Merge branch 'wlbuffer' into dev
2020-09-28 15:51:45 -07:00
mrg
159c04a25d
Merge branch 'dev' of github.com:VLSIDA/PrivateRAM into dev
2020-09-28 15:51:35 -07:00
mrg
70c90ca7fb
Replica bitcell array bbox to include unused WL gnd pins.
2020-09-28 14:49:33 -07:00
mrg
9c6d8d7aed
Zjob to bottom.
2020-09-28 13:16:03 -07:00
mrg
5ab0d01779
Remove zjog and go with L shape.
2020-09-28 12:48:37 -07:00
mrg
d65eb16513
Zjog the WL enable. Min driver is 1.
2020-09-28 12:24:55 -07:00
mrg
6f06bb9dd5
Create sized RBL WL driver in port_address
2020-09-28 11:30:21 -07:00
mrg
88731ccd8e
Fix rounding error for wmask with various word_size
2020-09-28 09:53:01 -07:00
jcirimel
3dd72cdeac
progress with rba pin mismatch
2020-09-23 08:37:32 -07:00
jcirimel
17e6e5eb16
row end col done
2020-09-23 08:02:56 -07:00
jcirimel
5c263e0001
rep col done w/o power pins
2020-09-23 06:24:52 -07:00
jcirimel
7afe3ea52c
replica col arrangement done
2020-09-23 04:51:09 -07:00
jcirimel
7f8edf6d7c
fix replica bitcell col
2020-09-23 00:36:08 -07:00
jcirimel
efdc171b14
make split wl specific to each port
2020-09-23 00:08:34 -07:00
jcirimel
fb6a665514
removed references to technology name
2020-09-22 18:33:03 -07:00
jcirimel
de33ab3761
fix single port bitcell pattern
2020-09-22 15:08:53 -07:00
mrg
c7d32089f3
Create RBL wordline buffer with correct polarity.
2020-09-17 14:45:49 -07:00
jcirimel
559dfbc7a6
single port bitcell array done
2020-09-16 05:46:14 -07:00
mrg
392afd4d4b
Add unit test for hierarchical wordline.
2020-09-15 13:46:21 -07:00
mrg
11f2b6b809
Do not do final verification if supplies were not routed
2020-09-15 13:39:00 -07:00
mrg
e7ad22ff69
Separate WL via from bitell array to avoid grounded WLs
2020-09-15 13:38:28 -07:00
mrg
5e94d76127
Make global bitline only as wide as needed rather than whole array
2020-09-15 13:24:38 -07:00
mrg
aff3cd2aab
Update length of control bus
2020-09-15 09:49:00 -07:00
jcirimel
d22164bd48
single port progess
2020-09-14 18:11:38 -07:00
mrg
f25b6ffa61
Make control bus height of port data
2020-09-14 15:42:17 -07:00
mrg
7b24d1f012
Use pins for write_driver dimensions
2020-09-14 14:42:28 -07:00
mrg
55dd4d0c47
Global bitcell array working
2020-09-14 14:35:52 -07:00
mrg
deaaec1ede
Fix width of write enable with spare columns
2020-09-14 13:09:45 -07:00
mrg
c12720a93f
Extend pin correct length in new array.
2020-09-14 12:53:59 -07:00
mrg
e95ab66916
Update to space according to the bitcell array.
2020-09-14 12:05:45 -07:00
mrg
4482c63d6f
Fix sense amp offset index error
2020-09-11 17:12:29 -07:00
mrg
8909ad7165
Update modules to use variable bit offsets.
...
Bitcell arrays can return the bit offsets.
Port data and submodules can use offsets for spacing.
Default spacing for port data if no offsets given.
2020-09-11 15:36:22 -07:00
mrg
c58741c44f
Updates to global array.
...
Standardize bitcell array main array offsets.
Duplicate replica interface pins in global interface pins.
2020-09-10 16:44:54 -07:00
mrg
9c762634a5
Change default options for replica_bitcell_array
2020-09-10 15:11:48 -07:00
mrg
71d86f88b0
Merge branch 'dev' into wlbuffer
2020-09-10 13:05:14 -07:00
mrg
f2313d0c73
Use default names for replica_column too
2020-09-10 12:04:46 -07:00
mrg
3c0707e5d1
Consistents of bl x port then br x port
2020-09-09 13:38:13 -07:00
mrg
3062aba214
Fix update to exclude bits with RBLs
2020-09-09 13:03:05 -07:00
mrg
12fd60e8c3
Fix pbitcell array test
2020-09-09 12:02:09 -07:00
mrg
7bb21fb73f
Updates to local and global arrays to make bitline and wordlines consistent.
2020-09-09 11:54:46 -07:00
Hunter Nichols
af22e438f1
Added option to output an extended configuration file that includes defaults.
2020-09-08 18:40:39 -07:00
mrg
8e91ec1770
Add check_pins function
2020-09-08 13:31:50 -07:00
mrg
1269bf6e16
Global bitcell working
2020-09-04 13:06:58 -07:00
Hunter Nichols
8bcbf005bf
Merge branch 'dev' into characterizer_bug_fixes
2020-09-04 02:25:01 -07:00
Hunter Nichols
500327d59b
Fixed import in simulation and fixed names in functional
2020-09-04 02:24:18 -07:00
mrg
1534295326
Ground dummy lines in replica bitcell array
2020-09-03 14:04:20 -07:00
mrg
f6f6242d68
Ground dummy lines in replica bitcell array
2020-09-03 10:45:28 -07:00
Hunter Nichols
d027632bdc
Moved majority of code duplicated between delay and functional to simulation
2020-09-02 14:22:18 -07:00
jcirimel
73443c8c95
Merge branch 'dev' into s8_single_port
2020-09-01 15:37:10 -07:00
mrg
4ec47d8ee1
Refactor global and local to be a bitcell_base_array
2020-09-01 11:59:01 -07:00
mrg
c1c631abe1
Global bitcell array passes LVS/DRC
2020-09-01 10:57:49 -07:00
mrg
7bdce3ca9a
Don't make dummy bitlines pins for simplicity
2020-09-01 09:55:23 -07:00
Hunter Nichols
13b1d4613c
Moved spice naming checking code from design to the spice base module
2020-08-31 14:36:13 -07:00
Hunter Nichols
73b2277daa
Removed dead code related to older characterization scheme
2020-08-27 17:30:58 -07:00
mrg
c1c1535210
Merge branch 'wlbuffer' into dev
2020-08-27 15:44:29 -07:00
Hunter Nichols
42f2ff679e
Removed dead code from delay and base module related to characterization
2020-08-27 15:40:41 -07:00
mrg
11a82b7283
Fixed local bitcell array for single and dual port
2020-08-27 14:03:05 -07:00
mrg
da827d923f
Merge branch 'wlbuffer' into dev
2020-08-26 10:00:34 -07:00
mrg
c321d85595
Fix syntax error for dual port
2020-08-26 09:54:41 -07:00
mrg
e92337ddaf
Separate get_ and get_all for bitlines and wordlines
2020-08-25 17:08:48 -07:00
mrg
652f160aca
Merge branch 'wlbuffer' into dev
2020-08-25 15:50:08 -07:00
mrg
bdb18b4cab
Fix disconnected replica pins
2020-08-25 14:51:49 -07:00
mrg
bd8bf9afd8
Remove RBL label at top level of SRAM
2020-08-25 14:42:21 -07:00
mrg
856cce1e62
Add -json for detailed LVS output
2020-08-25 13:58:28 -07:00
mrg
28bd93bf51
Still working on array refactor
2020-08-25 11:50:44 -07:00
jcirimel
3f45d10797
fix column decoder
2020-08-25 02:46:16 -07:00
mrg
8dee5520e0
Standardize array names independent of bitcell
2020-08-21 13:44:35 -07:00
jcirimel
854d51c721
merge dev
2020-08-19 14:25:41 -07:00
mrg
b762580ee2
Skip global test for now
2020-08-19 11:36:21 -07:00
mrg
593a98e29a
Update local bitcell array for dual port
2020-08-19 11:35:55 -07:00
jcirimel
b7ef5496c4
decoder drc clean
2020-08-19 00:39:55 -07:00
mrg
e215c0e016
Drafting global bitcell array
2020-08-18 16:30:55 -07:00
mrg
5776788574
Order of wordlines and bitlines in bank
2020-08-18 16:30:38 -07:00
mrg
224e359208
Fix pin order for replica array
2020-08-18 15:59:05 -07:00
mrg
f58fc6579f
Rename local/global tests
2020-08-18 15:58:44 -07:00
mrg
e3e4bac922
Fix replica bitcell array for right only RBL
2020-08-18 15:47:52 -07:00
mrg
59d65c46c3
Fix bug in not adding RBLs in local bitcell array
2020-08-18 15:11:10 -07:00
mrg
2643a96f97
Order inputs wordline, bitline, supply
2020-08-18 14:29:36 -07:00
mrg
b288bba43e
Add global bitcell array test
2020-08-18 14:29:23 -07:00
mrg
f98fbb175b
Merge branch 'wlbuffer' into dev
2020-08-18 10:06:52 -07:00
mrg
e37a9234cc
Update replica column call to new refactor
2020-08-18 09:14:50 -07:00
mrg
17504a7da3
Merge branch 'dev' of github.com:VLSIDA/PrivateRAM into dev
2020-08-18 09:01:41 -07:00
mrg
bc974ff78e
Update replica column unit tests for new refactor
2020-08-18 08:56:24 -07:00
jcirimel
9cecf367ee
Merge branch 'dev' into pex
2020-08-17 17:49:41 -07:00
jcirimel
714b57d48e
Merge branch 'dev' into pex
2020-08-17 17:48:21 -07:00
mrg
99e252d6d4
Update interface of RBL array
2020-08-17 17:19:07 -07:00
mrg
b1e55f9072
Add local bitcell array
2020-08-17 15:14:42 -07:00
mrg
3a692e2846
Comment updates
2020-08-17 14:35:39 -07:00
mrg
60224b105f
Merge branch 'dev' of github.com:VLSIDA/PrivateRAM into dev
2020-08-17 14:20:34 -07:00
mrg
94bfad4113
Horizontal gnd vias for unused array inputs
2020-08-17 13:24:34 -07:00
mrg
bddb251a84
More room for power contacts
2020-08-17 12:32:44 -07:00
mrg
2c43d315db
Revert gds readonly true
2020-08-17 12:19:23 -07:00
mrg
35a1b00aa0
Extra space for unused wl contacts
2020-08-14 14:23:40 -07:00
mrg
170e3feb7d
Fix order of replica wordlines and bitlines
2020-08-14 14:14:49 -07:00
mrg
604e433e22
Add readonly true for Magic scripts
2020-08-14 10:40:31 -07:00
mrg
2ac04efe2e
Must connect for replica cells other than top/bottom
2020-08-13 16:26:19 -07:00
jcirimel
e7c9914d77
decoder passing except for bus route
2020-08-13 16:20:39 -07:00
mrg
797c41c750
Skip local bitcell array test
2020-08-13 14:36:39 -07:00
mrg
50525e70f4
Fix up to SRAM level with new replica bitcell array ports.
2020-08-13 14:29:10 -07:00
mrg
8dbaa66aa5
Merge branch 'super' into dev
2020-08-12 14:25:13 -07:00
mrg
7ac4574e4f
Use micron units for all simulation in sky130
2020-08-12 13:54:55 -07:00
mrg
5fc6438553
Fix pinv_dec super call
2020-08-12 13:22:28 -07:00
mrg
15c8c200f3
Undo super() in measurement abstract class
2020-08-12 12:10:12 -07:00
mrg
55814a8f74
Fix syntax errors in pgates for super edits
2020-08-12 11:15:32 -07:00
mrg
0bec6f0439
Fix SRAM to use simulation spice instead of LVS spice
2020-08-12 10:41:21 -07:00
mrg
a55909930f
Replace replcia_bitcell_array with new one in bank
2020-08-12 09:49:14 -07:00
mrg
8e890c2014
Replica bitcell with all the fixings
2020-08-11 15:00:29 -07:00
mrg
30976df48f
Change inheritance inits to use super
2020-08-06 11:33:26 -07:00
mrg
eef97ff215
Reabstracting bit and word line names.
2020-08-06 11:17:49 -07:00
mrg
037de96989
Merge branch 'dev' into wlbuffer
2020-08-05 10:37:29 -07:00
mrg
528cb07635
Merge branch 'dev' into wlbuffer
2020-08-05 10:01:43 -07:00
jcirimel
38648027d0
fix pinv unit test
2020-08-04 04:40:20 -07:00
jcirimel
02e65a00ef
update pex to work with dev changes
2020-08-03 17:14:34 -07:00
Bob Vanhoof
9b8ef5ef57
fix: generated pex file was not passed correctly to lib characterizer
2020-08-03 10:16:12 +02:00
Bob Vanhoof
487bb6c6e9
Merge branch 'dev' of github:VLSIDA/OpenRAM into CalibrePexFilesUpdate
2020-08-03 09:32:27 +02:00
jcirimel
3221b4ec57
update to new metal stack names
2020-07-31 05:27:19 -07:00
Bob Vanhoof
dc55ededc1
fix regession tests after calibre fix
2020-07-31 12:51:34 +02:00
mrg
487027a9f2
Fix pex file names
2020-07-30 11:35:13 -07:00
mrg
8fa0065aaf
Undo PR 82 changes -- broke unit test.
2020-07-30 11:09:19 -07:00
mrg
a663d903c5
Merge branch 'dev' of github.com:VLSIDA/PrivateRAM into dev
2020-07-30 08:44:25 -07:00
Matt Guthaus
68387ec525
Merge pull request #84 from bvhoof/CalibrePexFilesUpdate
...
calibrepex: file copy fix
2020-07-30 08:40:35 -07:00
Hunter Nichols
c6f2edc20d
Changed warning message for multiport analytical characterization.
2020-07-29 19:50:06 -07:00
mrg
64d61f4d56
Merge remote-tracking branch 'private/dev' into dev
2020-07-29 12:16:41 -07:00
mrg
f23d2e36a7
Don't obstruct control logic signals with dffs when no column mux.
2020-07-29 10:31:18 -07:00
mrg
8a2fa90cd5
Merge remote-tracking branch 'private/dev' into dev
2020-07-29 10:11:26 -07:00
mrg
2fa561f98f
Local bitcell array edits. Skip test by default.
2020-07-29 10:08:13 -07:00
Hunter Nichols
b4dafac489
Fixed issue with sen measurement not being added
2020-07-27 23:55:03 -07:00
mrg
c260297366
Allow replica_bitcell_array without the replica columns for local wordlines.
2020-07-27 16:22:21 -07:00
Hunter Nichols
9ea3616260
Changed multiport characterization warning to better fit
2020-07-27 15:47:02 -07:00
Hunter Nichols
c65178f86c
Fixed issue with sen delay measure getting mixed with voltage checks
2020-07-27 15:43:50 -07:00
mrg
69cab42676
Add pbuf_dec gate
2020-07-27 13:59:55 -07:00
mrg
26b01e37c6
Fix pbuf test info
2020-07-27 13:59:35 -07:00
mrg
2991534d3f
Drafting local bitline stuff.
2020-07-23 17:15:39 -07:00
mrg
e1967dc548
Draft local and global arrays. Ensure rows before cols in usage.
2020-07-23 14:43:14 -07:00
mrg
317662d4aa
Merge branch 'dev' of github.com:VLSIDA/PrivateRAM into dev
2020-07-23 14:17:52 -07:00
mrg
b7c43ae674
Fix 1w/1r example
2020-07-23 14:17:13 -07:00
jcirimel
1d9296ceb1
fix magic.py conflict
2020-07-21 11:50:25 -07:00
jcirimel
df4a231c04
fix merge conflicts
2020-07-21 11:38:34 -07:00
mrg
58846a4a25
Limit wordline driver size. Place row addr dff near predecoders.
2020-07-20 17:57:38 -07:00
mrg
0ed81aa923
Removed extraneous shift from added mirroring
2020-07-20 14:11:52 -07:00
mrg
82bbacdfb5
Add data bus gap to dynamically computed channel width
2020-07-20 13:43:57 -07:00
mrg
a36e89e103
Replace data flops depending on channel width
2020-07-20 13:26:05 -07:00
mrg
2ccf3aea3b
Set channel route height and width (of routes, not pins)
2020-07-20 13:25:47 -07:00
mrg
f87b427f76
Add parent to channel route for dumpign debug gds.
2020-07-20 12:03:25 -07:00
mrg
f35848e4f8
Route col flops separately. Flip port 1 col flop for easier routing.
2020-07-20 12:02:59 -07:00
mrg
7385decbff
Add channel route cyclic VCG debugging.
2020-07-20 12:02:30 -07:00
mrg
9d5d632d1a
Pins may be below the channel.
2020-07-16 14:23:48 -07:00
mrg
ba3d32fa0c
Starting to implement minimizing channel router (not done)
2020-07-16 13:21:44 -07:00
mrg
919e6a5027
Merge remote-tracking branch 'private/dev' into dev
2020-07-15 19:47:44 -07:00
mrg
c7bc01c3a9
Clean up binning. Fix mults to 1 for certain gates.
2020-07-15 17:15:42 -07:00
Bob Vanhoof
ee3da91232
calibrepex: file copy fix
2020-07-15 11:50:21 +02:00
mrg
bb8157b3b7
Exit on DRC not run, check for LVSDRC before running in sram_base.
2020-07-14 08:38:49 -07:00
mrg
ed9d32c7bc
OpenRAM 1.1.6
2020-07-13 16:26:25 -07:00
mrg
e502ee02be
Place before computing height of col mux.
2020-07-13 15:51:46 -07:00
mrg
2b7d89d2c1
Fix netlist_only in sky130
2020-07-13 14:59:31 -07:00
mrg
e49236f8fc
Default drc and lvs errors is skipped.
2020-07-13 14:08:00 -07:00
mrg
716798baae
Convert all DRC and LVS routines to set member variables for drc_errors and lvs_errors.
2020-07-13 13:01:00 -07:00
mrg
2011974e01
Make drc and lvs errors a member variable. Run only once.
2020-07-13 12:49:24 -07:00
mrg
a3195c0827
Add words_per_row and others in config file.
2020-07-13 12:37:56 -07:00
mrg
a989ea63a0
Move magic/netgen files to tech dir
2020-07-09 11:33:14 -07:00
mrg
27166c75f0
Don't remove temp files during regular openram runs.
2020-07-03 07:00:56 -07:00
mrg
5dde466ab9
Merge branch 'dev' of github.com:VLSIDA/PrivateRAM into dev
2020-07-03 06:55:45 -07:00
mrg
282f944b2f
Also write .lvs file since it can be different the .sp
2020-07-03 06:55:35 -07:00
Hunter Nichols
206b02a7ee
Merge branch 'dev' into characterizer_bug_fixes
2020-07-02 18:00:41 -07:00
Hunter Nichols
fb34338fdf
Removed debug statements
2020-07-02 18:00:02 -07:00
Hunter Nichols
119bd94689
Fixed warnings with single port characterization. Cleaned up some signal names.
2020-07-02 15:43:23 -07:00
mrg
d48f483248
Fix swapped instance bug in perimeter pins.
2020-07-01 15:10:20 -07:00
mrg
bed2e36550
Simplify write mask supply via logic
2020-07-01 14:44:48 -07:00
mrg
8cd1cba818
Fix missing via in wmask driver
2020-07-01 14:44:18 -07:00
mrg
c340870ba0
Channel route dout wires as well in read write ports
2020-07-01 14:44:01 -07:00
mrg
bb18d05f75
Move control output via inside module instead of perimeter
2020-07-01 11:33:25 -07:00
mrg
3d0f29ff3a
Fix missing via LVS issues. LVS passing for some 20 tests.
2020-07-01 09:22:59 -07:00
mrg
b07f30cb9e
Missing output via in control logic
2020-06-30 16:23:07 -07:00
mrg
3379f46da1
Fail unit test, but mention if LVS passes and DRC fails.
2020-06-30 16:22:44 -07:00
mrg
0a87691176
Run Calibre LVS even if DRC fails.
2020-06-30 15:27:10 -07:00
mrg
c1fedda575
Modifications for min area metal.
...
Made add_via_stack_center iterative instead of recursive.
Removed add_via_stack (non-center) since it isn't used.
Add min area metal during iterative via insertion.
2020-06-30 15:07:34 -07:00
mrg
011ac2fc05
Don't route to clk to perimeter on m2
2020-06-30 13:57:45 -07:00
mrg
a48ea52253
Add missing contact to vdd pins.
2020-06-30 13:26:38 -07:00
mrg
5626fd182e
Extra track in data bus. Remove old code.
2020-06-30 10:58:24 -07:00
mrg
eb11ac22f3
Widen pitch of control bus in bank.
2020-06-30 10:58:09 -07:00
mrg
8cedeeb3d9
Widen pitch of control bus in bank.
2020-06-30 10:57:41 -07:00
Matt Guthaus
9b939c9a1a
DRC/LVS and errors fixes.
...
Only enact pdb if assert fails in debug.error.
Only run drc/lvs one time in parse_info by saving result.
Cleanup drc/lvs output.
2020-06-30 07:16:05 -07:00
Hunter Nichols
0464e2df5d
Allowed bitline checks for multiple ports.
2020-06-30 01:37:52 -07:00
Hunter Nichols
c289637dab
Allowed sen's from multiple ports to be characterized
2020-06-29 23:18:31 -07:00
mrg
372a8a728e
Off by one error in channel spacing
2020-06-29 16:47:34 -07:00
mrg
459e3789b8
Change control layers in sky130.
2020-06-29 16:23:25 -07:00
mrg
bec948dcc3
Fix error in when to add vias for array power
2020-06-29 15:28:55 -07:00
mrg
4e7e0c5954
Skip test in sky130
2020-06-29 15:28:16 -07:00
Matt Guthaus
e97644c424
Only do reverse lookup on valid interconnect layers since layer numbers can be shared.
2020-06-29 14:42:24 -07:00
mrg
07d0f3af8e
Only copy end-cap pins to the bank level
2020-06-29 11:46:59 -07:00
mrg
1bc0775810
Only add pins to periphery
2020-06-29 10:03:24 -07:00
mrg
5f3a45b91b
Compute bus size separately for ports
2020-06-29 05:54:30 -07:00
mrg
47f541df0e
Fix bugs in channel route.
2020-06-28 16:58:28 -07:00
mrg
5285468380
All bitcells need a vdd/gnd pin
2020-06-28 15:09:47 -07:00
mrg
751eab202b
Move row addr flops away from predecode. Route spare wen separately on lower layer.
2020-06-28 15:06:29 -07:00
mrg
051c8d8697
Only add bitcells to dummy and replica rows and columns (the perimeter)
2020-06-28 14:47:54 -07:00
mrg
709535f90f
Fix right perimeter pin coordinate bug
2020-06-28 14:47:17 -07:00
mrg
225fc69420
Use preferred routing direction
2020-06-28 14:29:12 -07:00
mrg
4df02dad67
Move spare wen_dff to the right by spare columns
2020-06-28 14:28:43 -07:00
mrg
bc3de9db05
Pick correct side of pin in channel route.
2020-06-28 14:28:18 -07:00
mrg
0c9f52e22f
Realign col decoder and control by 1/4 so metal can pass over
2020-06-28 07:15:06 -07:00
mrg
66ea559209
Use channel for dffs all at once
2020-06-27 08:23:12 -07:00
mrg
c10a6a29c0
Simplify precharge pin layer
2020-06-27 08:22:16 -07:00
mrg
609aa98c8b
Move write mask pin to left of cell to avoid sense amp
2020-06-27 08:21:53 -07:00
mrg
2bd498c39c
Change precharge layer to m3
2020-06-27 08:21:30 -07:00
mrg
c07e20cbe4
Move mux select from li to m2 in sky130
2020-06-26 14:27:16 -07:00
mrg
94d7000717
Reduce output clutter from gds write
2020-06-26 12:16:54 -07:00
mrg
f57eeb88eb
PEP8 cleanup, multiple vdd/gnd support
2020-06-26 11:47:55 -07:00
mrg
e23d41c1d4
PEP8 cleanup
2020-06-26 11:47:35 -07:00
mrg
567675ab31
PEP8 cleanup
2020-06-26 11:47:12 -07:00
mrg
af4ed3dd6e
Skip riscv func test for time sake
2020-06-26 06:50:45 -07:00
mrg
d53abba479
Always route the channel route since it is it's own design.
2020-06-25 17:43:44 -07:00
mrg
76e5389c33
Change riscv func test name
2020-06-25 17:43:17 -07:00
mrg
9eb1b500ea
Skip phys riscv test
2020-06-25 17:31:23 -07:00
mrg
f11afaa63d
Refactor channel route to be a design.
2020-06-25 17:30:03 -07:00
mrg
7220b23402
Add riscv unit tests
2020-06-25 15:34:18 -07:00
mrg
66df659ad4
Col decoders are anything not bitcell pitch.
2020-06-25 14:25:48 -07:00
mrg
f84ee04fa9
Single bank passing.
...
Parameterized gate column mux of dff height.
End-cap only supply option instead of no vdd in bitcell.
2020-06-25 14:03:59 -07:00
mrg
ee0a003298
Merge branch 'dev' of github.com:VLSIDA/PrivateRAM into dev
2020-06-25 08:57:37 -07:00
jcirimel
5941e01b51
add missing parens
2020-06-25 08:02:08 -07:00
jcirimel
59562f2b92
move accuracy_requirement from techfile to config
2020-06-25 06:44:07 -07:00
jcirimel
812cf11e95
Merge branch 'dev' of https://github.com/VLSIDA/PrivateRAM into dev
2020-06-25 06:32:29 -07:00
jcirimel
57b6d49edb
fix pinv size bining
2020-06-25 06:32:07 -07:00
mrg
da900b89ba
Only expand implants in sky130
2020-06-24 13:48:30 -07:00
mrg
ba92467fec
Add no well enclosure for techs without wells
2020-06-24 12:07:47 -07:00
mrg
6c523a7556
use add_enclosure for npc contacts
2020-06-24 11:55:44 -07:00
mrg
e694622f28
use add_enclosure to extend implants
2020-06-24 11:54:59 -07:00
mrg
4bc3df8931
Add get_tx_insts and expand add_enclosure
2020-06-24 11:54:36 -07:00
mrg
93d65e84e1
Fix power pin layer problems in delay line
2020-06-24 10:26:49 -07:00
mrg
98ec9442c6
Add npc enclosure for pnand2, pnand3, pnor2
2020-06-24 10:00:00 -07:00
mrg
1340908330
Remove fudge factor for pin spacing
2020-06-24 09:24:26 -07:00
mrg
cddb16dabc
Separate active and poly contact to gate rule
2020-06-24 09:17:39 -07:00
mrg
a32b5b13e8
Rename nwell yoffset for consistency
2020-06-24 08:26:15 -07:00
mrg
b3d1161957
Add u+x permissions to new tests
2020-06-24 08:19:25 -07:00
Joey Kunzler
22ed725a35
made 1rw_1r tests for write driver and wmask, fixed typo in portdata_wmask_1rw_1r_test
2020-06-23 18:16:14 -07:00
Joey Kunzler
4e83e8c648
added contact to locali for wmask
2020-06-23 18:13:17 -07:00
mrg
22c821f5d8
Change port_address test to 256 for riscv
2020-06-23 15:40:00 -07:00
mrg
cfa234a4d0
Extra space between decoders for well spacing
2020-06-23 15:39:42 -07:00
mrg
83001e1ab5
PEP8 formatting
2020-06-23 15:39:26 -07:00
mrg
e849a9b973
Use different LVS libs based on tech and sky130
2020-06-23 14:53:24 -07:00
mrg
031862c749
Add metal enclosure to base case of center via stack.
2020-06-23 11:56:50 -07:00
mrg
1a528f9739
Skip and4_dec test
2020-06-23 10:08:28 -07:00
mrg
7ea3366ef1
Disable magic filter in sky130
2020-06-22 16:58:01 -07:00
mrg
92fc30005c
Use factory in and_dec tests
2020-06-22 16:55:49 -07:00
mrg
40edbfa51f
Error out on single port in sky130
2020-06-22 15:41:59 -07:00
mrg
cd23b31ab4
Merge branch 'dev' of github.com:VLSIDA/PrivateRAM into dev
2020-06-22 12:55:45 -07:00
mrg
0926eab9f5
PEP8 formatting
2020-06-22 12:55:18 -07:00
mrg
54120f8405
Add option for removing subckt/instances of cells for row/col caps
2020-06-22 12:35:37 -07:00
mrg
a13d535945
PEP8 cleanup
2020-06-22 11:33:02 -07:00
Joey Kunzler
8166adc512
Merge branch 'dev' into s8_update
2020-06-19 15:35:49 -07:00
Joey Kunzler
208c652653
added error for sky130 with invalid x mirroring (for lvs)
2020-06-19 13:59:33 -07:00
mrg
a2d160dbf5
Copy magic config for filter code
2020-06-19 13:40:45 -07:00
mrg
5872f553e1
Rename tests for consistency
2020-06-19 08:53:35 -07:00
mrg
239b3ea007
Make wmask test a 1rw/1r
2020-06-19 08:49:48 -07:00
mrg
617a84d4b8
Fix output name of magic gds filter
2020-06-19 07:15:27 -07:00
mrg
94c480911b
ngspice raw save doesn't work with measures
2020-06-19 07:09:15 -07:00
mrg
231f90f492
Fix missing space in ptx spice line
2020-06-19 06:47:46 -07:00
mrg
403ea17039
PEP8 formatting
2020-06-18 14:55:01 -07:00
mrg
69f5621245
Save raw file from ngspice
2020-06-18 14:54:36 -07:00
mrg
7dfc462ef6
Add magic filter before calibre for sky130
2020-06-15 13:58:26 -07:00
mrg
abb5ff7bae
Separate route conditions for s8
2020-06-15 10:30:27 -07:00
mrg
e331d6fae8
Permute bus order to avoid conflict in control_logic
2020-06-15 10:25:53 -07:00
mrg
a862cf3cb2
Test more single level col mux configs
2020-06-15 10:17:54 -07:00
mrg
4cb827c3d7
Add redundant implant for s8
2020-06-15 10:08:07 -07:00
mrg
355474ce2c
Playing around with pnand2 pin spacing rules
2020-06-15 10:07:00 -07:00
mrg
6e0008403e
Update new tech name
2020-06-15 10:06:17 -07:00
mrg
79b3b9a8b0
Switch input/output layers for predecodes
2020-06-15 10:06:04 -07:00
mrg
6c04166876
Update port data wmask tests
2020-06-15 06:05:05 -07:00
mrg
02352c35d7
Fix hard coded layer in wmask
2020-06-14 17:10:32 -07:00
mrg
52ee7b0a19
Disable perimeter pins and make an option
2020-06-14 16:44:10 -07:00
mrg
78be9f367a
Add brain-dead router pins to perimeter
2020-06-14 15:52:09 -07:00
mrg
9930b5f3f6
Do not run tapless unit tests
2020-06-14 14:18:25 -07:00
mrg
7dc33285a7
Add contact to gate design rule to max for spacing inputs
2020-06-14 14:18:08 -07:00
mrg
8e8a97cc4b
Add correct boundary to SRAM
2020-06-14 14:17:35 -07:00
mrg
443c401561
pnand2 B input spaced from top
2020-06-14 14:17:04 -07:00
mrg
91f20f2cf6
Better centering of pinv_dec
2020-06-14 14:09:45 -07:00
mrg
8f1dc7eeea
Include mirror/rotate on translate_all boundary update
2020-06-13 06:50:53 -07:00
mrg
33a32101c9
DRC and LVS fixes for pinv_dec
2020-06-12 15:23:51 -07:00
mrg
443b8fbe23
Change s8 to sky130
2020-06-12 14:23:26 -07:00
mrg
54e4d147f6
Rail to ptx spacing based on routing layer not m1
2020-06-11 15:03:50 -07:00
mrg
e9780ea599
Add non-preferred directions for channel routes
2020-06-11 15:03:36 -07:00
mrg
8d52794c32
Remove printf in precharge
2020-06-11 11:57:52 -07:00
mrg
7ad2d54a69
Add pin and label purposes
2020-06-11 11:54:51 -07:00
mrg
1a2e0046b1
Add contact to gate spacing for precharge
2020-06-11 11:54:34 -07:00
mrg
089331ced3
Add stdc bounding box too
2020-06-11 11:54:16 -07:00
mrg
098219d56c
Add npc enclosure to poly contacts
2020-06-11 11:53:59 -07:00
mrg
f973dd6a5c
Save LVS model with no u too for Calibre
2020-06-11 11:53:34 -07:00
mrg
dff28a9997
Merge branch 'tech_migration' into dev
2020-06-10 17:09:05 -07:00
mrg
196e5998c8
Half poly space per cell at top and bottom.
2020-06-10 16:52:51 -07:00
mrg
fdf92d0da1
Rename test 14
2020-06-10 16:41:26 -07:00
mrg
0b4b5e7133
More exact input spacing in pnand3
2020-06-10 16:19:24 -07:00
mrg
bfd1abc79f
Replica column pins start at 0 height.
2020-06-10 14:58:55 -07:00
mrg
469cd260b9
Change bitcell array name to match
2020-06-10 14:54:20 -07:00
mrg
f2c45a230e
Add new replica column test. Add more skip tests.
2020-06-10 11:00:00 -07:00
mrg
10be2d08b5
Full path to skip tests file
2020-06-10 10:23:05 -07:00
mrg
5e3332453b
Allow power pins to start on any layer besides m1
2020-06-10 10:15:23 -07:00
mrg
c119e60e79
Add more s8 skip tests
2020-06-10 10:14:52 -07:00
mrg
d4fc88124a
Rename dff_buf test
2020-06-09 17:18:19 -07:00
mrg
064fe34edf
Fix pinvbuf layers
2020-06-09 17:16:35 -07:00
mrg
14782914b3
Remove vertical pand gates
2020-06-09 16:40:59 -07:00
mrg
e6babc301d
Incrase space for pnand gates
2020-06-09 16:34:15 -07:00
mrg
c6b875146d
Use local skip file
2020-06-09 16:33:59 -07:00
mrg
fd49d3ed6a
Add tech specific skip tests for making new techs.
2020-06-09 16:09:15 -07:00
mrg
580b0601b5
Unskip 20_psram_1bank_4mux_1rw_1r_test
2020-06-09 16:04:39 -07:00
mrg
a28e747a02
Fix precharge offset. Move well rules to design class.
2020-06-09 15:28:50 -07:00
mrg
148521c458
Remove stdc layer
2020-06-09 13:48:47 -07:00
mrg
157926960b
Flip freepdk45 flop, dff_buf route layer change
2020-06-09 13:48:16 -07:00
mrg
8c6d5b49be
Consider diffusion spacing in active offset
2020-06-09 13:09:52 -07:00
mrg
77fb7017c4
Merge branch 'tech_migration' into dev
2020-06-08 12:54:41 -07:00
mrg
9cc36c6d3a
Bus code converted to pins. Fix layers on control signal routes in bank.
2020-06-08 11:01:14 -07:00
Aditi Sinha
c39c0efd39
Updated spare col tests
2020-06-08 16:38:18 +00:00
Aditi Sinha
300522a1a8
Change spare enable pins offset to lower right
2020-06-08 14:31:46 +00:00
Aditi Sinha
ef940e0dc5
Fixes for functional test of spare cols
2020-06-08 05:02:04 +00:00
Aditi Sinha
d5041afebc
Merge branch 'dev' into bisr
2020-06-07 16:27:25 +00:00
jcirimel
5d5ed552e3
Merge branch 'dev' into discrete_models
2020-06-06 01:48:06 -07:00
mrg
0837432d45
Wordline route layers and (optional) via.
2020-06-05 16:47:22 -07:00
jcirimel
9857a3f7e7
Merge branch 'dev' into discrete_models
2020-06-05 16:47:01 -07:00
mrg
5514996708
Auto-generate port dependent cell names.
2020-06-05 15:09:22 -07:00
mrg
00b51f5464
PEP8 format replica_bitcell_array
2020-06-05 13:49:32 -07:00
mrg
4fef632dce
Fix syntax error
2020-06-05 12:13:41 -07:00
mrg
a62b85a6b1
Update mirroring in port_data for bitcell mirrored arrays
2020-06-05 11:29:31 -07:00
mrg
2e7f9395f2
Rename 05 test to 14
2020-06-05 09:57:16 -07:00
mrg
68ffb94d2e
Rename 05 test to 14
2020-06-05 09:55:57 -07:00
mrg
fb3acae908
PEP8 format testutils.
2020-06-05 09:44:30 -07:00
jcirimel
08f6bd8d24
optimize tx binning for area
2020-06-05 02:53:03 -07:00
mrg
e14deff3d1
Fixed offset in port_data
2020-06-04 16:03:39 -07:00
mrg
2fcecb7227
Variable zjog. 512 port address test. s8 port address working.
2020-06-04 16:01:32 -07:00
mrg
e06dc3810a
Move precharge pin to bottom
2020-06-04 12:12:19 -07:00
mrg
717188f85c
Change L shape of rbl route
2020-06-04 11:03:39 -07:00
mrg
7aafa43897
Connect RBL to bottom of precharge cell
2020-06-04 10:22:52 -07:00
mrg
249b5355ba
Adjust rbl route
2020-06-03 17:08:04 -07:00
mrg
77c95b28da
Rename precharge test
2020-06-03 16:39:46 -07:00
mrg
3927c62e32
Undo extra space due to nwell spacing
2020-06-03 16:39:33 -07:00
mrg
b2b7e7800b
Undo same bitline pitch
2020-06-03 16:39:05 -07:00
mrg
4183638f03
Align precharge bitlines with col mux
2020-06-03 16:05:57 -07:00
mrg
4bc1e9a026
Fix the bitline spacing in the column mux to a constant.
2020-06-03 15:47:03 -07:00
mrg
3b1fe26d25
Spacing between decoder and driver for s8
2020-06-03 14:33:30 -07:00
mrg
e93f3f1d2e
Add 1rw_1r tests
2020-06-03 14:30:15 -07:00
mrg
b78166c044
Merge branch 'dev' into tech_migration
2020-06-03 14:08:22 -07:00
Joey Kunzler
7a602b75a4
keep dev routing changes to hierarchy_layout
2020-06-03 12:54:15 -07:00
Joey Kunzler
6430aad857
Merge branch 'dev' into s8_update
2020-06-03 11:53:33 -07:00
mrg
38f5e8b865
Add col mux tests for multiport
2020-06-03 10:01:02 -07:00
Aditi Sinha
eb0c595dbe
SRAM layout and functional tests with spare cols
2020-06-03 12:31:30 +00:00
mrg
34209dac3d
A port option for correct mirroring in port_data.
2020-06-02 16:50:07 -07:00
Joey Kunzler
84021c9ccb
merge conflict 2 - port data
2020-06-02 16:32:08 -07:00
Joey Kunzler
001bf1b827
merge conflict - port data
2020-06-02 14:15:39 -07:00
mrg
fce8e878b9
Add port to col mux and simplify route with computation to fix mirror bug.
2020-06-02 13:57:41 -07:00
mrg
fdf51c5a00
Add port option to precharge array
2020-06-02 11:44:22 -07:00
mrg
f1b7b91b1a
Use non-channel route for s8 port_data
2020-06-02 11:43:57 -07:00
mrg
45b0601e4b
Fix via directions in s8 col mux
2020-06-02 11:43:31 -07:00
mrg
a1c7474f80
Revert to channel route of bitlines
2020-06-02 10:08:53 -07:00
mrg
620604603c
Fixed offset jogs
2020-06-02 10:08:37 -07:00
mrg
b0aa70ffda
Fix precharge vdd route layer
2020-06-02 09:23:27 -07:00
Joey Kunzler
b39579c109
temp drc fix for regression tests
2020-06-01 20:55:15 -07:00
mrg
9ecf98a4c3
SRAM factory uses default name for first instance even if it has arguments.
2020-06-01 16:46:22 -07:00
mrg
b3b03d4d39
Hard cells can accept height parameter too.
2020-06-01 16:46:00 -07:00
mrg
496a24389c
Remove prints
2020-05-29 16:57:47 -07:00
mrg
82dc937768
Add missing vias by using via stack function
2020-05-29 16:53:47 -07:00
Joey Kunzler
b00163e4e1
lvs fix for regression tests
2020-05-29 13:50:34 -07:00
mrg
4a67f7dc71
Thin-cell decoder changes.
...
Add hard decoder gates (nand, inv, pnan)
Add conditions for routing using LI layer in s8.
Generalize bus layers for decoders.
Move custom cells to own directory.
Fixed via directions, etc.
Add 4x16 hierarchical decoder and test case
2020-05-29 10:36:07 -07:00
jcirimel
575278998d
write only used bitcells to top level in stim and pex output
2020-05-28 23:56:15 -07:00
Joey Kunzler
218a553ac5
fix for replica column mirroring over y
2020-05-28 20:31:21 -07:00
Joey Kunzler
7505fa5aef
update for end caps
2020-05-27 20:03:11 -07:00
Joey Kunzler
9a6b38b67e
merge conflict
2020-05-26 16:03:36 -07:00
Aditi Sinha
c7d86b21ae
Spare cols with wmask enabled
2020-05-16 10:09:03 +00:00
Aditi Sinha
c14190c5aa
Changes in control logic for spare columns
2020-05-14 10:41:54 +00:00
Aditi Sinha
8bd1052fc2
Spare columns in full sram layout
2020-05-14 10:30:29 +00:00
mrg
a305d788d7
Vertical gates need both well contacts.
2020-05-13 16:54:35 -07:00
mrg
4b526f0d5f
Check min size inverter.
2020-05-13 16:54:26 -07:00
mrg
f8bcc54338
Determine width after routing with no well contacts.
2020-05-13 16:04:38 -07:00
Aditi Sinha
a5c211bd90
Merge branch 'dev' into bisr
2020-05-13 22:39:29 +00:00
mrg
617bf302d1
Add option to remove wells. Save area in pgates with redundant wells.
2020-05-13 14:46:42 -07:00
mrg
848241a3ad
PEP8 cleanup
2020-05-11 16:22:17 -07:00
mrg
c96a6d0b9d
Add no well option. Add stack gates vertical option.
2020-05-11 16:22:08 -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
dd73afc983
Changes to allow decoder height to be a 2x multiple of bitcell height.
...
Convert to use li layer in pgates.
Fix multifinger devices with li layers.
Simplify wordline driver input routing.
Fix power pin direction option update.
PEP8 cleanup
Changes to simplify metal preferred directions and pitches.
Split of control logic tests.
2020-05-10 06:56:22 -07:00
Aditi Sinha
5c50cf234b
Fixed lvs errors for spare columns
2020-05-09 07:56:19 +00:00
jcirimel
5666e79287
Merge branch 'dev' into discrete_models
2020-05-08 03:13:16 -07:00
Joey Kunzler
e642b8521b
increase col_mux bitline spacing to fix cyclic vcg
2020-05-06 13:02:33 -07:00
jcirimel
d8a51ecafb
remove prints, scaling bug fix
2020-05-05 21:59:28 -07:00
jcirimel
71a1dd8f38
fix tx binning in col mux for memories with >1 word per row
2020-05-05 16:35:51 -07:00
Joey Kunzler
91dbbed9ba
added horizontal trunk route edit to vertical trunk route
2020-05-05 12:18:26 -07:00
jcirimel
0f9e38881c
update stim for large pex layouts
2020-05-04 03:05:33 -07:00
jcirimel
89688f8ea9
fix pex for larger memories
2020-05-04 01:31:51 -07:00
Aditi Sinha
e30938fb66
Spare columns working at bank level
2020-05-03 15:23:30 +00:00
Aditi Sinha
49918b0716
New lib syntax for golden results
2020-05-02 09:44:56 +00:00
Aditi Sinha
2498ff07ea
Merge branch 'dev' into bisr
2020-05-02 07:48:35 +00:00
Joey Kunzler
1b6634bb97
port data routing fix
2020-04-29 15:48:15 -07:00
Joey Kunzler
0bae652be9
fix merge conflicts
2020-04-23 11:51:46 -07:00
Joey Kunzler
fed1c0bbe1
s8 col mux array
2020-04-22 16:22:34 -07:00
mrg
32576fb62c
Convert wordline driver to pand2 rather than pnand2+pdriver
2020-04-22 13:27:50 -07:00
mrg
8e243f1b3c
Merge branch 'dev' into tech_migration
2020-04-22 11:34:14 -07:00
Matt Guthaus
fb17abb16c
Merge branch 'dev' of github.com:VLSIDA/PrivateRAM into dev
2020-04-22 10:40:27 -07:00
Matt Guthaus
14f440df73
Update golden results with new lib syntax
2020-04-22 10:40:04 -07:00
mrg
4d6d6af0a1
Merge remote-tracking branch 'public/dev' into dev
2020-04-22 09:28:25 -07:00
David Ratchkov
c2419af2e2
Fix voltage_map names (these do not need to match pg_pin names)
2020-04-22 09:03:22 -07:00
Joey Kunzler
60ba2c1aa5
updated pbitcell test names
2020-04-21 17:20:29 -07:00
mrg
0bb4a7f93d
Merge branch 'dev' into tech_migration
2020-04-21 16:37:36 -07:00
mrg
f1c1adc9bd
Simplify supply contacts in delay chain.
2020-04-21 16:12:54 -07:00
Joey Kunzler
3d4a40b338
freepdk45 col_mux fix
2020-04-21 15:38:19 -07:00
mrg
0f6998a1c5
PEP8 cleanup
2020-04-21 15:36:38 -07:00
mrg
fc85dfe29f
Add boundary to all pgates
2020-04-21 15:21:57 -07:00
mrg
cd66ddb37c
Add supply rails to dff array. PEP8 cleanup.
2020-04-21 15:21:29 -07:00
mrg
ab91d0ab1d
Add purpose to string output
2020-04-21 15:20:30 -07:00
Joey Kunzler
ee1de9ac8c
Merge branch 's8_update' of github.com:VLSIDA/PrivateRAM into s8_update
2020-04-20 22:14:09 -07:00
Joey Kunzler
829f3e03fa
col_mux.py update with correct contacts
2020-04-20 22:08:29 -07:00
Joey Kunzler
63bea67fb5
col_mux.py changes
2020-04-20 20:22:46 -07:00
mrg
f6135f3471
PEP8 formatting
2020-04-20 16:38:30 -07:00
mrg
90fdaf902c
Merge branch 'tech_migration' into dev
2020-04-20 16:28:16 -07:00
mrg
dfbf6fe45c
Default is to use preferred layer directions
2020-04-20 15:33:53 -07:00
mrg
8c177f9947
Split col mux test
2020-04-20 15:03:32 -07:00
mrg
7995451cbb
PEP8 formatting
2020-04-20 14:45:18 -07:00
mrg
69d0e5e372
Split port data test into single and multi-port.
2020-04-20 14:26:44 -07:00
mrg
7f65176908
Configured bitline directions into prot_data
2020-04-20 14:23:40 -07:00
mrg
2a9dde5401
Merge branch 'tech_migration' into dev
2020-04-20 09:07:36 -07:00
jcirimel
32317ce3a5
Merge branch 'dev' of https://github.com/VLSIDA/PrivateRAM into dev
2020-04-18 14:23:31 -07:00
jcirimel
f590ecf83c
fix minimum pinv sizing
2020-04-18 05:51:21 -07:00
jcirimel
add9ec7b28
remove excess newlines
2020-04-18 05:42:23 -07:00
jcirimel
85bc801689
fix pinv drc bug
2020-04-18 05:34:55 -07:00
jcirimel
1f094b03bc
use more optimal discrete pinv sizing
2020-04-18 05:26:39 -07:00
David Ratchkov
5aea45ed69
- Fix switched disabled powers
2020-04-17 16:23:06 -07:00
David Ratchkov
123cc371be
- Fix disabled power char
2020-04-17 16:09:58 -07:00
jcirimel
486819ae0d
fix width bin typo
2020-04-17 15:27:36 -07:00
David Ratchkov
1f816e2823
- Characterize actual disabled power (read mode only)
...
- Report rise/fall power individually
2020-04-17 14:55:17 -07:00
jcirimel
a158ad1e81
add missing import
2020-04-17 14:24:52 -07:00
mrg
cbb67ad483
Update to run LVS when no DRC errors too.
2020-04-17 13:57:52 -07:00
David Ratchkov
7e36cd4828
- Write voltage_map and pg_pin
...
- Remove 'when' condition on leakage power
- Remove 'clk*' from 'when' condition on internal_power on the same 'clk*' pin
2020-04-17 13:45:57 -07:00
Joey Kunzler
7920b0cef9
m3 min area rounding fix
2020-04-17 12:36:48 -07:00
Joey Kunzler
fbc6dfdaac
split pbitcell tests
2020-04-17 12:26:18 -07:00
mrg
f1925420cf
Only allow DRC fail with LVS pass if using Magic.
2020-04-17 10:30:26 -07:00
mrg
75fce9894c
Allow LVS to run even if DRC fails.
2020-04-17 09:35:07 -07:00
jcirimel
9316fb8b01
Merge branch 'dev' into discrete_models
2020-04-16 16:48:21 -07:00
jcirimel
ed54c7ab83
Merge branch 'dev' of https://github.com/VLSIDA/PrivateRAM into dev
2020-04-16 16:48:07 -07:00
mrg
8ece411954
Merge branch 'dev' into tech_migration
2020-04-16 11:32:02 -07:00
mrg
843e9414df
Parameterize vdd and gnd pin in write driver array.
2020-04-16 11:28:35 -07:00
mrg
770533e7b1
Parameterize vdd and gnd pin in sense amp array.
2020-04-16 11:27:26 -07:00
mrg
d1319d633d
Don't widen too short wires either
2020-04-16 11:02:54 -07:00
jcirimel
24e0e326d4
merge dev in to disc...
2020-04-16 02:18:39 -07:00
jcirimel
ebb1a7bedb
merge local with dev
2020-04-16 02:16:56 -07:00
mrg
b347e3f7a8
Try both layers for reversed layer stacks.
2020-04-15 16:49:04 -07:00
mrg
9d2902de9e
Conditional well spacing
2020-04-15 15:55:49 -07:00
mrg
94eb2afa36
Change to callable DRC rule. Use bottom coordinate for bus offsets.
2020-04-15 15:29:55 -07:00
mrg
e95c97d7a5
PEP8 cleanup
2020-04-15 14:29:43 -07:00
mrg
1564d6e02b
PEP8 cleanup
2020-04-15 11:24:28 -07:00
mrg
43fe1ae023
Improve pitch computation
2020-04-15 11:16:45 -07:00
mrg
331a4f4606
Fix wire width bug in short jogs. PEP8 cleanup.
2020-04-15 09:48:42 -07:00
jcirimel
6c1c72c520
fix pgates binning off-by-one
2020-04-15 04:09:58 -07:00
mrg
0941ebc3da
Fix well spacing issue
2020-04-14 14:08:07 -07:00
mrg
32d190b8b1
Jog connection on M1 for bank select.
2020-04-14 12:15:56 -07:00
mrg
43dcf675a1
Move pnand outputs to M1. Debug hierarchical decoder multirow.
2020-04-14 10:52:25 -07:00
jcirimel
5f4ed47c57
netlist only discrete simulating
2020-04-13 20:48:34 -07:00
Aditi Sinha
2661a42726
changes to support spare columns
2020-04-14 03:09:10 +00:00
jcirimel
afcb5174ac
discrete dff tests working
2020-04-11 01:19:04 -07:00
mrg
2e67d44cd7
First pass of multiple bitcells per decoder row
2020-04-10 13:29:41 -07:00
jcirimel
a0eb9839ad
revert units on sp_lib, begin discrete tx simulation
2020-04-09 19:39:21 -07:00
mrg
7888e54fc4
Remove dynamic bitcell multiple detection.
...
Check for decoder bitcell multiple in tech file or assume 1.
PEP8 fixes.
2020-04-09 11:38:18 -07:00
Matt Guthaus
75bd2b46a5
OpenRAM v1.1.5
2020-04-09 10:02:15 -07:00
mrg
8a55c223df
Use single height for netlist_only mode
2020-04-09 09:48:54 -07:00
mrg
58fbc5351a
Change rows to outputs in hierarchical decoder
2020-04-08 17:05:16 -07:00
mrg
745450fadc
Syntax error
2020-04-08 17:04:50 -07:00
mrg
cddfaa0dc8
Tech dependent fudge factor
2020-04-08 17:04:14 -07:00
mrg
ade3b78711
Add exception errors file
2020-04-08 16:55:45 -07:00
mrg
0c27942bb2
Dynamically try and DRC decoder for height
2020-04-08 16:45:28 -07:00
Hunter Nichols
4103745de2
Merged with dev, fixed conflict in ptx
2020-04-08 02:33:05 -07:00
Hunter Nichols
95363856e4
Added logical effort and input load for ptx module.
2020-04-08 02:29:57 -07:00
mrg
7872b6a68c
Merge branch 'dev' into tech_migration
2020-04-07 10:42:05 -07:00
mrg
a3797094d0
Swap lvs and sp dimensions for s8
2020-04-07 10:37:49 -07:00
mrg
c8c74e8b69
Fix lvs_write in sram class
2020-04-06 15:20:59 -07:00
mrg
f20246abdc
Merge branch 'dev' of github.com:VLSIDA/PrivateRAM into dev
2020-04-06 14:08:45 -07:00
mrg
cd8dc8e20b
Output lvs model instead of spice model
2020-04-06 14:08:38 -07:00
mrg
a12b5d9e6c
Split decoder pbitcell tests
2020-04-06 13:31:31 -07:00
Jesse Cirimelli-Low
b59c789dec
remove whitespace
2020-04-05 03:58:26 -07:00
Jesse Cirimelli-Low
beef9441b7
fix pin check debug typo
2020-04-05 02:55:15 -07:00
Jesse Cirimelli-Low
8b33cb519f
Merge branch 'dev' into custom_mod
2020-04-03 17:05:56 -07:00
mrg
ab5dd47182
Ptx is in microns if lvs_lib exists
2020-04-03 14:06:56 -07:00
mrg
f358de78bb
Add optional lvs_lib netlists for LVS usage (sp_lib is for simulation)
2020-04-03 13:39:54 -07:00
mrg
8603d3edd6
PEP8 cleanup
2020-04-03 11:37:06 -07:00
mrg
2850b9efb5
Don't force check in lib characterization. PEP8 formatting.
2020-04-02 12:52:42 -07:00
mrg
f105c9ab36
Netlist only in verilog test
2020-04-02 12:43:19 -07:00
mrg
1d5e5e3607
Don't run lvs/drc or route supplies in verilog test
2020-04-02 12:42:28 -07:00
mrg
67de7efd49
Fix syntax error. No DRC/LVS in netlist only mode.
2020-04-02 11:31:28 -07:00
mrg
9106e22b58
Fix typo and syntax error.
2020-04-02 10:37:21 -07:00
mrg
5349323acd
PEP8 cleanup. DRC/LVS returns errors.
2020-04-02 09:47:39 -07:00
mrg
0d6c84036d
Adjust fudge factor for pin spacing.
2020-04-02 09:47:13 -07:00
mrg
a3683c5898
Separate pbitcell from hierarchical decoder
2020-04-01 16:39:47 -07:00
mrg
a9d3548be1
Refactor drc/lvs error output
2020-04-01 15:54:06 -07:00
Jesse Cirimelli-Low
cdf0315a90
Merge branch 'dev' into custom_mod
2020-04-01 15:35:33 -07:00
mrg
3b662026d2
pnand3 constant hack for input separation
2020-04-01 11:36:04 -07:00
mrg
7956b63d9f
Add licon option to precharge
2020-04-01 11:26:45 -07:00
mrg
3e41664db6
Split precharge array to multiport and normal cell
2020-04-01 11:26:31 -07:00
mrg
3074cf3b86
Small format cleanup
2020-04-01 11:15:29 -07:00
mrg
da334e47aa
Separate pbitcell tests for precharge
2020-04-01 11:14:50 -07:00
mrg
bc9cbe70a7
Poly overlap doesn't convert to tx device
2020-04-01 09:42:07 -07:00
Jesse Cirimelli-Low
6e2a5d7a1a
set sram output cap in characterizer to be 4x dff input cap
2020-04-01 04:24:43 -07:00
mrg
d916322b74
PEP8 updates
2020-03-31 10:15:46 -07:00
Joey Kunzler
b0d2946c80
update to sense amp and write driver modules
2020-03-30 20:00:32 -07:00
mrg
9907daaffa
Min area only for multiple layers
2020-03-26 13:05:02 -07:00
mrg
d2c97d75a7
Add well contact and min area to power pin of precharge
2020-03-26 11:49:32 -07:00
mrg
1e3734cb26
Hack to fix pnand3 in freepdk45
2020-03-26 11:08:53 -07:00
Jesse Cirimelli-Low
341bde7a48
Merge branch 'dev' into custom_mod
2020-03-26 02:40:37 -07:00
mrg
2f353187ba
Skywater extraction mode for si unit scales
2020-03-24 12:41:15 -07:00
mrg
1e2163c3a6
Hack for pnand3 pin spacing
2020-03-24 12:40:41 -07:00
mrg
e9d0db44fd
Add li_stack contact to ptx and pgate if it exists.
2020-03-23 16:55:38 -07:00
mrg
f491876a5a
Move up B input in pnor2
2020-03-23 13:49:08 -07:00
mrg
c15b4167b6
Merge branch 'dev' into tech_migration
2020-03-23 11:57:03 -07:00
mrg
f598a359d5
Remove unused contact in pnor2
2020-03-23 11:55:17 -07:00
mrg
717cbb0fe5
Remove unused contact in pnand3
2020-03-23 11:52:19 -07:00
mrg
0ee6963198
Remove unused contact in pnand2
2020-03-23 11:46:21 -07:00
mrg
f21791a904
Add source drain contact options to ptx.
2020-03-23 11:36:45 -07:00
Aditi Sinha
b75eeb7688
Merge branch 'dev' into bisr
2020-03-22 21:58:04 +00:00
Aditi Sinha
a5afbfe0aa
Fixed errors in extra rows characterization
2020-03-22 20:54:49 +00:00
mrg
9df99beb28
Merge branch 'tech_migration' into dev
2020-03-06 15:03:46 -08:00
mrg
fd7af7fc25
Matt sucks skip test
2020-03-06 15:03:31 -08:00
mrg
c5a1be703c
Rotate via and PEP8 formatting
2020-03-06 13:39:46 -08:00
mrg
23501c7b35
Convert pnand+pinv to pand in decoders.
2020-03-06 13:26:40 -08:00
mrg
1a2efd77ad
Move rbl route away from bitcell array
2020-03-06 09:48:20 -08:00
mrg
ee18f61cbf
Route RBL to edge of bank.
2020-03-06 09:03:52 -08:00
mrg
05f9e809b4
PEP8 Formatting
2020-03-05 16:27:35 -08:00
mrg
6506622dfb
PEP8 Formatting
2020-03-05 16:20:21 -08:00
mrg
5b23653369
PEP8 Formatting
2020-03-05 16:13:49 -08:00
mrg
ad98137cd4
Merge branch 'dev' into tech_migration
2020-03-05 14:18:06 -08:00
mrg
5312629702
Remove jog in precharge. Jog is in port data
2020-03-05 12:10:13 -08:00
mrg
9c1f0657dd
PEP8 Formatting
2020-03-05 11:58:36 -08:00
mrg
7adeef6c9e
PEP8 Formatting
2020-03-05 10:21:18 -08:00
mrg
287a31f598
Precharge updates.
...
Enable different layers for bitlines.
Jog bitlines to fit precharge transistors for close proximity bitlines.
PEP8 cleanup.
2020-03-04 17:39:11 -08:00
Joey Kunzler
d7529ce526
Vdd/gnd via stacks now use perferred directions, added cell property to override
2020-03-04 17:05:19 -08:00
mrg
7ba9e09e12
Incomplete precharge layer decoupling
2020-03-04 22:23:05 +00:00
Jesse Cirimelli-Low
f62016ad9f
revert dff_buf for no body contact
2020-03-03 12:40:08 +00:00
mrg
bb2305d56a
PEP8 format fixes
2020-02-28 18:24:39 +00:00
mrg
e1b97f58e1
Add instance center location
2020-02-28 18:24:09 +00:00
mrg
0b73979388
Space inputs by M1 pitch
2020-02-28 18:23:49 +00:00
mrg
073bd47b31
Add source/drain/gate to structure
2020-02-28 18:23:36 +00:00
Matt Guthaus
1617840ed3
Merge branch 'dev' of github.com:VLSIDA/PrivateRAM into dev
2020-02-27 08:50:19 -08:00
mrg
266d68c395
Generalize pgate width based on nwell/pwell contacts
2020-02-25 17:09:07 +00:00
Matt Guthaus
0db0c5a3a9
Update version to 1.1.4
2020-02-25 08:09:08 -08:00
mrg
e80677caf7
Merge remote-tracking branch 'origin/dev' into tech_migration
2020-02-25 00:36:43 +00:00
mrg
254e584e35
Cleanup and simplify ptx for multiple technologies
2020-02-25 00:36:22 +00:00
mrg
585a708e0c
Generalize y offsets in pnand3
2020-02-25 00:36:02 +00:00
mrg
d565c9ac72
Generalize input y offsets
2020-02-25 00:35:32 +00:00
mrg
6bcffb8efb
Change default cell height and fix contact width error
2020-02-25 00:34:59 +00:00
mrg
35110a4453
Improve debug of non-manhattan error
2020-02-25 00:34:28 +00:00
Joey Kunzler
4c9b3c5864
Merge branch 's8_update' into dev
...
Add lpp to addText(), remove reference to specific technology in gdsMill
2020-02-24 14:02:18 -08:00
Bastian Koppelmann
0e641bf905
Remove write_driver_array.py.orig
...
this was the remainder of applying a diff using "patch". To avoid this
mistake, add the filetypes created by "patch" to the .gitignore.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-02-21 13:29:43 +01:00
Joey Kunzler
c9cb387912
fixed variable typo
2020-02-20 18:35:54 -08:00
Aditi Sinha
694ea5c20e
Characterization for extra rows
2020-02-20 17:31:58 +00:00
Aditi Sinha
34939ebd70
Merge branch 'dev' into bisr
2020-02-20 17:09:09 +00:00
Matt Guthaus
da4c69ab98
Merge branch 'pin-pull3' into dev
2020-02-20 09:07:58 -08:00
Aditi Sinha
88bc1f09cb
Characterization for extra rows
2020-02-20 17:01:52 +00:00
Hunter Nichols
c1cb6bf512
Changed layout input names of s_en AND gate to match the schematic
2020-02-19 23:32:11 -08:00
Joey Kunzler
d6987ac584
added purposes to addText(), removed reference to specific tech from gdsMill
2020-02-19 16:26:52 -08:00
Hunter Nichols
df2f981a34
Adds checks to prevent characterization of redundant corners.
2020-02-19 15:59:26 -08:00
Hunter Nichols
e4fef73e3f
Fixed issues with bitcell measurements variable names, made target write ports required during characterization
2020-02-19 15:34:31 -08:00
Hunter Nichols
843fce41d7
Fixed issues with sen control logic for read ports.
2020-02-19 03:06:11 -08:00
Bastian Koppelmann
76256a2f1b
sense_amp: Allow custom pin names
...
we don't want to propagate the sense amp's bl/br names out of the
sense_amp_array. Thus the sense_amp_array gets them named as
"bl"/"br" again.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-02-17 15:20:12 +01:00
Bastian Koppelmann
680dc6d2c7
sense_amp/array: Remove hardcoded pin names
...
all pin names should be wrapped into a function/property. This ensures
that there is exactly one place to change the name.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-02-17 15:20:06 +01:00
Bastian Koppelmann
9a12b68680
write_driver: Allow custom pin names
...
we don't want to propagate the write driver bl/br names out of the
write_driver_array. Thus the write_driver_array gets them named as
"bl"/"br" again.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-02-17 14:25:00 +01:00
Bastian Koppelmann
c06cb2bfc2
write_driver/array: Remove hardcoded pin names
...
all pin names should be wrapped into a function/property. This ensures
that there is exactly one place to change the name.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-02-17 14:23:26 +01:00
Bastian Koppelmann
656fdd1008
port_data: Refactor channel_route/connect_bitlines()
...
both functions share a lot of code and are passing around a lot of data
under similar names (inst1, inst1_start_bit, inst1_bl_name, ...). Thus
we group all these elements in a named tuple to ease passing around
these elements.
All callers of channel_route/connect_bitlines() either pass in the bl/br
names or rely on "br_{}"/"bl_{}" as defaults. These hard coded values
should be determined by the instances. Thus we get the bitline names
based on the instances passed in. The callers only provide a template
string, to take care of the case that bitlines are called "bl_out_{}".
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-02-17 14:20:03 +01:00
Bastian Koppelmann
5e1f64c8f9
modules/port_data: Add get_bl/br_name method
...
if we rely on the names of the submodules (sense_amp_array,
write_driver_array, etc.) for port_data's pins, we get into trouble on
multiport SRAMs. To avoid this we use explicit names for br/bl depending
on the port number in port_data. Now each submodule does no longer need to
figure out the right name depending on the port number.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-02-17 14:18:32 +01:00
Joey Kunzler
125bcafb3e
fixed purposes for gdsMill
2020-02-15 15:00:30 -08:00
Bastian Koppelmann
87b5a48f9e
bitcell: Remove hardcoded signal pins
...
use names provided by the tech file, which can be overriden by the
technology.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-02-12 15:37:51 +01:00
Bastian Koppelmann
c97bad72db
custom_cell_properties: Add bitcell pin name API
...
this allows users to overrride the pin names to match the names of their
GDS.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-02-12 15:37:51 +01:00
Bastian Koppelmann
f6302caeac
replica_bitcell_array: Connect bitcells based on bitcell bl/br/wl names
...
this allows us to override the bl/br/wl names of each bitcell.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-02-12 15:37:47 +01:00
Bastian Koppelmann
f9babcf666
port_data: Each submodule now specifies their bl/br names
...
before the names of bl/br from the bitcell were assumed. If we want to
allow renaming of bl/br from bitcells, we have to seperate the other
modules from that. Note, that we don't touch every occurence of bl/br,
but only the once necessary that pin renaming of the bitcell works.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-02-12 15:00:50 +01:00
Bastian Koppelmann
64bf93e4e5
bank: Connect instances by their individual bl/br names
...
each module should be able to state how their bl/br lines are named. Here we
always connect port_data with the bitcell_array, so port_data needs function
that return the names of bl/br.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-02-12 15:00:50 +01:00
Jesse Cirimelli-Low
a23f72d5a3
Merge branch 'dev' of https://github.com/VLSIDA/PrivateRAM into dev
2020-02-12 06:54:03 +00:00
Jesse Cirimelli-Low
aedbc5f968
merge custom cell and module properties
2020-02-12 04:09:40 +00:00
mrg
5928a93772
Merge branch 'dev' into tech_migration
2020-02-10 22:42:50 +00:00
mrg
0ef06ec1e1
Fix dff_buf width in netlist_only mode
2020-02-10 20:06:34 +00:00
mrg
6bf33a980f
Add conservative well spacing between library FF and our pgates.
2020-02-10 19:28:30 +00:00
mrg
f7915ec55e
Route to top of NMOS to prevent poly overlap nmos
2020-02-10 17:12:39 +00:00
jcirimel
101eb28112
revert example scn4m to non netlist only
2020-02-09 23:52:11 -08:00
jcirimel
27eced1fbe
netlist_only done
2020-02-09 23:51:01 -08:00
jcirimel
7038fad930
s8 gdsless netlist only working up to pdriver
2020-02-09 23:10:33 -08:00
jcirimel
b212b3e85a
s8 gdsless netlist only working up to dff array
2020-02-09 21:37:09 -08:00
mrg
4d85640a00
Change col addr spacing to col addr size
2020-02-07 22:20:16 +00:00
mrg
2ff058f5d5
PEP8 Cleanup and reverse pitch offset of col addr routing
2020-02-06 22:59:30 +00:00
mrg
4b06ab9eaf
Move port 2 column address bus down.
...
PEP 8 cleanup.
2020-02-06 19:46:10 +00:00
mrg
5e514215d5
Force vertical vias on pnand3
2020-02-06 16:44:19 +00:00
mrg
f0ecf385e8
Nwell fixes in pgates.
...
Fix minor PEP8 format fixes.
Fix nwell to be 55% of cell height.
Move contact in hierarchical decoder for DRC error.
2020-02-06 16:20:09 +00:00
Jesse Cirimelli-Low
b107934672
fix styling
2020-02-06 12:15:52 +00:00
Jesse Cirimelli-Low
3a06141030
add simple sram sizing for netlist only
2020-02-06 12:10:49 +00:00
mrg
596302d9a9
Update pgate well and well contacts.
...
Extend well left and right past a cell boundary.
Use asymmetric well contacts.
2020-02-05 18:22:45 +00:00
mrg
04d254542d
Add general well_extend_active DRC in design class.
2020-02-05 18:22:22 +00:00
mrg
4526986de3
Update contact well support.
...
Add asymmetric tap overlap support in DRC rules.
Add static nwell and pwell contact in class for measurements.
2020-02-05 18:21:01 +00:00
jcirimel
7cb3091140
Merge branch 'dev' of https://github.com/VLSIDA/PrivateRAM into custom_mod
2020-02-04 23:40:54 -08:00
jcirimel
ed11145ca4
add custom module file, make dff clk pin dynamic
2020-02-04 23:35:06 -08:00
mrg
304971ff60
Fix ptx so nmos and pmos have same active offset and gates align
2020-02-04 17:38:35 +00:00
mrg
53217e4030
Check min well width in contact and redo position
2020-02-04 17:37:58 +00:00
mrg
5aed893725
Add nwell/pwell tap test
2020-02-03 18:41:06 +00:00
mrg
34c9b3a0a5
Fix well offset computation for PMOS
2020-02-03 17:37:53 +00:00
Jesse Cirimelli-Low
6cf20a0353
add technology based module customization
2020-01-30 19:44:24 +00:00
mrg
400cf0333a
Pgates are 8 M1 high by default. Port data is bitcell height.
2020-01-30 03:34:04 +00:00
mrg
0880c393fd
Fix base bitcell syntax error. Remove some unused imports.
2020-01-30 01:58:30 +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
b5701af864
column_mux: Allow y axis mirroring
...
since the bitlines alternate in the bitcell array we also need to mirror
the port_data elements.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-01-28 15:51:39 +01:00
Bastian Koppelmann
ed66fca031
write_driver/sense_amp/precharge arrays: Allow y axis mirroring
...
since the bitlines alternate in the bitcell array we also need to mirror
the port_data elements.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-01-28 15:51:39 +01:00
Bastian Koppelmann
dd1afe0313
Bitcell arrays: Allow mirroring on the y axis
...
this allows for bitcells that need to be mirrored on the y axis, like
thin cells. However, the portdata elements also need to be mirrored on
the y axis. Otherwise the router will fail horribly when connecting
bitlines.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-01-28 15:51:21 +01: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
9749c522d1
tech: Make power_grid configurable
...
this is the first step to allow engineers, porting technologies, more room
for routing their handmade cells.
For now, we don't allow the specification of power_grids where the lower layer
prefers to be routed vertically. This is due to the router not
connecting some pins properly in that case.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-01-28 12:06:34 +01:00
Bastian Koppelmann
90a4a72bba
modules: Use add_power_pin API for all modules
...
sense_amp_array, write_driver_array, and single_column_mux were the only offenders.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-01-28 11:47:49 +01:00
Bastian Koppelmann
988df8ebb9
hierarchy_layout: Add methods to create via stacks
...
this allows us to simplify add_power_pin() and gives a clean
API to create vias through multiple layers.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-01-28 11:47:32 +01:00
Bastian Koppelmann
3fb2b9c1c3
Bitcell arrays: Create abstract base class
...
a lot of functions of dummy- and bitcell-array are either copy-pasted or
have just slight differences. Merge all of those into an abstract base
class such that we don't have too much duplicate code.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-01-28 10:59:58 +01:00
Jesse Cirimelli-Low
6e070925b6
update magic for multiport
2020-01-28 02:32:34 +00:00
Jesse Cirimelli-Low
30604fb093
add multiport support for pex labels
2020-01-28 00:28:55 +00:00
Jesse Cirimelli-Low
1a97dfc63e
syncronize bitline naming convention betwen bitcell and pbitcell
2020-01-27 11:50:43 +00:00
Jesse Cirimelli-Low
d42cd9a281
pbitcell working with bitline adjustments
2020-01-27 10:03:31 +00:00
Matt Guthaus
e62beae805
Merge branch 'tech_migration' into dev
2020-01-25 12:03:56 -08:00
mrg
877ea53b7f
Fix conflicting boundary name
2020-01-24 21:24:44 +00:00
mrg
71cbe74017
Round middle position fix
2020-01-24 18:00:28 +00:00
mrg
aa8f389f28
Add fudge factor to pbitcell wells
2020-01-24 17:45:24 +00:00
Jesse Cirimelli-Low
1062cbfd7f
begin fixes to pbitcell, prepare multibank pex
2020-01-24 10:24:29 +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
jcirimel
40c01dab85
fix bl in stim file
2020-01-21 01:44:15 -08:00
jcirimel
73691f6054
fix bug in top level bitline label placement
2020-01-21 00:20:52 -08:00
Jesse Cirimelli-Low
5778901cfe
pull bitline labels to top level spice
2020-01-20 12:16:30 +00:00
jcirimel
364842569a
fix s_en in stim
2020-01-16 12:16:49 -08:00
mrg
306740f0f3
Add empty minarea function
2020-01-16 19:27:59 +00:00
mrg
262782cba0
Remove print, fix compare
2020-01-16 19:27:39 +00:00
mrg
a2387da29d
PEP format design
2020-01-16 19:26:57 +00:00
mrg
ea00258be9
Cleanup contact
2020-01-16 19:26:43 +00:00
jcirimel
075bf0d841
label bitcell in stim, add s_en top level to stim
2020-01-16 03:51:29 -08: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
05ab018ffc
strip padding character from gds reading
2020-01-07 00:01:32 +00:00
Bastian Koppelmann
2c610036b2
router/supply_grid_router: Print init time to the user
...
this can take considerable amount of time, so the user knows that
useful work is done.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-01-03 12:24:14 +01:00
Bastian Koppelmann
c0c89e465a
vector: Implement hash cache for vector3d and vector
...
this gives us a small runtime improvement in the router.
For FreePDK45 word_size=8, num_words=256
Improved
*** Maze routing supplies: 89.8 seconds
** Routing: 279.3 seconds
Non-improved
*** Maze routing supplies: 105.1 seconds
** Routing: 293.5 seconds
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-01-03 12:16:10 +01:00
Bastian Koppelmann
7ff5121d8c
base/pin_layout: Implement hash cache
...
the hash value only depends of the properties 'rect' and 'layer' so we
only compute the hash if those values are changed. Otherwise we just
return the precomputed value. This gives us a major speedup (~10x) if
the hash is used as a key in a dict.
During the grouping of pins in analyze_pins() this gives the best
improvements. For example for FreePDK45 with num_bits=8, num_words=256
Improved
**** Analyzing pins: 20.9 seconds
** Routing: 293.8 seconds
** SRAM creation: 349.8 seconds
Non-improved
**** Analyzing pins: 267.9 seconds
** Routing: 537.5 seconds
** SRAM creation: 592.9 seconds
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-01-03 11:39:59 +01:00
Bastian Koppelmann
14e8a26246
base/pin_layout: Make rect and layer properties
...
only rect and layer are used to compute the hash for a pin. Having
those as properties allows us to cache the hash value and only update it
if either rect or layer are written.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2020-01-03 11:33:34 +01:00
Jesse Cirimelli-Low
3ab99d7f9c
update gds library, generalize geometry reverse transform function
2019-12-24 05:01:55 +00:00
Matthew Guthaus
a6f5e59e18
Remove unused layers and simplify layer check to work without it.
2019-12-23 21:49:47 +00:00
Matthew Guthaus
082f575e2a
Use active_width in ptx again despite colliding with DRC rule
2019-12-23 21:45:09 +00:00
Matthew Guthaus
bec12f5b94
Cleanup.
2019-12-23 21:16:08 +00:00
Matt Guthaus
4ad920eaf7
Small fixes to tech usage.
2019-12-23 08:42:52 -08:00
Matt Guthaus
9ad06a7770
Move write mask vias to center to avoid data pins.
2019-12-20 11:48:27 -08:00
Matt Guthaus
89396698ef
Non-preferred via in pnand active
2019-12-20 10:36:14 -08:00
Matt Guthaus
82496a66fe
Simplify supply code.
2019-12-20 10:35:57 -08:00
Matt Guthaus
9e8b03d6c2
Merge branch 'dev' into tech_migration
2019-12-19 16:23:22 -08:00
Matt Guthaus
d2461e5011
Supply indexing bug resolved. Recompute width/height basted on insts.
2019-12-19 16:19:21 -08:00
Matt Guthaus
0da8164ea6
Remove some unnecessary via directions.
2019-12-19 13:54:50 -08:00
Matt Guthaus
b7d78ec2ec
Fix ptx active contact orientation to non-default M1 direction.
2019-12-19 12:54:10 -08:00
Bastian Koppelmann
11760a9993
sram_factory: Add check for duplicate module name
...
sram_factory cannot handle duplicate module name, thus we bail out and
raise an error if a user attempts that.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2019-12-19 16:31:52 +01:00
Bastian Koppelmann
1df16eceb6
sram_factory: Give proper priority to overrides
...
modules overridden by the user are the highest priority, then modules
overridden by the technology. If nothing is overriden, use the defaults
from OPTS (if they exist) or use the requested module_type.
This fixes that custom tech_modules could not be used, if they had a default in
OPTS even if the latter was not overridden by the user.
We don't need extra defaults in the tech_modules, as we now only use them,
if they have been overridden by the tech_module.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2019-12-19 15:58:00 +01:00
Matt Guthaus
36cb675150
Fix minwidth for multiple via bug.
2019-12-18 09:30:00 -08:00
Bastian Koppelmann
fab963701b
sram_base: Instantiate "dff_array" and "bank" through sram_factory
...
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2019-12-18 17:33:50 +01:00
Bastian Koppelmann
451ef4d896
sram_factory: Allow a prefered module name
...
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2019-12-18 17:33:47 +01:00
Bastian Koppelmann
de6b207798
hierachy_layout: Move number of via arg to add_power_pins()
...
this allows custom modules to state how many vias they need
for power rails.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2019-12-18 17:33:43 +01:00
Jesse Cirimelli-Low
88d3da0b4a
fix control logic pex labels with multiport
2019-12-18 12:45:12 +00:00
jcirimel
f0958b0b11
squashed update of pex progress due to timezone error
2019-12-18 03:03:13 -08:00
Matt Guthaus
aceaa9fb21
Standardize contact names.
2019-12-17 15:55:20 -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
Matthew Guthaus
fc4685c7f7
Cleanup.
2019-12-17 23:07:01 +00:00
Matthew Guthaus
449b0a7c28
Make wire test programmatic
2019-12-17 22:36:38 +00:00
Matt Guthaus
c025ce6356
Add li to preferred direction
2019-12-17 14:06:23 -08: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
Matt Guthaus
a79d03fef4
Remove poly contact
2019-12-16 17:18:49 -08:00
Matt Guthaus
d3a2c46cb9
Remove some contact tests
2019-12-16 17:15:29 -08:00
Matt Guthaus
6058af994c
Fix ignore gds files
2019-12-16 15:39:32 -08:00
Matt Guthaus
3eb0dad06a
Remove cells from DRC/LVS in the blackbox tech list.
2019-12-16 15:33:30 -08:00
Matt Guthaus
acbbbe9403
Make exception more readable.
2019-12-16 12:07:40 -08:00
Matt Guthaus
f30d0b9197
Fix KeyError for bitell types.
2019-12-16 12:04:33 -08:00
Matt Guthaus
5176a70f84
Add comments to module importing routines
2019-12-16 10:21:24 -08:00
Matt Guthaus
2a9129ef45
Small fix to tech and config over-rides
2019-12-16 10:11:26 -08:00
Matt Guthaus
be4893839b
Remove old drc/lvs override name
2019-12-16 10:05:52 -08:00
Bastian Koppelmann
306c0b92c3
globals: Add tech module path to Pythonpath if it exists
...
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2019-12-16 16:56:16 +01:00
Bastian Koppelmann
74cd4f989d
Remove hardcoded module class names
...
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2019-12-16 16:56:06 +01:00
Bastian Koppelmann
233ec010ff
modules: Create a class that wraps all the module class names
...
this removes hard coded values from the module instatiations. It also allows
users to override certain modules with their custom cells.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2019-12-16 16:51:38 +01:00
Matt Guthaus
f71cfe0d9d
Generalize active and poly stacks
2019-12-13 14:56:14 -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
8d3f1d19cb
Fix missing rule
2019-12-11 18:02:32 -08:00
Matt Guthaus
76f7019432
Merge branch 'dev' into tech_migration
2019-12-11 17:59:51 -08:00
Matt Guthaus
e048ada23c
Abstract basic DRC checks
2019-12-11 17:56:55 -08:00
Matt Guthaus
f9a66e86b4
Add npc option to contact
2019-12-11 09:09:59 -08:00
Matt Guthaus
31de5ab87e
Merge remote-tracking branch 'bkoppelmann/master' into dev
2019-12-11 08:46:52 -08:00
Bastian Koppelmann
928b02aa1f
gdsMill: Fix reader/writer ignoring the 'DATATYPE' of 'PATH' records
...
most readers (like KLayout/Calibre) will not open gds files omiting the
DATATYPE.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
2019-12-11 10:47:38 +01:00
Aditi Sinha
5b3846e1e5
Changed replica bitcell array to work with bank tests for non power of two rows
2019-12-08 13:24:39 +00:00
Matt Guthaus
4a1b10ff0d
Remove extra cast
2019-12-05 21:33:13 -08:00
Matthew Guthaus
f3286fb0c2
Don't add boundary to ptx
2019-12-06 02:37:12 +00:00
Matthew Guthaus
5af22b79e2
Only add boundary for if there's a DRC stdc layer
2019-12-06 02:17:58 +00:00
Matt Guthaus
53c72c6054
Merge branch 'tech_migration' of github.com:VLSIDA/PrivateRAM into tech_migration
2019-12-05 15:41:56 -08:00
Matt Guthaus
d150b165de
Merge branch 'tech_migration' of github.com:VLSIDA/PrivateRAM into tech_migration
2019-12-05 15:38:29 -08:00
Matt Guthaus
b1d8a35aa7
Add contact variation
2019-12-05 15:38:25 -08:00
Matthew Guthaus
3deeaf7164
Decrease verbosity of boundary layer
2019-12-05 23:33:23 +00:00
Matthew Guthaus
7397f110c5
Add bbox for special DRC rule boundary
2019-12-05 23:14:25 +00:00
Matthew Guthaus
8f473b26a9
Add replica bitcell test for 1 port
2019-12-05 01:14:06 +00:00
Matthew Guthaus
d519c00aa1
Fix contact order in test
2019-12-05 01:06:31 +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
0d35941241
Fix missing dbUnit conversion in gdsMill
2019-12-03 12:06:58 -08:00
Matt Guthaus
7b9e7ff35b
Nominal corner only for sim tests. Netlist only for speed.
2019-11-30 12:48:25 -08:00
Matt Guthaus
615c24f7bc
Merge branch 'dev' into tech_migration
2019-11-30 12:38:35 -08:00
Matt Guthaus
6ef1b6a4ec
Blackbox option for DRC waivers
2019-11-29 15:50:32 -08:00
Matt Guthaus
46c2cbd2d9
Check nominal_corner_only in new corner creation routine
2019-11-29 14:47:02 -08:00
Matt Guthaus
bedae87315
Only use max/min and typical corner
2019-11-29 13:31:44 -08:00
Matt Guthaus
2a912dab7a
Remove unused config files
2019-11-29 12:35:35 -08:00
Matt Guthaus
0cdd3af1aa
Change default nominal corners to false and enable in test config.
2019-11-29 12:08:53 -08:00
Matt Guthaus
d511f648c6
Move DRC/LVS/PEX tools to tech file.
2019-11-29 12:01:33 -08:00
Matt Guthaus
abd8b0a23a
Only setup bitcell when running top-level OpenRAM
2019-11-26 13:54:37 -08:00
Matt Guthaus
b71d630643
None for layer means unused.
2019-11-26 13:34:39 -08:00
Matt Guthaus
04045cf672
Fix syntax error
2019-11-26 13:24:19 -08:00
Matt Guthaus
f4599b7121
Default tools are calibre except for SCMOS
2019-11-26 13:23:18 -08:00
Matt Guthaus
102758881a
Use layer instead of special flags for wells
2019-11-26 13:22:52 -08:00
Matt Guthaus
909321326d
Ignore unused layers
2019-11-26 13:21:29 -08:00
Matt Guthaus
67a0928303
Merge branch 'dev' into tech_migration
2019-11-21 11:02:33 -08:00
Matt Guthaus
982e12be5e
Increment minor version
2019-11-21 11:00:22 -08:00
Matt Guthaus
807923cbf1
Ignore pycache dirs. Fix output error message.
2019-11-21 10:11:19 -08:00
Matt Guthaus
190c5a078e
Fix permissions on pwrite_driver test
2019-11-20 11:49:39 -08:00
Matt Guthaus
3364f47e56
Fix wrong supply voltage in config files.
2019-11-20 09:50:27 -08:00
Matt Guthaus
240c416100
Remove extra print
2019-11-17 10:40:01 -08:00
Matthew Guthaus
cdf01c6c23
Fix test 30 for generic configs
2019-11-17 00:49:38 +00:00
Matthew Guthaus
b3fb4e3183
Make unit test configs generic to tech_name
2019-11-17 00:44:31 +00:00
Matthew Guthaus
b3b3cf0210
Merge remote-tracking branch 'origin/dev' into tech_migration
2019-11-17 00:15:18 +00:00
Matthew Guthaus
aca99b87bc
Fix config for tests 30
2019-11-16 22:22:30 +00:00
Matthew Guthaus
0b3d2fe9de
Undo pdriver size change for now.
2019-11-16 19:54:39 +00:00
Matthew Guthaus
c4cf8134fe
Undo changes for config expansion. Change unit tests to use OPENRAM_HOME.
2019-11-15 18:47:59 +00:00
Aditi Sinha
2c7aa5d0da
Non-power of 2 address decode tentative
2019-11-15 03:59:57 +00:00
Matthew Guthaus
7e9d08206c
Fix config import to be location independent
2019-11-14 20:18:18 +00:00
Matthew Guthaus
131f4bda4a
Add layer-purpose GDS support. Various PEP8 fixes.
2019-11-14 18:17:20 +00:00
Matthew Guthaus
bba6995653
Call debugger if debug_level more than 0 and an error.
2019-11-08 19:42:09 +00:00
Matthew Guthaus
8d158e9eb5
Fix lpp change
2019-11-08 15:45:25 +00:00
Matthew Guthaus
32f1cde897
PEP8 formatting
2019-11-07 16:48:37 +00:00
Matthew Guthaus
0dea153919
PEP8 formatting
2019-11-07 16:33:13 +00:00
Matthew Guthaus
a2422cc8d4
Sometimes round down pdriver to fix polarity
2019-11-06 21:51:21 +00:00
Matthew Guthaus
35e65fc6f2
PEP8 wordline driver
2019-11-06 21:19:36 +00:00
Matthew Guthaus
04af5480d2
Add skeleton files for pwrite_driver
2019-10-30 21:34:03 +00:00
Matt Guthaus
38213d998f
Add separate layer and purpose pairs to tech layers.
2019-10-25 10:03:25 -07:00
Matt Guthaus
764d4da1bd
Clean up config file organization. Improve gdsMill debug output.
2019-10-23 10:48:18 -07:00
Matt Guthaus
ccc6a67021
Update version to 1.1.2
2019-10-07 12:28:02 -07:00
Matt Guthaus
84c7146792
Fix some pep8 errors/warnings in pgate and examples.
2019-10-06 17:30:16 +00:00
vagrant
67c768d22c
Refactor bitcell to bitcell_base. Pep8 format bitcells.
2019-10-06 01:08:23 +00:00
Hunter Nichols
d722311822
Merge branch 'dev' into update_scmos_models
2019-10-03 13:16:32 -07:00
mrg
d583695959
Remove some flake8 errors/warnings.
2019-10-02 23:26:02 +00:00
Hunter Nichols
b420f77ff1
Updated leakage power golden data in hspice delay test.
2019-10-01 15:26:34 -07:00
Hunter Nichols
19a09470d4
Merged with dev, conflict in golden data of hspice delay test.
2019-10-01 14:26:34 -07:00
Hunter Nichols
7b029a4582
Updated golden values in delay tests due to model changes.
2019-09-30 14:02:00 -07:00
Matt Guthaus
b0dcfb5b2d
Fix leakage mismatch in results.
2019-09-27 15:14:01 -07:00
Matt Guthaus
289d3b3988
Feedthru port edits.
...
Comment about write driver size for write through to work, but
disable write through in functional simulation.
Provide warning in Verilog about write throughs.
2019-09-27 14:18:49 -07:00
Matt Guthaus
cbbcb97a10
Merge branch 'dev' into feedthru
2019-09-27 09:42:51 -07:00
Matt Guthaus
99507ba5c5
Remove rbl_bl_delay_bar from w_en logic inputs.
2019-09-07 23:22:01 -07:00
Matt Guthaus
9ec663e0b1
Write all write ports first cycle. Don't check feedthru.
2019-09-07 20:20:44 -07:00
Matt Guthaus
35a8dd2eec
Factor out masking function
2019-09-07 20:05:05 -07:00
Matt Guthaus
322af0ec09
Remove sense enable during writes
2019-09-07 20:04:48 -07:00
Matt Guthaus
e5db02f7d8
Fix wrong function. Except unknown ports.
2019-09-06 14:59:23 -07:00
Matt Guthaus
93c89895c9
Remove unused test structures
2019-09-06 14:58:47 -07:00
Matt Guthaus
b5b0e35c8a
Fix syntax error.
2019-09-06 12:29:28 -07:00
Matt Guthaus
86c22c8904
Clean and simplify simulation code. Feedthru check added.
2019-09-06 12:09:12 -07:00
Matt Guthaus
6bee66f9dc
Forgot to add cs_bar to rw port rails.
2019-09-06 09:29:23 -07:00
Matt Guthaus
969cca28e4
Enable sensing during writes. Need to add dedicated test.
2019-09-06 07:16:50 -07:00
jsowash
1c65b90c70
Merge branch 'dev' into add_wmask
2019-09-05 09:15:05 -07:00
Matt Guthaus
678b2cc3fa
Fix functional test clk name
2019-09-04 18:59:08 -07:00
Matt Guthaus
4c3b171b72
Share nominal temperature and voltage. Nominal instead of typical.
2019-09-04 16:53:58 -07:00
jsowash
8c33749223
Uncommented offset_all_coordinates.
2019-09-04 16:41:27 -07:00
jsowash
febc053587
Moved SRAM macro in LEF file to origin and removed poly.
2019-09-04 16:11:12 -07:00
Matt Guthaus
585ce63dff
Removing unused tech parms. Simplifying redundant parms.
2019-09-04 16:08:18 -07:00
Matt Guthaus
8c601ce939
Model tests don't need layout
2019-09-04 16:06:12 -07:00
Matt Guthaus
c5568e86fe
Enable spice and don't purge option to test 30
2019-09-04 14:33:25 -07:00
jsowash
fbecb9bc02
Added poly to LEF files.
2019-09-04 14:06:17 -07:00
jsowash
d6e7047e2f
Added metal4 to lef files since it's now used with a wmask.
2019-09-04 13:04:51 -07:00
Matt Guthaus
eadb5d5e48
Allow gds file for front end with new options
2019-09-04 10:26:54 -07:00
jsowash
496a9919b8
Added wmask as a type group to .lib.
2019-09-04 09:45:11 -07:00
jsowash
452cc5e443
Added wmask to lib.py.
2019-09-04 09:29:45 -07:00
jsowash
1a72070f04
Removed LVS error where w_en went over whole AND array in 2 port.
2019-09-03 17:14:31 -07:00