欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载
     

    专用集成电路设计实践(西电版)第5章 版图设计.ppt

    • 资源ID:3097005       资源大小:10.62MB        全文页数:243页
    • 资源格式: PPT        下载积分:20
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要20
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    专用集成电路设计实践(西电版)第5章 版图设计.ppt

    第5章 版图设计,5.1 版图设计软件使用简介 5.2 版图设计 5.3 版图验证 5.4 版图寄生参数的提取与后仿真,5.1 版图设计软件使用简介 5.1.1 LEdit版图设计软件 LEdit是Tanner公司出品的一款针对版图设计的应用软件,它允许生成和修改集成电路掩膜版上的几何图形。鼠标接口允许用户执行一般图形操作,既可使用鼠标访问下拉菜单,也可以使用键盘来调用LEdit命令。,1.简单介绍 1)鼠标的使用LEdit推荐使用三键鼠标,如果使用两键鼠标,则中键的功能由按下Alt键的同时按下左键来实现。 2)屏幕显示 空格键用于屏幕刷新,而其他键和鼠标任一键可中断屏幕刷新;、用于显示窗口的上、下、左、右移动;“”用于放大屏幕中的内容,而“”用于缩小屏幕中的内容。 3)调整网格点 可通过SetupDesignGrid来调节网格宽度,通常设一个网格为1m。,2.基本命令 1)文件操作命令(File) (1)New:打开一个新的设计文件,单键命令为Ctrl+N。 (2)Open:打开一个已存在的磁盘文件,此文件的格式必须为TDB、CIF或GDS,单键命令为Ctrl+O。 (3)Save:将当前设计保存,单键命令为Ctrl+S。 (4)Close:关闭当前打开着的LEdit设计,单键命令为Ctrl+W。 (5)Quit:退出LEdit,单键命令为Ctrl+Q。,2)编辑命令(Edit) (1)Undo:取消以前的编辑命令,单键命令为Ctrl+Z。 (2)Cut:将当前选中的目标剪切下来,放入缓冲区paste中,单键命令为Ctrl+X。 (3)Copy:将当前选中的目标复制到缓冲区paste中,单键命令为Ctrl+C。 (4)Paste:将缓冲区paste中的内容恢复到屏幕中,单键命令为Ctrl+V。 (5)Clear:删除当前所选中的目标,与Cut的区别是目标并不拷入缓冲区paste中,单键命令为Ctrl+B。 (6)Duplicate:为当前的所选目标产生一个副本,单键命令为Ctrl+D。 (7)SelectAll:在有效空间中选中所有目标,单键命令为Ctrl+A。,3.设计规则检查DRC 1)DRC的设置 设计规则检查可用Tools的下拉菜单中的DRCSetup命令项进行设置(或点击界面左上方第三个小图标。可以根据不同的设计规则进行调节。 2)运行DRC 完成布线后,应对版图作设计规则检查,其方法是点击Tools的下拉菜单中的运行DRC.命令项(或点击界面左上方第一个小图标,这时就会出现一个确定是否要将错误信息存入一个文件的对话框,点确定按钮后即可得到相关信息。,4.举例 1)模拟电路 如图51所示为一基本差动对电路,输入为UINA和UINB,单端输出为UOUT,Ub1为PMOS管提供电流偏置信号,从而为差动对提供电流源负载。Ub2为最下方的NMOS管提供电流偏置信号,从而为差动对提供恒定的尾电流源。,图51 以PMOS电流源为负载的差动对,如果采用CMOS工艺,则版图层次依次为:N阱确定有源区多晶(MOS管的栅)P+扩散N+扩散引线孔刻蚀金属连线。 其详细步骤如下(工艺设计选择规则): (1)在File下拉菜单中点击New,出现如图52所示的对话框,在File中选择Layout,在CopyTDBsetupfrom中选择已存在的版图文件,点击OK按钮后就会出现一个与选择的版图文件对应的设计界面。,图52 版图文件的选择,(2)在屏幕左侧的版图层次框中选择Nwell,点击BOX快捷键,在界面的相应位置画出一个矩形代表N阱。 (3)在屏幕左侧的版图层次框中选择Active,在N阱中画两个矩形有源区,准备作PMOS管,在N阱外大于5处画三个有源区,准备作NMOS管,有源区的最小距离为3。 (4)在屏幕左侧的版图层次框中选择Poly,在所有有源区中间画一个细的长方形,准备作MOS管的栅,最小宽度为2,栅在有源区的最小伸展为2。 (5)在屏幕左侧的版图层次框中选择PSelect,在N阱中覆盖两个有源区,与有源区的最小间距为2,在阱外也画一块P扩散区,作NMOS管的衬底。,(6)在屏幕左侧的版图层次框中选择NSelect,在阱外覆盖所有NMOS的有源区,并且在阱外相应位置画一块N扩散区,作PMOS管的衬底。 (7)在屏幕左侧的版图层次框中选择PolyContact,在栅上打接触孔,孔的边长为2;在屏幕左侧的版图层次框中选择ActiveContact,在有源区上打接触孔,孔的边长也为2,孔间距为2;在屏幕左侧的版图层次框中选择OriginLayer,在衬底上打接触孔,孔的边长都是2; (8)在屏幕左侧的版图层次框中选择Metal1,把相应的接触孔连接起来,点击Port快捷键写出输入/输出信号线名。,图53 基于CMOS的差动对版图,2)数字电路 (1)图54所示为一个非门电路。其版图工艺及详细步骤同模拟电路的设计。 完成后的非门版图如图55所示。,图54 非门电路,图55 非门的版图,(2)一位半加器的输入、输出信号的逻辑关系如下:,SUMAB,CARRY=AB,图56 一位半加器的逻辑电路图,图57 一位半加器的版图,设计完成后的版图如图57所示。注意: 画版图时,一定要注意版图层次和工艺几何设计规则。例如:有源区在画多晶层前画出;引线接触孔边长要小,但要大于工艺所要求的最小边长(在规则中为2)。 移动元件用Alt+鼠标左键来实现。 各层的默认习惯颜色分别为: 多晶红色 有源区草绿色 接触孔黑色 N阱土黄色(带网格) P扩散(PSelect)棕红色(带网格) N扩散(NSelect)墨绿色(带网格) 金属连线蓝色,常用版图设计规则有微米规则与规则:前者是以微米为尺度表示版图最小允许值的大小,后者是以为基本单位的几何设计规则,它将版图规定尺寸均取为的整数倍。,表51 规则工艺设计参数,在使用LEdit软件的过程中存在几个突出的概念性误区,下面分三个方面来说明: 版图和工艺之间的关系。有部分初学者认为版图设计就是用几个颜色画一些简单图形,其实在绘制平面版图时,要联系版图在工艺流程中的物理实现过程。图58(a)所示为同一个NPN晶体管版图和工艺剖面图。直观上看这两种表现形式相差甚远,其实它们是同一个器件的两种不同表现形式,存在一一对应的关系。半导体器件是根据版图的设计要求和规则,通过工艺流程分多道工序来达到物理实现的。所以在学习过程中,读者首先要弄明白平面版图和工艺剖面图之间各物理位置上的对应关系。在LEdit软件中各图层的颜色没有实际的物理意义,主要用于方便区分半导体材料的版图层次。建立起这样的基本概念后,才能在集成电路的制造过程中对版图和工艺之间的关系有一个大体的了解。,图58 一个NPN晶体管的版图和工艺剖面图 (a)NPN晶体管版图;(b)NPN工艺剖面图,电路图和版图与生产线之间的关系。在解决了版图和工艺之间的关系后,还有一个重要的概念需要建立,那就是电路图和版图之间的一一对应关系。要学习版图的设计规则,在版图设计规则允许的范围内,要将版图与电路单元一一对应。同时,绘制的版图还要符合工艺生产线的要求,例如0.25m和0.18m工艺线对版图技术的要求是完全不同的概念,用0.18m工艺线设计的版图,在0.25m的工艺线上根本不能使用。这就是要求读者建立的另一个概念,版图是将电路图这一工程语言“翻译”成可以具体指导工艺生产线上生产操作的电路图,完成半导体器件生产的版图工程语言。图59所示为NMOS简单非门版图与其等效电路图。,图59 NMOS简单非门版图与其等效电路图 (a)NMOS简单非门版图;(b)NMOS等效电路图,布局、布线。这阶段经常会遇到管脚线无法引出的问题,即使完成布局,走线也极不合理,这就是所谓的版图设计问题。版图设计不但涵盖电路知识、工艺知识,还涉及丰富的器件性能知识,所以要实现合理的布局、布线就需要反复练习,多看多实践,扎扎实实地掌握版图上的每一个层次和剖面图的对应关系,并理解版图中各层次先后顺序的意义。如果合理布线,可以节省大量的芯片面积。,在学习过程中,读者要按照工艺顺序来进行版图绘制,每画一层都要明白图层的物理含义,这样就可避免漏层、掉层的现象。虽然平面版图的绘制并无先后顺序的要求,但是在工艺实现过程中层次的先后顺序是有物理意义的。例如通过版图制作了7张光刻版,那么这7张版在工艺线上使用的先后顺序是绝对不能错的,必须按照隔离、掺杂(多次)、金属、钝化、封装这样一个工艺流程来进行生产,否则生产出来的肯定是废品。掌握了工艺流程和工艺要求后,读者应先绘制一些简单的单元图,来加深理解电路图版图工艺流程剖面图。只有掌握了这样一个设计过程和相互的对应关系,才能对集成电路设计有更深的了解。,5.1.2 Virtuoso版图设计软件 VirtuosoLayoutEditor是Cadence公司出品的一款针对版图设计的应用软件,本节介绍利用VirtuosoLayoutEditor(以下简称Le)创建全定制版图的过程,以及VirtuosoLe的一些使用说明。这里将以反相器的版图设计为例来说明如何绘制全定制版图,该版图设计过程采用chartered(csm25rf)库标准CMOS工艺库。,具体内容包括: (1)如何打开VirtuosoLe及它的一些设置。 (2)使用LSW窗口。 (3)使用Le创建一个版图。,登录以后,首先创建自己的工作目录,比如Work、cdWork。从csm25rf库所在文件夹下拷贝display.drf文件到自己的工作目录下,否则在LSW窗口无法显示绘制版图需要的各个图层。从/CDS_ROOT/tools/dfII/cdsuser目录下拷贝.cdsinit文件到自己的目录下,该文件是Cadence自带的软件相关设置的文件,里面有字体的设置、Bindkey设置等。当然也可以单靠鼠标来进行操作,但VirtuosoLe窗口有常用命令的工具栏,熟练运用快捷键比鼠标要快很多。,1.开始设计过程 假如现在有如图510所示的逻辑电路图,技术库为csm25rf,P管和N管采用相同的尺寸,L=600nm,W=3m。 1)运行VirtuosoLe 要打开VirtuosoLe,首先要打开CIW窗口。在Shell命令行下输入icfb&后进入CIW窗口,字符&使得Cadence在后台工作(即可以在Shell命令行下执行其他命令)。也可以在Shell提示符下输入其他的命令来打开CIW窗口,如图511所示(在这里也可以输入layout&或者layoutPlus&)。,图510 反相器逻辑图,图511 CIW窗口,图512 LibraryManager窗口,确保csm25rf、basic和analogLib这三个库都已经存在,如果不存在,需要手动添加它们。 小技巧:如果在LibraryManager中发现Library的字体颜色是红色的,就要把该Library删掉,否则会出现一些奇怪的问题。,2)建立自己的工作库 打开VirtuosoLe后,在CIW窗口中选择FileNewNewLibrary建立自己的工作库。在弹出的对话框的LibraryName栏中输入库的名字,比如xd008;在TechnologyFile选项框选择Attachtoanexistingtechfile,点击OK按钮,弹出AttachDesignLibrarytoTechnologyFile对话框,如图513所示。,图513 AttachDesignLibrarytoTechnologyFile对话框,在TechnologyLibrary选项卡中选择csm25rf,按下OK按钮,两个对话框消失。至此,已经建立了自己的工作库xd008,并且它与技术库csm25rf相关联。 在NewLibrary窗口的TechnologyFile选项框中,如果没有现成的技术库,只有相应的技术文件(techfile),那么可以先选择Compileanewtechfile来创建自己的技术库。如果该选项被选上,点击OK按钮后会弹出一个输入ASCII码文件(techfile)的对话框。在该对话框中输入技术文件的完整路径,点击OK按钮,如果没有错误,一个自己的技术库就生成了。,3)创建版图文件 在CIW窗口中选择FileNewNewCellview,打开创建新Cellview的对话框,如图514所示。在LibraryName栏选择xd008,在Tool栏选择Virtuoso,在CellName栏输入inv,然后点击OK按钮。这时会弹出三个窗口,其中一个是Le的窗口,一个是Le的说明窗口,另一个是LSW窗口。,图514 创建新Cellview的对话框,2.相关说明和设置 1)Le及LSW窗口相关说明 版图视窗(VirtuosoLe)打开后,掩膜版图(Le)窗口显现。该窗口由三部分组成:IconMenu、MenuBanner及StatusBanner。 IconMenu(图标菜单)缺省时位于版图图框的左边,列出了一些最常用的命令的图标。要查看图标所代表的指令,只需要将鼠标滑动到想要查看的图标上,图标下方即会显示出相应的指令。 MenuBanner(菜单栏)包含了编辑版图所需要的各项指令,并按相应的类别分组。几个常用的MenuBanner指令及相应的快捷键如表52所示。,表52 MenuBanner常用指令,2)LSW视图的功能 (1)可选择所编辑图形所在的层。 (2)可选择哪些层可供编辑。 (3)可选择哪些层可以看到。 只要在刚才运行icfb的目录中有正确的display.drf文件的拷贝,在LSW窗口就会显示出设计中需要的所有图层。为了简单起见,表53仅列出绘制这个版图所需的最少版图层次。,表53 版图层次说明,3)使用LSW窗口 在LSW窗口的图层栏点击一个图层,比如Metal1,则Metal1为当前图层,在Le窗口就可以画出该层的图形来。 如果只需要显示Metal1层,则先选择Metal1,然后在图层资源的上方选择NV,再用鼠标点击Le窗口,在键盘上按F键,则Le视图窗口就隐藏了其他的图层,这样可以只编辑该图层,而不受其他图层的影响。如果想再多显示另外一层,比如Contact,则用鼠标在LSW窗口点击Contact,然后用鼠标点击Le窗口,按下F键,则Contact层也显示出来了。利用同样的方法,可以显示更多的图层或者任意的一层或几层。当编辑完之后,要回到全部显示时,在LSW窗口选择AV,切换到Le窗口,按下F键,将显示全部图层。,在建立相应的版图的图形后,如果需要编辑新建的图形,可能会遇到这样一个问题:由于设计的版图比较复杂,多个图形叠加到一起,在选择Metal1的一个图形时,不小心选上了P管,而这时如果执行的命令是移动或者拉伸,就有可能造成先前管子的布局和位置的改变,如果是删除则可能会把管子删除掉,这会给设计带来很大的不便。在这种情况下可以通过LSW窗口来控制器件的可选性。在LSW窗口中比较靠上方处点击Show Objects,将其切换为ShowLayers,其中有两个选项inst和pin,如图515所示,默认都被选上,如果不想让器件为可选,则取消inst右边Sel选上标志,同样也可以取消pin的可选性。另外也可以控制哪些图层可以被编辑,方法类似于如何控制图层的显示,其中的选项为NS和AS,通过设置可以选择任意的图层来编辑。,图515 inst与pin选项,4)一些相关的设置 (1)在画版图的过程中出现错误是无法避免的。如果还没保存时发现有错误,却撤销不了,可能是因为没有修改UndoLevel值(默认为1,只能撤销一步操作),并且已经进行了很多步的操作。可以通过在VirtuosoLe窗口中运行DesignDisguardChange来返回到上次保存的状态,不过这个方法有时会浪费较长的工作时间。在CIW窗口中选择OptionsUserPreferences,在弹出的对话框中把UndoLevel改为最大10。在绘制版图的过程中,如果有错误操作,则在还没保存的情况下可以通过撤销命令(Undo)来撤销10步以内的操作。UserPreferences的设置窗口如图516所示。在CommandControls中把OptionsDisplayedWhenCommandsStart设置为on,则每执行一个命令,其相应的对话框就会出现。在这种情况下,就可以对命令的一些参数进行设置,也有利于更好地了解一些常用的命令。,图516 UserPreferences的设置窗口,(2)在Le菜单栏中,选择OptionDisplay(快捷键E)打开DisplayOptions对话框,如图517所示。 在DisplayLevels中把From0To0改为From0To23(或者其他的大于零的数)。该选项设置用来显示器件的深度,如果不改,将无法看到调用的器件的内部结构。在MinorSpacing中填入0.1,在MajorSpacing中填入0.5,在XSnapSpacing中填入0.01,在YSnapSpacing中填入0.01。这些设置有利于编辑时的图形对准,其值在需要的时候可以设置得更小。其他选项保持默认状态。,图517 DisplayOptions对话框,(3)选择OptionLayoutEditor(快捷键Shift+E),在LayoutEditorOptions对话框中取消其中的GravityOn选项,点击OK按钮。请务必保证GravityOn为off,如图518所示。,图518 GravityOn选项的设置,3.画MOS管的版图 若没有标准器件库,则需要自己画出PMOS和NMOS管的版图。这里新建一个名为PMOS的cell。 1)画出有源区 在LSW中点击Active(dg),注意这时LSW顶部显示Active字样,说明Active层为当前所选层次。然后点击IconMenu中的RectangleIcon,在VirtuosoEditing窗口中画一个宽为3.6m,长为6m的矩形。这里为了定标,必须使用标尺,点击MiscRuler即可得到。要清除标尺,只需点击MiscClearRuler。如果绘制时出错,则点击需要去除的部分,然后点击Delete Icon。,2)画栅 在LSW中,点击Poly(dg),画矩形,它与有源区的位置关系如图519所示。,图519 矩形与有源区的位置关系,3)画PMOS管 为了表明画的是PMOS管,必须在刚才所画图形的基础上添加一个PSelect层,如图520所示。这一层将覆盖整个有源区间距为0.6m。接着,还要在整个管子外围画上Nwell,它所覆盖的有源区间距为1.8m。,图520 添加PSelect层,4)衬底连接 PMOS的衬底(Nwell)必须连接到UDD。首先画一个1.2m×1.2m的Active矩形;然后在这个矩形的边上包围一层NSelect层(覆盖Active0.6m);最后将Nwell的矩形拉长。完成后如图521所示。 至此,一个PMOS的版图就大致完成了。绘制NMOS管的步骤和绘制PMOS管的基本相同(新建一个名为NMOS的cell)。 ,图521 衬底连接,4.画反相器 1)添加器件 现在添加反相器的P管和N管。在工具栏中选择AddInstance或者按快捷键I,弹出添加器件对话框(CreateInstance),如图522所示。按下Browse按钮,出现BrowseLibrary对话框。在Library中选择csm25rf,设Cell为pmos_tk(厚栅),View为layout。改变管子的栅长和宽:w=3m,l=600nm,如图522所示。然后在Le窗口中点击鼠标左键,添加一个P管。,图522 添加器件对话框,图523 P管和N管版图,2)添加矩形 在N管和P管之间需要用多晶硅来连接两个管子的栅,如图524所示。在LSW窗口中点击POLY2(在chartered库中利用poly2作为管子的栅),切换到Le窗口,利用鼠标点击工具栏中的下方倒数第二个按钮或者按下R键,放大到两个管子之间的地方,就可以开始画矩形了。选择的第一个点是P管栅的左下角,第二个点是N管栅的右上角,如图524所示,就用多晶硅把两个管子的栅连接到一起。 利用同样的方法在输出端用Metal1把两个管子连接起来,该软件的默认设置是重复命令,即在画完一个矩形后可以不执行任何其他命令而继续画更多的矩形,按Esc键可以取消当前命令。但一旦执行下一个命令后,前一个命令将自动取消。,图524 连接P管和N管的栅,3)添加多边形 在LSW窗口中选择Metal1作为当前图层,在Create菜单下选择Polygon或者按工具栏下方倒数第四个按钮(或按快捷键Shift+P)进入添加多边形状态。如果在先前UserPreferences对话框中选择了OptionsDisplayedWhenCommandsStart(见图516),则可以看到一个新建多边形的对话框,如图525所示。,图525 新建多边形对话框,4)添加电源连线 用鼠标多次点击形成多边形的多个顶点,就可以构成一个封闭的图像,如图526所示。,图526 添加电源线,5)添加地线 添加地线后得到如图527所示的粗略的版图,对其还需要编辑才能不出现错误。,图527 添加地线,6)编辑版图 通过拉伸可使得各个图形相互对准。在菜单栏选择EditStretch(或按快捷键S)或者按下工具栏的相应按钮,进入到拉伸状态。放大到要编辑的地方,选择要调整的边(不能把整个图形选上),拖动鼠标拉到合适的地方,如图528所示。注意:在这里执行拉伸命令的时候需保证当前没有选中器件或者图形。如果选中了图形,则相当于执行了移动命令。有一个小技巧:利用鼠标右键可以放大自己需要看的地方,方法是先用鼠标右键点中要放大的区域的右下角,按住并往左上角方向拖动,会有一个方形的边框表示选择的区域,如果看到该边框已经包围了需要放大的区域,放开鼠标右键,就放大了所选的区域。如果将鼠标从左上角往右下角拖动,则会起到缩小的作用。调整后的版图如图529所示。,图528 拉伸编辑,图529 调整后的版图,7)添加输入端 反相器的输入端应该为金属,所以要添加接触孔。在菜单栏中选择CreateContact(或按快捷键O),弹出添加接触孔的对话框,如图530所示。在ContactType选项选择M1_POLY2,点击Hide按钮,在Le视窗的适当位置点击添加接触孔,这样就得到一个漂亮的版图,如图531所示。设计完后将对版图进行验证,这部分内容见后续章节。,图530 添加接触孔对话框,图531 设计完成后的版图,5.2 版图设计 在产品开发过程中,有多种基于特定设计的设计流程,这里考虑一个通用概念上的流程。IC设计周期中各步骤的前后关系如图532所示,从中可以看到版图设计在芯片设计流程中所处的位置。 ·首先,市场部通常会详细规定需要开发的产品。 ·然后,规定设计的结构或者行为。电路设计工程师规定芯片的结构以满足市场和/或IDEA功能需求。,图532 IC设计流程图,·系统仿真由一组工程师完成。电路设计工程师会对将要集成在最终芯片中的各个单独模块进行定义和验证。这一步验证了上一步中规定的结构是否合理,并清楚地定义了需要进一步实现的可处理的模块。 ·电路设计组将完成所有的数字和模拟仿真,以验证电路的方案和门的连接,以及门的尺寸(为了满足时序规范)。电路设计组需要和版图设计组进行交流,版图设计组会使电路适合芯片的版图布局。, ·版图设计由版图设计工程师完成。他们的工作包括画出器件和互连线,对于所有的模块,利用电路设计组生成的电路图来实现晶体管、基底连接及互连(使用16层金属)等。可以大规模生产的最终设计是整个芯片的版图。 ·在第一块晶圆制造出来后,测试组就要开始尝试测试芯片。首先,他们将检查工艺参数是否在可以接受的误差范围内。下一步是使用工程测试仪来测试芯片,以便找出所有违规情况,并尝试现场解决这些问题。,图532只是一个概念上的流程。实际中,在通过不同的设计阶段时会有很多的反复设计和设计上的迭代。很多不同的因素会引起设计上的改变,包括很多来自于版图上的限制或者约束。 数字和模拟版图设计既有相同之处也有不同之处,它们的设计总原则为:既要充分利用硅片面积,又要在工艺条件允许的限度内尽可能提高成品率;版图面积(包括压焊点在内)尽可能小而接近方形,以减少每个电路的实际占用面积。生产实践表明,当芯片面积降低10%时,每个大圆片上的管芯成品率可以提高1525%。版图设计时所应遵循的一般原则是:,(1)隔离区的数目尽可能少。PN结的隔离框面积约为管芯面积的1/3,隔离区数目少,有利于减小芯片面积。集电极电位相同的晶体管,可以放在同一隔离区。二极管按晶体管原则处理。全部电阻可以放在同一隔离区内,但隔离区不宜太大,否则会造成漏电大、耐压低。为了走线方便,电阻也可以分别放在几个隔离区内。各压焊块(地压焊块除外)都放在隔离区内,以防止压焊时压穿SiO2,造成与衬底短路。管芯外围也要进行大面积隔离扩散,以减少输入端钳位二极管的串联电阻。,(2)注意防止各种寄生效应。隔离槽要接电路最负电位,电阻岛的外延层接最高电位。这是保证PN结隔离效果的必要条件,以使PN结隔离区始终处于反偏置状态。输入与输出端应尽可能远离,以防止发生不应有的影响。电阻等发热元件要放在芯片中央。芯片的温度分布要均匀。,(3)设计铝条时,希望铝条尽量短而宽。铝条本身也要引入串联电阻,因此也需计算铝条引入的串联电阻对线路的影响。铝条不能相交,在必须相交时,可让一条或几条铝条通过多发射极管的发射极区间或发射区与基区区间,也可从电阻上穿过,但不应跨过三次氧化层。必须采用“磷桥”穿接时,要计算“磷桥”引入的附加电阻对电路特性的影响。一般不允许“磷桥”加在地线上。应尽可能避免使用扩散条串穿接方式,因为扩散条不仅会带来附加电阻和寄生电容,同时还要占据一定的面积。在LSI中,当一层布线无法保证实现元件之间必要的连接时,普遍使用多层布线。铝条压焊点电极要有合理的分布,应符合引出脚排列。,(4)保证元件的对称性。参数要求一致的元件,应放在邻近的区域。几何结构尽可能对称,不能只考虑走线方便而破坏对称性。 (5)接地孔尽可能开大些。凡需接地的发射极、电阻等,不能只靠在隔离槽上开的接触孔接地,要尽可能让地线直接通过该处。接地线尽可能地沿隔离槽走线。接电源的引线应短而宽,接UDD的电源孔应尽可能开大些。集电极等扩磷孔应比其他接触孔大。 (6)铝条适当盖住接触孔(一般每边覆盖2m),在位置空的地方可多覆盖一些;走线太紧时,也可只覆盖一边。,(7)为了在减小版图面积的同时又使走线方便、布局合理,各电阻的形状可以灵活多样,小电阻可用隐埋电阻。各管电极的位置可以平放或立放。 (8)凡是可能,所设计的电路应留有适当的过载能力,并避免使用易损坏的元件。 (9)压焊块的数目以及排列顺序应该与外壳引出脚排列相符合,电极分布应均匀。,(10)确定光刻的基本尺寸。根据工艺水平和光刻精度定出图形及各个扩散间距的最小尺寸,其中最为关键的是发射极接触孔的尺寸和套刻间距。集成晶体管是由一系列相互套合的图形组成的,其中最小的图形尺寸是发射极接触孔的宽度,所以往往选用设计规则中的最小图形尺寸作为发射极接触孔,其他图形都是在此基础上考虑图形间的最小间距进行逐步套合、放大的。最小图形尺寸受到掩膜对中容差、扩散过程中的横向扩散、耗尽层扩展等多种因素的限制。,1.平面布局(Floorplanning) 在布局和布线工具中要用到的第一个软件称为平面布局工具。这个工具将在平面上画出功能区域,确定这些区域间的连接关系以及I/O压焊块的位置,并反馈有关平面布局在进行布线时的信息。平面布局工具从编译软件产生的网表文件中获取它所需要的连接关系和门的信息。,1)功能块的布局 通常,芯片将被划分成不同的功能区。例如,如果设计的是一个大的数字芯片,那么在芯片上可能会有微处理器单元(MPU), 也许有一个浮点单元(FPU),还可能有一个RAM模块和一个ROM模块。 每一个功能区放在哪里是由设计者而不是计算机来决定的。可以把微处理器所有的门放在左下角,把RAM所有的门放在右上角,如图533所示。当然,这样的布局有可能发生改变。,图533 芯片功能块布置,2)门的分组 一旦确定了功能区,要做的第一件事就是把每一模块中的门在一定程度上放在一起。例如,不希望FPU的门散布在ROM或RAM模块的各处。所有相关的门应当相互间就近放置。 平面布局工具可把相关的门放在一起,但每个门的确切位置在此时还无法确定,因为可能在以后的某个时候需要改变模块的位置。所以在目前确定大致的相邻位置就可以了。,3)模块级的连接关系 平面布局工具将布置芯片的输入和输出(I/O)单元。例如,若希望所有通往FPU的输入都靠近左上角的FPU模块,有些工具会自动把I/O单元放在合适的区域,如图534所示,而另一些工具将根据所确定的布局来反馈相应的图形信息。 平面布局工具还显示了模块之间必需的布线连接,例如它将显示FPU和RAM模块之间的连接。,图534 输入和输出各放置在适当单元模块附近,4)使用飞线 通常,平面布局工具会显示从每一个模块连至I/O压焊块和其他模块的所有导线。这些数不清的导线就是大多数设计工具提到的所谓飞线。 在计算机屏幕上按动鼠标选中、拖动和调整模块时,会看到所有这些导线的连接会随着光标同时移动。如果这些飞线变得交叉杂乱,那么电路就很难布线;而如果没有这些交叉的飞线,布线将会很容易,如图535所示。应该改变模块的平面布局,使飞线看上去尽可能干净整齐和容易布线。这可能需要重新安排整个功能区;或者把一个小模块移到另一边,并把它安排在两个大模块之间;或者把位于中间的一个模块放到边上,或是把一个外边的模块放到中间。 当最终得到一个布线简单、合适的模块分布图时,把该平面布局输出文件保存起来。,图535 飞线一定要布置整齐,5)时序检查 由于最终的平面布局输出文件说明了各个门的总体位置,平面布局工具就会知道所有导线的大致长度。对这些导线长度的估计是根据数字电路库中的实际尺寸做出的。 利用这些信息,平面布局工具可以输出一个包含有导线估计长度的文件,并送回数字电路模拟器中,通过进行一些模拟,来确定估计的线长对数字电路会有什么影响。必须检查由于长导线使电路信号减慢太多从而对电路时序产生的影响有多大。如果导线长度确实影响了电路的时序,那么电路设计者就需要根据平面布局修改其设计,此时需要修改网表。例如,可能在模块中放上一个强度更大的单元来驱动额外的导线电容。在设计者更好地安排了设计之后,就会发现这一设计不仅更容易布线,而且最终也会使芯片更好地工作。,如图536所示,经过几次这样的平面设计和时序检查的反复之后,模拟器的时序要求将得到满足。在确定了一个满意的设计后,就进入了一个新的阶段将器件固定到位。,图536 平面布局/时序验证的过程,2.布置 在确定了设计后,可以用一个布置工具把每一模块中所有的逻辑门固定在它们确切的位置上,然后按照一个精确的最终布线方案,利用布线工具把这些门连接起来。布置工具和布线工具是布线工具包中的两组程序。 布置软件首先选出一个模块开始工作,然后寻找与这一模块相关的部件。比如,它发现有5000个门与一个浮点单元相关,它可能会巡视一下这5000个门,然后看到网表中有25个门是连在一起的,所以尽可能把这些门放得近一些。接着,布置软件继续根据逻辑门的连接关系和平面布局工具的输出文件来安排它们的位置。,最初的布置方案可能需要修改很多次。每次布置改进一点,直到得到的布置容易布线为止。这个最终的布置大致上决定了最终的版图。 已有许多布置工具可以根据设计中信号的时序要求来确定门的布置。这种布置方法称为时序驱动版图设计,它已成为通用的方法。由这种方法生成的最终结果通常远比传统的方法好很多。 不仅是芯片中的门,所有的I/O驱动器也在此时布置。I/O驱动器是一些特殊的单元,它们将驱动输入信号,提供输出,并包括了ESD保护和测试电路。,3.标准网格 标准版图系统使每样东西都以一个标准网格作为对准的基础,实现自动布线并保证标准单元整体布置的可操作性。如果统一设计单元既注意与网格对准又遵循其他规则,就可以使用自动设计工具自由地支配布局和布线。 经典的布线器以网格为基础。一个网格式布线器要遵循两个约束条件:它的导线只能有几种固定的宽度并且只能放在预先确定坐标的网格上;必须遵循对准网格的规则,不能在网格式系统中进行随意设计。沿网格线布线限制了可能的布线方式,但它可以用自动工具来进行布线(如图537所示),并且能使这些工具尽其所能。一个网格式布线器完全依赖于这些网格进行工作。,图537 自动布线器以网格线为中心布线,4.网格式布线系统要求的库设计规则 在采用一个网格式布线器时,需要有一套规则来规范与版图设计相关的每一样东西。一般要根据这些规则来建立一个完整的单元库。每一个单元、每一个门,总之每一样东西都必须符合这些规则。 1)对齐输入和输出 必须以同样的方式使标准单元库中的所有部件都与网格相匹配。导线、单元、交点等所有的版图对象都必须服从如对齐和间距这样的一些规则,否则,就不能保证自动布线系统在DRC和LVS时没有问题。,2)高度固定,宽度可变 每一个门有多种不同尺寸的电源轨线,并且门的高度也各不相同,那么即使所有的门都对齐网格,布线也会非常混乱, 软件也很难运行。注意图538中这些小尺寸、中尺寸和大尺寸的反相器如何使电源线拐来拐去。因此,为了保持结构的统一,需迫使所有的门都必须服从固定高度设置。一个规定的固定单元高度控制着整个库。 采用高度固定的库有一个优点:如果把所有的逻辑门一个挨一个地摆放,那么电源轨线就很容易布线。事实上,可以让每一个单元与它相邻的一个单元恰好对接,这样就不必专门连接电源轨线了,因为它们已经连在了一起。,图538 不同高度的版图单元,对于数字版图,特别是标准单元版图,因为受布局布线工具的约束,单元高度固定、宽度可变是唯一可行的工作方式。这一方法可保证将所有这些单元互相并排放置,因而DRC不会出现问题。它在整个数字版图领域是非常通用的技术,所遇到的大多数库都是高度固定、宽度可变的。只要从按网格建立的库中找到所要的单元,然后让它们就位就可以了。 高度固定、宽度可变这一技术在模拟版图设计中也非常有用。人们甚至在设计全定制的模拟电路时也会用到它。例如,在设计中需要重复用许多尺寸相近的单元,那么也可以用这一方法使单元布局布线更容易一些。通过建立起一排排和一列列单元,使电源线和布线通道相邻接,可以像处理数字版图那样来处理它们。,3)半网格单元尺寸 把相邻的单元相互对接起来,无需导线就可以把电源轨线或N阱连接起来,正好形成了一条长带。然而,如果把相邻的单元对接,很可能会把相邻元件的内部部件也对接起来。这样做是不允许的,因为内部部件必须服从它们的最小间距规则。但如果内部器件离每一个单元的边缘足够远,那么就可以自由地把相邻的单元对接在一起了。 如果内部器件离每一个单元的边缘不够远,有一个非常方便而且最为有效的方法来解决这一问题。如图539所示,让所有内部导线都处于网格上,然后使相互对接单元的边沿落在两条网格线的中间,即处于半个网格的位置上。这样就保证了金属线相互间正好能保持所需要的最小间距。,图539 金属线落在网格上,单元边沿落在网格线的中间

    注意事项

    本文(专用集成电路设计实践(西电版)第5章 版图设计.ppt)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开