+ Post New Thread
Page 2 of 2 FirstFirst 1 2
Results 21 to 22 of 22
  1. #21
    Advanced Member level 5
    Points: 16,709, Level: 31
    pancho_hideboo's Avatar
    Join Date
    Oct 2006
    Location
    Real Homeless
    Posts
    2,565
    Helped
    685 / 685
    Points
    16,709
    Level
    31

    Re: Resistance Flicker Noise Question

    Quote Originally Posted by longqingshan View Post
    In Veriloga, resistor flicker noise is modeled with a noisy current source: "I(p, n) <+ flicker_noise(kf*pow(abs(i_r), af)/geo ,ef, "flicker")";
    This is not appropriate for Pnoise Analysis.
    Modification is needed.
    See https://designers-guide.org/forum/Ya...num=1545748007

    I’m currently busy.
    So I can not answer in detail now.
    Last edited by pancho_hideboo; 20th August 2019 at 11:21.



    •   AltAdvertisement

        
       

  2. #22
    Advanced Member level 5
    Points: 16,709, Level: 31
    pancho_hideboo's Avatar
    Join Date
    Oct 2006
    Location
    Real Homeless
    Posts
    2,565
    Helped
    685 / 685
    Points
    16,709
    Level
    31

    Re: Resistance Flicker Noise Question

    You showed rppo1rpo_dis in https://www.edaboard.com/showthread.php?385900#19

    However ppolyf_u_1k_t and res_va in https://www.edaboard.com/showthread.php?385900#17

    Show me things correctly.
    Show me definition of res_va and ppolyf_u_1k_t.

    Replace res_flicker_noise.va with following.
    Code:
    //////////////////GLOBALFOUNDRIES MODEL////////////////////
    module res_flicker_noise(p, n);
    inout p, n;
    electrical p, n;
    
    parameter real rmain=1e3;
    parameter real l=0;
    parameter real w=0;
    parameter real dw=0;
    parameter real dl=0;
    parameter real rsh0=0;
    
    //parameter real (* integer inherited_mfactor; *) m = 1;
    
    //flicker noise parameters
    parameter real kf=2.62e-26;
    parameter real af=2;
    parameter real lf=1;
    parameter real wf=1;
    parameter real ef=1;
    parameter real m=1;
     
    real r_l, r_w;
    real i_r;
    real geo;
    
    analog begin
      r_l=l-2*dl;
      r_w=w-2*dw;
     
      i_r=V(p,n)/rmain;
     
      geo = pow(r_w, wf) * pow(r_l, lf) * m;
     
      if(i_r > 0)
        I(p, n) <+ flicker_noise(kf * pow(abs(i_r), af)/geo, ef, "flicker");
      else
        I(p, n) <+ -flicker_noise(kf * pow(abs(i_r), af)/geo, ef, "flicker");
    end 
    endmodule
    ///////////////////////////////////////////////////////////////////////
    Last edited by pancho_hideboo; 1st September 2019 at 14:29.



--[[ ]]--