在今年寒假時,我努力趕出了一個至少看起來讓我覺得賞心悅目的 Python GUI,嘿嘿。這是這個小工具的 Github 連結,https://github.com/Sunethan/APD-analyser。如客官不嫌棄,可以點進去看看一些簡介。實在是好想說明清楚這裡頭涉及的物理,但最近實在太忙,剩半年就要畢業嚕,所以還是之後再找時間寫一寫好了!
搜尋文章
熱門文章與頁面︰
臉書社團宣傳專區:
問卷調查
Loading ...
於「迴響」輸入數學式
- 於 Online LaTeX 編輯公式
- 以雙錢字符號 \$\$....\$\$ 夾起該數學式 latex 程式碼,如:
2023 年 12 月 一 二 三 四 五 六 日 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 -
近期文章
近期留言
- 「匿名訪客」於〈imec/TSMC:二維材料邏輯元件晶圓級(Wafer-scale)製程挑戰〉發佈留言
- 「半導體元件物理學習書單與心得 | 悟理」於〈週期位能所帶來的能帶結構——Bloch’s Theorem〉發佈留言
- 「半導體元件物理學習書單與心得 | 悟理」於〈布拉格與勞厄繞射之等價證明〉發佈留言
- 「淺談科學的起源——從神話開始 | 悟理」於〈杜威《民主主義與教育》——談〈課程中的科學〉〉發佈留言
- 「淺談科學的起源——從神話開始 | 悟理」於〈國高中物理的自學建議〉發佈留言
文章櫃
數學網站
物理網站
物理哲學網站
標籤雲
彙整
- 2023 年 10 月 (1)
- 2023 年 7 月 (1)
- 2023 年 6 月 (2)
- 2023 年 5 月 (1)
- 2023 年 4 月 (1)
- 2023 年 3 月 (1)
- 2023 年 1 月 (1)
- 2020 年 9 月 (2)
- 2020 年 4 月 (1)
- 2020 年 3 月 (4)
- 2020 年 1 月 (1)
- 2019 年 10 月 (1)
- 2019 年 9 月 (1)
- 2019 年 7 月 (1)
- 2019 年 3 月 (2)
- 2019 年 1 月 (1)
- 2018 年 12 月 (1)
- 2018 年 11 月 (4)
- 2018 年 10 月 (1)
- 2018 年 9 月 (1)
- 2018 年 5 月 (2)
- 2018 年 3 月 (1)
- 2018 年 2 月 (1)
- 2018 年 1 月 (2)
- 2017 年 12 月 (3)
- 2017 年 11 月 (13)
- 2017 年 6 月 (1)
- 2016 年 9 月 (1)
- 2015 年 10 月 (4)
- 2015 年 8 月 (1)
- 2015 年 7 月 (1)
- 2015 年 6 月 (1)
- 2015 年 4 月 (3)
- 2015 年 3 月 (7)
- 2015 年 2 月 (6)
- 2014 年 11 月 (2)
- 2014 年 2 月 (1)
- 2014 年 1 月 (1)
- 2013 年 11 月 (1)
Goodreads
其他操作
好酷! 希望會發一篇這個GUI的教學哈哈~~
哦哦,原來有大大感興趣嗎!^^ 之後有時間再來寫一下 🙂
大大的做法很像SPICE萃取參數的方法欸,這邊說一下我對fitting程式的了解:跑完TCAD後,再由python程式讀取TCAD產生的csv data,設定預設參數後,用optimize的方式自動比對誤差值、調整參數,讓模擬結果逼近TCAD csv data,此時得到的參數才是從data萃取後的參數。
很好奇大大整套程式的設計流程🤣
哈囉!
我簡介一下我當時在幹嘛好了 XD
首先我研究的元件是雪崩光電二極體,顧名思義,他的電性與崩潰電壓有關。通常廠商都會指定崩潰電壓規格,所以我們需要設計適當的磊晶結構。由於元件相當複雜,所以通常需要依靠TCAD來模擬元件電性,觀察崩潰電壓與磊晶結構的關係。
問題是,我們如何確定模擬出來的崩潰電壓,就是正確的?
畢竟TCAD這麼複雜,模型這麼多,它到底動用了什麼物理參數,我們似乎也看不到(事實上可以)。
因此,我當時想做的是,我必須用一套獨立於TCAD電性模擬的方法,去計算元件崩潰電壓。倘若兩者相符,那我就能確信TCAD模擬是正確的,或是說,確信我對「崩潰機制」的了解是正確的。
於是,我先用 TCAD 製程模擬做出元件磊晶結構(doping profile),接著再用 TCAD 跑電性模擬,由 IV 曲線肉眼判斷崩潰電壓。接著再將 TCAD 跑出來的磊晶結構(就是你說的 csv data),拿到 python 上,計算各種偏壓下的電場分佈,然後依據這些不同電壓的電場分佈,計算不同電壓下的各位置上的載子撞擊游離率(impact ionization rate),再使用倍增公式(multiplcation formula),判斷多少電壓時,元件會崩潰(分母的積分值為1):
$$M_n\equiv\frac{1}{1-\int_0^w\alpha\exp\left[-\int_0^x(\alpha-\beta)dx^\prime\right]dx}$$
$$M_p\equiv\frac{1}{1-\int_0^w\beta\exp\left[\int_x^w(\alpha-\beta)dx^\prime\right]dx}$$
因此,實際上我分享的這隻程式並沒有做擬合(fitting),反而是做非常複雜的雙重積分。通常為了有良好的計算結果,我都需要將元件結構從頭到尾(一維)分割3000-4000個數據點,這樣的濃度分佈才足夠準確、平滑,計算出來的崩潰電壓才會恰好與TCAD模擬結果相似。
TCAD: Doping profile -> IV curve -> breakdown voltage
Python: Doping profile -> electric field -> impact ionization rate -> multiplication formula
這支程式後來最有用的地方在於,因為當時我們的結構不再是單純的一維結構,而是會讓崩潰發生在有曲率的PN接面上。因此,我們模擬出來的崩潰電壓總是會比正常崩潰的電壓還要小。而 Python 能做的是可以快速(相對於TCAD)計算出理想崩潰電壓,所以就可以拿 TCAD 的不理想結果,跟 Python 的理想結果比較。因為當時我已經確信掌握 TCAD 的物理模型參數設定,所以就不需要再確認重複確認 TCAD 崩潰電壓與論文上寫的理論公式是否一致了。
不好意思,這不太好說清楚,哈哈,看看就好
第一頁的 "Fitting!" 按鈕是針對 Doping profile 而做的。因為從 TCAD 拿到的 Doping profile 數據點不夠密集,會造成後續計算 impact ionization rate 分佈有不小誤差,所以才需要重新設置網格分佈,得到更細緻的 doping profile。我把這個過程稱為 "Fitting" XD
自動引用通知: 半導體元件物理學習書單與心得 | 悟理
您好,我在做GeSi APD方面的研究,请问您的python源码可以分享到网上么,如果不方便的话我,请问您目前I-V特性可以通过您的计算方式得到么
1. 我這個 Python 模擬器的原始碼都有公開在我的 Github 上哦。謝謝你的參考。
2. 當時 APD 的 I-V 實驗數據能夠與我的 Sentaurus TCAD 模擬結果相吻合。詳見我的碩士論文:InP/InGaAsP/InGaAs 雪崩光電二極體之 TCAD 模擬、 護環效應與暗電流分析。
3. 這個 Python 模擬器並沒有計算電流的功能,而倘若真的想進一步計算,那理論上當然可以,但實務上我覺得還是直接使用 Sentaurus TCAD 才好。Python 模擬器的用途是檢查這個 TCAD 黑盒子究竟能否模擬出與課本上的簡易公式一致的結果,而我當時確定是可以的。我確定的方法是檢查在 Planar PN Junction 與 Edge PN Junction 發生崩潰的崩潰電壓與掺雜濃度的關係,詳見我的碩班投影片 20180803 Guard Ring Design.pptx。
您好,感谢您的回应,目前我在使用Silvaco TCAD进行模拟,不知道您是否对这个软件的准确度有所研究;
另外,请问您有邮箱可以联络么,很佩服您的理论功底和编程能力,希望能多向您请教
原則上我偏好在公開場合討論,因為可以讓其他人也從這些討論中受益,這是我做部落格的主要目的,即推廣科學。如果真的想要討論些東西,你可以在我的論壇(https://forum.ethankao.org)發文章一起討論問題,不過我所知有限,可能也無法真的幫到什麼忙。
這論壇也才剛做沒多久,我也還不知道該怎麼使用它,它的一大特點是可以使用 $\LaTeX$。
在該論壇裡,使用 [math] \frac{\hbar^2}{2m}\frac{\partial^2\Phi}{\partial t^2}+V\Phi=E\Phi [/math] 就能輸出
$$\frac{\hbar^2}{2m}\frac{\partial^2\Phi}{\partial t^2}+V\Phi=E\Phi$$而如果使用 [imath] \frac{\hbar^2}{2m}\frac{\partial^2\Phi}{\partial t^2}+V\Phi=E\Phi [/imath] 就能以行內模式(in-line mode)來打數學,像是 $\frac{\hbar^2}{2m}\frac{\partial^2\Phi}{\partial t^2}+V\Phi=E\Phi$。
至於 Silvaco TCAD,原則上要看他們的模型有多準。對於 TCAD 軟體,原則上你可以相信他們的軟體能力上限就是他們所寫的使用手冊。手冊中寫到某某模型,那軟體就能重現該模型,否則就是有 bug,回報給他們,應該過不久就有人處理。因此,軟體的“準確度”其實追根究底是在於它們實作的物理模型本身的理論有效性,或是說局限性。以我之前研究的崩潰模型為例,impact ionization coefficient $\alpha_n$ 與 $\alpha_p$ 本身就有各自適用的電場範圍,在不同電場範圍下,就應該使用不同的模型。因此,使用者必須非常熟悉那些物理模型本身,要知道 TCAD 不過是把模型實作出來而已,準不準還是要看模型。
但,…嗯,上述說法的漏洞在於我們忽略的數值計算的準確度。基本上只要你的網格點設置沒問題,足夠均勻,在電場足夠高的地方,或者是物理量變化大的地方,例如各種材料介面附近,都有足夠密的網格的話,那麼數值計算(迭代結果)的收斂性就應該會不錯。當然這之中有非常多的學問,非常多時候甚至只有該演算器(solver)的開發者本身才知道該怎麼設定才能夠有最好的收斂性。這只能依靠經驗以及與該 TCAD 公司之間的合作溝通了。
忘了說,在剛才我提到的碩班投影片 20180803 Guard Ring Design.pptx 裏面,我就有用 Python 驗證 Silvaco TCAD 在崩潰電壓方面的計算足夠符合我們在課本上所學的公式,推薦你看看,呵呵。
感谢您的回复,对我帮助很大,已经拜读了您的论文
感謝您撥冗閱讀,真是我的榮幸!
自動引用通知: 兩年碩班的 TCAD 學習心得 | 悟理