Metal 线宽如何选择
https://www.cnblogs.com/yeungchie/
Metal 线宽如何选择
假如Metal是为了传输电流,则主要需要从解决和减小它的寄生电阻、寄生电容方面多做考虑。寄生电感一般忽略,高频电路除外。
这主要从两个方面分析解决:
- 电路方面
- 如果所用金属线,主要是流过电流(如电流镜MOS 管的漏极连线、功率MOS
管的漏极等)。在这种情况下金属连线的寄生电阻越小越好,此时需要金属导线
尽可能的宽,以减少寄生电阻,降低导线压降IR。 - 如果所用金属线,是用于高频信号,如clock 等,金属连线不能太宽,否则
寄生电容过大,影响频率。此时信号还应加shield 信号线。 - 其他低频控制信号,如enable 、able 等信号,这些信号通常接MOS 管的栅
极,流过的电流很小,这些金属连线宽窄(寄生电容、寄生电阻)不是很重要,
不需要过多考虑。
- 版图方面(在考虑金属线周围环境的前提下)
- 对于走大电流的信号线,从电路方面越宽越好,但从版图方面很宽的金属线
由于受到工艺、物理条件等的制约会受到限制。过宽的金属线,由于高温、应力
等影响,会翘起变形甚至折断。所以很宽的金属线需要打slot,slot 的尺寸因各
个工艺厂的工艺不同而有区别。
另外,由于趋肤效应,电流走金属表面和边缘,金属线太宽也不好,这样金
属的线上电流分布不均匀。电流很大时应采取两种方式排布金属线:同层金属线
并联(类似很宽金属线打了slot);不同金属线并联,过孔要尽可能多打,节省
面积。 - 不同层金属导线的连接,要尽可能打更多的通孔via,以减少寄生电阻。过孔
尺寸和个数最少的情况因电路和工艺而定。 - 越靠近AA(有源区)的金属例如M0,尽量不要从上面经过MOS 管、敏感
电阻等器件。因为在金属线的工艺后期处理中(高温溅射、刻蚀、退火等)会影
响这些器件的性能。尽可能换用更高层的金属线。
另外:有些电路中专门需要用金属线做电阻的,宽度和长度需要单独考虑。
Metal太宽,会导致电流密度不好,会导致电迁移、趋肤效应等现象,会降低可靠性和影响良率。
我们为什么要走很宽的金属Metal 呢?
原因无非是电路要求电流的承载能力要达到很大。常见的地方如:电源线、功率开关管上连线、芯片的地线等,这种线会走的很宽。如果我们直接用很宽的Metal 线,后果是,随着温度的升高,大块的金属中间会拱起来(热胀冷缩),这样会破坏绝缘层,损坏芯片。久而久之,即使运气好,芯片没有被损坏,运气不好的,这根金属很大可能会断掉,断掉的后果大家都懂的——直接断路。如何解决宽金属的问题呢?想必这是大家最为关心的事情。
大家都知道要打slot(槽,有slot rule,品字形,顺着电流开),slot 打了之后,即便是金属断掉了,也不会全断。一种方法,是把金属重叠着走,这个当然需要足够的金属层,就是采取不同金属层的并联。另一种方法,如果是只用一层金属的话,可以直接将宽金属线拆分成多条细金属并排(最细的金属线要满足design rule),类似于金属并联,其实也可以理解成Metal Bus(总线)。注意金属密度问题。
还有一点,有人提到很宽的金属会造成金属密度过大,影响金属覆盖率。金属的覆盖比例Metal ratio:30%-55%之间为最佳(根据所用工艺而言),比例偏离的话,铝腐蚀就不好,不干净或过腐蚀。不知道大家在交GDS 的时候有没有修改这个DRC 错误,这个会直接影响产品良率,我们都是修改OK 之后交的,所以应该注意这个问题。
金属宽度首先要满足电流条件
- 一般规则上都有明确说明,比如静态电流经验值大概1.5mA/um(有的是1mA/um,根据具体工艺而言),但高温、大电流、台阶等情况下会有所下降,大概1mA/um(有的是0.6-0.8mA/um,根据具体工艺而言)。这里指的是通常情况。静态电流密度的大小主要受电迁移、趋肤效应、金属材质等问题的影响。
而动态电流大小对应的宽度一般规则上也会写明,通常会以能量、峰峰值、均值等来衡量,动态电流密度的大小也主要受电迁移、趋肤效应、金属材质等问题的影响。
对应不同的情况需要满足不同的约束。在满足电流的约束条件后,就需要考虑信号频率的因素了,频率越高的信号走线适当要细,因为寄生电容影响较大。 - 如果需要流过很大电流,则需要很宽的金属,一般工艺规则都会规定最小与最大的金属宽度,最大的金属宽度是要防止电流不均匀导致电迁移、趋肤效应以及发热不均匀的问题,当然还有热胀冷缩的问题。
此外,过宽的金属会使得中间部分略有下沉导致平坦化的问题,所以需要在过宽金属上打slot。注意,工艺规定的最大线宽不会直接写出来,而是通过slot的规则隐含其中。比如规定很宽的金属在里面超过多少间距要打slot,这里规定的间距其实就是最大的金属线宽,另外有些工艺规则会规定不同层的金属有不同的最大宽度。
Metal 线宽如何选择的更多相关文章
- [iOS UI进阶 - 4.0] 涂鸦app Demo
A.需求 1.超简易画图,只有一种画笔 2.清屏功能 3.回退功能 4.保存功能 5.使用了cocos2D code source: https://github.com/hellovoidwor ...
- 如何利用Visio设计一个系统的结构图
首先建立一个空的vison列表 添加图形和连接线 托选一个矩形块到操作台上,并进行底色填充 选择有向线段1拖到矩形模块上,此时有向线段1会自动吸附到矩形的中点处. 此时按下图操作即可取消,自动吸附 托 ...
- iOS:quartz2D绘图小项目(涂鸦画板)
介绍:学了quartz2D的绘图知识后,我根据它的一些功能制作了一个小项目:涂鸦画板. 功能:绘制各种图形,还可以选取相册上的照片做涂鸦,然后保存到相册中.其中,还包括功能有:颜色的选取.线宽的选取. ...
- layout焊盘过孔大小的设计标准
PCB设计前准备 1.准确无误的原理图.包括完整的原理图文件和网表,带有元件编码的正式的BOM.原理图中所有器件的PCB封装(对于封装库中没有的元件,硬件工程师应提供datasheet或者实物,并指定 ...
- Altium Designer 18 画keepout层与将keepout层转换成Mechanical1层的方法
画keepout的方法 先选中Keepout层:然后 右键->Place->Keepout->然后选择要画圆还是线 Keepout层一般只用来辅助Layout,不能作为PCB的外形结 ...
- NFC芯片选型及基本电路框架
RFID作为一项专业度较高的技术,在一些公司,可能还会专门招聘专业的RFID工程师.本篇阐述的涉及到的只是基本选型设计.电路框架,关于RFID天线调试.低功耗检卡调试等,后续再其他篇章会继续更新! N ...
- Pads怎么设置某一网络的线宽
在利用pads工具进行layout时,由于某一条网络可能会有很多条走线,而走线的宽度也相同,如果一条条设置,会很麻烦,所以pads中可以直接设置某一网络的线宽,避免繁琐的工作. 如下所示同一网络的走线 ...
- [Unity3D]Unity3D游戏开发之在3D场景中选择物体并显示轮廓效果
大家好,我是秦元培,欢迎大家关注我的博客,我的博客地址是blog.csdn.net/qinyuanpei. 在<仙剑奇侠传>.<古剑奇谭>等游戏中,常常须要玩家在一个3D场景中 ...
- iOS开发——Metal教程
Metal Swift教程 学习使用苹果GPU加速3D绘图的新API:Metal! 在iOS 8里,苹果发布了一个新的接口叫做Metal,它是一个支持GPU加速3D绘图的API. Meta ...
随机推荐
- Netty 源码解析(五): Netty 的线程池分析
今天是猿灯塔“365篇原创计划”第五篇. 接下来的时间灯塔君持续更新Netty系列一共九篇 Netty 源码解析(一): 开始 Netty 源码解析(二): Netty 的 Channel Netty ...
- css div如何隐藏?
在我们平时布局网站的时候,想要把div进行隐藏,但是很多人不知道css控制div显示隐藏?下面我们来讲解一下css如何让div隐藏. 1.使用display:none来隐藏div 我们可以使用disp ...
- python入门008
目录 一.for循环 作用:for循环是因为在循环取值(即遍历值)时for循环比while循环的使用更为简洁 1.for循环语法: 2.应用案例: 注意:break 与 continue也可以用于fo ...
- Creator填色游戏的一种实现方案
前言 先上一个辛苦弄出来的gif效果.写公众号时间不长,很多技巧还在慢慢跟小伙伴学习.可关注公众号,回复"绘图"或者"填色"都可获得demo的git地址.请使用 ...
- kubernetes系列(十三) - 存储之Volume
1. Volume简介 1.1 k8s的volume和docker的volume区别 1.2 kubernetes支持的volume类型 2. 重点的volume类型 2.1 emptyDir 2.1 ...
- day40 线程
目录 一.开启线程的两种方式 二.用进程和线程分别实现tcp 三.线程对象实现join方法 四.同一个进程下的多个线程数据是共享的 五.线程对象属性及其他方法 六.守护线程 七.线程互斥锁 八.GIL ...
- day31 反射,内置方法,元类
目录 一.反射 1 什么是反射 2 如何实现反射 二.内置方法 1 什么是内置方法 2 为什么要用内置方法 3 如何使用内置方法 3.1 str 3.2 del 三.元类 1 什么是元类 2 clas ...
- day16 函数对象与闭包函数
目录 一.函数对象 1.1函数可以被引用 1.2函数可以作为容器类型的元素 1.3函数可以作为参数传入另外一个函数 1.4函数的返回值可以是一个函数 二.闭包函数 1 什么是闭包函数 2 闭包函数的用 ...
- 通过Windows Visual Studio远程调试WSL2中的.NET Core Linux应用程序
最近两天在Linux中调试.NET Core应用程序,同时我发现在Linux中调试.NET Core应用程序并不容易.一直习惯在Visual Studio中进行编码和调试.现在我想的是可以简单快速的测 ...
- numpy基础用法学习
numpy get started 导入numpy库,并查看numpy版本 import numpy as np np.__version__ '1.14.0' 一.创建ndarray 1. 使用np ...