matlab仿真 比较器,比较器失调仿真方法(Monte Carlo仿真 & matlab处理)

本文主要参考Achim Graupner-《A Methodology

for the Offset-Simulation of Comparator》,这篇文章可以从Designer-Guide.org

上获取,这里主要是写下具体步骤,也便于自己做个备份。

为什么需要用Monte Carlo仿真?

在研究比较器失调(offset)时,我们需要考虑各个工艺角(corner)对比较器失调的影响,但是通过用Monte

Carlo仿真,我们可以加入器件之间mismatch的影响(特别是同类型的器件)。当然,此时器件的参数随正态分布变化,而不是固定在一个确定的Corner。

有些工艺应该可以只仿process variation或者mismatch的单个情况, 我用的工艺只能对两者一起仿真。

(1)比较器输入激励信号,这里我们输入一个如图1的三角波形(由analogLib里Vpwl的信号,通过ahdlLib里理想的采样保持模块(sah_ideal)产生,注意定义模块里的vtans_clk变量。一般设计的比较器都是差分输入,所以我再接一个单端转双端的变压器,同时在这里定义输入共模,如图2,这里我的Vth=0,当然也可以看作已经减去比较电平的输入。

(2)我用的是Cadence的IC61,所以直接运行ADE XL里的Monte Carlo

Sampling,设置仿真次数,当然是越大越好(咱电脑不是啥高档机器,所以受仿真时间限制),不过几百个点应该够了吧。

Tips: 要记着选择save data to allow family plots。

图3是N次Voutp输出结果,当然这里只显示了几次

你可能感兴趣的:(matlab仿真,比较器)