-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathLink_modules.py
More file actions
35 lines (26 loc) · 1.61 KB
/
Link_modules.py
File metadata and controls
35 lines (26 loc) · 1.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import pandas as pd
# Read CSV data
filename = "combined-2.csv"
data = pd.read_csv(filename)
# Apply physics-based function
## Litho track link to Etch
data['Etch_Uniformity'] = 1 - 0.1 * data['LER'] + 0.1 * data['Resolution'] + 0.8 * data['Etch_Uniformity']
data['CD'] = 2 - 0.1 * data['LER'] - 0.1 * data['Resolution'] + 0.8 * data['CD']
## Etch link to CMP
data['Surface_Roughness'] = 1 - 0.1 * data['Etch_Uniformity'] + 0.1 * data['CD'] + 0.8 * data['Surface_Roughness']
data['Defect_Density'] = 2 - 0.1 * data['CD'] - 0.1 * data['Etch_Uniformity'] + 0.8 * data['Defect_Density']
## CMP link to Device
data['P-Gate_Oxide_THK'] = 2 - 0.1 * data['Removal_Rate'] - 0.1 * data['Polishing_Time'] + 0.8 * data['P-Gate_Oxide_THK']
data['P-Spacer_Width'] = 2 - 0.1 * data['Removal_Rate'] - 0.1 * data['Polishing_Time'] + 0.8 * data['P-Spacer_Width']
## Device link to RO
data['Frequency'] = 1 - 0.1 * data['P-Vt'] + 0.1 * data['P-IdSat'] + 0.8 * data['Frequency']
data['Power_Consumption.2'] = 1 + 0.1 * data['P-Vt'] - 0.1 * data['P-IdSat'] + 0.8 * data['Power_Consumption.2']
## Process link to PMOS Model
data['Ballistic_efficency'] = 2 - 0.1 * data['Defect_Density'] - 0.1 * data['LER'] + 0.8 * data['Ballistic_efficency']
data['Vsat0'] = 1 + 0.1 * data['Defect_Density'] + 0.1 * data['LER'] + 0.8 * data['Vstat0']
## PMOS Model link to PMOS
data['P-Vt'] = 1 + 0.1 * data['Ballistic_efficency'] - 0.1 * data['Vstat0'] + 0.8 * data['P-Vt']
data['P-IdSat'] = 1 - 0.1 * data['Ballistic_efficency'] + 0.1 * data['Vstat0'] + 0.8 * data['P-IdSat']
# Save the results in a new CSV file
new_filename = "Link.csv"
data.to_csv(new_filename, index=False)