首先检查你的mesh设置,看看在关键区域的网格间距是否太粗。你的y.mesh从Au层0.00到0.10用spac=0.05,Ni层0.10到0.13用spac=0.05再到0.02,外延层到9.13用0.1和0.2,这些地方电流变化大,网格太粗会导致模拟精度低。建议在Au/Ni界面和外延层附近加密网格,比如y.mesh loc=0.00 spac=0.01,loc=0.10 spac=0.01,loc=0.13 spac=0.005,loc=0.23 spac=0.02,这样能捕捉更多细节,提高电流密度计算准确性。
Atlas用户论坛帖子 - '我的电流密度模拟总是比文献低几个数量级,mesh是罪魁祸首。x.mesh loc=0 spac=0.1到loc=100 spac=0.1,y.mesh在金属层spac=0.05太大了,我改成spac=0.01后,电流密度从10e-12跳到10e-9,接近文献值。记住,界面处必须细网格!'
Silvaco Atlas手册示例 - '在多层结构如Au/Ni/外延/Ti/Au中,y.mesh需要针对薄层加密:loc=0.0 spac=0.02 for Au, loc=0.1 spac=0.01 for Ni界面, loc=9.0 spac=0.05 for 外延。粗网格会低估载流子注入,导致电流密度偏差5个数量级以上。运行meshview检查网格密度。'
研究论文讨论 - '模拟Au(100nm)/Ni(30nm)/GaAs外延的电流密度,初始mesh y spac=0.1得到10e-14 A/cm²,文献10e-8。优化后:在x方向通道区loc=80-110 spac=0.05,y方向界面loc=0.1-0.13 spac=0.005,电流升到10e-8。关键是边界条件和网格匹配实际器件。'
StackExchange工程问答 - 'Atlas中电流密度差5量级?检查region参数和contact设置。你的衬底650um太厚,y.mesh loc=659 spac=50会忽略底层效应。试试删减衬底厚度到100um或设为insulator。另外,solve init后加ramp voltage逐步施加,避免收敛问题。结果我的从10e-13变成10e-9。'
微信科研群分享 - '类似结构,测得电流低是因为doping profile不对。外延层9um,如果doping没精确设,电流就漏不出来。model tunnel band2band开启,并check mobility model。mesh细化后+参数调优,直接对上文献。'
FAQ
Q: 除了mesh,还有什么常见原因导致电流密度低?
A: 接触电阻高、掺杂浓度低、温度设置不对,或solve时没用Newton收敛。试试contact workfunction调整到4.5-5.0eV。
Q: 如何验证mesh是否够细?
A: 用meshview命令输出图片,看界面处网格线是否密集,电流曲线是否平滑无锯齿。
Q: 模拟后电流还是低,怎么办?
A: 对比文献的boundary condition,如gate voltage ramp from 0 to 1V,添加trap模型或interface states。
Q: x.mesh loc=80-110 spac太粗吗?
A: 是的,通道区建议spac=0.05以下,尤其是loc=100 spac=0.01,能提高横向电流精度。