1. 程式人生 > 其它 >用演算法配對的電晶體圖示儀:第一部分 基本原理

用演算法配對的電晶體圖示儀:第一部分 基本原理

目前常用的電晶體圖示儀,主要是測量,顯示電晶體的靜態(低頻)特性曲線,有些圖示儀可以將多個管子的特性曲線疊加顯示,通過觀察,瞭解不同管子特性的相似性。我們使用這種圖示儀,除了大致瞭解電晶體的靜態特性外,主要是用於配對。但用只能顯示特性曲線的圖示儀配對電晶體,效率是非常低的。下圖是8個同型號電晶體輸出特性曲線顯示在一起的影象。

大致看可以認為匹配度還不錯,但如果要看出哪些管子的匹配度更高,就比較困難了。更何況如果要從數十,數百隻管子裡找到匹配度高的管子,這種用肉眼看的方式,效率是非常低的。

因此,可以考慮用演算法計算不同電晶體之間的相似度,然後在篩選出相似度高的電晶體。

1. 電晶體特性數字化

要用演算法計算相似度,那麼第一步首先要把電晶體的特性數字化。也就是說要把特性曲線的測量結果儲存下來。

例如雙極性電晶體BJT,典型的特性曲線包括輸入特性IbVbe@Vce和輸出特性曲線IcVce@Ib,需要採集儲存的量有Ib,Vbe,Ic,Vce。典型的BJT輸入特性曲線和輸出特性曲線如下圖:

對於場效電晶體,不論是JFET,還是MOSFET,由於輸入電流Ig可以忽略,所以主要考慮轉移特性曲線IdVgs@Vds,輸出特性曲線IdVds和IdVgs是等價的。需要儲存的量有Vgs,Id,Vds。典型的MOSFET轉移特性和輸出特性曲線如下圖。

2. 計算相似度

第二步是要考慮計算相似度的方法

2.1 工作點法計算相似度

最簡單的是可以選取幾個典型的工作點,比較在工作點上管子之間的相似度。例如工作點可以是下圖中的幾個點:

BJT電晶體是電流驅動型元件,通常工作點的設定是確定Ib和Vce,然後測量Ic和Vbe。因此,在電晶體的的四個引數Ib, Vbe, Ic, Vce中,對不同的BTJ管子,給予同樣一組Ib,Vce,比較測量到的Ic和Vbe,就可以判斷工作點相似度。

FET是電壓驅動型元件,通常工作點的設定時確定Vgs,Vds,然後測量Id。因此,對於不同的FET管子,給予同樣一組Vgs, Vds,比較測量到的Ic,就可以判斷工作點相似度。

這種方法的好處是測量的點比較少,管子不容易發熱,從而可以減小溫漂對測量結果的影響。不足之處是顯而易見的,就是不夠全面,特別是對電晶體的一些引數,例如BJT的HFE,JFET的\(V_{cutoff},I_{dss}\),MOS管的\(V_{on}\)等引數,不能全面兼顧。

不過這確實是一個值得考慮的方法,特別是針對大功率管,大電流工作點的配對測量。s

2.2 擬合函式法計算相似度

理想一點的方法是對曲線建立數學模型。也就是用一個引數方程或者擬合函式來描述特性曲線,然後比較擬合函式中各引數的相似性,確定曲線特性的相似性。

我們常用的模擬軟體用到的Spice器件模型就是這樣一個引數方程。這個引數方程是建立在半導體物理特性基礎上的,是比較準確的模型。但這個模型的引數太多,而且大多數很難通過簡單的測量獲得。

比較簡單實用的的辦法是用擬合函式來表示曲線。輸入特性是一個擬合函式,輸出特性是另一個擬合函式。每條特性曲線對應一組函式的係數。只要不同的管子是在同樣的條件下,測得的輸出特性,可以通過比較對應的函式係數就可以。

2.2.1 BJT的擬合函式

BJT電晶體的典型輸入特性如下圖:

對於BJT輸入特性,通常用以下擬合函式

\[i_b=A \times (e^{Bu_{be}}-1)|u_{ce} \]

這個函式表示,在一定的\(u_{ce}\)條件下,\(i_b\)\(u_{be}\)的函式。函式的係數是A, B。只要計算出A, B,一條特定條件下(即\(u_{ce}\)為某一固定值)的輸入特性曲線就確定了。如果對這條曲線求導數,可以得到輸入特性中某一點的動態電阻的倒數。

BJT電晶體典型的輸出特性曲線如下圖:

對於輸出特性,通常用以下擬合函式:

\[i_c=A-Ke^{-Bu_{ce}}|i_b \]

這個函式表示,在一定的\(i_b\)條件下i_b,\(i_c\)\(u_{ce}\)的函式。函式的係數是A,K,B。只要計算出A,K,B,一條特定條件下(即\(i_b\)為某一固定值)的輸出特性曲線就確定了;

但仔細觀察一下這個函式,其實是有問題的。可以想象一下如果\(u_{ce}\)很大,函式的第二項\(Ke^{-Bu_{ce}}\)趨向於0,那麼此時\(i_c=A\),變成一條水平線了。而由於電晶體的Early效應,所有曲線都會反向交於一點。如下圖所示:

但如果把Early電壓考慮到擬合函式中,又無法直接測量其值。考慮到\(u_{ce}\)比較大時,曲線可以看成有一定斜率的直線,這樣就需要對上述擬合函式進行簡單的修訂。

\[i_c=A-Ke^{-Bu_{ce}}+K_1u_{ce}|i_b \]

引入引數一項\(K_1u_{ce}\),其中\(K_1\)代表直線斜率。這樣BJT輸出擬合函式就包括四個引數A, K, B, K1

再仔細觀察一下這個函式,可以大致瞭解各引數和函式影象的關係。

引數\(A\)基本就是曲線的“膝蓋”位置對應的\(i_c\),即飽和區(非線性區域)和放大區(線性區域)的拐點。這無疑是非常重要的一個引數。

引數\(K, B\)描述了非線性區域到線性區域,曲線的彎曲程度。在大多數情況下,這兩個引數的影響性,不如引數A那麼大。

引數\(K1\)描述了線性區域曲線的斜率。這也是決定曲線相似度的一個比較重要的引數。

由於這幾個引數在確定曲線形狀方面,影響程度是不同的。因此在比較不同曲線相似性的時候,也需要進行不同的考慮。

2.2.2 FET的擬合函式

典型的J-FET轉移特性曲線如下圖:

對於J-FET的轉移特性曲線,通常可以用以下擬合函式:

\(i_d=B \times (u_{gs}-V)^2|u_{ds}, u_{gs} \ge V\)

這個函式中有兩個引數B, V。通過這個函式,可以看出,在特定的\(u_{ds}\)條件下:

  1. \(u_{gs}=V\)時,\(i_d=0\), 說明引數V就是JFET的夾斷電壓\(V_{cutoff}\)
  2. \(u_{gs}=0\)時,\(i_d=B\times V^2\), 此時的\(i_d\)就是JFET的IDSS

如果兩條曲線的B, V引數相似度高,不僅說明夾斷電壓和IDSS相似度高,而且曲線的彎曲程度也比較一直,即曲線上任一點的相似度都比較高。

對於MOS-FET,其典型的轉移特性曲線如下圖:

常用的擬合函式和JFET類似,只不過定義域是相反的。

\(i_d=B \times (u_{gs}-V)^2|u_{ds}, u_{gs} \le V\)

這個函式中有兩個引數B, V。在特定的\(u_{ds}\)條件下:

\(u_{gs}=V\)時,\(i_d=0\), 說明引數V就是MOS-FET的開啟電壓\(V_{on}\)

如果兩條曲線的B, V引數相似度高,不僅說明開啟電壓相似度高,而且曲線的彎曲程度也比較一直,即曲線上任一點的相似度都比較高。

對於JFET和MOS-FET的輸出特性曲線,其形狀和BJT輸出特性曲線類似。可以採用類似的擬合函式。

2.3 計算相似度

在確定好擬合函式後,就可以利用採集到的曲線資料,計算相似度了。計算的基本思路分以下三步:

第一步:計算擬合引數
將一條曲線上採集到的點座標\((x,y)\),作為一個樣本列表,輸入對應的擬合函式,就可以求出這個擬合函式的相應引數。這個些引數再加上曲線的測量條件,就可以作為當前曲線的特徵向量。

對於BJT的\(I_bV_{be}|V_{ce}\)曲線,測量條件是\(V_{ce}\),引數是A,B。經過擬合,可以得到曲線的特徵向量 \(<A,B>|V_{ce}\)

對於BJT的\(I_cV_{ce}|I_b\)曲線,測量條件是\(Ib\),引數是A, K, B, K1。經過擬合,可以得到曲線的特徵向量\(<A, K, B,K1>|I_b\)

對於FET的轉移曲線,輸出曲線,也可以分別建立特徵向量。

通過這種方式對曲線建模,建模的物件是一條二維曲線。但實際上把測量條件作為一個維度後,電晶體的特性可以看成是一個三維曲面。利用測量的實際值作為樣本,可以對三維曲面進行擬合建模。這樣描述電晶體的特性更加理想。而且可以實現即使不同電晶體的測量條件不同,也可以進行相似度比較。

但實際操作的時候,這個三維模型的擬合程度還不夠理想。留待以後慢慢研究吧。

第二步:計算不同電晶體在同樣條件下,各引數的相似度
找到不同電晶體相同測量條件的特徵向量,計算向量距離\(d\),把\(d\)作為當前曲線的相似度。

正如前面分析BJT輸出特性擬合函式時提到的,特徵向量的不同引數對曲線形狀的影響度不同。

例如參考A決定曲線的“膝蓋”位置,也就這整體的高度,K1決定了曲線線性區域的斜率。如果引數A差別比較大,那K1相似度再高,也不能說兩條曲線相似。

因此簡單的應用向量距離演算法是不合適的。其實標準的向量距離演算法要求各個引數(維度)是相互獨立的。因此,在計算相似度的時候,要考慮引數計算的優先順序,以及不同引數的權重。

第三步:計算整體相似度
將各曲線的相似度按照輸入曲線,輸出曲線進行彙總,分別計算輸入相似度和輸入相似度,然後對輸入相似度和輸出相似度進行加權平均後,就可以得到兩個電晶體之間最終的相似度。

3. 篩選配對組

配對篩選的過程,本質是對電晶體按照相似度進行分組的過程。

一個相似組的定義是這個組裡的所有元件兩兩之間的相似度都滿足最低相似度要求。例如設定最低相似度設定為0.96,一個相似度組裡有5個元件,那麼就意味著這5個元件中,任意兩個的相似度都不小於0.96。

假設計算相似度的維度只有兩個\((x,y)\),那麼每個電晶體在這兩個維度上的得分就可以在二維座標中,以一個點的方式表示出來。兩個管子的相似度可以用兩個點之間的距離表示。距離越近,說明相似度越高;距離越遠,相似度越低。

如下圖所示。A和B的距離比A和C的距離近,也就是說A和B的相似度比A和C的相似度高。

如果用\(d\)表示最低相似度,那麼某元件和\(A(x_a, y_a)\) 滿足相似度篩選條件,就意味著該元件位於以\(A(x_a, y_a)\) 為圓心,\(d\)為半徑的圓內,稱 \(d\)\(A(x_a, y_a)\)的相似半徑。

上圖中B在A的相似半徑內。那麼A和B就是要找的一個相似組。

假如上圖的相似度情況如下圖。把A,B,C相似半徑的圓都畫出來。

可以看出B,C都在A的相似半徑內。但是B和C不在彼此的相似半徑內。

這樣A,B,C就不能在一個相似度組裡。篩選結果應該是:

組一:A, B

組二:A, C

可以看出,在篩選結果中,一個元件可能出現在兩個,甚至多個相似組裡。

元件比較多時,情況就會更加複雜。這些是配對篩選演算法處理的核心內容。