【Cadence射频仿真学习笔记】IC设计中电感的分析、建模与绘制(EMX电磁仿真,RFIC-GPT生成无源器件及与cadence的交互)
一、理论讲解
1. 电感设计的两个角度
- 电感的设计可以从两个角度考虑,一个是外部特性,一个是内部特性。
- 外部特性就是把电感视为一个黑盒子,带有两个端子,如果带有抽头的电感就有三个端子,需要去考虑其电感值、Q值和自谐振频率这三个参数
- 电感的Q值表达式如下,可以发现当电感等效电阻很大的时候,Q值就会很低。
- 电感的自谐振频率就是电感理论上可以操作的最大工作频率,当电感超过这个自谐振频率时,电感就会变成电容
2. 螺旋电感值的计算
- 在电感设计中,可以把电感视为一个分布式的模型,比如右边的电感,可以把他分为8个金属段,每个金属段都有自感,以及段与段之间的互感,互感包括相邻段之间的互感(比如1和5)是正的互感,还有每段金属与其对面金属之间的互感(比如1和3)是负的互感。所以这个电感从外部看,就是每段之间的自感和互感的叠加。
- 每段金属的自感在下图左边,但这只是经验公式,
- 可通过右下方的8段金属螺旋电感的计算公式
3. 平面螺旋电感模型
- 左图为平面螺旋电感及其剖面图,中间的图为其等效的电路。
- 可以发现其既有电感,也有寄生电阻寄生电容。但是这个等效电路没有把金属导线之间的寄生电容考虑进去。
- 寄生电阻主要有三个来源
- 欧姆损耗:任何金属都有欧姆损耗
- 涡流损耗:电感产生的磁场会透过衬底,在其上面感应出电流,这个电流产生的能量就会消耗在衬底上,又因为能量是守恒的,这部分消耗的能量最终还是来自于电感的,所以这部分的能量损耗还是算在电感上。
- 趋肤效应
- 寄生电容的来源
4. 电感设计考虑
- 金属层的选择:当我们在拿到工艺库后,我们要去看它的顶层金属厚度是多少?有1层还是2层的厚金属。一般做的电感都是做在顶层金属上的,一方面是具有更大的厚度,这样寄生电阻会小一点,另一方面顶层金属离衬底距离最远,使其寄生电容最小。
- 面积就是外直径,面积肯定是越小越好,但是过小的面积会导致电感的感值上不去,就算感值上去了,其Q值和自谐振频率也会变得很糟糕。所以如果性能达不到要求,还是要把面积增大。
二、AI工具生成电感(RFIC-GPT)
1. RFIC-GPT生成电感
- 打开AI工具的生成网站RFIC-GPT
https://service.icprophet.com/design/Inductor
- 这里可以输入电感的电学指标,
- 金属层厚度。由于电感是制作在工艺中最高层的金属,因为其有最大的厚度,做出来的电感质量也越好,所以选择工艺最大的金属厚度3.4um。
- 输入完指标后,就点击提交计算按键
- 然后就可以生成电感了,这里有三个结果,一个是Q值误差最小,一个是。这里我们选择综合误差最小的压缩包,即inductor_all.zip
- 下载出来的是GDSII文件,
2. 导入到cadence中
-
我们需要把这个文件导入到cadence中,打开cadence,
-
打开文件
-
选择刚才的GDSII文件
-
Library就是生成的版图要放在哪个库中,即目标库
-
technology就是绑定的工艺库
-
然后点击生成
-
然后就可以发现对应的库已经生成好了layout
-
这就是生成的电感版图
-
但是需要注意,AI生成的电感默认是在M1-M3层,我们需要将金属层次改成工艺库中默认的层次。
-
比如tsmcN65库中的最高金属层是M9,我们就需要将M2层改成M9层
-
点击NV,单独选中M2层所有对应的金属
-
将M2层全部改成M9层
-
电感的连接部分是M1,将其改为M8层
-
M1和M2层之间的通孔,有VAR1改成VAR8,即M8和M9层之间的通孔
-
M2的pin也要改成M9的pin
-
这样就修改完毕了
三、EMX电磁仿真
- 设计的电感指标如下图所示
- 我们使用cadence中的EMX插件对无源器件(电感进行电磁仿真)
- 这里可以选择使用AI生成的电感,也可以是自己在版图上画出来的电感。我们这里采用自己画的电感进行仿真
自己手动绘制电感layout
-
我们打开cadence软件,新建一个版图layout设计窗口
-
我们先随意假定面积,假设面积为80*60um,看看性能是否满足要求,不满足再进一步增大。
-
用标尺把面积长度给标定出来,按住“k”键
-
按住s键,把标尺进行缩放到精确值
-
按住A键,让标尺进行对齐
-
这样就把外部的轮廓勾勒出来了
-
接下来就开始绘制了,这个工艺库最高的金属层是M9,就用M9层来绘制
-
先随便画一条线
-
然后我们初步确定其线宽,选择为4um的宽度
-
然后按住A键,使走线与标尺进行对齐,并延长其长度到35um
-
然后再复制一个走线
-
然后再复制一条新走线到下面,并补充其走线长度
-
然后再补充两边的走线,这样就绕好一圈了
-
然后再上面引出两个端子
-
现在出现了一个问题,系统自动把整个都连成一个整体了,现在我们需要将这个金属线段给打散。
-
先选择这个金属线段,然后点击
-
就可以发现现在已经被打散了
-
然后就可以把其单独复制到另一边
-
然后给两个端子上打引脚,先选择M9的pin,
然后点击pin按钮
-
正端命名为pp,然后勾选create label,点击options
-
勾选上same as pin
-
然后就可以打pin了
-
然后负端也一起打上pin
-
然后这个pin太小了,给他们放大
-
我们先看这样绕了一圈,其感值有多大,进行保存,打开EMX
-
载入proc文件
-
加上端口名,地可以不填,默认
-
从1G仿真到10GHz
-
选择电感,不带屏蔽的差分电感
-
然后点击进行仿真
-
仿真结束后打开New,查看图像
-
查看现在的电感有多大,5GHz的感值为148pH
-
所以一圈的感知是不够的,还要多绕一圈
-
把下面的金属线段删掉
-
将上面的金属线段复制到下面来,并留出缺口
-
从这个缺口做拐角多绕一圈。
-
这里需要将直角的走线改成45度的走线
-
按住键盘P键,就是走线
-
修改其宽度为4um
-
按住键盘上的M键移动走线,让其对齐。
-
然后再复制一份,做镜像
-
同样移动使其对齐对称
-
但是这里走线存在交叉,所以不能用同一层的金属,会短路。需要换一层进行跳线
-
首先将其进行打散
-
将这个交叉部分换成M8金属层
-
然后再补一些金属上去,便于等会打孔
-
然后对齐
-
然后按住o键进行打孔,打的是M8-M9的过孔
-
过孔为4*4个
-
放在补充金属的中间
-
按住shift+F将过孔显示出来
-
然后复制一下,放到左下角处
-
然后对齐,这样交叉部分就搞定了
-
然后再补全走线
-
先打散走线,将其复制到另一侧
-
然后再补全上侧走线
-
这样就有两圈的走线了,然后再来看现在的电感是否达到要求
-
相同操作进行仿真,可以看到现在5Ghz的电感有350pH
-
但是要求是500pH,还差一些,因此还是需要再加一圈
-
删掉上面这个金属线段
-
需要再添加一圈,留出一段缺口
-
在缺口处进行交叉,可以看到这里交叉的线太短了,需要将其再画长一些
-
将交叉的线进行延长
-
同样,将一侧的交叉线换成M8
- 然后将下面的打孔复制过来,这样就完成连接的部分了
- 然后补全内圈的连线,这时候再重新仿真查看电感值
- 现在5GHz的时候是501pH,非常接近预期的电感值了
- 此时Q值为10,满足设计指标
- 这时候就完成仿真设计了
- 如果把内圈都画完了还没达到指标,说明刚开始的面积假设有问题,达不到设计要求,需要扩大面积再重新绘制,不断进行迭代。
中心抽头
-
题目还要求有中心抽头,抽头就是在对称点引一根线连接到VDD上
-
往上面引还是下面引取决于位置的摆放,看看电源线在哪个位置
-
注意引线不要跟交叉线重合了,可能需要跳线才能跳出去,不然就短路了。
-
这里需要打一个pin,选择M9的pin层
-
选择create pin
-
将其命名问CT,即center cab中心抽头的缩写
-
然后将字体放大
-
然后就可以进行仿真了
-
由于现在有三个pin端口了,所以EMX选项这里还需要添加一个ct
-
然后为了便于观察自谐振频率的位置,扫频从0-100GHz,
-
电感类型也要换成带抽头的,差分共模
-
再进行仿真
-
先看下5GHz的电感值为500pH
-
达到最大电感的对应频率点就是自谐振频率点,为68.73GHz,是很高的值,满足设计的需求。
-
5GHz的Q值为9.78
四、原理图调用版图模型
-
在EMX选项设置中,点击Spar可以生成s参数文件
-
这里调出显示没有GND,直接不用管它,因为版图中就是没有GND的
-
然后就显示已经生成好了,是nport文件
-
然后就可以在library中找到这个文件了
-
在生成nport的同时,还会生成一个s参数的文件
-
它会在设计目录下生成一个EMX_work目录
-
就可以找到对应电感的文件夹了
-
这里有个.s2p文件,这个文件就是生成的s参数文件
-
如果想要在原理图中调用这个s参数文件
-
先创建一个testbench
-
在analoglib库中调用nport器件。
-
然后设置其属性
-
由于刚才的电感是两端口的器件,所以端口数设置为2
-
s parameter data file参数的文件,填入刚才生成s参数文件的绝对路径,即文件所在的位置,并带上文件的名字。
-
这样就可以生成电感的原理图了
- 注意这里多了下面的第三段,由于EMX中默认有一个地,就直接连接到电路中外部的地就可以了
- 这里可以测试一下这个电感器件的symbol是否正确,做一个仿真,仿真的电路如下。