0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

IC后端概述(上)

ruikundianzi 来源:IP与SoC设计 2023-08-28 16:08 次阅读

本节开始简单介绍后端流程。后面会以实际例程说明后端的基本操作。

简单来说后端就是将RTL变为GDS版图,再交由晶圆厂(TSMC台积电和SMIC中芯国际)生产制造。大多数IC设计公司都是fabless公司,做到GDS这一步就OK。

df02636c-4578-11ee-a2ef-92fbcf53809c.png

GDS:Geometry Data Standard。它是描述电路版图的一种格式:包括晶体管大小,数量,物理位置和尺寸信息,连接线的物理尺寸和位置信息等等。晶体管+连接线组成庞大的电路逻辑。一般GDS可通过calibre,virtuoso,laker等查看。

df424900-4578-11ee-a2ef-92fbcf53809c.png

GDS交由晶圆厂后,在一片wafer上切割成多个小块,每块为一个Die,就是芯片的最小核心。

df85240a-4578-11ee-a2ef-92fbcf53809c.png

真实的芯片结构如下图所示。最底层是晶体管结构,晶体管接口和连接线的接触部分叫Contact。Contact上面是Metal金属层,金属层就是连接线,密密麻麻的晶体管很多,因此连线分了好几层才能走通,一层的连接线要穿到其它层就需要打过孔(Via),就像搭积木一样实现整个电路。每层连线之间都插有Isolator隔离。

dfd87a6a-4578-11ee-a2ef-92fbcf53809c.png

至于电路的具体制作过程如下所示。特殊频谱的光可以蚀刻电路,通过掩膜(mask),照射在wafer上,wafer涂有光刻胶,被照射的地方被腐蚀,剩下的部分形成电路。

e0068dc4-4578-11ee-a2ef-92fbcf53809c.png

流片成本很高,绝大部分是Mask(掩膜)的费用,Die面积XMask数就是主要的流片成本。

e06fa822-4578-11ee-a2ef-92fbcf53809c.png

从RTL到GDS版图,要遵守以下要求,符合要求的GDS才能拿去流片

e0de2d42-4578-11ee-a2ef-92fbcf53809c.png

后端第一步是将RTL+SDC约束转换为网表,该步骤通过综合实现。通常工具会先将RTL转换为GTECH格式,然后再将GTECH转换为工艺库中的标准单元。整体来看是分两步走。转换为门级网表的过程中,综合工具会对RTL进行修改和优化,这些修改记录保存在svf文件。svf文件在后面的FM形式验证中会被使用。转换后的Netlist要满足设置的约束(包括时序,面积,功耗)。此外逻辑综合要满足sdc约束下的setup timing,不需要理会hold timing。常用的工具有synopsys的Design Compiler和cadence的RTL Compiler。逻辑综合涉及时序问题,延迟计算使用线负载模型(RC寄生参数)因为综合还没有涉及到布局布线,因此timing通常是不准的。下图给出了delay延迟的计算。

e10ae8a0-4578-11ee-a2ef-92fbcf53809c.png

e1300e1e-4578-11ee-a2ef-92fbcf53809c.png

线延迟的计算通过长度衡量,长度越长RC值越大,扇出能力越弱。综合工具吐出Netlist网表后,需要进行FM形式验证,比对RTL和网表在功能上是否等价,常用的工具有synopsys的formality(fm)和Cadence的Conforml(lec)

e187481e-4578-11ee-a2ef-92fbcf53809c.png

如果FM通过了,那么下一步进行物理实现:从Netlist到GDS。通常需要经过以下步骤:

e1a15f56-4578-11ee-a2ef-92fbcf53809c.png

综合之后网表和约束已经有了,下一步进行ICC布局布线。Design Setup & In步骤中读入相关的网表、SDC和所需的工艺库文件。Floorplan步骤设置尺寸大小,摆放port位置,设置物理约束。Placement步骤中由工具自动摆放stdcel,进行时序、功耗、面积优化。Clock Tree Synthesis构建时钟树,这之前时钟都是假设为理想的,从clock port到reg/CK的延时都为0。对于时序分析而言,时钟树长出来之前所有的Timing问题其实都不准的,hold无需关注,setup需留有余量,因为布局布线的影响,时序会再次变化。Routing步骤中将所有net用物理连接线实现。Chip Finish步骤中为提高良率和解决物理规则违规对芯片做一些特殊处理。Write Design Out将所需的文件导出。

e1e48a38-4578-11ee-a2ef-92fbcf53809c.png

上图中给出ICC执行所需的两类文件:

1、一类是DC综合时的文件,包括library的db文件、sdc约束文件、综合后的网表文件;

2、一类是物理数据文件,包括library中db文件对应的Milkyway文件,技术文件(abc_6m.tf),RC模型文件(TLU+)用于提取寄生参数计算线延迟。

e213e15c-4578-11ee-a2ef-92fbcf53809c.png

这里我们首先说下物理库,ICC中所有物理库都以Milkway的格式存在包括stdcell、memory等物理库,也包括设计本身。以stdcell为例,一般包含三类:CEL、FRAM和LM。其中CEL和FRAM是View信息,CEL包括所有的物理信息,FRAM只包含pin的位置和形状以及routing blocage。PnR过程中,ICC只会把FRAM View读进memory,CEL View数据量太大,CEL View只在最后写GDS时用。Routing blockage是绕线阻碍物,就是给某些金属加上blockage属性,让工具走线时不通过该区域,避免route时把连线伸进去,造成短路;

e23ec106-4578-11ee-a2ef-92fbcf53809c.png

上图左侧为INV的CEL View,右侧为INV的FRAM View。从图中可看出FRAM中信息量确实很少。

e2b7f6fc-4578-11ee-a2ef-92fbcf53809c.png

一个FRAM View中包含Pin的方向、位于哪一层、形状。左下角是cell的参考点,坐标为(0,0)自动布局时会被使用。还有中间的Blockage区域(避免走线)。通常一个cell放在Row中的一个site上,cell的高度和Row的高度是相同的,这些都在tf文件中有定义。VDD位于顶层,GND位于最下面,这些和row的线对齐。

tf技术文件包括以下信息:

1、layer/via的数量和名字

2、每层layer的物理和电参数

3、每层layer的设计规则(最小线宽,线间距)

4、每个cell的单位和精度

5、每层的layer的显示颜色和模式

e2d6e80a-4578-11ee-a2ef-92fbcf53809c.png

技术文件内容如上图所示,里面定义了很多物理参数。

e312cc08-4578-11ee-a2ef-92fbcf53809c.png

至于tlu+文件用于对线负载模型建模,ICC的RC估算比DC精确的多,已经可以表达真实的线延迟。后端工具基于此可计算wire的寄生参数:包括电阻电容耦合电容。


在ICC处理的第一步中就是创建milkway_lib,它会创建名为oc8051_mwLIB文件夹。并将技术文件和mw文件导入其中。

e355b3d8-4578-11ee-a2ef-92fbcf53809c.png

接下来读入网表文件和约束文件,同时保存CEL View数据

e3792b42-4578-11ee-a2ef-92fbcf53809c.png

e39d5ca6-4578-11ee-a2ef-92fbcf53809c.png

此时原有文件夹下会新建CEL文件,并将mw数据保存为init_design库文件。在Design Setup & In阶段,读入所有文件后,此时并没有floorplan操作,所有cell堆积在左下角。

floorplan步骤:先摆放大的mcro cell,然后摆放stdcell,这期间需要固定IO位置。对于最底层晶体管的供电而言,M1或M2与Row平行的会放置metal,依次与cell的VDD和VSS相连,在M6或M7放置供电网,高层次的layer通过via与底层次的Layer相连,从而搭建整体的电源系统。这里需要说明一点,如果M1是横向的,那么M2必须是纵向的,以此减少线干扰,相隔两层的metal必须正交,不能平行(与硬件PCB多层板布线很相似)。

e3b923aa-4578-11ee-a2ef-92fbcf53809c.png

floorplan本质是包含三方面:PPA(功耗性能面积),这三方面需要折中处理。这之后就到了Placement阶段,工具会自动将每个cell放入site中。

在Route之前,ICC做place_opt进行优化时用Virtual Route估计连接线的长度和形状,以此根据TLU+模型估计RC参数。事实上,在后面的CTS阶段,由于没有route,所以也通过同样的方法估计RCPlacement阶段,需要满足sdc约束下的setup timing,所以完成place后,要分析Timing。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • IC设计
    +关注

    关注

    37

    文章

    1265

    浏览量

    102966
  • 晶体管
    +关注

    关注

    77

    文章

    9059

    浏览量

    135246
  • 晶圆厂
    +关注

    关注

    7

    文章

    522

    浏览量

    37391

原文标题:IC后端概述(上)

文章出处:【微信号:IP与SoC设计,微信公众号:IP与SoC设计】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    IC后端概述(下)

    本节介绍后端处理的剩余部分,上节我们讲到floorplan和placement。后面就到了CTS阶段。
    的头像 发表于 08-31 14:31 1744次阅读
    <b class='flag-5'>IC</b><b class='flag-5'>后端</b><b class='flag-5'>概述</b>(下)

    IC前端和后端设计的区别

    可以通过电路设计来实现你的想法。可以这样说,那时你就是一个科学家。有人这样认为:一个好的前端IC设计师不应该叫设计师而应该叫科学家。后端:就是将你设计的电路制造出来,要在工艺实现你的想法。完全同意斑竹
    发表于 12-19 16:01

    数字IC后端(CAD)

    IC流程。任职资格:1、 微电子或物理相关专业,本科以上学历;2、 1-2年相关工作经验;3、 拥有扎实的硬件电路基础知识;4、 熟练掌握多种EDA Tools;5、 掌握Verilog、TCL、Perl、C语言;6、 具有后端APR经验。
    发表于 04-08 17:23

    ADM1186 OUT1~OUT4可以直接去控制后端的Power IC Enable Pin吗?

    IC 然后再输出到後端的Power IC Enable Pin (Figure 1),如果我今天有空间的问题我可以直接把ADM1186 OUT1~OUT4直接去控制我后端的Powe
    发表于 11-07 09:10

    开关电源后端集成LM358转灯IC

    开关电源后端集成LM358转灯IC资料来自网络
    发表于 07-02 21:48

    数字IC后端设计介绍,写给哪些想转IC后端的人!

    设计(自动布局布线-APR)。  数字IC后端设计是指将前端设计产生的门级网表通过EDA设计工具进行布局布线和进行物理验证并最终产生供制造用的GDSII数据的过程。其主要工作职责有:芯片物理结构分析、逻辑分析、建立
    发表于 12-29 11:53

    数字后端设计工程师主要干什么?

    数字后端,顾名思义,它处于数字IC设计流程的后端,属于数字IC设计类岗位的一种。在IC设计中,数字后端
    发表于 01-13 06:31

    后端集成电路SAA7158电子资料

    概述:SAA7158是飞利浦半导体(NXP Semiconductors)出品的一款后端集成电路(Back END IC),其主要设计用于与8051型CPU微处理器,系统支持数字Y/U/V总线选择不同的视频信号.
    发表于 04-08 07:59

    数字IC后端设计电源规划的学习资料分享

    数字IC后端设计电源规划的学习
    发表于 12-28 06:17

    后端系统,后端系统是什么意思

    后端系统,后端系统是什么意思 “后端系统”从宽泛的角度上讲是指向用户提供数据的服务器、超级服务器、群集系统、中程系统以及
    发表于 04-06 17:21 3632次阅读

    IC前端设计(逻辑设计)和后端设计(物理设计)的详细解析

    IC前端设计(逻辑设计)和后端设计(物理设计)的区分:以设计是否与工艺有关来区分二者;从设计程度上来讲,前端设计的结果就是得到了芯片的门级网表电路。
    的头像 发表于 12-25 16:08 3.2w次阅读
    <b class='flag-5'>IC</b>前端设计(逻辑设计)和<b class='flag-5'>后端</b>设计(物理设计)的详细解析

    IC设计前后端流程与EDA工具介绍

    本文首先介绍了ic设计的方法,其次介绍了IC设计前段设计的主要流程及工具,最后介绍了IC设计后端设计的主要流程及工具。
    发表于 04-19 18:04 1.2w次阅读

    浅谈数字后端工程师的工作

    数字后端,顾名思义,它处于数字IC设计流程的后端,属于数字IC设计类岗位的一种。 在IC设计中,数字后端
    的头像 发表于 02-26 16:06 1.3w次阅读

    数字后端——电源规划

    数字IC后端设计电源规划的学习
    发表于 01-05 14:54 13次下载
    数字<b class='flag-5'>后端</b>——电源规划

    ic设计前端到后端的流程 ic设计的前端和后端的区别

    IC(Integrated Circuit)设计涉及两个主要的阶段:前端设计和后端设计。它们在IC设计流程中扮演着不同的角色和职责,具有以下区别
    的头像 发表于 08-15 14:49 2287次阅读