☰
Sentaurus脚本合集:I-V/C-V/重离子/辐照损伤建模命令详解
2026/10/25 12:26:30 网站建设 项目流程

简介:围绕 Sentaurus 仿真软件在半导体器件特性分析中的应用,文档整理了 I-V 曲线、C-V 曲线、辐照损伤、重粒子入射及瞬态仿真等典型场景的常用语句与命令写法,适合微电子、纳米电子与光电子方向的研究生、工程师以及刚接触 Sentaurus 的仿真初学者参考。内容从电极定义、物理模型配置、网格与输出文件设置,到求解器中准静态扫描、AC 分析、重离子撞击和激光照射等瞬态流程,均给出可复用的关键片段,并附有 SDevice、MixedMode 等典型仿真模式的完整思维线索,可直接迁移到实际项目中作为脚本模板。资源为单个 docx 文件,压缩包仅 16KB,轻量易读,无需安装额外环境即可快速查阅。目前已有 2032 人学习,适合需要快速上手器件特性仿真、辐射效应模拟或瞬态分析流程的读者参考借鉴。

1. 一份能直接复用的 Sentaurus 语句合集:从 I-V 到辐照损伤的建模脚本整理

拿到这份《各种语句sentaurus.docx》时,我已经在 TCAD 仿真里折腾了大半年,坦白说,散落在网上的 sdevice 命令片段见过不少,但能同时覆盖 I-V 曲线、C-V 曲线、重离子撞击、激光照明和辐照损伤五类场景的脚本整理,这是头一份。它不教半导体物理,也不讲网格怎么画,而是把能直接跑通的命令模板按场景摆好,解决的是从物理模型到数值求解参数的那层“最后一公里”问题。适合两类人:刚装了 Sentaurus 还没跑通第一个例程的新手,以及手头已有器件结构但拿不准 Physics 块该挂哪些模型的熟手。下面按命令文件的真实执行顺序拆开讲,参数怎么改、坑在哪,一次说清。

2. 把 sdevice 命令理顺:I-V 仿真中 File、Physics、Solve 三层怎么配合

2.1 File 块:网格、电流与输出文件的路径约束

sdevice 是 Sentaurus 家族里的器件电学特性仿真器,它不读图形界面操作,只认命令脚本。这份资源里第一段就是标准二极管 I-V 仿真脚本,最容易被新手跳过、却最容易翻车的,是开头这个 File 块:

File { Grid = "diode_msh.tdr" # 初始网格文件,由 sde/smesh 生成 Current = "diode_iv.plt" # 电流-电压曲线数据,后续提取 I-V 用 Plot = "diode_iv.tdr" # 每个保存点的完整空间分布结果 Output = "diode_iv.log" # 文本日志,记录收敛过程、迭代次数和报错 }

四个路径分别对应四类产物。Grid 指向的是网格文件,没有它整个仿真根本起不来;Current 指向的 .plt 是最终要拿去做图的电流电压点;Plot 保存的是能带、电场、载流子浓度这类空间分布快照;Output 是日志,我自己的习惯是每跑一步都盯一眼这个 log,看它迭代了几次收敛、有没有出现负浓度或者负电压的警告。

这里必须注意:sdevice 执行时的工作目录决定了这些相对路径的起点。最常见的报错就是 "Can't open grid file",十有八九是你在别的目录敲了命令,而 .tdr 网格文件留在原目录。我一般会在运行脚本前先cd到网格文件所在目录,或者干脆全部写成绝对路径。另外,文件名里别带中文和空格,.tdr/.plt 这类后缀名要小写,Windows 和 Linux 混用时最容易在这些地方踩雷。

2.2 Physics 块:迁移率、复合与产生模型的组合规则

这份资源里 I-V 脚本的 Physics 块值得逐行看,因为它把反向击穿二极管仿真里该开的模型基本都挂上了:

Physics { AreaFactor = 1 # 二维仿真时的面积因子,决定电流归一化基准 Temperature = 300 # 晶格温度,单位 K Mobility ( DopingDependence # 掺杂浓度相关的迁移率退化 HighFieldSaturation # 高电场饱和,击穿区必须开 Enormal # 界面垂直电场引起的迁移率退化 CarrierCarrierScattering # 高注入下的载流子间散射 ) Recombination ( SRH (DopingDependence) # 掺杂相关的 Shockley-Read-Hall 复合 Auger (withGeneration) # 俄歇复合,含产生项 Avalanche (UniBo Eparallel) # 雪崩倍增,UniBo 模型沿平行电场方向 Band2Band (Hurkx) # 带间隧穿,Hurkx 模型 EffectiveIntrinsicDensity (OldSlotboom) # 重掺杂带隙变窄修正 ) }

Mobility 挂了四个模型:DopingDependence 是低场迁移率随掺杂浓度下降,这个基本必开;HighFieldSaturation 模拟速度饱和效应,算击穿电压时不开它,结果会偏得离谱;Enormal 是 MOSFET 界面那种垂直电场导致的退化,二极管仿真里可以留着,影响不大;CarrierCarrierScattering 在高注入下起作用,比如大电流正向导通时载流子浓度高,相互散射会拉低迁移率。

Recombination 是重头戏。SRH 复合是间接复合的基础寿命项,挂上 DopingDependence 表示寿命随掺杂浓度变化;Auger 在高注入下占主导,加上 withGeneration 是让它同时考虑俄歇产生项;Avalanche 选 UniBo 模型,而且指定 Eparallel,意思是雪崩电离系数按平行于电场方向积分,这对反向击穿电压的准确性至关重要;Band2Band 的 Hurkx 模型描述高场下的带间隧穿,反向偏压接近击穿时隧穿电流会显著增加。

这里有一个很常见的误区:新手喜欢把 Recombination 里所有模型全挂上,觉得越多越准。实际上模型之间会互相竞争,比如 SRH 和 Auger 同时开启时寿命会被两个复合路径共同限制,建模时长会拉长,收敛难度也上升。我的做法是:先只挂 SRH,跑通一个基线结果,再逐步把 Auger、Avalanche、Band2Band 加进去,对比每一步的 I-V 曲线变化,这样你能清楚地知道是哪个物理机制在主导击穿特性。

2.3 Solve 块:从泊松方程到准静态电压扫描的收敛控制

Solve 块是命令文件里决定成败的部分。脚本先用三个逐步耦合的步骤做初始化:

Solve { Coupled (Iterations=50) { Poisson } Coupled (Iterations=15) { Hole Poisson } Coupled (Iterations=15) { Electron Hole Poisson } }

第一步只解泊松方程,得到初始电势分布;第二步把空穴方程加进来,让少子分布先建立;第三步才把电子、空穴和泊松方程全耦合。这个从简到繁的过程是为了避免一开始就强耦合导致牛顿迭代发散。迭代次数 50 和 15 分别对应各步骤允许的最大迭代轮数,如果超了还不收敛,sdevice 会报 "Newton iteration did not converge"。

真正扫描电压的是后面的 QuasiStationary 块:

QuasiStationary ( InitialStep = 1e-6 # 起始电压步长 MaxStep = 0.01 # 最大电压步长 MinStep = 1e-9 # 最小电压步长,防止步长缩得太小卡死 Goal { Name="ElectrodeN" Voltage=1000 } Plot { Range = (0 1) Intervals = 2 } ) { Coupled { Electron Hole Poisson } Plot ( FilePrefix="IV_" Time=(0.01; 0.05; 0.1; 0.5) NoOverwrite ) }

QuasiStationary 的意思是把电极电压从当前值逐步增加到目标值 1000V,每一步都重新求解耦合方程。InitialStep=1e-6 是第一步先试很小的电压增量,MaxStep=0.01 限制最大增量,防止在击穿电压附近步长跨得太大而跳过关键拐点,MinStep=1e-9 是当收敛困难时步长最多缩到多少,再小就直接判定仿真失败。

Plot 参数里,Range=(0 1) 表示把整个扫描进度归一化到 0~1 的区间,Intervals=2 表示在这个区间里均匀取两个点保存图像。这里有个隐患:如果击穿发生在扫描后期很窄的电压窗口内,只保存两个均匀点很可能漏掉击穿瞬间的空间分布。我一般会直接用 Time 参数手动指定关键电压点,比如把 Time=(0.01; 0.05; 0.1; 0.5) 改成 (10; 50; 100; 500),确保靠近击穿的区域有输出。

3. C-V 特性提取:混合模式下的 AC 耦合与 System 块搭建

3.1 System 块:器件实例与电压源的连接方式

C-V 曲线仿真的命令写法和 I-V 完全不同,因为它需要给器件施加一个交流小信号,再从交流响应里提取电容。资源里给的是 MixedMode 混合模式仿真,也就是说电路级的东西(电压源、节点)也要一起写进命令文件:

device Diode { Electrode { ... } File { Grid = "diode_msh.tdr" Current = "diode_cv_1khz.plt" Plot = "diode_cv_1khz.tdr" } Physics { ... } } # End device System { Diode diodesystem ("ElectrodeN"=front "ElectrodeP"=0) Vsource_pset vn (front 0) { dc = 0 } }

System 块里有三件事要读懂。第一,Diode diodesystem (...)创建了一个器件实例,名字叫 diodesystem,括号里是电极到电路节点的映射:"ElectrodeN" 接到电路节点 front,"ElectrodeP" 接地(节点 0)。第二,Vsource_pset vn (front 0)定义一个电压源 vn,正极接 front,负极接地,初始直流电压 dc=0。第三,后续 C-V 扫描就是通过不断改变 vn.dc 这个参数来实现的。

这里最坑的是电极名称的匹配。device Diode 块里 Electrode 定义的名字必须和 System 块的映射字符串完全一致,哪怕差一个字母、多一个空格,都会报 "electrode not found"。而且,System 里的节点名 front 是自定义的,但 0 这个节点是固定的地。我见过有人把 ElectrodeP 也接到一个叫 back 的节点上,结果器件悬空,仿真直接发散。

3.2 ACCoupled 求解:频点、迭代与 Blocked 方法

接着看 Solve 部分的 C-V 扫描命令:

File { Output = "diode_cv_1khz.log" ACExtract = "diode_cv_ac_1khz.plt" } Solve { Coupled (Iterations=50) { Poisson } Coupled (Iterations=15) { Hole Poisson } Coupled (Iterations=15) { Electron Hole Poisson } Coupled (Iterations=15) { Electron Hole Poisson Contact } QuasiStationary ( InitialStep = 1e-6 MaxStep = 1e-2 MinStep = 1e-7 Increment = 2 Decrement = 4 Goal { Parameter = vn.dc Voltage = 100 } ) { ACCoupled ( StartFrequency = 1e3 EndFrequency = 1e3 NumberOfPoints = 1 Iterations = 15 Node (front) ACMethod = Blocked ACSubMethod ("diodesystem") = ParDiSo ) { Poisson Electron Hole Contact Circuit } } }

如果把 I-V 和 C-V 的命令对照看,区别就清楚了。I-V 的 Goal 里写的是电极名和电压值,C-V 的 Goal 里写的是vn.dc,因为这里要扫描的是电压源参数而不是电极电压。ACExtract 指向的文件名是专门存放小信号结果的,电容值、电导值都在这里。

ACCoupled 是核心。StartFrequency 和 EndFrequency 都设为 1e3,说明只算一个频点,1kHz。NumberOfPoints=1 表示在这个频段内取一个点。Iterations=15 是交流求解的迭代上限。ACMethod=Blocked 的意思是分块求解小信号方程,ACSubMethod ("diodesystem")=ParDiSo 指定对器件子电路用 Pardiso 直接求解器。

做 C-V 仿真时,有两点特别值得注意。第一,交流小信号的频率选择不是随便定的,1kHz 对于大多数二极管电容提取足够低,可以避免寄生电感影响,但如果你的器件面积很小、电容值在 fF 量级,频率可能要降到 100Hz 甚至更低才能读到稳定的电容值。第二,Increment = 2和Decrement = 4控制步长放大和缩小倍数,意思是收敛顺利时步长乘 2,失败时步长除以 4,这个不对称设计是为了在击穿或电容突变区间快速缩步长。

4. 三类瞬态仿真:重离子撞击、激光光照与辐照损伤的参数化写法

4.1 重离子建模:LET_f 与 GaussianPicoCoulomb 的配合

重离子入射仿真是单粒子效应分析的基础,资源里的脚本把关键参数写得非常清楚:

Physics { ... HeavyIon ( Direction = (0, 1) # 入射方向:沿 +y 方向 Location = (200, 0) # 入射位置,坐标随网格定义(通常为微米) Time = 1e-9 # 离子撞击发生的时刻,单位秒 Length = [ ] # 轨迹长度,留空表示贯穿整个器件 Wt_hi = [ ] # 轨迹半径,留空则用默认值 LET_f = [ 0 8.7e-6 8.7e-6 0 ] # 线性能量转移,沿深度方向的分布 GaussianPicoCoulomb # 生成率的时间波形为高斯型,电荷量用 pC 表示 ) }

HeavyIon 的位置 (200, 0) 必须落在网格有效范围内,坐标单位默认是微米。方向 (0,1) 表示离子沿正 y 方向垂直入射,如果你要模拟倾斜入射,就改成 (0.707, 0.707) 这类归一化的方向向量。Time=1e-9 是撞击时刻,意味着前面的 1 纳秒是器件稳态预热时间。

LET_f 这个参数是最需要理解的。它给出的是线性能量转移(Linear Energy Transfer)沿离子轨迹的分布,写法是一个数组 [起始深度1 对应LET1 对应LET2 终止深度2],这里[0 8.7e-6 8.7e-6 0]表示从深度 0 到轨迹末端,LET 先是从 0 升到 8.7e-6,再降回 0,模拟一个 Bragg 峰形状的能量沉积。搭配 GaussianPicoCoulomb 表示该 LET 值的单位是按皮库仑每微米处理的,如果你从其他文献里拿到的 LET 单位是 MeV·cm²/mg,需要先做单位换算再填进来,这是新手最容易犯的错。

瞬态部分的 Solve 块同样讲究:

Solve { ... NewCurrentPrefix = "trans_" Transient ( InitialTime = 0 FinalTime = 35e-9 MinStep = 1e-17 MaxStep = 1e-10 ) { Coupled { Poisson Electron Hole Circuit } Plot ( FilePrefix="TransHI_" Time=(0.5e-9; 1e-9; 2e-9; 5e-9; 10e-9) NoOverwrite ) } }

FinalTime=35e-9 表示从 0 时刻一直算到 35 纳秒,覆盖重离子撞击后的电荷收集和恢复过程。MinStep=1e-17 这个值小得夸张,用意是保证撞击瞬间产生的极高载流子浓度梯度能被分辨出来;MaxStep=1e-10 又把最大步长限制在 0.1 纳秒,避免后期步长太大导致波形失真。NewCurrentPrefix 给瞬态过程的电流文件加一个前缀,这样不会和直流扫描的结果混在一起。

4.2 激光照明建模:OpticalGeneration 窗口与时间波形

激光照明的瞬态仿真和重离子撞击在 Solve 块结构上几乎一样,区别全在 Physics 里的 Optics 描述上:

Optics ( OpticalGeneration ( ComputeFromMonochromaticSource () TimeDependence ( WaveTime = (1e-9 1e-9) # 激光脉冲的时间窗口 WaveTSigma = 50e-12 # 高斯脉冲的时间标准差,50 ps ) Scaling = 0 Excitation ( Wavelength = 0.8 * um Intensity = 0.06 * W/cm2 Window("L1") ( Origin = (200, 0) XDirection = (1, 0, 0) Line (Dx = 10) Theta = 0 # 相对正 y 轴的入射角度 ) OpticalSolver ( OptBeam ( LayerStackExtraction ( WindowName = "L1" WindowPosition = Center Mode = ElementWise ComplexRefractiveIndex (WavelengthDep (real imag)) ) ) ) ) ) }

Wavelength=0.8*um 是 800nm 波长的激光,Intensity=0.06 W/cm2 是光强。WaveTime=(1e-9 1e-9) 表示激光脉冲的时间起点和终点,WaveTSigma=50e-12 表示高斯脉冲的展宽,两者共同定义了一个在 1ns 附近、宽度约 50ps 的光脉冲。

Window 是光学窗口的位置和方向设定。Origin=(200,0) 是光束中心坐标,XDirection=(1,0,0) 定义光束的横向传播方向是 x 方向,Line(Dx=10) 表示在 x 方向上的扫描线间距是 10 微米,Theta=0 表示光束相对正 y 轴垂直入射。OptBeam 光学求解器用层堆叠提取方法逐层计算光的吸收和反射,这个 LayerStackExtraction 需要你提供每一层材料的复折射率,一般从工艺仿真文件里带出来,不需要手动输入。

激光仿真有一个容易搞反的点:Theta=0 是垂直入射,如果你改成 30 度,光束在器件内部的路径会变长,吸收深度分布也会跟着变,仿真结果和垂直入射是完全不同的两套数据。

4.3 辐照损伤建模:陷阱能级、浓度与俘获截面的输入方式

辐照损伤仿真不直接描述粒子撞击过程,而是用陷阱(Traps)来模拟辐照后在禁带中引入的缺陷能级:

Physics (material = "Silicon") { Traps (( Acceptor Level EnergyMid = 0.42 fromCondBand # 受主型陷阱,能级位于导带下 0.42 eV Conc = 2.3226E15 # 陷阱浓度,单位 cm^-3 Randomize = 0.29 eXsection = 9.5E-15 # 电子俘获截面 hXsection = 9.5E-14 # 空穴俘获截面 )) # Conc = Fluence * 1.1613 Traps (( Acceptor Level EnergyMid = 0.46 fromCondBand Conc = 1.8E15 Randomize = 0.23 eXsection = 5E-15 hXsection = 5E-14 )) # Conc = Fluence * 0.9 Traps (( Donor Level EnergyMid = 0.36 fromValBand # 施主型陷阱,能级位于价带上 0.36 eV Conc = 1.8E15 Randomize = 0.31 eXsection = 3.23E-13 hXsection = 3.23E-14 )) }

每个 Traps 块定义一种辐照缺陷。Acceptor Level 表示受主型陷阱,它带负电,会俘获空穴;Donor Level 是施主型陷阱,带正电,会俘获电子。EnergyMid 后面的 fromCondBand 表示能级位置从导带底往下算 0.42eV,fromValBand 表示从价带顶往上算 0.36eV。eXsection 和 hXsection 分别是电子和空穴的俘获截面,单位是 cm²,这个值决定了陷阱俘获载流子的效率。

注释里的Conc = Fluence * 1.1613很关键。它表示陷阱浓度不是随便填的,而是由辐照注量(Fluence)乘以一个经验系数得到。这个系数的来源是实验数据或文献拟合,不同辐照粒子类型、不同能量对应不同的产生率。也就是说你拿到一份辐照仿真脚本时,要先确认陷阱浓度是按什么注量条件算出来的,再决定是直接采用还是按你的注量重新换算。

别忘了还有一个氧化层界面的电荷设置:

Physics (MaterialInterface = "Oxide/Silicon") { # Traps (FixedCharge Conc = 5e10) Charge (Conc = 1.5e11) }

这行给氧化层/硅界面加了浓度为 1.5e11 cm^-2 的固定电荷,模拟辐照在界面处引入的氧化层电荷积累。注释掉的写法是另一种设置固定陷阱电荷的语法,两者二选一,同时用会重复计算。氧化物电荷对 MOSFET 阈值电压漂移的影响特别大,做辐照仿真时这个界面电荷的数值要按器件工艺认真调。

5. 避坑指南:Sentaurus 命令文件最常见的五个翻车现场

5.1 网格文件打不开

现象:运行 sdevice 后立刻报错 "Can't open file: diode_msh.tdr"。

原因:File 块里写的是相对路径,而执行命令时的工作目录和网格文件目录不一致。还有一种情况是文件名写错了,比如把 .tdr 写成了 .tdr 和 .TDR 混用,Linux 下大小写敏感直接找不到文件。

解决:统一在网格文件所在目录执行 sdevice,或者 File 块里直接用绝对路径。我自己习惯在命令文件开头写一个变量记录路径前缀,所有文件名都拼上这个前缀,换环境时只改一处。

5.2 击穿电压附近不收敛,仿真卡死

现象:QuasiStationary 扫描到接近击穿电压时,迭代次数用完仍不收敛,日志里出现 "Transient iteration did not converge"。

原因:击穿点附近电流随电压指数增长,步长稍微大一点就会跳过平衡点,牛顿迭代在强非线性区失效。MaxStep 设置过大是最常见原因。

解决:把 MaxStep 缩小,比如从 0.01 改成 1e-3 或更小;同时确认 BreakCriteria 里的电流阈值设得合理,当电流增长到 1e-8 A 量级就提前终止,避免在击穿后继续硬算。注意,只有开了 Avalanche 模型,击穿区才可能收敛,纯 SRH 复合模型下反向电流会在某个电压点突然发散。

5.3 保存的 Plot 文件里找不到关键拐点

现象:仿真跑完了,打开 .tdr 文件想看击穿瞬间的电场分布,结果发现保存的点全在低电压区,击穿点附近一张图都没有。

原因:QuasiStationary 块里 Plot 的 Range=(0 1) Intervals=2 只在扫描进度 0 和 1 两个位置保存,也就是起始和终点电压。如果击穿发生在中间位置,正好被跳过。

解决:别依赖自动均匀取点,直接用 Time 参数手动列出关键电压点,例如 Time=(900; 950; 980; 995; 1000),把击穿区附近的采样密度提上来。NoOverwrite 关键字也要带着,否则每次保存都会覆盖相同文件名。

5.4 混合模式 AC 仿真电容全为零

现象:ACExtract 文件生成正常,但打开后电容值全是 0,或者只有噪声量级。

原因:ACCoupled 里没有正确设置 ACMethod 和 ACSubMethod,或者 System 块的器件实例名和 ACSubMethod 括号里的名称不一致。另一个可能是指定了太高的频率,器件电容在 GHz 量级被寄生参数淹没。

解决:确认方块ACMethod = Blocked,以及ACSubMethod ("diodesystem") = ParDiSo里引号内的名字和 System 块里Diode diodesystem的实例名完全一致。频率先用 1kHz 验证一个点,读到的电容值和手算的耗尽层电容对得上,再改成扫频。

5.5 瞬态仿真初始几步就数值溢出

现象:Transient 从 0 时刻开始算没几步,日志就报 NaN 或者 INF 浓度,波形图上全是乱跳。

原因:瞬态开始前器件没有建立正确的稳态初值。如果 Solve 块里没有先做 Coupled 初始化就直接进 Transient,初始载流子分布可能是错的,在重离子撞击的高密度产生下直接爆掉。

解决:瞬态前必须先跑完整的 Coupled 初始化步骤,确保电子、空穴、泊松方程都收敛到一个物理合理的稳态。另外把 MinStep 设小一点,比如 1e-17 秒,让撞击产生的瞬间尖峰能被解析出来,MaxStep 也别太大,控制在撞击特征时间的十分之一以内。

6. 验证而不是直接采信:从 .plt 数据反推器件参数的习惯

6.1 由 1/C²-V 斜率反推有效掺杂浓度

C-V 仿真跑完,得到的是不同偏压下的电容值。很多人直接拿电容值做图就结束了,但其实这些数据能用来反推器件的掺杂分布,验证仿真用的网格和掺杂设置是否合理。

对突变结二极管,耗尽层电容满足关系:

1/C² = 2·(V_bi + V_R) / (q·ε_s·N_eff·A²)

其中 q 是电子电荷,ε_s 是硅介电常数,A 是结面积,N_eff 是有效掺杂浓度。把 1/C² 对 V_R 做线性拟合,斜率 k 满足:

N_eff = 2 / (q·ε_s·A²·k)

用这个公式算出来的有效掺杂浓度,如果和你在网格文件里设定的衬底掺杂浓度在一个量级,说明 C-V 仿真的物理模型和网格精度是可信的。如果差了一个数量级以上,优先检查 ACCoupled 频率是否太高、AreaFactor 是否设成了 1,而你的器件实际结面积不是这个值。

6.2 跑瞬态前的三个自查点

第一个自查点是器件是否已经达到稳态,判断方法是看瞬态前最后一步收敛时的电流值,如果它还在缓慢漂移,说明初值没建立好,瞬态波形的前几个纳秒会掺杂虚假的瞬态响应。第二个自查点是重离子撞击时刻 Time 值是不是落在稳态窗口内,通常我会把 Time 设在瞬态开始后的 0.5~1ns,确保撞击前有足够长的平稳期。第三个自查点是时间步长跨度,MinStep 和 MaxStep 相差七个数量级是常态,但别把 MaxStep 放得太松,比如重离子撞击后 10ns 内,MaxStep 建议不超过 0.1ns。

我个人的习惯是,每改一次网格或掺杂,都会重新跑一遍完整的 I-V 和 C-V 基线测试,把击穿电压和零偏电容这两个关键数值记录下来,作为后续所有瞬态仿真的参照。曾经有一次就是因为改了几何尺寸后没重跑 C-V 基线,直接用旧的电容值去校核瞬态结果,硬是调了三天参数才发现问题出在网格面积因子没更新。从那以后,凡是从文档或同事手里拿到不完整的 sdevice 片段,我第一件事就是逐行核对 File 块路径和 Physics 块模型组合,先把 C-V 混合模式跑通,再谈后面的重离子和激光瞬态仿真。希望这份梳理能帮到正在跟 Sentaurus 命令缠斗的你。

本文还有配套的精品资源,点击获取

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询