lambdapdk 0.1.53__py3-none-any.whl → 0.1.54__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- lambdapdk/__init__.py +5 -4
- lambdapdk/asap7/libs/fakeram7.py +24 -18
- lambdapdk/ihp130/libs/sg13g2_io.py +57 -0
- lambdapdk/ihp130/libs/sg13g2_stdcell.py +1 -1
- {lambdapdk-0.1.53.dist-info → lambdapdk-0.1.54.dist-info}/METADATA +2 -2
- {lambdapdk-0.1.53.dist-info → lambdapdk-0.1.54.dist-info}/RECORD +10 -9
- {lambdapdk-0.1.53.dist-info → lambdapdk-0.1.54.dist-info}/WHEEL +1 -1
- {lambdapdk-0.1.53.dist-info → lambdapdk-0.1.54.dist-info}/entry_points.txt +0 -0
- {lambdapdk-0.1.53.dist-info → lambdapdk-0.1.54.dist-info}/licenses/LICENSE +0 -0
- {lambdapdk-0.1.53.dist-info → lambdapdk-0.1.54.dist-info}/top_level.txt +0 -0
lambdapdk/__init__.py
CHANGED
|
@@ -2,7 +2,7 @@ import os.path
|
|
|
2
2
|
import siliconcompiler.package as sc_package
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
__version__ = "0.1.
|
|
5
|
+
__version__ = "0.1.54"
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
def register_data_source(chip):
|
|
@@ -25,7 +25,7 @@ def setup_libs():
|
|
|
25
25
|
from lambdapdk.freepdk45.libs import nangate45, fakeram45
|
|
26
26
|
from lambdapdk.sky130.libs import sky130sc, sky130io, sky130sram
|
|
27
27
|
from lambdapdk.gf180.libs import gf180mcu, gf180io, gf180sram
|
|
28
|
-
from lambdapdk.ihp130.libs import sg13g2_stdcell, sg13g2_sram
|
|
28
|
+
from lambdapdk.ihp130.libs import sg13g2_stdcell, sg13g2_sram, sg13g2_io
|
|
29
29
|
from lambdapdk.interposer.libs import bumps as interposer_bumps
|
|
30
30
|
|
|
31
31
|
all_libs = []
|
|
@@ -34,7 +34,7 @@ def setup_libs():
|
|
|
34
34
|
nangate45, fakeram45,
|
|
35
35
|
sky130sc, sky130io, sky130sram,
|
|
36
36
|
gf180mcu, gf180io, gf180sram,
|
|
37
|
-
sg13g2_stdcell, sg13g2_sram,
|
|
37
|
+
sg13g2_stdcell, sg13g2_sram, sg13g2_io,
|
|
38
38
|
interposer_bumps]:
|
|
39
39
|
libs = lib_mod.setup()
|
|
40
40
|
if not isinstance(libs, (list, tuple)):
|
|
@@ -138,7 +138,7 @@ def get_docs_libraries():
|
|
|
138
138
|
from lambdapdk.freepdk45.libs import nangate45, fakeram45
|
|
139
139
|
from lambdapdk.sky130.libs import sky130sc, sky130io, sky130sram
|
|
140
140
|
from lambdapdk.gf180.libs import gf180mcu, gf180io, gf180sram
|
|
141
|
-
from lambdapdk.ihp130.libs import sg13g2_stdcell, sg13g2_sram
|
|
141
|
+
from lambdapdk.ihp130.libs import sg13g2_stdcell, sg13g2_sram, sg13g2_io
|
|
142
142
|
from lambdapdk.interposer.libs import bumps as interposer_bumps
|
|
143
143
|
|
|
144
144
|
return [
|
|
@@ -156,5 +156,6 @@ def get_docs_libraries():
|
|
|
156
156
|
(gf180sram, "gf180sram"),
|
|
157
157
|
(sg13g2_stdcell, "sg13g2_stdcell"),
|
|
158
158
|
(sg13g2_sram, "sg13g2_sram"),
|
|
159
|
+
(sg13g2_io, "sg13g2_io"),
|
|
159
160
|
(interposer_bumps, "interposer_bumps")
|
|
160
161
|
]
|
lambdapdk/asap7/libs/fakeram7.py
CHANGED
|
@@ -6,24 +6,30 @@ def setup():
|
|
|
6
6
|
libs = []
|
|
7
7
|
stackup = '10M'
|
|
8
8
|
|
|
9
|
-
for config in ('64x32', '128x32', '256x32', '256x64',
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
lib
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
9
|
+
for config in ('64x32', '128x32', '256x32', '256x64',
|
|
10
|
+
'512x32', '512x64', '512x128',
|
|
11
|
+
'1024x32', '1024x64',
|
|
12
|
+
'2048x32', '2048x64',
|
|
13
|
+
'4096x32', '4096x64',
|
|
14
|
+
'8192x32', '8192x64'):
|
|
15
|
+
for ramtype in ('dp', 'sp'):
|
|
16
|
+
mem_name = f'fakeram7_{ramtype}_{config}'
|
|
17
|
+
lib = Library(mem_name, package='lambdapdk')
|
|
18
|
+
register_data_source(lib)
|
|
19
|
+
path_base = 'lambdapdk/asap7/libs/fakeram7'
|
|
20
|
+
lib.add('output', stackup, 'lef', f'{path_base}/lef/{mem_name}.lef')
|
|
21
|
+
|
|
22
|
+
for corner in ('slow', 'fast', 'typical'):
|
|
23
|
+
lib.add('output', corner, 'nldm', f'{path_base}/nldm/{mem_name}.lib')
|
|
24
|
+
|
|
25
|
+
lib.set('option', 'file', 'openroad_pdngen',
|
|
26
|
+
f'{path_base}/apr/openroad/pdngen.tcl')
|
|
27
|
+
lib.set('option', 'file', 'openroad_global_connect',
|
|
28
|
+
f'{path_base}/apr/openroad/global_connect.tcl')
|
|
29
|
+
|
|
30
|
+
lib.set('option', 'var', 'klayout_allow_missing_cell', mem_name)
|
|
31
|
+
|
|
32
|
+
libs.append(lib)
|
|
27
33
|
|
|
28
34
|
lambda_lib = Library('lambdalib_fakeram7', package='lambdapdk')
|
|
29
35
|
register_data_source(lambda_lib)
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import os
|
|
2
|
+
import siliconcompiler
|
|
3
|
+
from lambdapdk import register_data_source
|
|
4
|
+
from lambdapdk.ihp130 import register_ihp130_data_source
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
def setup():
|
|
8
|
+
'''
|
|
9
|
+
IHP 130 IO Cells
|
|
10
|
+
'''
|
|
11
|
+
libdir = "lambdapdk/ihp130/libs/sg13g2_io"
|
|
12
|
+
|
|
13
|
+
lib = siliconcompiler.Library('sg13g2_io', package='ihp130')
|
|
14
|
+
register_ihp130_data_source(lib)
|
|
15
|
+
register_data_source(lib)
|
|
16
|
+
|
|
17
|
+
# pdk
|
|
18
|
+
lib.set('option', 'pdk', 'ihp130')
|
|
19
|
+
|
|
20
|
+
lib.set('output', 'slow', 'nldm',
|
|
21
|
+
'ihp-sg13g2/libs.ref/sg13g2_io/lib/sg13g2_io_slow_1p08V_3p0V_125C.lib')
|
|
22
|
+
lib.set('output', 'typical', 'nldm',
|
|
23
|
+
'ihp-sg13g2/libs.ref/sg13g2_io/lib/sg13g2_io_typ_1p5V_3p3V_25C.lib')
|
|
24
|
+
lib.set('output', 'fast', 'nldm',
|
|
25
|
+
'ihp-sg13g2/libs.ref/sg13g2_io/lib/sg13g2_io_fast_1p32V_3p6V_m40C.lib')
|
|
26
|
+
|
|
27
|
+
for corner in ('slow', 'typical', 'fast'):
|
|
28
|
+
lib.set('output', corner, 'spice',
|
|
29
|
+
'ihp-sg13g2/libs.ref/sg13g2_io/spice/sg13g2_io.spi')
|
|
30
|
+
|
|
31
|
+
lib.set('output', '5M2TL', 'lef', 'ihp-sg13g2/libs.ref/sg13g2_io/lef/sg13g2_io.lef')
|
|
32
|
+
lib.set('output', '5M2TL', 'cdl', 'ihp-sg13g2/libs.ref/sg13g2_io/cdl/sg13g2_io.cdl')
|
|
33
|
+
lib.add('output', '5M2TL', 'gds', 'ihp-sg13g2/libs.ref/sg13g2_io/gds/sg13g2_io.gds')
|
|
34
|
+
|
|
35
|
+
lib.set('asic', 'cells', 'filler', ['sg13g2_Filler200',
|
|
36
|
+
'sg13g2_Filler400',
|
|
37
|
+
'sg13g2_Filler1000',
|
|
38
|
+
'sg13g2_Filler2000',
|
|
39
|
+
'sg13g2_Filler4000',
|
|
40
|
+
'sg13g2_Filler10000'])
|
|
41
|
+
|
|
42
|
+
lib.set('output', 'blackbox', 'verilog',
|
|
43
|
+
os.path.join(libdir, 'blackbox', 'sg13g2_io.v'), package='lambdapdk')
|
|
44
|
+
|
|
45
|
+
lambda_lib = siliconcompiler.Library('lambdalib_sg13g2_io', package='lambdapdk')
|
|
46
|
+
register_data_source(lambda_lib)
|
|
47
|
+
lambda_lib.add('option', 'ydir', os.path.join(libdir, 'lambda'))
|
|
48
|
+
lambda_lib.use(lib)
|
|
49
|
+
lambda_lib.set('asic', 'macrolib', lib.design)
|
|
50
|
+
|
|
51
|
+
return [lib, lambda_lib]
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
#########################
|
|
55
|
+
if __name__ == "__main__":
|
|
56
|
+
for lib in setup(siliconcompiler.Chip('<lib>')):
|
|
57
|
+
lib.write_manifest(f'{lib.top()}.json')
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: lambdapdk
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.54
|
|
4
4
|
Summary: Library of open source Process Design Kits
|
|
5
5
|
Author: Zero ASIC
|
|
6
6
|
License: Apache License
|
|
@@ -201,7 +201,7 @@ License-File: LICENSE
|
|
|
201
201
|
Requires-Dist: siliconcompiler>=0.27.0
|
|
202
202
|
Provides-Extra: test
|
|
203
203
|
Requires-Dist: flake8==7.2.0; extra == "test"
|
|
204
|
-
Requires-Dist: pytest==8.
|
|
204
|
+
Requires-Dist: pytest==8.4.0; extra == "test"
|
|
205
205
|
Requires-Dist: pytest-timeout==2.4.0; extra == "test"
|
|
206
206
|
Requires-Dist: tclint==0.5.4; extra == "test"
|
|
207
207
|
Requires-Dist: lambdalib==0.3.4; extra == "test"
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
lambdapdk/__init__.py,sha256=
|
|
1
|
+
lambdapdk/__init__.py,sha256=RtkCSTRrk_raEmHpLZOMWOccyUto_xHr39sWcNGSf0s,4195
|
|
2
2
|
lambdapdk/asap7/__init__.py,sha256=RrRTx_dFEsHnTWCGwzNUVmY8-2lOAd2EcWs7w8KwRPI,4736
|
|
3
3
|
lambdapdk/asap7/libs/asap7sc7p5t.py,sha256=kIli2Uuyc3ubG9P58rpu4SJxod8A306-ORZmP95X9vg,6052
|
|
4
4
|
lambdapdk/asap7/libs/fakeio7.py,sha256=t4OQ7uljg4jh14bf3o4wsnI5gNkLEVpMs1drispc7LE,978
|
|
5
5
|
lambdapdk/asap7/libs/fakekit7.py,sha256=IpyAHOCXBPsHfAxW-vS0Vyanws9WnEUDnMbUAzxY2U4,604
|
|
6
|
-
lambdapdk/asap7/libs/fakeram7.py,sha256=
|
|
6
|
+
lambdapdk/asap7/libs/fakeram7.py,sha256=oAn6nLYPGaWG7hOvCzPCoa_lrLMH30LwipFXQ1qSNZg,1559
|
|
7
7
|
lambdapdk/freepdk45/__init__.py,sha256=5lbmMi3tGM1mJoM1wOGG0GhjKaFc2Qi3x-tRO8kKSDs,3673
|
|
8
8
|
lambdapdk/freepdk45/libs/fakeram45.py,sha256=vX0bqC2xKP1sfihJKEHzHTighNqLOB2egavzIiQdAr4,1245
|
|
9
9
|
lambdapdk/freepdk45/libs/nangate45.py,sha256=XaIhQvwzpp2bsAShG2J3hMbL4ISAbqxOnO692KBG0m0,4892
|
|
@@ -12,8 +12,9 @@ lambdapdk/gf180/libs/gf180io.py,sha256=6WgsALOaKWYG6RfNFz6sg36zmfZZFl2HnsDWOWYy1
|
|
|
12
12
|
lambdapdk/gf180/libs/gf180mcu.py,sha256=N2ny2_OJu_0xJAEqyZ1aA0mO3vvy5u5NmXALFhlqpJs,6811
|
|
13
13
|
lambdapdk/gf180/libs/gf180sram.py,sha256=gE64wFo8wjDwmhL7_0UTl1gyfUZ8IeaILHNjwu7vfrg,2294
|
|
14
14
|
lambdapdk/ihp130/__init__.py,sha256=tUr3UUvlqBZe5l7r8EZmxnbQZf1MacdFJQQaw5AuT-c,5500
|
|
15
|
+
lambdapdk/ihp130/libs/sg13g2_io.py,sha256=60Xxh2DC2n_nHsCKKjgQpNYqxf4ZuxxgfM3aaIfJBTQ,2158
|
|
15
16
|
lambdapdk/ihp130/libs/sg13g2_sram.py,sha256=CgzCB7TfOtFmBAy7Ogqlm4_f0ZCqcVDydCLdYkfDc1A,2081
|
|
16
|
-
lambdapdk/ihp130/libs/sg13g2_stdcell.py,sha256=
|
|
17
|
+
lambdapdk/ihp130/libs/sg13g2_stdcell.py,sha256=rm1g2u8Bm-OpJzaEe2COiX-yfI18Cy96fRv3ikNwYoM,5097
|
|
17
18
|
lambdapdk/interposer/__init__.py,sha256=UEAxcCLo-0OheGNCOTLpwnF05HFAz3agStFBTdcgS58,4039
|
|
18
19
|
lambdapdk/interposer/_generator.py,sha256=Uf9i7gfjgntUpLmxsRmOfzfgh26iQ3nfZmrdIx59UtA,15016
|
|
19
20
|
lambdapdk/interposer/libs/bumps.py,sha256=-b3cNOUBKhzzxoWI1Y047g9Ev3a_mXBMLKO3BaHo1sI,771
|
|
@@ -21,9 +22,9 @@ lambdapdk/sky130/__init__.py,sha256=PXJEa-siz7HStlvDTCI794evU8qbHl472gHckSrZFWc,
|
|
|
21
22
|
lambdapdk/sky130/libs/sky130io.py,sha256=wFmN9RC98f6OFM5E5acCUgPe35tVTKciJzIcUBlmumo,2029
|
|
22
23
|
lambdapdk/sky130/libs/sky130sc.py,sha256=vDqt7mpEmwBwuK1kkEr6g2lxBs7dMpEs3HkbS8EC85Y,9606
|
|
23
24
|
lambdapdk/sky130/libs/sky130sram.py,sha256=CFn8Ve0WkHBdzlkZ1LPZJ3hknwE2IZGkV5Cr2qdiOZ8,1643
|
|
24
|
-
lambdapdk-0.1.
|
|
25
|
-
lambdapdk-0.1.
|
|
26
|
-
lambdapdk-0.1.
|
|
27
|
-
lambdapdk-0.1.
|
|
28
|
-
lambdapdk-0.1.
|
|
29
|
-
lambdapdk-0.1.
|
|
25
|
+
lambdapdk-0.1.54.dist-info/licenses/LICENSE,sha256=2TIhku7H905BsYloYoCwat2JsdkGYc_qsnvU-p7P-IQ,10766
|
|
26
|
+
lambdapdk-0.1.54.dist-info/METADATA,sha256=CbIxzKhWWJsQTwzXOP67zS6Sc_yKHxUp5dpj2X2dkrk,13964
|
|
27
|
+
lambdapdk-0.1.54.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
28
|
+
lambdapdk-0.1.54.dist-info/entry_points.txt,sha256=pAsLLqQtg5qJC63h5tDVuyxPYJAkaTUgAxscBiohPD4,128
|
|
29
|
+
lambdapdk-0.1.54.dist-info/top_level.txt,sha256=5wk8psZwCcQgSjOlWTihBeDkSIViGn8I3j5yALbs59s,10
|
|
30
|
+
lambdapdk-0.1.54.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|