在线咨询 切换到宽版
eetop公众号 创芯大讲堂 创芯人才网

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

搜全文
查看: 3616|回复: 5

[求助] 帮忙看看OSC求gm的matlab代码是什么意思?

[复制链接]
发表于 2014-6-16 15:38:25 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
%------------------------------------------------------------------------------
% Oscillation gm calculation
%
%       ---------------------------------------------------------------------------------------
%       |           |              |             |           |          |           |         |
%       |           |              |             |           |          |           |         |
%       C           |              |             |           |          |           |         |
%  Ls   C           |              |             |           |          |           |         |
%       C           |              |             |           |          |           |         |
%       |           |              |             |           |          |           |         |
%       |           |              |            <            |          |           |         |
%  Cs -----    Cp -----       C3 -----           >     Cgd -----        |           |         |
%     -----       -----          -----     Rgd  <          -----        |           |         |
%       |           |              |             >           |          |           |         |
%       |           |              |             |           |          |           |         |
%      <            |              |             |           |          |           |         |
%       >           |              |             |           |          |           |         |
%  Rs  <            |              |             |           |          |           |         |
%       >           |              |             |           |          |           |         |
%       |           |              |             |           |          |          <          |
%       |           |              |             |           |      ||---           >         |
%       ------------------------------------------------------------||   gm   Rds  <          |
%                                                            |      ||---           >         |   
%                                                            |          |           |         |   
%                                                      C1  -----        |           |   C2  -----
%                                                          -----        |           |       -----
%                                                            |          |           |         |   
%                                                            |          |           |         |   
%                                                            ----------------------------------
%
%------------------------------------------------------------------------------
clear j pi end
gm=logspace(-10,6,10000);

%Crystal parameter
Q=4e4;
Cp=2e-12;
Cs=2e-15;
Ls=88e-3;
Rs=300;
fs=12e6;

C1=15e-12;
C2=15e-12;
C3=0.01e-12;
%Rds=1e12;
Rds=(100*1)./gm;
%Rds=(10*1)./gm;
Rgd=10e6;
Cgd=0.1e-12;

w=2*pi*fs;
s=j*w;
z1=1/(s*C1);
zc2=1/(s*C2);
zc3=1/(s*(C3+Cgd+Cp));
z2=(Rds*zc2)./(Rds+zc2);
z3=(Rgd*zc3)/(Rgd+zc3);
zc=(z1*z3+z2*z3+gm.*z1.*z2.*z3)./(z1+z2+z3+gm.*z1.*z2);
rs_line=[-Rs, max(imag(zc))*0.98;
         -Rs, min(imag(zc))*1.02];

%find the gm_opt, gm_a and gm_b
zcr_gm=[real(zc)',gm'];
[rc_opt,gm_opt_idx]=min(zcr_gm(:,1));
gm_opt=gm(gm_opt_idx);
tao_opt=-2*Ls/(rc_opt+Rs);

gm_a_idx=find(zcr_gm(:,1)<=-Rs,1,'first');
gm_a=gm(gm_a_idx);
gm_b_idx=find(zcr_gm(:,1)<=-Rs,1,'last');
gm_b=gm(gm_b_idx);
y0=imag(zc(1));
yend=imag(zc(end));
phi=abs(yend-y0);

%Print the optimized gm and the critical gm
rc_opt
tao_opt
gm_opt
gm_a
gm_b
y0
yend
phi

%Plot the zc vs gm locus
h=figure(1);clf;
set(h,'Name','zc vs gm locus')
plot(zc);
axis equal;
grid on;
hold on;
plot(rs_line(:,1), rs_line(:,2), '-r');
发表于 2014-6-16 17:33:24 | 显示全部楼层
直接给.m的文件吧,我跑一下验证一下
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-16 17:39:26 | 显示全部楼层
回复 2# skymid


   我想知道语句的意思是什么?
回复 支持 反对

使用道具 举报

发表于 2014-6-17 08:56:32 | 显示全部楼层
回复 3# beyond某人


   很容易看懂,但是需要跑出结果验证一下,感觉matlab语言是最简单的语言了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-17 09:42:14 | 显示全部楼层
回复 4# skymid


   那能否给解释一下红色标记语句的意思?
回复 支持 反对

使用道具 举报

发表于 2018-5-28 16:49:05 | 显示全部楼层
thnak you
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

X

手机版| 小黑屋| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-9-15 04:23 , Processed in 0.018352 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表