【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是否正确,做一个仿真,仿真的电路如下。
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/940662.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Everything实现,快速搜索文件

最近编写NTFS文件实时搜索工具, 类似 Everything 这样, 翻阅了很多博客, 结果大致如下: 1.分析比较肤浅, 采用USN日志枚举来获取文件记录 速度一言难尽, 因为日志枚举的是全盘所有文件的所有日志, 记录比文件记录还多, 速度当然很慢, 还有的甚至于是 使用 DeviceIoControl 函数…

【完美解决】windows打开cmd窗口的时候闪退解决办法

本章教程,主要记录,windows中打开cmd的时候,闪退问题。产生问题的原因,电脑上之前安装了anaconda,卸载之后,就发现cmd无法正常打开,一执行不会弹出窗口。 解决办法 一、打开注册表 regedit二、…

乐凡信息智能安全管控方案:助力油气田行业安全管控多方位升级

我国油田地域广阔,分布着大量各种油井,油井开采设备的连续稳定运行是保证石油开采的首要条件。然而,由于油田多位于特殊地理环境中,因而实现油井之间的通信首要问题就是要克服地理环境所带来的限制,传统通信系统的建设…

2024年企业中生成式 AI 的现状报告

从试点到生产,企业 AI 格局正在被实时改写。我们对 600 名美国企业 IT 决策者进行了调查,以揭示新兴的赢家和输家。 从试点到生产 2024 年标志着生成性人工智能成为企业关键任务的一年。这些数字讲述了一个戏剧性的故事:今年人工智能支出飙升…

L24.【LeetCode笔记】 杨辉三角

目录 1.题目 2.分析 模拟二维数组的大致思想 杨辉三角的特点 二维数组的元素设置代码 两个参数returnSize和returnColumnSizes 理解"有效"的含义 完整代码 提交结果 1.题目 给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。 在「杨辉…

“从零到一:揭秘操作系统的奇妙世界”【操作系统中断和异常】

一开始看王道网课,它说内中断就是异常。但是我一查ai,它又说内中断和异常不能等同,是两个概念,这时候我觉得天都塌了。内中断到底是不是异常啊? 我心想我今天一定要把这个搞懂,我来交作业了!我…

C#代码实现把中文录音文件(.mp3 .wav)转为文本文字内容

我们有一个中文录音文件.mp3格式或者是.wav格式,如果我们想要提取录音文件中的文字内容,我们可以采用以下方法,不需要使用Azure Speech API 密钥注册通过离线的方式实现。 1.首先我们先在NuGet中下载两个包 NAudio 2.2.1、Whisper.net 1.7.3…

Windows装Docker至D盘/其他盘(最新,最准确,直接装)

前言 Docker的默认安装路径为 C:\你的用户名\AppData\Local\Docker\wsl这样安装常常会导致C盘爆满。目前现有博客的安装方法往往不能把docker的container和image也装在非C盘。本博客旨在用最简单的方式,把Docker Deskstop的images和container装在D盘中。 安装前&a…

前端关于pptxgen.js个人使用介绍

官方文档链接:Quick Start Guide | PptxGenJS git地址:https://github.com/gitbrent/PptxGenJS/ 1. 安装命令 npm install pptxgenjs --save yarn add pptxgenjs 2. 示例demo import pptxgen from "pptxgenjs"; // 引入pptxgen // 1. Create a Presenta…

Vulnhub靶场Nginx解析漏洞复现

一.nginx_parsing 原理:这个解析漏洞其实是PHP CGI的漏洞,在PHP的配置⽂件中有⼀个关键的选项cgi.fix_pathinfo默认是开启的,当URL中有不存在的⽂件,PHP就会向前递归解析。在⼀个⽂件/xx.jpg后⾯加上/.php会将 /xx.jpg/xx.php 解…

harbor离线安装 配置https 全程记录

1. 下载harbor最新版本 下载网址: 找最新的版本: https://github.com/goharbor/harbor/releases/download/v2.11.2/harbor-offline-installer-v2.11.2.tgz 这里我直接使用迅雷下载, 然后上传 1.1解压 sudo tar -xf harbor-offline-installer-v2.11.2.tgz -C /opt/ 2. 配置Harb…

Next.js v15 - 服务器操作以及调用原理

约定 服务器操作是在服务器上执行的异步函数。它们可以在服务器组件和客户端组件中调用,用于处理 Next.js 应用程序中的表单提交和数据修改。 服务器操作可以通过 React 的 “use server” 指令定义。你可以将该指令放在 async 函数的顶部以将该函数标记为服务器操…

编译原理复习---目标代码生成

适用于电子科技大学编译原理期末考试复习。 1. 目标代码 是目标机器的汇编代码或机器码,在本课程中指的是类似于汇编代码的一种形式,由一条条的指令构成目标代码。 抽象机指令格式:OP 目的操作数,源操作数。 我们要做的&…

JaxaFx学习(三)

目录: (1)JavaFx MVVM架构实现 (2)javaFX知识点 (3)JavaFx的MVC架构 (4)JavaFx事件处理机制 (5)多窗体编程 (6)数据…

Type-C 接口电热毯:开启温暖智能新时代

在当今科技迅猛发展的时代,智能家居产品如同璀璨繁星般点缀着我们的生活,从智能灯光的温馨到温控系统的精准,处处都彰显着科技赋予生活的便捷与舒适。而在这股追求高效与智能化的洪流之中,一款极具创新的电热毯——Type-C 接口电热…

解决vscode ssh远程连接服务器一直卡在下载 vscode server问题

目录 方法1:使用科学上网 方法2:手动下载 方法3 在使用vscode使用ssh远程连接服务器时,一直卡在下载"vscode 服务器"阶段,但MobaXterm可以正常连接服务器,大概率是网络问题,解决方法如下: 方…

WSL Ubuntu

文章目录 1. 概述1.1 什么是适用于 Linux 的 Windows 子系统1.2 什么是 WSL 21.3 WSL 2 中的新增功能1.4 比较 WSL 2 和 WSL 1 2. 参考资料3. 修改存储位置4. 网络访问 1. 概述 1.1 什么是适用于 Linux 的 Windows 子系统 适用于 Linux 的 Windows 子系统可让开发人员按原样运…

clickhouse-数据库引擎

1、数据库引擎和表引擎 数据库引擎默认是Ordinary,在这种数据库下面的表可以是任意类型引擎。 生产环境中常用的表引擎是MergeTree系列,也是官方主推的引擎。 MergeTree是基础引擎,有主键索引、数据分区、数据副本、数据采样、删除和修改等功…

如何使用Python进行音频片断合成

以下是几种使用 Python 进行音频合成的方法: 使用 synthesizer 库 通过 pip install synthesizer 安装后,利用其提供的合成器类,可自定义振荡器类型,如锯齿波、方波或正弦波,并调制振幅来创造不同音色,还…

【SH】在Ubuntu Server 24中基于Python Web应用的Flask Web开发(实现POST请求)学习笔记

文章目录 Flask开发环境搭建保持Flask运行Debug调试 路由和视图可变路由 请求和响应获取请求信息Request属性响应状态码常见状态码CookieSession 表单GET请求POST请求 Flask 在用户使用浏览器访问网页的过程中,浏览器首先会发送一个请求到服务器,服务器…