Skip to content

Commit caaa5b2

Browse files
committed
Updated param tests to include PDK 0.15
Signed-off-by: Jeff Ng <jeffng@precisioninno.com>
1 parent aa1d13e commit caaa5b2

7 files changed

Lines changed: 156 additions & 59 deletions

File tree

flow/designs/rapidus2hp/cva6/test/test_params.py

Lines changed: 49 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -21,70 +21,74 @@ def setUp(self):
2121

2222
ParamTestBase.set_up(self, "cva6")
2323

24+
def get_exp_sdc(self, place_site, pdk_version):
25+
"""Returns the expected SDC file path"""
26+
27+
if pdk_version in ["0.2a", "0.3"]:
28+
if place_site == "ra02h138_DST_45CPP":
29+
return os.path.join(
30+
self._design_full_dir, f"constraint_{pdk_version}_6T.sdc"
31+
)
32+
return os.path.join(
33+
self._design_full_dir, f"constraint_{pdk_version}_8T.sdc"
34+
)
35+
36+
return os.path.join(self._design_full_dir, "constraint.sdc")
37+
2438
def test_pdk_0p2_default(self):
25-
"""Tests PDK 0.2 SDC file - should be default for both 6T and 8T"""
39+
"""
40+
Tests PDK 0.2
41+
"""
2642

43+
front_end = ""
2744
pdk_version = ""
28-
exp_sdc = os.path.join(self._design_full_dir, "constraint.sdc")
29-
for front_end in self._front_end_list:
30-
for place_site in self._ibm_site_list:
31-
self.execute_cmd(
32-
place_site, pdk_version, front_end, "SDC_FILE", exp_sdc
33-
)
45+
for place_site in self._ibm_site_list:
46+
exp_sdc = self.get_exp_sdc(place_site, pdk_version)
47+
self.execute_cmd(place_site, pdk_version, front_end, "SDC_FILE", exp_sdc)
3448

3549
def test_pdk_0p2(self):
36-
"""Tests PDK 0.2 SDC file - should be default for both 6T and 8T"""
50+
"""
51+
Tests PDK 0.2
52+
"""
3753

54+
front_end = ""
3855
pdk_version = "0.2"
39-
exp_sdc = os.path.join(self._design_full_dir, "constraint.sdc")
40-
for front_end in self._front_end_list:
41-
for place_site in self._ibm_site_list:
42-
self.execute_cmd(
43-
place_site, pdk_version, front_end, "SDC_FILE", exp_sdc
44-
)
56+
for place_site in self._ibm_site_list:
57+
exp_sdc = self.get_exp_sdc(place_site, pdk_version)
58+
self.execute_cmd(place_site, pdk_version, front_end, "SDC_FILE", exp_sdc)
4559

4660
def test_pdk_0p2a(self):
4761
"""
48-
Tests PDK 0.2a SDC file
49-
6T: constraint_0.2a_6T.sdc
50-
8T: constraint_0.2a_8T.sdc
62+
Tests PDK 0.2a
5163
"""
5264

65+
front_end = ""
5366
pdk_version = "0.2a"
54-
for front_end in self._front_end_list:
55-
for place_site in self._synopsys_site_list:
56-
if place_site == "":
57-
track_height = "8T"
58-
else:
59-
track_height = self.get_track_height(place_site)
60-
exp_sdc = os.path.join(
61-
self._design_full_dir,
62-
f"constraint_{pdk_version}_{track_height}.sdc",
63-
)
64-
self.execute_cmd(
65-
place_site, pdk_version, front_end, "SDC_FILE", exp_sdc
66-
)
67+
for place_site in self._synopsys_site_list:
68+
exp_sdc = self.get_exp_sdc(place_site, pdk_version)
69+
self.execute_cmd(place_site, pdk_version, front_end, "SDC_FILE", exp_sdc)
70+
71+
def test_pdk_0p15(self):
72+
"""
73+
Tests PDK 0.15
74+
"""
75+
76+
front_end = ""
77+
pdk_version = "0.15"
78+
for place_site in self._synopsys_site_list:
79+
exp_sdc = self.get_exp_sdc(place_site, pdk_version)
80+
self.execute_cmd(place_site, pdk_version, front_end, "SDC_FILE", exp_sdc)
6781

6882
def test_pdk_0p3(self):
6983
"""
70-
Tests PDK 0.3 SDC file
71-
6T: constraint_0.3_6T.sdc
72-
8T: constraint_0.3_8T.sdc
84+
Tests PDK 0.3
7385
"""
7486

87+
front_end = ""
7588
pdk_version = "0.3"
76-
for front_end in self._front_end_list:
77-
for place_site in self._synopsys_site_list:
78-
if place_site == "":
79-
track_height = "8T"
80-
else:
81-
track_height = self.get_track_height(place_site)
82-
exp_sdc = os.path.join(
83-
self._design_full_dir, f"constraint_0.3_{track_height}.sdc"
84-
)
85-
self.execute_cmd(
86-
place_site, pdk_version, front_end, "SDC_FILE", exp_sdc
87-
)
89+
for place_site in self._synopsys_site_list:
90+
exp_sdc = self.get_exp_sdc(place_site, pdk_version)
91+
self.execute_cmd(place_site, pdk_version, front_end, "SDC_FILE", exp_sdc)
8892

8993

9094
if __name__ == "__main__":

flow/designs/rapidus2hp/ethmac/test/test_params.py

Lines changed: 30 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,46 +21,68 @@ def setUp(self):
2121

2222
ParamTestBase.set_up(self, "ethmac")
2323

24+
def get_exp_util(self, place_site, pdk_version):
25+
"""Returns the expected utilization"""
26+
27+
if pdk_version == "0.15":
28+
if place_site == "ra02h138_DST_45CPP":
29+
return 63
30+
return 65
31+
if pdk_version == "0.3":
32+
return 65
33+
return 70
34+
2435
def test_pdk_0p2_default(self):
25-
"""Tests PDK 0.2 Utilization - should be 70"""
36+
"""Tests PDK 0.2 Utilization"""
2637

2738
front_end = ""
2839
pdk_version = ""
29-
exp_util = 70
3040
for place_site in self._ibm_site_list:
41+
exp_util = self.get_exp_util(place_site, pdk_version)
3142
self.execute_cmd(
3243
place_site, pdk_version, front_end, "CORE_UTILIZATION", exp_util
3344
)
3445

3546
def test_pdk_0p2(self):
36-
"""Tests PDK 0.2 Utilization - should be 70"""
47+
"""Tests PDK 0.2 Utilization"""
3748

3849
front_end = ""
3950
pdk_version = "0.2"
40-
exp_util = 70
4151
for place_site in self._ibm_site_list:
52+
exp_util = self.get_exp_util(place_site, pdk_version)
4253
self.execute_cmd(
4354
place_site, pdk_version, front_end, "CORE_UTILIZATION", exp_util
4455
)
4556

4657
def test_pdk_0p2a(self):
47-
"""Tests PDK 0.2a Utilization - should be 70"""
58+
"""Tests PDK 0.2a Utilization"""
4859

4960
front_end = ""
5061
pdk_version = "0.2a"
51-
exp_util = 70
5262
for place_site in self._synopsys_site_list:
63+
exp_util = self.get_exp_util(place_site, pdk_version)
64+
self.execute_cmd(
65+
place_site, pdk_version, front_end, "CORE_UTILIZATION", exp_util
66+
)
67+
68+
def test_pdk_0p15(self):
69+
"""Tests PDK 0.15 Utilization"""
70+
71+
front_end = ""
72+
pdk_version = "0.15"
73+
for place_site in self._synopsys_site_list:
74+
exp_util = self.get_exp_util(place_site, pdk_version)
5375
self.execute_cmd(
5476
place_site, pdk_version, front_end, "CORE_UTILIZATION", exp_util
5577
)
5678

5779
def test_pdk_0p3(self):
58-
"""Tests PDK 0.2a Utilization - should be 65"""
80+
"""Tests PDK 0.3 Utilization"""
5981

6082
front_end = ""
6183
pdk_version = "0.3"
62-
exp_util = 65
6384
for place_site in self._synopsys_site_list:
85+
exp_util = self.get_exp_util(place_site, pdk_version)
6486
self.execute_cmd(
6587
place_site, pdk_version, front_end, "CORE_UTILIZATION", exp_util
6688
)

flow/designs/rapidus2hp/gcd/test/test_params.py

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,13 @@ def setUp(self):
2121

2222
ParamTestBase.set_up(self, "gcd")
2323

24-
def get_exp_util(self, place_site):
24+
def get_exp_util(self, place_site, pdk_version):
2525
"""Returns the expected value"""
2626

27+
if pdk_version == "0.15":
28+
if place_site == "ra02h138_DST_45CPP":
29+
return 36
30+
return 40
2731
if place_site in ["SC6T", "ra02h138_DST_45CPP"]:
2832
return 43
2933
return 45
@@ -36,7 +40,7 @@ def test_pdk_0p2_default(self):
3640
front_end = ""
3741
pdk_version = ""
3842
for place_site in self._ibm_site_list:
39-
exp_util = self.get_exp_util(place_site)
43+
exp_util = self.get_exp_util(place_site, pdk_version)
4044
self.execute_cmd(
4145
place_site, pdk_version, front_end, "CORE_UTILIZATION", exp_util
4246
)
@@ -49,7 +53,7 @@ def test_pdk_0p2(self):
4953
front_end = ""
5054
pdk_version = "0.2"
5155
for place_site in self._ibm_site_list:
52-
exp_util = self.get_exp_util(place_site)
56+
exp_util = self.get_exp_util(place_site, pdk_version)
5357
self.execute_cmd(
5458
place_site, pdk_version, front_end, "CORE_UTILIZATION", exp_util
5559
)
@@ -62,7 +66,20 @@ def test_pdk_0p2a(self):
6266
front_end = ""
6367
pdk_version = "0.2a"
6468
for place_site in self._synopsys_site_list:
65-
exp_util = self.get_exp_util(place_site)
69+
exp_util = self.get_exp_util(place_site, pdk_version)
70+
self.execute_cmd(
71+
place_site, pdk_version, front_end, "CORE_UTILIZATION", exp_util
72+
)
73+
74+
def test_pdk_0p15(self):
75+
"""
76+
Tests PDK 0.15 utilization
77+
"""
78+
79+
front_end = ""
80+
pdk_version = "0.15"
81+
for place_site in self._synopsys_site_list:
82+
exp_util = self.get_exp_util(place_site, pdk_version)
6683
self.execute_cmd(
6784
place_site, pdk_version, front_end, "CORE_UTILIZATION", exp_util
6885
)
@@ -75,7 +92,7 @@ def test_pdk_0p3(self):
7592
front_end = ""
7693
pdk_version = "0.3"
7794
for place_site in self._synopsys_site_list:
78-
exp_util = self.get_exp_util(place_site)
95+
exp_util = self.get_exp_util(place_site, pdk_version)
7996
self.execute_cmd(
8097
place_site, pdk_version, front_end, "CORE_UTILIZATION", exp_util
8198
)

flow/designs/rapidus2hp/hercules_idecode/test/test_params.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,19 @@ def test_pdk_0p2a(self):
7272
place_site, pdk_version, front_end, "CORE_UTILIZATION", exp_util
7373
)
7474

75+
def test_pdk_0p15(self):
76+
"""
77+
Tests PDK 0.15 utilization
78+
"""
79+
80+
pdk_version = "0.15"
81+
for front_end in self._front_end_list:
82+
for place_site in self._synopsys_site_list:
83+
exp_util = self.get_exp_util(place_site, front_end)
84+
self.execute_cmd(
85+
place_site, pdk_version, front_end, "CORE_UTILIZATION", exp_util
86+
)
87+
7588
def test_pdk_0p3(self):
7689
"""
7790
Tests PDK 0.3 utilization

flow/designs/rapidus2hp/hercules_is_int/test/test_params.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,19 @@ def test_pdk_0p2a(self):
7272
place_site, pdk_version, front_end, "CORE_UTILIZATION", exp_util
7373
)
7474

75+
def test_pdk_0p15(self):
76+
"""
77+
Tests PDK 0.15 utilization
78+
"""
79+
80+
pdk_version = "0.15"
81+
for front_end in self._front_end_list:
82+
for place_site in self._synopsys_site_list:
83+
exp_util = self.get_exp_util(place_site, front_end)
84+
self.execute_cmd(
85+
place_site, pdk_version, front_end, "CORE_UTILIZATION", exp_util
86+
)
87+
7588
def test_pdk_0p3(self):
7689
"""
7790
Tests PDK 0.3 utilization

flow/designs/rapidus2hp/ibex/test/test_params.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@ def get_exp_sdc(self, place_site, pdk_version):
4141
return os.path.join(
4242
self._design_full_dir, f"constraint_{pdk_version}_8T.sdc"
4343
)
44+
if pdk_version == "0.15":
45+
return os.path.join(self._design_full_dir, f"constraint_{pdk_version}.sdc")
4446
if pdk_version == "0.3":
4547
if place_site in ["", "ra02h184_HST_45CPP"]:
4648
return os.path.join(
@@ -93,6 +95,21 @@ def test_pdk_0p2a(self):
9395
)
9496
self.execute_cmd(place_site, pdk_version, front_end, "SDC_FILE", exp_sdc)
9597

98+
def test_pdk_0p15(self):
99+
"""
100+
Tests PDK 0.15 utilization
101+
"""
102+
103+
front_end = ""
104+
pdk_version = "0.15"
105+
for place_site in self._synopsys_site_list:
106+
exp_util = self.get_exp_util(place_site, pdk_version)
107+
exp_sdc = self.get_exp_sdc(place_site, pdk_version)
108+
self.execute_cmd(
109+
place_site, pdk_version, front_end, "CORE_UTILIZATION", exp_util
110+
)
111+
self.execute_cmd(place_site, pdk_version, front_end, "SDC_FILE", exp_sdc)
112+
96113
def test_pdk_0p3(self):
97114
"""
98115
Tests PDK 0.3 utilization

flow/designs/rapidus2hp/jpeg/test/test_params.py

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ def get_exp_sdc(self, place_site, pdk_version):
2929
return os.path.join(
3030
self._design_full_dir, f"jpeg_encoder15_{pdk_version}_8T.sdc"
3131
)
32-
if pdk_version == "0.3":
32+
if pdk_version in ["0.15", "0.3"]:
3333
return os.path.join(
3434
self._design_full_dir, f"jpeg_encoder15_{pdk_version}.sdc"
3535
)
@@ -68,6 +68,17 @@ def test_pdk_0p2a(self):
6868
exp_sdc = self.get_exp_sdc(place_site, pdk_version)
6969
self.execute_cmd(place_site, pdk_version, front_end, "SDC_FILE", exp_sdc)
7070

71+
def test_pdk_0p15(self):
72+
"""
73+
Tests PDK 0.15 utilization
74+
"""
75+
76+
front_end = ""
77+
pdk_version = "0.15"
78+
for place_site in self._synopsys_site_list:
79+
exp_sdc = self.get_exp_sdc(place_site, pdk_version)
80+
self.execute_cmd(place_site, pdk_version, front_end, "SDC_FILE", exp_sdc)
81+
7182
def test_pdk_0p3(self):
7283
"""
7384
Tests PDK 0.3 utilization

0 commit comments

Comments
 (0)