电子书:《模拟对话》,共50卷,数百篇精品文章,下载即奖励400信元!
返回列表 发帖

[求助] 求DAC的INL和DNL的仿真问题

[求助] 求DAC的INL和DNL的仿真问题

在用 [url=]Monte Carlo[/url]测DAC的DNL和INL时,单位电容值往往设置成随机变量,如图所示,请问一下怎样设置单位电容值成为随机变量呢
2MDT(`GIKJ$%12B6C{X6655.png

水下机器人传感器、传感器与远程病患监护等精品视频推荐(奖励400信元)

如果有PDK提供Monte Carlo, 跑Monte Carlo就可以了, 但这样就无法指定mismatch的大小了。这篇TCASI的论文里指定了mismatch的标准差是3%,所以不太可能是直接调用工艺库的mismatch做MC仿真的。 一种可能的方法是写一个verilog-a的电容模型,人为指定MISMATCH的大小。例子如下:

module CAP_GAUSS( p, n );
  parameter real    UNIT_CAP   = 0 from ( 0 : inf ); // size of unit capacitor
  parameter integer MULTIPLIER = 1 from [ 1 : inf );
  parameter real    MISMATCH   = 0 from [ 0 : 1   );
  
  (* cds_inherited_parameter *)parameter real RANDOM = 0;
  // inherit the random variation specified in .scs model

  real sigma, cap_val;
  
  inout p, n;
  electrical p, n;
        branch( p, n ) cap;
       
        analog
    begin
      @( initial_step )
        begin
          sigma   = sqrt( MULTIPLIER ) * UNIT_CAP * MISMATCH;
          cap_val = MULTIPLIER * UNIT_CAP + sigma * RANDOM;
        end
      I( cap ) <+ cap_val * ddt( V( cap ) );
    end
endmodule

TOP

回复 2# quantus


   十分感谢,我还想问一下,这样建立的symbol和最后测试结果差距会很大吗?

TOP

只考虑mismatch的话,我觉得还是能对得上的,实际还要考虑考虑settling,电荷注入,电源和地上的噪声...

TOP

回复 4# quantus


   嗯嗯,太谢谢你了

TOP

返回列表

站长推荐 关闭


(观看奖励400信元)水下机器人传感器、传感器与远程病患监护等精品视频推荐

水下机器人开源的项目非常少,如果要从事水下机器人的创业,很多设计都需要从零开始。在设计水下机器人时,由于产品接触到水,对压力传感器会有特殊要求。TE如何 ...


查看