基于umc18工艺的SOC Encounter数字版图设计流程 000
更新时间:2023-09-12 09:44:01 阅读量: 综合文库 文档下载
- 基于是什么意思推荐度:
- 相关推荐
基于umc18工艺的SOC Encounter数字版图设计流程
V1.0 2014-02-28 记录:张亮
1
目录
一、文件的准备 ............................................................................................................................... 3
1.1库文件的准备 ..................................................................................................................... 3 1.2根据设计准备所需文件 ..................................................................................................... 3 二、运行软件 ................................................................................................................................... 3 三、版图设计流程 ........................................................................................................................... 4
3.1 Design_import ..................................................................................................................... 4 3.2 Global Net Connection ........................................................................................................ 6 3.3 FloorPlan ............................................................................................................................. 7 3.4 Add Power Rings ................................................................................................................. 8 3.5 Add Stripes .......................................................................................................................... 9 3.6 Placement Blockage .......................................................................................................... 11 3.7 Placement ......................................................................................................................... 11 3.8 IO Filling ............................................................................................................................. 13 3.9 Special Route (SRoute) ...................................................................................................... 13 3.10 Pre–CTS Optimization...................................................................................................... 15 3.11 Creat clock tree spec ....................................................................................................... 16 3.12 Clock Tree Synthesis ........................................................................................................ 18 3.13 Post–CTS Optimization .................................................................................................... 18 3.14 Trail Routing .................................................................................................................... 20 3.15 Nano Routing .................................................................................................................. 21 3.16 Add Filling ........................................................................................................................ 22 3.17 Post–Route Optimization ................................................................................................ 22 3.18 生成 SDF 时序文件 ..................................................................................................... 24 3.19 Verify connectivity ........................................................................................................... 24 3.20 Verify Geometry .............................................................................................................. 25 3.21 Export Files ...................................................................................................................... 26 四、 DRC校验 ............................................................................................................................... 27
4.1库文件的准备 ................................................................................................................... 27 4.2 根据设计准备所需文件 .................................................................................................. 28 4.3 修改库文件路径 .............................................................................................................. 28 4.4 启动calibre ...................................................................................................................... 29 4.5 encourage 打开查看报告 ................................................................................................ 29 五、 LVS校验 ................................................................................................................................ 31
5.1库文件的准备 ................................................................................................................... 31 5.2 根据设计准备所需文件 .................................................................................................. 32 5.3 生成.spi文件 ................................................................................................................... 32 5.4 启动LVS ........................................................................................................................... 32 5.5 查看报告.......................................................................................................................... 32
2
一、文件的准备
1.1库文件的准备
对于SOC Encounter而言,后端设计所需的主要有由Foundry厂所提供的标准单元和I/O Pad的库文件,它包括物理库、时序库,分别以.lef、.tlf(或者.lib)的形式给出,其中I/O Pad的相关库文件只有在做有Pad的版图时才需要。
说明: (1) 这里的时序库文件用的是.lib 文件,如果没有.lib 文件,用.tlf 文件也可以,建议用.lib 文件,信息比较全。
(2) 库的网表库(verilog 文件)这里不需要。只在后仿真的时候需要。
1.2根据设计准备所需文件
完整的时序电路数字版图设计所包括的文件有:Verilog网单,sdc时序文件,def电源pad声明文件,io 位置说明文件。
对该设计包括: Verilog网单:aes_core.v
sdc时序文件:safe_all_post.sdc,safe_all.sdc hejian.08工艺库:UMC_018
这里分别对其进行简单的说明,本次实验只需用到DC综合后的门级网单。 (1)DC综合后的网单文件(.v 格式)
对于有Pad的请况,还需要在网单里面加入输入输出的IO Pad。Pad可以在综合前加入也可以在综合后加入,如果在综合之前加入,综合工具可以优化驱动和负载,需要在综合的时候把时钟信号和Pad设置成不可综合,因为时钟树在布局布线时处理,而Pad没有逻辑功能,仅提供输入输出负载。
(2)时序约束.sdc 文件,由DC产生提供设计的时序约束信息(详细见design_Vision指导用书)。
(3)def文件,此文件对版图中用到的电源Pad和IO Pad进行声明。设计中有Pad时def文件才需要。
(4)IO位置说明文件
二、运行软件
准备好库文件以及设计文件,就可以进行版图设计了。在自己设定的目录下键入“encounter”命令,运行Encounter,注意不要加“&”,服务器上的版本不支持后台运行。
3
准备好DC综合后的门级网单。
三、版图设计流程
3.1 Design_import
目的:读入设计所需要的库文件和设计文件
菜单操作:Design –> design import,如下图所示。
Basic模式:
导入准备好的设计网单.v 文件,Common Timing Libraries,lef文件,Timing Consrtaint File。注:顶层模块可以自己手动添加,也可自动添加。
4
注意,该项目包括:
1) aes_core.v;
2) \\UMC_018\\GENERIC_CORE\\FrontEnd\\synopsys \\fsa0a_c_generic_core_tt1p8v25c.lib 3) LEF文件注意顺序: header6_V55.lef(顺序1) fsa0a_c_generic_core.lef(顺序2) FSA0A_C_GENERIC_CORE_ANT_V55.6.lef(顺序3)
4) Safe_all_post.sdc
advance模式:
Power:填入版图里电源和地的线名。
补充说明: (1)Power Nets和Ground Nets的名字最好和库里面的标准单元的电源和地的pin名(可在库文件里查)一致,这样后面做映射会比较方便。 (2)做到这里可以保存一下,直接点 design_import 菜单里的 SAVE 保存,后缀是.conf,下次直接 Load 进来,再进行修改,不用每次都这么麻烦地设置这么多选项。
5
3.2 Global Net Connection
目的:把标准单元,电源pad等版图中用到的cell的pin和电源的net一一对应起来。
在 encounter 的工具列 , 按 Floorplan -> Connections Global Net?
操作步骤如下:
(1)Power Ground Connection –〉 Connect Pins: VDD (2)Scope
选中 Under Module
(3)To Global Nets: VDD
(4)选中Override prior connection 和Verbose Output (5)Add to List
(6)把VDD改成GND,重做(1)到(5)步
(7)选中Tie High,To Global Nets: VDD ,Add to List,表示VDD是电源高电平 (8)选中Tie Low,To Global Nets: GND ,Add to List,表示GND是电源地 (9)点击Apply
补充说明:
(1) 关于pin的名字不同的工艺要去工艺库文件查看cell的pin的名字 (2) Global Net 即前面 design import 的 Advance 模式 Power 菜单里声明的电源 net 名。 (3) 如果有 PAD 的话,要注意看一下工艺库文件里的 PAD 的 pin 名,可能会和标准 单元的不一样,比如 hejian 工艺库的给 core 供电的电源 Pad 的 pin 是 VDD 和 VSS, 这样的话就要多做一步(1)至(5),把 pin VSS 和 net GND 连接起来
6
3.3 FloorPlan
目的:对整个版图进行布局规划
菜单操作:选择FloorPlan?Specify FloorPlan,在弹出的对话框中对将要进行的设计进行一个整体的规划。
对该设计,根据面积大小进行规划,宽是0.5,高是0.4。
以下对设定内容进行几点解释:
(1)Size by –〉Core Size by –〉Aspect Ratio
选择Ratio(H/W)将给出一个整个布局区域的宽长比,一般是一个长方形; (2)Core Utilization 用Size by –〉Core Size by –〉Aspect Ratio‐〉Core Utilization 选项确定芯片面积的大小, Core Utilization表示core面积的利用率,面积允许的话,其数值越低,则芯片面积越大,用于布线的面积越宽松,布线越容易通过,一般选择0.7左右。这是决定芯片面积大小,能否布局布线成功关键的一步。
如果事先大致知道芯片的面积规划,可以直接选择 width and height 进行布局规划 (3)Core Margins by:
选择Core to IO Boundary, 设置core 和芯片边缘的间隔,这个间隔是用来放置Core的电源环的。所以需要根据后面的电源环,电源环间距等参数综合来决定。 这里选择20(因为我后面的电源环宽度是7,电源环间距是2,电源环距边缘的offset是2)。 这个位置同样会用来走输出pin的连线,间距最好尽量大,以保证走线没有问题 (4)Standard Cell Rows ? Double‐back rows
图示选择表示隔行row将进行翻转,以保证靠在一起的部分同为power或ground。 (5)Row Spacing: 表示行与行之间的间距,这里选择默认的0; (6)Row hight:表示行的高度。这里选择默认的5.04。
7
点击OK 。
实时保存步骤过程,便于退回操作,如下图所示。
3.4 Add Power Rings
目的:添加core的电源环和地环,在数字标准单元区域的周围放置power ring,用于提供数字部分的电源和地。
菜单操作:按 Power ‐> Power Planning ‐> Add Rings?
相关设置如下:
在弹出的选单中,Ring Configuration里面需要填写Power Ring的宽度、间距,金属层等 数据信息,一般要视实际需求而定
8
Layer:表示电源环所在的金属层,一般选择金属3和金属4。 Width表示电源环的线宽,尽量宽一些,这里选择7。 Spacing表示两根电源环的间距,这里选择2。
Offset表示电源环和core之间的距离,选择2,或者也可以选择Center in channel。 点击apply,电源环和地环出现在core的周围,如下图所示。最外围的虚线定义了芯片 的大小。
3.5 Add Stripes
目的:用于在芯片中插入一些横的竖的电源线,保证供电。 菜单操作:Power ‐> Power Planning ‐> Add Stripes?,
9
注意: Layer: metal 4 With: 4 Spacing:0.5 Set-to-set distance:250 X from left:250
单击OK。
10
3.6 Placement Blockage
目的:在电源的Stripes 和Routing的blockage的地方放置一些blockage,防止在这些地方place标准单元。(个人理解供参考)
菜单操作:Place-> Specify -> Placement Blockage?,金属层M1-M6全选。 说明:这一步可选。本实验中设置该项为M1-M4。
单击OK。
3.7 Placement
目的:放置标准单元。
菜单操作:Place ‐> Standard Cells and Blockages 设置如下图所示:
11
可以设置CPU个数,如下所示:
两次单击OK,标准单元已经放置到core中,如下图。
12
补充说明:
(1)做完这一步,可以用 Place –〉check Placement 菜单操作查看标准单元放置情况。 (2)Design –〉Save –〉Place,保存 Place 这一单步,后缀是.fp;
或者直接 Design –〉Save Design,保存当前整个版图,后缀是.enc,自己取名 字。
(4) 因为Place的时候会同时做时序优化,所以确保在第4步design import里面已经指定好IPO的footprint,否则没法做优化。
3.8 IO Filling
目的:设置IO引脚位置。
菜单操作:save-io file,修改文件,导入io file。
补充说明:
(1) 如果没有 IO 文件,版图会自动摆放 pan 或 pin;可以先不加此文件,从版图中导出一个,再修改。
(2) 如果没有 PAD,就是定义 PIN 的位置。把“pad”改成“pin”即可。 (3) IO 文件 Offset 指的是偏离左下角的平移(水平或者垂直)距离
(3) IO文件Orient指的是PAD的方向。这个很重要,万一写错了那PAD的位置也就放反了,这样是会出错的。所以放完PAD之后可注意看一下PAD的方向,万一不对旋转一下方向即可。方法是鼠标左键双击pad,出来如下菜单,选择其中的Orientation,可以转动方向,R180指转动180度,必须转动至是PAD的pin朝core的方向(因为方便和core内部的单元连线)。
3.9 Special Route (SRoute)
目的:把标准单元的电源以及给core供电的电源pad和core电源环连接起来。 菜单操作:Route -> Special Route?
13
对该设计,Top Layer :4 相关设置:
(1)Route ?PAD pins: 把给core供电的电源pad的pin和core电源环连接起来。本次实验该项不用设置,因为没有定义Pad。
(2)Route ?Standard Cell pins: 把标准单元的电源pad的pin和core电源环连接起来。 由于软件已经自动生成,只需点击OK即可。
14
从上图中可以看到此时pin已经被自动放置好了,如果需要重新布局,可以保存现有设置, 再对其进行修改。
3.10 Pre–CTS Optimization
目的:进行时序检查,若不满足要求则进行时序优化。 菜单操作: Timing – Optimization,选择 Pre–CTS
Optimization Type: 选择 Setup 或 Hold 来对 Setup 或 Hold 时间进行时序优化。 单击OK。
15
3.11 Creat clock tree spec
目的:生成时钟树所需的.ctstch 文件。 操作:Clock->Design Clock->Gen Spec 补充说明:
(1) 这里填的 Buffer footprint 和 Inverter footprint 是插入 buf 和 inv 的 Footprint 以
供时钟树生成时用。一般工艺库里会有专门的时钟 buffer,可以去工艺库文件查看名字,若库中没有只能用普通 buffer 代替。
16
注意:对该设计,选择除P开头以外的所有单元。
(2)这一步会在当前目录下生成时钟树文件ctstch,其中包含了设计对于时钟的要求。 (3)可以根据设计需要修改. Ctstch文件
单击OK。
Advance: Load Post CTS Timing Constraint: safe_all_post.sdc
17
3.12 Clock Tree Synthesis
目的: 综合生成时钟树 菜单操作:
第一步: Clock- specify clock tree spec
说明:这一步指定上一步产生的.ctstch 文件,encounter 按照这个文件设定的时钟特性自动产生时钟树的布局布线,插入 buffer 提高时钟树的驱动能力,改善时钟信号延时特性。 第二步: Synthesize Clock Tree
点击 OK 即开始时钟树综合,这一步运行时间相对较长。 补充说明:
(1)做完这一步可以查看时钟树生成情况。菜单操作: Clock – clock tree browser。 -〉在specified clock list 里选 clk,
-〉在route selection里选clock route only,
-〉点OK,则会弹出clock tree browser:clk,里面显示了时钟树综合后的电路的时钟网络布局情况。
-〉可以通过edit和display进行编辑和显示更多的时钟树信息
(2)可以通过这一步生成的.ctsrpt文件查看时钟网络结构和延时以及skew情况 (3)Clock -> Display可以查看时钟树在设计电路中的分布情况。
单击OK。
3.13 Post–CTS Optimization
目的:进行时序检查,若不满足要求则进行时序优化。 菜单操作:
第一步: Timing – Timing Analysis Design Stage: 选择 Post – CTS
Analysis Type:分别选择Setup和Hold进行时序分析,通过查看生文件里面的时序报告文件
18
来查看设计的时序。如果存在Violation,要进行下一步的时序优化,否则反标sdf的后仿可能会出错。
第二步:Timing – Optimization Design Stage: 选择 Post – CTS
Optimization Type: 选择 Setup 或 Hold 来对 Setup 或 Hold 时间进行时序优化。 补充说明:
(1)如果Violation path不是很多,也可以先进行下一步布线(Nano route),因为布线 本身会进行一定优化,而且布完线后还可以进行Post-Rout Optimization。一般布线后Violation path后减少很多。
(3)确保在第4步design import里面已经指定好IPO的footprint,否则没法做优化,或者 也可以优化前先执行脚本:Set Buf FootPrint buf。
19
3.14 Trail Routing
目的:进行初步的布线。
菜单操作:Routing ---- trial route
注意:max.route layer:4
单击OK。
20
五、 LVS校验
5.1库文件的准备
tail.txt;
run_v2lvs;//生成spi文件,需要tail.txt文件,需要修改路径和设置
fsa0a_c_generic_core_mpg.spi,fsa0a_c_generic_core.spi;//库文件 LVS-LA-003-1P6M-GENERICLL_CALIBRE-2.3-P1.txt;//数字逻辑规则,需要修改路径和名称,如下所示:
31
LVS-MA-002-1P6M-MMC-Calibre-2.0-p3。//混合逻辑规则,需要修改路径和名称,如下所示:
5.2 根据设计准备所需文件
Encourage保存的.gds文件; Encourage生成的.v文件。
5.3 生成.spi文件
命令:Source run_v2lvs
5.4 启动LVS
命令: calibre –lvs –hier LVS-LA….-P1.txt
或者:
命令: calibre –lvs –hier LVS-MA….-P3.txt
5.5 查看报告
文件如下,表明正确。
32
33
正在阅读:
基于umc18工艺的SOC Encounter数字版图设计流程 00009-12
青山区2013-2014八上期中测试答案03-04
厦门市财政局《关于调整厦门市财政性投融资项目勘察设计费付费标准的通知》.厦财建〔2006〕11号11-16
2016中考语文仿写续写对联03-21
《清稗类钞》服饰类04-12
电子信息工程概论01-02
2010年全国中学生英语能力竞赛初一09-13
- 企业所得税法考试秘笈
- 三级综合医院等级评审标准几点体会(山大二院)
- 全国哲哈忍耶上坟拱北简介
- 大家的日语课后阅读翻译
- 备课13 数据的收集与整理
- 埃塞俄比亚新五年规划
- 2018年安徽省安徽省合肥巢湖市事业单位招聘考试《综合知识》真题
- 高中--《美术鉴赏》课程纲要
- 唯一的听众教学设计
- 二、三年级写话训练
- 最新-2018届广东省佛山市普通高中高三教学质量检测(二)理科综合
- 电网监控与调度自动化作业题及答案
- 岗位廉政风险点查找和防控措施表
- 最经典的100条汽车广告
- 玻璃钢水箱课程设计(二)
- 电网监控与调度自动化 第五章
- 普通高中学生学籍管理办法
- 新人教版五年级下册数学第一单元教案观察物体
- 河北某住宅小区电气施工方案 - secret
- 战术基础动作教案
- 版图
- Encounter
- 流程
- 基于
- 工艺
- 数字
- 设计
- umc18
- SOC
- 000
- 化工热力学习题
- 深基坑开挖专项施工方案
- 初中英语8种时态
- 河北省邢台市隆尧县尧山中学成龙校区七年级体育上册第九套广播体操扩胸,踢腿教案2
- 外架劳务合同
- 上海市院前急救质控手册 - 图文
- 关于做好“学习博文人的榜样,展现博文人风采”的教师事迹评比工作方案
- 2015自考市场营销学复习重点-按章节整理
- 和平教育2015.1上(第148期)
- 建筑结构设计中的常见问题分析
- 《职业生涯设计与管理》复习思考题及答案
- 广播电视基础知识模拟试题
- 中级绘制员考证 多选题
- 游标卡尺的选用及使用 - 图文
- 医学英语新教程(下册)课文翻译
- ISA-300G系列装置使用说明
- 销售合同管理系统
- 2017年度东北大学重金属冶金学考试题
- 2008年4月自学考试机电一体化系统设计试卷
- 如何认识80-90后员工的良好心态