2020年10月30日 星期五

如何利用EDB函式輸出3D Layout當中元件SolderBall的訊息

在不打開AEDT的狀況之下,我們可以透過直接讀取3D Layout的.aedb方式取得版圖相關訊息。這裡示範如何取得某一個IC元件的Solder Ball的類別、直徑及高度。

(圖一) IC Component Solder Ball參數

import clr, os, sys, System
AnsysEM_Path = 'C:/Program Files/AnsysEM/AnsysEM20.2/Win64/'
sys.path.append(AnsysEM_Path)
os.environ['PATH'] += ';' + AnsysEM_Path

clr.AddReference('Ansys.Ansoft.Edb')
clr.AddReference('Ansys.Ansoft.SimSetupData')
import Ansys.Ansoft.Edb as edb

edb.Database.SetRunAsStandAlone(True)

DB = edb.Database.Open('D:/demo/test.aedb', False)

cell = list(DB.TopCircuitCells)
layout = cell[0].GetLayout()

u2a5 = edb.Cell.Hierarchy.Component.FindByName(layout, 'U2A5')
u2a5_property = u2a5.GetComponentProperty().GetSolderBallProperty()
print(u2a5_property.GetShape())
print(u2a5_property.GetDiameter())
print(u2a5_property.GetHeight())

comp_names=[]
for c in layout.Groups:
comp_names.append(c.GetName())
print(comp_names)
輸出結果:
(圖二)輸出solderball及所有PCB元件

沒有留言:

張貼留言