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

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2704|回复: 14

[原创] ADS design guide cell:fmax vs IC 问题

[复制链接]
发表于 2023-2-9 15:23:35 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 Yonion 于 2023-2-9 15:25 编辑

使用ADS中的 design guide amplifier DC and bias point ——BJT_ft_fmax_vs bias cell时,使用示例中的理想BJT时,原理图正常工作,得到如下结果:
1-png.jpg
但是,当我将理想的BJT替换为PDK中的BJT时,只能得到以下结果(只有两个)
2-png.jpg



                               
登录/注册后可看大图

检查公式,发现以下错误,应该怎么修改呢?
While evaluating "ft_max":
  Operation "[ ] sweep access", index out of range in dimension 1, independent "freq" must use an index in the range 0 <= index < 0







发表于 2023-2-9 19:02:39 | 显示全部楼层
你plot一下MAG的结果,估计可以看到有些曲线的值都小于-1。这样的话,那个X=cross(MAG,-1)在某些曲线上就没有值。你需要修改一下DC仿真范围,需要保证每条MAG都有和-1相交的点。
 楼主| 发表于 2023-2-9 22:58:23 | 显示全部楼层
本帖最后由 Yonion 于 2023-2-10 14:10 编辑


dongming 发表于 2023-2-9 19:02
你plot一下MAG的结果,估计可以看到有些曲线的值都小于-1。这样的话,那个X=cross(MAG,-1)在某些曲线上就没 ...





 楼主| 发表于 2023-2-9 23:03:33 | 显示全部楼层


dongming 发表于 2023-2-9 19:02
你plot一下MAG的结果,估计可以看到有些曲线的值都小于-1。这样的话,那个X=cross(MAG,-1)在某些曲线上就没 ...


好的,谢谢。我还有一个新的问题想请教一下?为什么模板里用cross(MAG,-1),而不是cross(MAG,1)?


我查询help文档中关于cross()函数的描述如下:
yCross = cross(signal, direction, slope)

If direction = +1, compute positive going zero crossings.  
If direction = -1, compute negative going zero crossings.
这里的positive和negative具体指什么?你可以帮忙解释一下这两句话的含义吗?
If direction = 0, compute all zero crossings


                               
登录/注册后可看大图

发表于 2023-2-10 10:57:26 | 显示全部楼层
本帖最后由 dongming 于 2023-2-10 10:59 编辑

yCross = cross(signal, direction, slope)

If direction = +1, compute positive going zero crossings.  
If direction = -1, compute negative going zero crossings.

-1是指下降的方向上找到过零点,+1是指上升的方向上找到过零点。(也可以理解为过零点的斜率是正还是负)

MAG是max_gain的结果,以dB表示,fmax应该是增益降到0时候的频率。
 楼主| 发表于 2023-2-10 14:12:07 | 显示全部楼层


dongming 发表于 2023-2-10 10:57
yCross = cross(signal, direction, slope)

If direction = +1, compute positive going zero crossings.  ...


明白了,非常感谢。
 楼主| 发表于 2023-2-14 12:02:08 | 显示全部楼层


dongming 发表于 2023-2-10 10:57
yCross = cross(signal, direction, slope)

If direction = +1, compute positive going zero crossings.  ...


你好,你能再帮忙解释一下这三个函数是什么意思吗?
(1)ft_max=max(max(ft[0]));
ft[0]如下所示,取两次max,ft_max最后是什么呢?哪一个参数?

                               
登录/注册后可看大图





 楼主| 发表于 2023-2-14 12:03:17 | 显示全部楼层


dongming 发表于 2023-2-10 10:57
yCross = cross(signal, direction, slope)

If direction = +1, compute positive going zero crossings.  ...


(2)ft_vs_IC=vs(permute(ft[0]),permute(IC.i[0]));
这里的ft[0]是什么?permute()函数是如何反转自变量的?
(3)ft_contours=contour(ft_vs_IC,ft_max-{0.02G,1G,2G,3G});
contour()函数怎么理解?表达式ft_max-{0.02G,1G,2G,3G}中的{0.02G,1G,2G,3G}是固定的吗?必须为0.02G,1G,2G,3G;

 楼主| 发表于 2023-2-14 12:04:29 | 显示全部楼层


dongming 发表于 2023-2-10 10:57
yCross = cross(signal, direction, slope)

If direction = +1, compute positive going zero crossings.  ...


帖子长度有限制,只能分开发了


                               
登录/注册后可看大图

发表于 2023-2-14 14:28:40 | 显示全部楼层


Yonion 发表于 2023-2-14 12:02
你好,你能再帮忙解释一下这三个函数是什么意思吗?
(1)ft_max=max(max(ft[0]));
ft[0]如下所示,取两 ...


首先 ft[0]有两个嵌套的自变量  外围是IBB, 内维是VCE。 max函数只是在一维上进行操作, max(ft[0])的结果是一个依赖IBB的一维结果,再取一次就是所有数据中的最大值: max(max(ft[0]))
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2024-5-1 03:31 , Processed in 0.057216 second(s), 7 queries , Gzip On, Redis On.

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