sentaurus提供三個求解器,Super、ParDiSo、ILS。
其中,Super和ParDiSo是直接求解器,ILS是迭代式求解器。
一般情況,仿真中計算量最大的是解線性方程組,如下所示:
矩陣A的階數與仿真中的網格點相關,網格點越多,階數越高。
所謂直接求解器,是基于方程組的直接消項的算法,直接消項的原理是將方程的系數矩陣簡化為下三角矩陣,再對方程進行求解。不需迭代,直接得到方程組的解,對于非病態問題,速度最快、穩定性最好,對于病態問題,還能嘗試求解。
Super和ParDiSo都是直接求解器,其中,Super求解速度最快,不支持并行計算,ParDiSo求解速度稍慢,支持并行計算。因此,對于網格點較少(一般小于10k)的器件,優選Super求解器;對于網格點介于10k-50k的器件,優選ParDiSo求解器,并通過并行計算加速仿真。
直接求解器求解過程明確,按部就班的求解,所以魯棒性較好。直接求解器的缺點是內存占用大,隨著網格點數量增多,一方面內存占用增加,甚至超過硬件內存大小導致仿真失敗,另一方面數據讀取的載入時間成了仿真瓶頸。
迭代求解器是通過迭代的方法求解方程組,先從一個初始值的x出發,通過梯度下降的方式迭代求解,直到收斂到一定容差范圍內。該方法對內存占用小,對于大規模仿真,比直接求解器更節約時間,而且求解規模越大,節省的時間越多。一般情況,對于大于50k節點以上的仿真,就可以嘗試使用ILS了。迭代求解器的求解有點“隨緣”的感覺,所以收斂性和魯棒性稍差。
math語句
Method= Super|ParDiSo|ILS (三選一)
Number_of_Threads= 并行線程數量 | maximum
A矩陣A的階數與仿真中的網格點相關,網格點越多,階數越高。所謂直接求解器,是基于方程組的直接消項的算法,直接消項的原理是將方程的系數矩陣簡化為下三角矩陣,再對方程進行求解。不需迭代,直接得到方程組的解,對于非病態問題,速度最快、穩定性最好,對于病態問題,還能嘗試求解。
Super和ParDiSo都是直接求解器,其中,Super求解速度最快,不支持并行計算,ParDiSo求解速度稍慢,支持并行計算。因此,對于網格點較少(一般小于10k)的器件,優選Super求解器;對于網格點介于10k-50k的器件,優選ParDiSo求解器,并通過并行計算加速仿真。
直接求解器求解過程明確,按部就班的求解,所以魯棒性較好。直接求解器的缺點是內存占用大,隨著網格點數量增多,一方面內存占用增加,甚至超過硬件內存大小導致仿真失敗,另一方面數據讀取的載入時間成了仿真瓶頸迭代求解器是通過迭代的方法求解方程組,先從一個初始值的x出發,通過梯度下降的方式迭代求解,直到收斂到一定容差范圍內。
該方法對內存占用小,對于大規模仿真,比直接求解器更節約時間,而且求解規模越大,節省的時間越多。一般情況,對于大于50k節點以上的仿真,就可以嘗試使用ILS了。迭代求解器的求解有點“隨緣”的感覺,所以收斂性和魯棒性稍差。
仿真速度
4. 簡單總結一下
Super求解器不支持并行計算,魯棒性好,速度快,內存占用較大,適合規模較小的仿真(10k以下)。雖不支持并行計算,但可通過設置“裝配”的線程數,加速仿真;
ParDiSo求解器支持并行計算,適合網格規模適中的器件仿真(10k-50k),魯棒性好,速度稍快,內存占用較大;
ILS求解器為迭代性求解器。對于小規模網格的器件,魯棒性稍差、速度最慢、但是內存占用少。對于網格規模巨大的器件(在50k以上),ILS無論在速度還是在內存占用上,均有非常大的優勢適合網格規模更大的器件仿真,而且規模越大,優勢越大;
限制仿真速度的不僅是線程數量、還有線程之間的數據轉移等,盲目的增加線程數量可能造成算力浪費,那些動不動就maxmium的同學請三思~
審核編輯:劉清
-
求解器
+關注
關注
0文章
77瀏覽量
4557
原文標題:Sentaurus TCAD求解器——Super、ParDiSo、ILS
文章出處:【微信號:是我者也同學,微信公眾號:是我者也同學】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論