数字集成电路 后端设计 APR流程 之Astro

合集下载

Astro完全流程

Astro完全流程

Astro完全流程Astro文档 V1.0数据准备(必需的文件)Foundry提供:·Technology File (.tf);·CLF Files (.clf);·GDSII Stream Files;·Reference Library;用户自己编写或编译:·Capacitance Model (.tlu):TLU or TLU+;·Pad Sequence Information (.tdf);·Timing Constraints (.sdc): 由DC产生的时钟约束文件;Astro 具体设计流程1. 建立设计库(Create Library)加入所需的工艺文件,建立一个新的工作库。

2. 生成TLU+模型(create TLU+ Model)将由Star-RCXT产生的.itf文件转化成.tlu文件,同时注意此步需要一个.map文件。

3. 同样可以产生TLU模型一般情况下,.tf文件含有相关信息,通过下面命令可实现:Tech File > Create Capacitance Model …4. 加参考库(addAndShowRefLib)在新建的设计库中加入Foundry提供的参考库,可以分别加入几个参考库。

之后,可以显示已经加入的参考库。

5. 读入网表(read Verilog)读入网表,Astro支持.v,.vhd,.edf等多种网表格式,我们组都采用Verilog语言编写程序,因此后缀名为.v。

6. 打碎网表(可选)若此网表为层次化的网表,需打碎网表,/doc/4012040478.html,L变为topcell.EXP,同时定义电源和地。

7. 生成cell及绑定网表(openLibAndBind)打开工作库,生成一个新的cell,绑定.EXP文件。

8. 层次化保护***Cell > Initialize Hierarchy InformationCell > Mark Module Instance Preserve9. 连接电源与地(connectPGnets)指定所有相关ports到电源或地。

数字集成电路设计方法、流程

数字集成电路设计方法、流程

数字集成电路设计方法、流程数字集成电路设计是指将数字电路功能进行逻辑设计、电路设计和物理布局设计,最终实现数字电路在集成电路芯片上的实现。

数字集成电路设计方法包括:1.设计需求分析:对于待设计的数字电路,首先需要了解设计需求。

明确电路所需的功能、性能指标、工作条件等,以确定电路设计的目标和约束条件。

2.逻辑设计:通过使用硬件描述语言(HDL)或者可视化设计工具,设计数字电路的功能逻辑。

在逻辑设计中,使用逻辑门、寄存器、计数器、状态机等基本逻辑单元,以及组合逻辑和时序逻辑的方法,实现所需功能。

3.电路设计:根据逻辑设计的结果,进行电路级设计。

包括选择和设计适当的电路模型、搭建电路拓扑、设计功耗、提高抗噪声性能等。

在电路设计中,需要考虑电源电压、电路延迟、功耗、抗干扰性能等因素。

4.物理布局设计:根据电路设计的结果,进行芯片级物理布局设计。

将电路中的逻辑单元和电路模块进行排布,设计电路的物理连接,并确定芯片的尺寸、引脚位置等。

物理布局设计需要考虑电路的功耗、面积、信号干扰等因素。

5.时序分析:对于复杂的数字电路,在设计过程中需要进行时序分析,以确保电路在各种工作条件下都能正常工作。

时序分析包括时钟分析、延迟分析、时序约束等。

6.仿真验证:在设计完成后,通过仿真验证电路的功能和性能。

使用仿真工具对电路进行功能仿真、逻辑仿真和时序仿真,验证设计的正确性。

7.物理设计:在完成电路设计和仿真验证后,进行物理设计,包括版图设计、布线、进行负载和信号完整性分析,以及完成设计规则检查。

8.集成电路硅掩模制作:根据物理设计结果,生成集成电路的掩模文件。

掩模文件是制造集成电路所需的制作工艺图。

9.集成电路制造:根据掩模文件进行集成电路的制造。

制造过程包括光刻、蚀刻、沉积、离子注入等工艺。

10.设计验证和测试:在集成电路制造完成后,进行设计验证和测试,确保电路的功能和性能符合设计要求。

数字集成电路设计的流程可以总结为需求分析、逻辑设计、电路设计、物理布局设计、时序分析、仿真验证、物理设计、硅掩模制作、集成电路制造、设计验证和测试等步骤。

IC设计流程课件

IC设计流程课件

综合(Synthesis)
门级验证(Gate-level Verification)
后端设计(Back-end Design)
电路参数提取(Circuit Extraction)
版图后仿真(Post-layout Simulation)
物理
生产(Manufacture) 测试(Test)
数据形式与工具
目前DC可称作ASIC业界最流行的综合工具和 实际标准
09/11/08
6
西安邮电学院ASIC中心
静态时序分析工具
CMOS集成电路版图
静态时序分析技术是一种穷尽分析方法,可以 提取整个电路的所有时序路径,且不依赖于激 励,运行速度很快,占用内存很少,适合进行 超大规模的片上系统电路的验证,可以节省多 达20%的设计时间,但是静态时序分析存在的 问题在于不了解电路的动态行为。
09/11/08
11
西安邮电学院ASIC中心
版本管理工具
CMOS集成电路版图
在芯片开发流程中,文档、代码、网表 、工具配置脚本、工艺库甚至EDA工具本 身都在不断变更,版本控制的重要性日益 凸显。
常用的版本管理工具有CVS、Subvision 等,都包括windows和linux等版本。
09/11/08
IC设计流程课件
09/11/08
1
数字IC设计的流程
CMOS集成电路版图
逻辑
流程
需求分析(Requirement)
算法设计(Algorithm Optimization)
结构设计(Architecture Exploration)
RTL设计(RTL Design)
RTL验证(RTL Verification)

Astro过程1

Astro过程1

Astro过程1、产生Milkyway的参考库1). Astro输入的数据文件:●技术文件(.tf)●参考库(参考库由以下的文件产生:1、技术文件(.tf);2、GDSII文件(包含了物理版图信息);3、综合库文件(.lib or .db 包含了cell的时序和功能))●设计库(Design_library),由以下文件产生:1、技术文件(.tf);2、GDSII文件(.gds 包含了物理版图信息);3、顶层设计文件(.tdf)包含了pin和port的信息。

4、约束文件(.sdc 包含了时序约束和时钟的定义,来自于综合过程);5、网表文件(.v or .vhd or .edf)包含V erilog、VHDL或者EDIF文件;6、设计库文件(.db)包含了网表,时序和设计规则约束。

2). Astro产生的数据文件●布局后产生的时序文件(design.sdf)●寄生信息(parasitic.spef or parasitic.spf)●优化过后的网表(.v(flattened)or .hv(hierarchical))●Layout文件(.gds)●(optional)cell 放置位置信息(.pdef)●(optional)网表和布局信息(.def)●(optional)版图、时序和技术信息3)Milyway 库目录Synopsys的Milyway 库目录是目录和文件的集合。

顶层目录是参考库或着是设计库。

参考库包含标准单元库、宏库和引脚库,这几个库构成一个设计。

1)数据库●CEL view:版图物理单元数据,包含输入的和astro产生的;●FRAM:版图数据提取出的布局布线数据;●SMASH:打平的CEL view;●HTV:版图的层次化时序数据,类似于和其它synopsys工具的一个接口;2)时序、功耗和逻辑文件夹●LM(Logic Model)view:时序,功耗和逻辑信息(新的格式提供了类似于TIM和PWR的数据信息)。

数字集成电路后端设计的一般流程

数字集成电路后端设计的一般流程

数字集成电路后端设计的一般流程下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!数字集成电路后端设计是将前端设计的逻辑电路转化为实际的物理版图的过程,主要包括布局布线、时钟树综合、时序分析、功耗分析等步骤。

基于Astro的MIC总线控制器专用集成电路后端设计

基于Astro的MIC总线控制器专用集成电路后端设计
A t 是 Snpy s o r yoss公 司 开 发 的 A R ( uo P At
P c n ot) 件 , l e dR u 软 a a e 提供 Cl—BsdD s n e l a e g e i F w实体设计部分 , l o 它可 以满足 五千万 门 , 时钟
动布局布线工具 , 例如 C dne aec 公司的 s E设计工
时产 生 。
片面积的增大将给时钟树 的设计 、 电源 网络设计 、
功耗控 制 等都带 来 困难 。而一 个好 的版 图布局 可 以节 约很 多 的芯 片 面积 , 因此 在 版 图设 计 中最 先 要考 虑 的就是芯 片 的布局 问题 。
要求 , 积 优 化 , 序 收 敛 , 耗 ,R Do , 面 时 功 I rp 串扰 ,
信号完整性 , 天线效应 ,S ……如何在规定 的时 ED
间里完成复杂的版图设计已经成为越来越多的设
计 人员 经常 要面 对 的问题 。 由此 出现 了很 多 的 自
3 简要介绍后端自 动布局布线 工具一 so At r
功的另一半呢?就是好 的方法, 也就是充分利用 工具。这也是我们在设计 中的一点体会。本文介 绍 的是使用 A t 自动布局布线工具 , 成 M C s o r 完 I 总线控制器远程模块专用集成电路的设计实例。
Co kS A t — a , so R i 提供 Pw r d vraot r l oe — r e l u i y
正 能力

tbt u n , r u dr t g使得大的电路设计可以更快的完成 i eo i
维普资讯
第5 第 期 2 3 卷
4 At s o的基 本 设 计 流 程 r

数字集成电路 后端设计 APR流程 之Astro

数字集成电路 后端设计 APR流程 之Astro

Astro布局布线流程随着深亚微米工艺的应用,逻辑门间的连线主导了电路的时序性能。

在实际设计时,设计者不再只是完成简单的逻辑门摆放和连线工作,更重要的是要降低实际的连线延迟,使最后的物理设计时序性能满足设计要求。

Astro是由Synopsys公司开发的物理设计软件,适用于现在的主流设计。

Astro提供了一套完整的物理设计流程,布局布线同时还具有时序优化功能,可以在一次流程中使设计电路达到预设指标。

但Astro步骤繁多、设定复杂,本章将针对Astro的设计流程借助一个简单的设计实例,对Astro一次流程中的主要步骤进行简单说明,使读者短时间内可以了解Astro。

一.数据准备本流程中需要的输入数据包括:网表文件(Netlist File)、时序约束SDC文件(Timing Constraint File)、参考库(Reference Library)、定义PAD TDF文件(Top Design File)、工艺tf文件(Technology File)。

其中工艺文件和部分参考库文件由Foundry提供。

1.网表:网表文件由前端工程师提供,格式一般采用verilog(.v)格式。

布局布线用网表文件一般由Design Compiler(DC)综合得到。

从DC中输出网表时,需要在脚本中如下命令,以满足Astro的要求。

2.时序约束文件:时序约束文件由前端工程师提供,格式一般采用SDC(.sdc)格式,SDC文件也由DC中输出。

时序约束文件中所加的约束只能针对顶层端口,文件中时钟定义可能需要加以修改。

因为从DC中输出的时钟定义一般不指定具体的单元及其端口,Astro通常很难根据这样的时钟定义找到真正的时钟源,因此需要先在网表中找到真正的时钟端口,并据此在SDC文件中加以修改。

例如,原来的SDC文件中时钟的定义片段为:原来的时序约束文件是给予综合的DC用,而不是用来布局布线的。

所以综合用的SDC文件中只给出了一个“产生时钟(create clock)”的命令,根据上面这段时序约束文件中的片段,Astro一般无法找到clk_div/clk,因此需要将“get_pin”的目标修改替换为在网表中的一个实际的时钟产生的单元:clk_div/CK01D1/Z.。

数字后端流程二【astro】[精华]

数字后端流程二【astro】[精华]

Astro 笔记Y uzh 2009-11-13Astro 是数字后端的布局布线的重要工具,还数字后端设计中,关于Astro 的设计主要由以下几部分组成:【1】新建一个pnr 文件夹,在其子目录下创建clf cons in log lib out rpt script tf 以及一个makefile 文件【2】clf 文件夹中主要存放工艺延时功耗负载等相关文件以便导入主要可以有以下几个部分:antenna_*lm.clf *.clf.logic *.clf.power *.clf.time 可以由Foundry 提供的工艺库文件中拷贝【3】cons 文件夹中主要存放Macro PAD Locationa 文件Pin Location 文件,dbdefine 文件以及antenna rules 文件以便导入设计中使用【4】in 文件夹中主要存放有DC 综合后生成的综合网表*.sv 文件时序约束文件*.sdc 以及*.sdf 文件,但是需要对sdc 文件进行相关修改后才能作为Astro 布局布线的时序约束参考因此需要有一个Makefile 文件对其内容进行修改【5】lib 文件夹中存放有standard cell 的工艺库文件(如silterra18)Foundry 工艺库中拷贝【6】tf 文件夹中存放有设计工艺库的技术文件(如silterra18_*lm.tf)Foundry 工艺库中拷贝【7】script 为了布局布线修改方便常会将运行的Astro 命令导出到相应的脚本文件中,CTS 前布局一次为一个脚本,CTS 后优化布局为一个脚本,最后布线以及check 为一个脚本,存放在script 文件夹中分别命名为pnr_1.scm pnr_2.scm pnr_3.scm【8】其余的文件夹分别存放输出的报告和网表以及gds 文件,其中log 文件夹中为Astro 运行报告,rpt 中为Astro CTS clock skew 分析报告,out 中为gds 文件和布局布线后网表,以及Wire RC 参数提取文件*spefAntenna_rules 文件是截取Antenna_rules_*lm.clf 文件的一部分一般只截取dbAddAntennaLayerRule 的定义设计中如下截取:define _libId (dbGetCurrentLibId)dbDefineAntennaRule _libId 4 2 0 0dbAddAntennaLayerRule _libId 4 "METAL1" 400 '(0.203 0 400.00 2200)dbAddAntennaLayerRule _libId 4 "METAL2" 400 '(0.203 0 400.00 2200)dbAddAntennaLayerRule _libId 4 "METAL3" 400 '(0.203 0 400.00 2200)dbAddAntennaLayerRule _libId 4 "METAL4" 400 '(0.203 0 400.00 2200)dbAddAntennaLayerRule _libId 4 "METAL5" 400 '(0.203 0 400.00 2200)dbAddAntennaLayerRule _libId 4 "METAL6" 400 '(0.203 0 8000.00 30000)dbAddAntennaLayerRule_libId 4 "VIA12"20 '(0.203 083.3375)dbAddAntennaLayerRule_libId 4 "VIA23"20 '(0.203 083.3375)dbAddAntennaLayerRule_libId 4 "VIA34"20 '(0.203 083.3375)dbAddAntennaLayerRule_libId 4 "VIA45"20 '(0.203 083.3375)dbAddAntennaLayerRule_libId 4 "VIA56"20 '(0.203 083.3375)dbDefine 文件是为了Astro 做时钟树综合优化时作准备的,在CTS 之前需调用该文件,Astro 做时钟树时只对它默认的DFF 的时钟管脚做相关处理一般是定义了clock 但我们设计需要对一些多扇出的复位信号scan 链信号做处理就需要专门声明下这也是时钟树需要处理的信号,就在dbDefine 做这样的声明,一般有同步复位、异步复位、scan_enable 以及宏单元的clk 信号,异步复位最常用需要做scan 链才定义SE,有Memory 时才定义clk,具体设置如下:(let* ((selectedlist (geGetSelectedSet (getEditWindow))))(for-each (lambda (x)(let* ((instName (dbFetchObjectField (geGetEditCell) x "name")))(dbDefineSyncPin (geGetEditCell) instName '( ("RN" "nonInvertRise" 0) ("RN" "invertRise" 0)) )(dbDefineSyncPin (geGetEditCell) instName '( ("SN" "nonInvertRise" 0) ("SN" "invertRise" 0)) );; (dbDefineSyncPin (geGetEditCell) instName '( ("SE" "nonInvertRise" 0) ("SE" "invertRise" 0)) );; (dbDefineSyncPin (geGetEditCell) instName '( ("CLK" "nonInvertRise" 0) ("CLK" "invertRise" 0)) )))selectedlist))tdf 文件定义相关的PAD 或者是PIN 的位置信息,坐标描述方法基本一致设计中根据实际的需要略有不同如下:tdfPurgePadConstrdefine step15define offset50define off0pin "clk"39 0 0"right"0(set! offset(+ step1 offset))pin "rstn"39 0 0"right"0(set! offset(+ step1 offset))pin "scan_mode"39 0 0"right"0(set! offset(+ step1 offset))pin "mic_fm_sel" 39 0 0 "right" 0 (set! offset(+ step1 offset))在Astro 布局布线时需要根据DC 综合时设置生成的时序约束文件对相关cel(l standard cell)进行布局优化,通常在Place 设置时考虑congestion 和time 因素,通常考虑关键性的时序路径,满足设计的时序约束条件,而对于非关键路径的cell 可以放置的远离些,增加延时,如果将非关键路径的cell 布局在关键时序路径布局区域就会对其产生影响,使其布线拥塞增加布线难度。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Astro布局布线流程随着深亚微米工艺的应用,逻辑门间的连线主导了电路的时序性能。

在实际设计时,设计者不再只是完成简单的逻辑门摆放和连线工作,更重要的是要降低实际的连线延迟,使最后的物理设计时序性能满足设计要求。

Astro是由Synopsys公司开发的物理设计软件,适用于现在的主流设计。

Astro提供了一套完整的物理设计流程,布局布线同时还具有时序优化功能,可以在一次流程中使设计电路达到预设指标。

但Astro步骤繁多、设定复杂,本章将针对Astro的设计流程借助一个简单的设计实例,对Astro一次流程中的主要步骤进行简单说明,使读者短时间内可以了解Astro。

一.数据准备本流程中需要的输入数据包括:网表文件(Netlist File)、时序约束SDC文件(Timing Constraint File)、参考库(Reference Library)、定义PAD TDF文件(Top Design File)、工艺tf文件(Technology File)。

其中工艺文件和部分参考库文件由Foundry提供。

1.网表:网表文件由前端工程师提供,格式一般采用verilog(.v)格式。

布局布线用网表文件一般由Design Compiler(DC)综合得到。

从DC中输出网表时,需要在脚本中如下命令,以满足Astro的要求。

2.时序约束文件:时序约束文件由前端工程师提供,格式一般采用SDC(.sdc)格式,SDC文件也由DC中输出。

时序约束文件中所加的约束只能针对顶层端口,文件中时钟定义可能需要加以修改。

因为从DC中输出的时钟定义一般不指定具体的单元及其端口,Astro通常很难根据这样的时钟定义找到真正的时钟源,因此需要先在网表中找到真正的时钟端口,并据此在SDC文件中加以修改。

例如,原来的SDC文件中时钟的定义片段为:原来的时序约束文件是给予综合的DC用,而不是用来布局布线的。

所以综合用的SDC文件中只给出了一个“产生时钟(create clock)”的命令,根据上面这段时序约束文件中的片段,Astro一般无法找到clk_div/clk,因此需要将“get_pin”的目标修改替换为在网表中的一个实际的时钟产生的单元:clk_div/CK01D1/Z.。

修改SDC片段结果如下:3.参考库:参考库包括标准单元(STD)库、输入输出单元(I/O)库和IP库。

前两种都由Foundary提供,IP库可以由Foundary提供,也可以用户自己建立。

举一个简单的例子简要说明下IP库的建立。

在某些项目中,比较典型的用户自定义RAM IP模块。

使用Memory Compiler可以产生GDSII文件,需要自己建立Milkyway格式IP库以作为参考库代入Astro设计流程。

其具体步骤为:1.运行Memory Compiler,产生需要的Memory block,具体参考memory compiler的使用手册。

2.运行Astro,把GDSII文件导入,Smash,进行Blockage Pin Via Extraction后产生FRAM view。

3.在Astro中把memory compiler产生的lib文件转换成clf文件并读入,或者读入.db文件,生成TIM/LM view。

关于导入GDSII文件具体参考《milkyway database preparation》,需要注意两点:1.层号(Layer Number)问题,不同的工艺下的相同层的层号可能不同。

如若不同,需要写一个映射文件在读入GDSII文件转换。

2.特殊自定义模拟单元的IP库的,ib文件、clf文件等需要自己写,由Astro读入生成IP库的LM view,若仅由GDSII文件生成一个Fram view,IP库的Milkyway格式的库中没有TIM view,在时序驱动(Timing Driven)流程中处理到和这些模块相关的Net/Port的时候会有许多相关的Warning或Timing Error。

为了消除这些Warning和Timing Error,就需要把相应的.lib或者.db文件导入库中,以生成一个TIM/LM view。

这时可以简单地手工写一个lib文件,导入库中即可。

例如:4.TDF文件:这里用到的TDF文件定义了Pad的排列顺序。

需要注意的是:综合产生的网表中没有定义某些没有逻辑意义的Pad,如corner cell,split cell以及power cell的顺序,这些Pad和I/O Pad的摆放边和顺序都在该TDF文件中定义。

二.开始(Setup:Design Setup + Timing Setup)在Terminal中,引导到运行目录下内输入命令:启动软件后,很多布局布线步骤都可以写成脚本,直接载入运行即可。

这样既免去了一次次点鼠标提高工作效率,也减少手工操作可能会带来的失误。

该命令“Astro”也包括“-logd、Astro,随后章节中多采用基本的步骤是:1.建立库(cmCreateLib)Library→Create在弹出“Create Library”窗口中,填上“Library Name、Technology File Name”相应的表格。

“Library Name”是设计库的名字,库是设计单元的集合。

“Technology File Name”即为第一节数据准备中提及的工艺tf文件和文件引导路径。

一般前端综合DC输出网表是对大小写敏感的,因此建立库的时候要注意把“Set Case Sensitive”选项选上(默认)。

图2-1点击“OK”按钮,Library建立成功。

Astro启动目录下会产生一个以“Library Name”命名的文件夹,随后的单元的设计数据都将会保存在本目录下。

图2-22.读入Verilog(auVerilogToCell)1.在Astro的主窗口内输入命令这条命令集合了旧版Astro设计流程中的加上参考库(cmRefLib)、读入网表(auVerilogIn)和打平网表(cmCmdExpand)等几个个步骤。

图2-32.在弹出窗口中填入“Library Name、Cell Name、Verilog File Name”。

“Library Name”是刚刚建立的设计库名。

“Cell Name”单元名即随后具体的设计对象。

“Verilog File Name”是第一节数据准备中提及的网表文件和文件引导路径。

3.点击“Reference Library”按钮,顺序添加几个参考库后,点击“Hide”按钮隐藏窗口。

“Reference Library”是第一节数据准备中提及的参考库文件。

参考库可以是一个或者多个,如STD、IO、IP等。

图2-44.点击“Global Net Options”按钮,“Net Name、Port Pattern”分别都设置为“VDD、VSS”,并且“Apply”一下,点击“Hide5.点击“OK”按钮。

网表将被参照参考库或Astro默认的库读入,在设计库文件夹下产生一个以“Cell Name”命名的文件夹,其中包含几种设计观点cell view。

图2-53.打开库(geOpenLib)Library→Open在弹出窗口中填入“Library Name”,点击“OK”按钮。

图2-64.打开单元(geOpenCell)Cell→Open打开本节第2步中生成的单元,图2-7为弹出的窗口视图。

图2-7为使图片清晰,截图中,笔者将结构视图内容部分进行了反色处理。

可以发现,该部分由一些大小不一的方框“堆积”而成,这些方框就是STD、IO、IP单元的Fram view。

由于设计尚未进行布局规划(floorplan),它们都被“堆积”在视图的左下角(low-left)。

若网表是层次化的,还需要使用(astMarkHierAsPreserved)命令来标记保留层次化,至此设计启动部分(Design Setup)流程结束。

5.装载SDC文件(ataLoadSDC) Timing→Load SDC1.在Astro的主窗口内输入命令:推荐在装载SDC文件前移除设计中所有的时序相关的约束。

2.在弹出窗口中“SDC File Name”表格中填入,SDC文件名极其引导路径。

SDC文件是第一节数据准备中提及的时序约束文件。

图2-83.点击“OK”按钮载入SDC文件。

图2-96.时序设置(atTimingSetup)Timing→Timing Setup在弹出窗口中,根据需要选择相应的选项,设置相关环境参数、优化目标。

注意!这些设置选项在流程的后面可能会有改变。

另外本流程中部分选项设定使用系统默认,设定不作改变部分不在图2-10中作图示方式列出。

图2-10 7. 保存单元数据(geSaveAs )Cell →Save As填入自定义单元名称,阶段性保存设计数据。

图2-11补充说明:综合产生的网表一般不包含电源、地的Pad 、Corner 、Split 、Power 等单元,可以利用(geAddCell )Create →Cell 命令在设计单元中建立这些单元。

笔者个人偏好在DC 输出的Verilog 网表中手动修改网表,以引用Reference Library 中的单元的方式在网表中加入这些Cell 。

三.布局规划(Floorplan)Floorplan在整个流程中处于十分重要的地位,Floorplan不单指Astro中的axgPlanner命令,还包括macro的放置,电源布线设计(Power Plan)。

因为Floorplan一旦确定,则整个芯片的面积就已经确定了。

Floorplan的质量也与整个设计的timing和布通率有着密切的关系。

流程中的反复主要是发生在这一步中,如果这本步骤开始就规划得比较好,则随后的以便通过一步流程通过的几率就较高;反之,很可能出现完成了随后若干步骤后,发现设计无法通过修正继续布通的情况,那时只能返回到这一步,造成很大时间人力的浪费。

1.载入TDF文件(axgLoadTDF)Design Setup→Load TDF将设计单元名称和TDF文件以极其路径填入弹出表格中的“Cell Name、TDF File Name”,此处TDF文件即为是第一节数据准备中提及的TDF文件。

图3-12.全局的Floorplan(axgPlanner)Design Setup→Set Up Floorpan图3-2如图3-2中的参数来完成设置,并且点击“OK”完成初步的布局规划。

本设计流程中包含了一些的macro单元,不能简单地通过指定根据core的利用率(Aspect ratio)来让Astro决定设计的尺寸,而只能通过指定宽/长(width/hight)来确定。

相关文档
最新文档