当前位置:首页 >> 计算机硬件及网络 >>

布局布线zy_图文

数字后端布局布线

西安电子科技大学

算法模型 c/matlab code

基于standcell的ASIC设计流程

RTL HDL vhdl/verilog

NETLIST verilog
Standcell library

综合工具根据基本单元库的功能-时序模型, 将行为级代码翻译成具体的电路实现结构

LAYOUT gds2

布局布线工具根据基本单元库的时序-几何模 型,将电路单元布局布线成为实际电路版图

对功能,时序,制造参数进行检查
TAPE-OUT

西安电子科技大学

当一个设计完成了DC综合,生成网表后,接下来的任务就是网表的物理实

现,即把网表转成layout。这个过程通常称为后端(backend)。

backend的主要任务:
1.将netlist实现成版图(APR) 2.证明所实现的版图满足时序要求、符合设计规则(DRC),layout 与netlist 一致(LVS)。 3.提取版图的延时信息,供前端做post-layout仿真。

西安电子科技大学

后端流程

西安电子科技大学

自 动 布 局 布 线 是 将 门 级 网 表 ( netlist ) 转 换 成 版 图
(layout),并对各个电路单元确定其几何形状、大小及位置, 同时要确定单元之间的连接关系。

?

?

方法有两种,一种是手工画版图实现,另一种是用自动布局 布线工具实现(Auto Place and Route,APR) VLSI设计的自动布局、布线必须借助EDA工具完成。

西安电子科技大学

目前业界广泛使用的APR(Auto Place And Route)工具有:
? ?

Synopsys公司的ICC Cadence公司的Encounter

西安电子科技大学

自动布局布线工具——ICC介绍
Astro是Synopsys公司开发的一种基于标准单元的版图自动生 成工具,通过调用标准单元库中的门单元进行布局布线完成 版图设计,其前身是Avanti公司(2002年被Synopsys公司收 购)的Apollo。 2007年以后改名叫ICC.

西安电子科技大学

SOC Encounter 简介
SOC Encounter是cadence数字集成电路设计平台的一个集成的 后端工具,功能相当强大,可以从综合,一直做到生成GDSII文件!

当然里面集成了很多的工具,如RC,Nanoroute,FIRE&ICE QXC等。
支持超过5000万门180纳米以下工艺的层次化设计。

西安电子科技大学

自动布局布线流程
数据准备和输入 自动 布局 布线 过程

门级网表 工艺库 参考库 设计约束

布局规划 预布线布局 时钟树 布线 DRC & LVS 版图数据输出

西安电子科技大学

自动布局布线流程
?

1、数据准备:1. netlist

2. Timing constraint

3. library file

?

2、整体布局,规定了芯片的大致面积和管脚位置以及宏单元位置等

粗略的信息;

?

3、读入时序约束文件,设置好timing setup菜单,为后面进行时序驱

动的布局布线做准备;

?

4、详细布局,力求使后面布线能顺利满足布线布通率100%的要求和 时序的要求;

西安电子科技大学

自动布局布线流程
?

5、时钟树综合,为了降低clock skew而产生由许多buffer单元组成的

“时钟树”;

?

6、布线,先对电源线和时钟信号布线,然后对信号线布线,目标是

最大程度地满足时序;

?

7、为满足design rule从而foundry能成功制造出该芯片而做的修补工 作,如填充一些dummy等。

西安电子科技大学

① 数据准备和输入
?

网表(netlist):
?

布局布线用网表文件一般由Design Compiler生成的,以

标准逻辑单元表示的逻辑网络(EDIF网表)

西安电子科技大学

参考库
?

参考库包括标准单元(STD)库、输入输出单元(I/O)库和IP库。前 两种由Foundary提供,IP库可以由Foundary提供,也可以用户自己建 立。 在某些项目中,可能需要用户自定义RAM IP模块,此时就会涉及到使 用Memory Compiler产生GDSII文件,以建立IP库以作为参考库代入 Astro设计流程。

?

西安电子科技大学

标准逻辑单元库(STD)
? ?

标准逻辑单元库的库单元种类繁多,形式多样,以满足不同阶段的ASIC设计的需 求 由EDA/Foundary厂商合作提供;如:Artisan Components的TSMC0.25um CMOS标 准单元库和输入/输出单元库)

?

标准单元库
?

按电路种类划分 ? 核心逻辑单元库 ? I/O单元 ? 硬核模块生成器

?

按设计阶段划分 ? 逻辑综合库 ? 单元的仿真库 ? 物理版图库 ? 延时模型库

西安电子科技大学

数据输入步骤:
?

1、创建库,库的名称最好就是前端输入的网表文件的名称,如 H053A,需要提供技术文件,如smic18_6lm.tf,注意把大小写设置为 敏感; 命令是cmCreateLib

?

2、添加参考库,主要包括foundry提供的(也可能是第三家公司帮忙 foundry做的库,如Artisan的库)标准单元库和IO库,以及前端定制

的宏单元库,如cache,RAM,ROM,PLL等;添加完毕之后显示参考
库以确认; 命令是cmRefLib和cmShowRefLib

西安电子科技大学

数据输入步骤:
?

3、读入前端网表,注意拿到网表后往里面手动添加电源PAD和 CORNER单元,读入的应该是经过这步添加的网表; 命令是 auVerilogIn

?

4、展开网表,因为一般读入的是层次化的网表,需要flatten; 命令 是cmCmdExpand

?

5、打开第一步创建的库并且新创建一个CELL,名字也最好是跟网表 文件名称一致;命令是geOpenLib和geCreateCell

西安电子科技大学

数据输入步骤:
?

6、绑定,就是把展开的网表绑定到刚创建的CELL中,这样,这个 CELL就包含了网表中的所有元件; 命令是axgBindNetlist

?

7、保存网表的层次化信息到Astro的数据库中;这样布局布线结束后
能输出层次化的网表进行后仿。注意,要先initial hierarchy preservation,然后mark module instances preserved;

?

8、保存CELL,并另存一份备份。命令是 (dbSaveCell (geGetEditCell)) 和geSaveA

西安电子科技大学

② 布局规划、预布线
?

布局规划 ?是面向物理版图的划分,不同于逻辑 设计时模块的划分。 ?布局规划从版图上将芯片设计划分为 不同的功能块,布置输入 / 输出端口, 对功能块、宏模块、芯片时钟及电源分 布进行布局方案设计,根据设计要求对 一些单元或模块之间的距离进行约束和 控制。 ?布局规划可估算出较为精确的互连延 迟信息、预算芯片的面积,分析布线的 稀疏度。 ?在深亚微米设计中,合理的总体布局 规划可以提高综合的连线延迟模型的准 确性,从而更快的达到时序收敛,减少 设计的重复。

西安电子科技大学

布局规划
?

Floorplan在整个流程中处于十分重要的地位,Floorplan不单指Astro 中的axgPlanner命令,还包括macro的位置,电源布线设计(Power plan)。因为Floorplan一旦确定,则整个芯片的面积就已经确定了。 Floorplan的质量也与整个设计的timing和布通率有着密切的关系。流 程中的反复主要发生在这一步中,如果开始就规划得比较好,则随后 通过一遍流程就布通的几率就比较高;反之,很可能出现了随后若干 步骤后,发现设计无法通过修正继续布通的情况,那时只能返回到这 一步,造成很大时间的浪费。

西安电子科技大学

预布线
?

预布线的目的就是要在版图设计上为布线留必要的通道

布线通道的不同划分
西安电子科技大学

预布线
?

预布线包括宏单元的电源、地、信号的布线,焊盘单元

的布线及芯片核心逻辑部分的电源环、电源网络的布线。

电源分配一般结构

某32位微处理器 电源总线
西安电子科技大学

I/O assignment file(.TDF)
I/O assignment file 是可选的输入文件,它可以用来
指示工具放置I/O引脚(在一个块级设计)或I/O单元(在芯片 级设计),指示芯片pad的分布。如果希望工具来自动确定这 些位置,可以将该字段留空。它需要输入一个.tdf或.io格式 的文件,如果没有这个文件,布局工具将根据实际网表自动

决定设计的尺寸,而I/O引脚也将随机的分布。

西安电子科技大学

I/O布局基本原则
?

I/O的布局方法一般需要跟板级设计人员进
行沟通,以方便芯片生产后的测试和制版。

这里我们采用一般规则:
?

时钟和RST信号放中间,内核电源放中间。

西安电子科技大学

?

在SOC encounter里,东西南北是用来定义四个方向的,N北(TOP)、 S南(BOTTOM)、W西(LEFT)、E东(RIGHT)。当你的网表例化有I/O 之后,可以先把设计导入SOC encounter,选择Design--save--I/O file, 这时候导入一个IO assignment file。

?

对于每个I/O它是这样定义的:先定义这个I/O距离DIE左边界或者底

部边界的距离,再定义这个I/O的方位。

西安电子科技大学

西安电子科技大学

整体布局步骤:
?

1、Load TDF文件,这一步通常可以这样做:先Setup floorplan,然 后dump io pins,修改dump出来的tdf文件,把各个PAD放到合适的位 置,然后再把这个修改好的文件load进来;命令是axgLoadTDF 2、Setup floorplan,注意设置合适的参数;命令是axgPlanner

?

?

3、Connect ports to PG,这一步把网表中元件端口中电源和地部分 标志为VDD和VSS,并且所有1和0也分别标志为VDD和VSS,这样以 后布线的时候这些就能自动连接到电源和地上;命令是aprPGConnect
4、放置宏单元模块;主要是鼠标操作; 5、创建core的电源环;命令是axgCreateRectangularRings 6、创建core的电源条带,使供电更充分;命令是axgCreateStraps

?

?

?

西安电子科技大学

整体布局步骤:
?

7、把宏单元和PAD的电源和地连接到电源环上或者电源条带上;命 令是axgPrerouteInstances 8、把floorplan 的信息dump出来保存备用;命令是 axgDumpFloorPlan

?

?

9,保存CELL,并另存一份备份。

西安电子科技大学

③ 读入时序约束文件
?

芯片的总体功耗、时序要求和面积,时序约束文件由前端工程师
提供,格式一般采用SDC(.SDC)格式,SDC文件也由DC中输出。

?

时序约束文件中所加的约束只能针对顶层端口,针对时钟由内部 分频器得来的设计,文件中时钟定义可能需要加以修改。

西安电子科技大学

读入时序约束文件步骤:
?

1、Load 前端用DC写出的SDC时序约束文件;命令是 ataRemoveTC然后ataLoadSDC 2、检查该文件是否约束完全,与前端讨论哪些是可以 忽略的;命令是astTimingDataCheck 3、设置时序面板,此时可以选择比较宽松的约束,如 ignore interconnect;命令是atTimingSetup

?

?

?

4、report timing,此时应该是有比较大的余量的,这样 后面计算实际延时时才可能满足;命令是astReportTiming
5、保存CELL,并另存一份备份。

?

西安电子科技大学

④ 详细布局
?

详细布局就是进行网表中单元的放置。
可以使用综合时产生的时序约束来驱动布局,以使布局 后的连线延迟更接近综合的连线延迟模型,更快的达到 Timing Closure 。

?

?

布局要求将模块在满足一定的目标函数的前提下布置在 芯片上的适当位置,并要求芯片面积最小、连线总长最 短、电性能最优并且容易布线。

西安电子科技大学

详细布局步骤:
?

1、 如果网表中有扫描链就先抽取扫描链信息然后去除扫描链,等时 钟树综合完毕再还原扫描链,这样能避免拥塞;命令是axgScanTrace 然后axgScanChainOptim

?

2、 设置placement选项,时序驱动时要把timing,以及congestion都 选上;命令是astPlaceOptions

?

3、 预布局优化,通过优化高扇出点等产生一个种子网表(意思是高 扇出点被“打烂”,加进去的buffer象种子一样散落于芯片各处,使

得没有过高负载的点);astPrePS

西安电子科技大学

详细布局步骤:
?

4、 标准单元放置;astPlaceDesign

?

5、 优化标准单元的位置;astPostPS1

?

6、 保存,备份。

西安电子科技大学

③ 时钟树综合
? ?

在芯片版图设计中,时钟树的设计是非常重要的,数字系统中一切的电 路行为都是在时钟的严格同步下进行的。 系统中的时钟负载很大,而且遍布整个芯片。这样就造成了较大的本地 时钟间的相对延时,也叫时钟偏斜 (Clock Skew) ,时钟偏斜严重影响电 路的同步,会造成时序紊乱。

延时

延时最大

c 芯片平面

d

b

a

时钟输入

延时为零

西安电子科技大学

芯片中的时钟网络要驱动电路中所有的时序单元,所以 时钟源端门单元带载很多,其负载延时很大并且不平衡, 需要插入缓冲器减小负载和平衡延时。时钟网络及其上 的缓冲器构成了时钟树。一般要反复几次才可以做出一 个比较理想的时钟树。

西安电子科技大学

时钟树
时钟树综合就是为了保证时钟的设计要求,对芯片的 时钟网络进行重新设计的过程,包括:
?

时钟树的生成

?

缓冲的插入
时钟网络的分层
西安电子科技大学

?

时钟网络形式
?

不同的设计可以采用不同形式的时钟网络形式, 两种最常用的时钟网络就是H-树和平衡树
时钟源

时钟树主干

时钟树主干

时钟源

最常用的两种时钟网络
西安电子科技大学

一些时钟树的实例

不含时钟树

零歪斜时钟树

可变时间时钟树

西安电子科技大学

时钟树插入及增加驱动器
?

时钟信号延时与具体的版图密切相关,所以在逻辑综合的时候一般忽略 时钟的处理,而在布局布线设计中进行插入时钟树操作。

?

为了实现时钟延时的总体平衡,对时钟信号进行树状插入驱动(buffer)。

一个插入驱动的时钟分配树

西安电子科技大学

时钟树插入及增加驱动器

DEC Alpha 21164 CPU时钟树的例子 西安电子科技大学

时钟树和复位树综合为什么要放在APR时 再做呢?
在DC综合时并不知道各个时序元件的布局信息,时钟 线长度不确定。
?

?

DC综合时用到的线载模型并不准确。

西安电子科技大学

④ 布线
?

布线是根据电路连接的关系,在满足工艺规则和电学性能 的要求下,在指定的区域内完成所需的全部互连,同时尽

可能地对连线长度和通孔数目进行优化。

?

完成预布线以后,一些特定网络的布线,如时钟、总线等 一些关键路径需要严格保证其时序要求;在布线中,这些 关键路径的布线被赋予较高的优先级,有时甚至进行手工

布线。

西安电子科技大学

布线过程
?

全局布线
?

布线工具首先把版图区域划分为不同的布线单元,同 时建立布线通道; 对连线的网络连接方向和占用的布线资源(布线通道和 过孔)、连线的最短路径等进行确定; 对布线的拥塞程度进行估计,调整连线网络过度拥塞 的部分。

?

?

西安电子科技大学

布线过程
?

详细布线
?

需要将连线网络所对应的布线资源分配到布线网格中; 需要分配路径(Assign track);

?

?

使用交换单元进行局部单元的详细布线;
完成最终的布线连接。

?

西安电子科技大学


版图

版图检查与验证

设计规则检查

网表与参数提取 原理图网表 版图网表

后仿真

电学规则检查

网表一致性检查

? ? ?

DRC:Design Rule Check设计规则检查 ERC:Electronic Rule Check电学设计规则 LVS:Layout vs Schematic Check网表一致性检查

西安电子科技大学

a)
?

设计规则检查(DRC, Design Rule Check)

?

?

设计规则是以器件的特征尺寸为基准,根据制造工艺水平及其它考虑, 制定出的一整套关于各掩膜相关层上图形自身尺寸及图形间相对尺寸的 允许范围。 设计规则检查则是检查版图中各掩膜相关层上图形的各种尺寸,保证无 一违反规定的设计规则。 设计规则的范围很宽,项目繁多,但其中多数规则是关于图形边与边之 间的距离规范,包括宽度检查、面积检查、内间距检查和外间距检查。

西安电子科技大学

b)
?

电学设计规则(ERC, Electronic Rule Check)

? ?

电学设计规则检测出没有电路意义的连接错误,(短路、开路、孤立布 线、非法器件等),介于设计规则与行为级分析之间,不涉及电路行为 实现:提取版图网表,ERC软件 网表提取工具:逻辑连接复原

西安电子科技大学

c)
?

网表一致性检查(LVS, Layout vs Schematic Check)
LVS是指把从版图中根据器件与节点识别提取出的电路同原设计的电路 进行对比检查,要求两者在结构上达到一致。

?

LVS要对比检查的结构单元,版图中提取出的电路和原设计的网表必须 化作同一形式的网表结构,即相同形式的结构单元的互联,两者才具 有可比性。

?

如果两者不一致,其错误大体分为两类:
?

不一致点(节点不一致、器件不一致) 失配器件

?

?

实现:网表提取,LVS软件

西安电子科技大学

数字后端设计流程-16 LVS

什么时候需要做DRC/LVS?
只要对版图信息做修改,就需要做 DRC/LVS检查。

西安电子科技大学

⑥ 后仿真
?

后仿真是指版图完成后提取芯片内部寄生参数后的 得到最准确的门延时和互连线延时的仿真。 后仿真包括:逻辑仿真、时序分析、功耗分析、电 路可靠性分析等

?

西安电子科技大学

⑦ 输出结果
? 所有检查验证无误,布图结果转换为GDSII格式的 掩膜文件。 ? 然后通过掩膜版发生器或电子束制版系统,将掩 膜文件转换生成掩膜版。

西安电子科技大学

自动布局布线工具——Astro介绍
Astro是Synopsys公司开发的一种基于标准单 元的版图自动生成工具,通过调用标准单元 库中的门单元进行布局布线完成版图设计, 其前身是Avanti公司(2002年被Synopsys公 司收购)的Apollo。 2007年以后改名叫ICC.

西安电子科技大学

CALIBRE:
? ?

MENTOR GRAPHIC – CALIBRE

专业的DRC/LVS软件,可以单独使用,也可以 嵌入virtuoso,astro中联合使用。
使用foundry提供的DRC/LVS检查脚本,可以自 动完成DRC/LVS工作,且给出错误报告。
? ?

检查出的错误需要在版图编辑工具中修改。 DRC/LVS工具还有DIVA,DRACURA等。

?

西安电子科技大学

谢谢!
西安电子科技大学


相关文章:
布局布线zy_图文.ppt
数字后端布局布线 西安电子科技大学 算法模型 c/matlab code 基于s
pcb布局布线规则_图文.ppt
pcb布局布线规则 - PART 1 基础理论与知识 PCB板层(Printin
PCB设计及布局布线2017_图文.ppt
PCB设计及布局布线2017_城乡/园林规划_工程科技_专业资料。PCB设计及布局布线知识培训研发PCB组 公司PCB板卡大致分类 心脑电样板 血压样板 电源样板 血氧样板 ? ...
第六讲PCB布局布线_图文.pdf
第六讲PCB布局布线 - PCB布局布线 黄惠芬 华南理工大学电子与信息学院 R
电路板布局布线要求及规律_图文.ppt
电路板布局布线要求及规律 - 电路板布局布线要求及规律,电路板设计工资高吗,电路
自动布局布线软件_图文.ppt
自动布局布线软件 - Cadence 自动布线教程... 自动布局布线软件_电子/电路_工程科技_专业资料。Cadence ...布局布线zy 暂无评价 53页 1下载券 b布局布线软件(Magma...
PCB布局布线规则与EMI_图文.pdf
PCB布局布线规则与EMI_电子/电路_工程科技_专业资料。PCB和信号完整性
布局布线1_图文.doc
布局布线1 - 综合课程设计 Astro 自动布局布线版图 设计报告 专班 业:
Altium_Designer PCB布局布线及规则设置_图文.ppt
标签: 布局| 布线| Altium_Designer PCB布局布线及规则设置_IT/计算机_专业资料。Altium_Designer PCB布局布线及规则设置介绍 创建PCB文件 ? 通过菜单或工程面板...
Altium-Designer-PCB布局布线及规则设置_图文.pdf
Altium-Designer-PCB布局布线及规则设置 - 创建PCB文件 ?
能全面的布局布线系统 icc_图文.doc
能全面的布局布线系统 icc - 能全面的布局布线系统 概述 IC Compil
PCB布局布线原则与加载网络表_图文.ppt
PCB布局布线原则与加载网络表 - PCB布局布线原则 主要内容 一、PCB布局
ASIC设计cadence自动布局布线工具_图文.pdf
ASIC设计cadence自动布局布线工具 - 本节将使用综合工具(Design Compiler)对一个8 位全加器逻辑综合,并产生一个门级 网表;利用该网表使用自动布局布线工具(Silico...
...Designer PCB布局布线以及相关规则设置(图文中文说....pdf
AD Altium Designer PCB布局布线以及相关规则设置(图文中文说明) 2018-06-22 12:55:21 这篇文档有word格式吗?AD Altium Designer PCB布局布线以及相关规则设置(...
第8章__ASIC布局布线_图文.ppt
第8章 ASIC布局布线 8.1 8.2 8.3 8.4 8.5 8.6 8.7
第十一讲 数字后端电路实现-布局布线与验证_图文.ppt
第十一讲 数字后端电路实现-布局布线与验证_电子/电路_工程科技_专业资料。数字后端电路实现-布局布线与验证 第十一讲 数字后端电路实现 布局布线与验证清华大学...
去耦电容的选择、容值计算和布局布线_图文.pdf
去耦电容的选择、容值计算和布局布线 - 去耦电容的容值计算和布局布线 有源器件在
高速ADC布局布线技巧_图文.pdf
高速ADC布局布线技巧 - AN-1142 应用笔记 One Technolog
基于Encounter软件的布局布线__图文.pdf
基于Encounter软件的布局布线_ - 基于Encounter软件 的布局布线 黄小伟 2008/10/14 共44页 1 Encounter布局布线流程 1、设计输入(Design I...
6_APR_自动布局布线_图文.ppt
6_APR_自动布局布线 - SE布局布线(P&R) 2015-1-11 共64页 1 纲要 数字电路设计流程简介 ? Silicon Ensemble简介 ? 布局布线所需文件介绍...
更多相关标签: