9.4.13 Monte Carlo Analysis(蒙特卡罗分析)
蒙特卡罗分析是一种统计模拟方法,它是在给定电路元件参数容差为统计分布规律的情况下,用一组组伪随机数求得元件参数的随机抽样序列,对这些随机抽样的电路进行直流扫描、直流工作点、传递函数、噪声、交流小信号和瞬态分析,并通过多次分析结果估算出电路性能的统计分布规律。蒙特卡罗分析可以进行最坏情况分析,它在进行最坏情况分析时有着强大且完备的功能。
在“分析设置”对话框中勾选“Monte Carlo Analysis”(蒙特卡罗分析)复选框,相应的参数设置如图9-24所示。

图9-24 蒙特卡罗分析的仿真参数
各参数的含义如下。
▲“Seed”(随机数):该值是仿真中随机产生的。如果用随机数的不同序列执行一个仿真,需要改变该值(默认值:-1)。
▲“Distribution”(容差分布参数):Uniform(默认值)表示单调分布。在超过指定的容差范围后仍然保持单调变化;Gaussian表示高斯曲线分布(即Bell-Shaped铃形),名义中位数与指定容差有±3的背离;Worst Case表示最坏情况与单调分布类似,不仅仅是容差范围内最差的点。
▲“Number of Runs”(器件数):在指定容差范围内执行仿真,运用不同器件值(默认值:5)。(https://www.daowen.com)
▲“Default Resistor Tolerance”(电阻公差):电阻器件容差(默认值:10%)。
▲“Default Capacitor Tolerance”(电容公差):电容器件容差(默认值:10%)。
▲“Default Inductor Tolerance”(电感公差):电感器件容差(默认值:10%)。
▲“Default Transistor Tolerance”(晶体管公差):晶体管器件容差(默认值:10%)。
▲“Default DC Source Tolerance”(直流源公差):直流源容差(默认值:10%)。
▲“Default Digital Tp Tolerance”(数字器件公差):数字器件传播延时容差(默认值:10%),该容差将用于设置随机数发生器产生数值的区间。对于一个名义值为ValNom的器件,其该容差区间为ValNom(Tolerance*ValNom)<RANGE<ValNom+(Toleance*ValNom)。
▲“Specific Tolerances”(用户特定的容差):(默认值:0)定义一个新的特定容差,先执行Add命令,在出现的新增行的Designator域中选择特定容差的器件,在Parameter中设置参数值,在Tolerance中设定容差范围,“Track No.”即跟踪数(Tracking Number)。用户可以为多个器件设置特定容差。此区域用来标明在设置多个器件特定容差的情况下,它们之间的变化情况。如果两个器件的特定容差的跟踪数一样,且分布相同,则在仿真时将产生同样的随机数并用于计算电路特性,在Distribution中选择uniform,gaussian和worst case中的一项。每个器件都包含两种容差类型,分别为器件容差和批量容差。
在电阻、电容、电感、晶体管等同时变化的情况下,由于变化的参数太多,反而不知道哪个参数对电路的影响最大。因此,建议读者不要“贪多”,一个一个地分析,例如,想知道晶体管参数BF对电路频率响应的影响,那么就应该去掉其他参数对电路的影响,而只保留BF容差。