ADS提取流程
- cell测试图
- 对于下面这些cell,即便不加入控件和网表,都能正常仿真
- 如果要做一个小信号仿真,通常要把里面抽取成小信号模型,如果是大信号仿真就要抽取成大信号模型
-
首先要做差模和共模的仿真
-
差模扫描
-
注意这里nelist要与virtuoso设置成完全一致
-
这里在option控件中还要注意温度
-
同时全要ignore
-
共模扫描
-
因为这个放大器有四个端口,本质上是存在共模响应的
-
共模我们可以直接把输入端和输出端短路,注入交流信号,同时注入直流
- 仿完共模和差模之后
- 点击这个按钮,是数据处理器
- 然后导出数据
- S2PMDIF是可以同时记录其扫描参数和噪声数据的
- 然后导出共模数据
- 在文件夹下就可以找到对应的数据位置了
- 这里扫描了不同vgs下的数据
- nllx nlly n21x是不同二端口的噪声数据
- 然后,我们就可以去做与后仿和网表无关的cell,因为如果是用nch搭的管子,里面是有calibre数据的。如果每次都把特别复杂的数据和网表代入到ads或者virtuoso中进行参数优化和变压器匹配的话,你的仿真速度回非常慢,所以我们这里把其进行封装。
- 一个四端口的参数,我们可以将一个四端口的s参数换成两个二端口的差模和共模响应,这是假设在放大器完全对称的情况下。如果是需要包含local only的这种mismatch数据,很明显我们的矩阵是不够的,我们可以把四端口变成两个二端口的时候,本来是44的矩阵,现在变成了两个22的矩阵。这对于大部分前仿和后仿的优化,这种假设是成立的,也就是把s4p文件变成了mix-mode的形式。
- 这需要我们去查一下mix mode s parameter是如何与正常参数进行转换的。
- 一个四端口的矩阵是可以通过线性变换成一个4*4矩阵的
- 一旦做完这样s2p仿真后,因为只有s2p才能带着二端口噪声系数(因为正常情况下是噪声的传递参数,所以通常是说成二端口噪声系数),这时候可以把输出等效到输入或输入等效到输出,所以在仿真噪声系数的时候,通常可以指定两个端口才可以仿真。所以是无法对四端口做一个完整的s2p噪声计算的,就把差模噪声和公模噪声,差模阻抗和工模阻抗分别提取出来。
- 然后做下面这样的操作,
- 由于是四端口器件,我们可以在cadence或者ads中用一个balun把两个不一定是差模的信号转成它的差模部分和公模部分,分别灌入到一个差分形式的s2p响应和共模形式s2p响应。然后再输出出来,这样就可以得到一模一样的数据。就可以解耦了一个n端口参数。
- 如果有源部分的EXL做了像这样的参数化,
- 这里使用到一个控件S2PMDIF,这个控件引用了刚才的数据
- 因为还扫了栅压,就在independent variable中把数据表中的VGS数据给引入,这个是s2p文件中输入的那个变量名称,而value是在这个原理图中的名称,这里两个变量名称取的是一致的。
- 如果要扫描温度或者要扫描其它漏压,就直接加入进来就可以了。
- 然后打开顶层的testbench
-
然后点击仿真
-
仿真可以看到,这些数据是完全重合的
-
其实是调用了virtuoso的网表进行仿真
-
这里扫描了栅极电压,稳定性都发生了一些变化
-
随着栅极电压增加,maxgain也随之增加,然后noise下降了。
-
S11是没有太大变化的,而s22是有较大变化的,因为随着栅压变大,管子开始导通了,所以其电阻会有一个减小。
-
有了这些东西,我们就可以来演示输入匹配。
-
这里先演示RC的输入匹配。
-
比如在做输入的时候,希望仿真S11,由于其在很大的带宽里面,10-60GHz,Cg和Rg的值是几乎不变的,可以认为输入阻抗就是这样的。对于输入匹配,如果不考虑其噪声的话,我们先做一个简单的驱动放大器,只需要将其匹配到50欧姆,就好了,
-
这时候来看Z21和S11要如何匹配,
-
首先我们直接带入RC作为输入端阻抗
-
如果是传统方法,直接插入变压器进行匹配。
-
注意这里的k值要选择负值,因为实际变压器抽头的值是相反的方向,所以k的耦合是负的。
-
这里需要扫描k的值
-
对于两端电感值也是一样设置扫描
-
由于这里是理想情况,所以两端的电感是没有带电阻的,因此最终得到的结果可能会比较离谱
-
假如输入到50欧姆,不加入任何的电容
-
设置完成后,我们直接开优化
-
假如s参数控件
-
然后加入优化控件OPTIM
-
采用模拟退火类型optimization type
-
然后插入优化目标goal,目前先让其有一个好的S11
-
让其小于-10
-
然后就可以开始仿真了,将其S11曲线显示出来
-
由于现在还没做匹配,所以S11曲线性能不好。
-
然后点击优化
-
但是由于使用这种理想的集总模型去做,是优化不出来的,
-
因此这里我们使用Smitch chart工具进行匹配
-
这里我们可以直接把阻抗设为串联RC
-
这样Zload就始终是这样的RC串联值
-
然后去设置频率
-
如果做变压器匹配的话,是加入了一个T型网络
-
通过拖动smith上的绿色滑块,可以匹配到圆心
-
但是现在这种匹配采用的电感值是非常极端的,其Q值很大。这意味着有一个特别高Q值的负载,
-
我们这里尝试串一个电容。
-
然后开优化,可以发现有一个值大致能取上,但是这个值是非常极端的
-
这里来分析一下原因
-
是因为右侧输入端阻抗,换算成1/wrc,Q越高,匹配电路取值再极端都匹不到一个足够的带宽,会有一个带宽的强烈限制。
-
仿真可以发现,这里确实是能精确匹配到圆心的
-
但是这个是理想的情况下,没有考虑变压器两端电感的自身阻抗的影响。
-
为了查看其变化情况,打开history
-
由于现在引入了额外的电阻,导致S11曲线发生了偏移。
-
晶体管提取出来的输入阻抗是8.8,由于变压器电感的寄生电阻,将其认为是匹配网络的一部分,那么整个负载的值就会发生变化。
-
此外考虑初级线圈电阻与次级线圈的电阻谁的寄生更大。
-
只考虑次级线圈寄生电阻
-
只考虑初级线圈寄生电阻,表现出来的是轻微的频偏。
-
所以次级线圈的变化相对来说是更大的。
-
因此我们是不能通过前仿的理想数据去建模后仿。
-
如果是按照王瑞涛的方法,线圈的电感和电阻是一个alpha的倍数关系,所以这里定义一个alpha的变量。这样电感可以随着电阻线性变化
-
这个alpha的值可以直接通过后仿提取出变压器的值。
-
L2.L直接表示了电感中的L变量的值
-
然后在这个基础上开优化
- 如果要查看损耗的话,得用Z参数看
- 由于要查看Z参数,这里要打开这些选项
- 然后开优化,仿真得到下面曲线
- 这个值相对来说比较好,是因为在较低频下
- 而如果在高频下,现在将频率范围改成50GHz
- 此时仿真得到,S11性能较好,是因为q=1/wc下,频率w越高,q越小
- 输入端是RC串联电路,呈现低通特性
- 如果不考虑电容,是无法做宽带的
- 电容的存在会导致电感是频变的,如果做超宽带匹配的话,模型就存在问题。次级线圈旁边串联的电容,会与旁边的电阻形成低通网络。因此无论怎样,只要画了版图,整个都会变成低通,高频会掉得特别厉害。
- 然后,我们要放在初级线圈一侧放一些电容,
- 但基于上面这样的等效电路图还是无法做到很好的匹配的。
- 这时候我们可以增加一些损耗,来达到匹配的效果。直接加入并联电阻,
- 可以发现,加入并联电阻之后,Q值变小了,这样匹配会更容易,带宽会更宽,而且没有增加很多的损耗。
- 再次仿真发现直接就匹配上了。
- 要想知道变压器的特性,就需要开电磁仿真,进行多组数据仿真,
- 这里我们可以用ADS官方的变压器模型
- 有这样的东西就可以相对自动的去仿真了
- 这时候就其实是在做各种EM设计了
- 在设置完成后,我们对各变量分别设置
- 复制下面内容进行分别复制
- DIS1是外半径。
- 测试完后,带回到前仿中
完成的任务
- 需要我们去完成的事情是
- 对于下面这样的电路,要求在考虑寄生参数R1,R2,且alpha1/2在常数的情况下。如何用解析解的方法,直接得到给定的定频25GHz下,把S11匹配到最优值的时候,L1L2k应该取多少。思考L1L2K是否存在唯一最优解。
- 但目前这种情况下是不存在最优解的,因为只有两个方程,多了一个变量自由度,
- 那么如果在此基础上再加入一个目标约束。
- 首先我们要达到的目标是S11匹配到圆心
- 其次考虑另一个目标Z21
- 补了一个方程是损耗,满足损耗最小和反射系数最小。
- 对于高Q匹配,次级线圈的实部才是最敏感的集总参数。
笔记
笔记1
笔记2
笔记3