astro集成电路后端设计流程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
选项要选择Core 当要在Macro上加ring时Around 选项要选择Specified • 在net name加上VDD,VSS • 加上四周ring的金属线宽和金属 层号 (在Macro上加ring一般会用到 Extend选项,下一页用例子说 明)
Macro ring的侧边和延伸(例)
创建电源环带
在初始化布局后的单元外观
加入Pad filler cell
• PostPlace--Filler Cell: Add Pad
Fillers • 加入的Pad Fillers,是Pad库中自 带的
完成在Pad Area上的电源地环[1]
• PreRoute--Connect

Port to P/G 逻辑连接Pad单元上 的电源地的pin脚
库转换文件DEF
• 在设计交换形式(DEF)中设计数据的ASCII
• •
表现 包括设计网表(所有单元及它们的连接说明) 包括有关设计、通孔、元件、网、group、扫 描链和约束
“Place and Route”的作用
• 版图是由三种类型的参考单元组成
宏单元 (ROMs, RAMs, IP blocks) 标准单元 (nand2, inv, dff, ...) Pad单元(input, output, inout, Vdd, Vss pads) • 你必须在Floorplanning这个阶段定义宏单元和 pad单元的位置, 在Placement and Routing 之前 • 工具将在Placement阶段在基于布线能力和时 序上自动放置所有的标准单元 • Pins将在Routing这个阶段连接,但必须基于时 序
• •
Placement流程
• 此流程是为了 •
按照特定要求 放置元件 分析并且使其 最优化
加入DEF文件,并且删除其中的扫描链
• 加入DEF文件 • Tools--Data Prep
Netlist In--DEF In • DEF文件包括设计网表(所有单元及它们的连接说明)、有关设计、 通孔、元件、网、group、扫描链和约束 • 删除扫描链 • PrePlace--Scan Chain: Optimize/Delete Scan Chain
Vias:金属之间的连接物
• 连接不同层的金属需要一种或更多的Vias
Example: 连接一个信号从金属1到金属3需要两种 Vias和中间的金属2来连接
芯片设计全流程
Astro软件的启动
• 在UNIX环境下,建立工作目录,(此目录是为
了保存astro在工作过程中的数据,astro在工 作过程中产生的脚本和log文件也在此建立), 然后在工作目录上启动Astro • 启动命令为 UNIX% astro&
• 综合后的门级的verilog文件 • 时序文件(SDC) • PAD放置信息文件(TDF) • 库转换文件(DEF)
PAD放置信息文件TDF
• TDF文件定义了PAD的名称,PAD的尺寸,PAD放置
的方向位置.如图:
前端提供的文件
• 综合后的门级的verilog文件 • 时序文件(SDC) • PAD放置信息文件(TDF) • 库转换文件(DEF)
Netlist In--Verilog ToCELL (auVerilogToCell) • Library name和 output cell name 可以加用户自己选 择的名字 • Top module name 要填上网表最顶层 的模块名 • Verilog file name 和tech file name 要加上路径和名称
• PreRoute— •
Straps 创建电源环 带有横向和 纵向两种, 需要分别创 建 设置电源环 带要输入环 带的具体位 置

Blockages
Soft and Hard Placement Blockage
• PrePlace--Placement Blockage: Create Hard Blockage • PrePlace--Placement Blockage: Create Soft Blockage


Design & timing setup流程
设计库的创建
创建一个设计库 和一个初始单元 是为时序设置和 布局做准备的, 其步骤如下: 用工艺文件创建 一个设计库 把参考库指到设 计库上 把网表读入设计 库中 创建初始单元 保存层次化关系
• • • • •
创建设计库和初始单元的方法
• Tools--Data Prep
设计约束条件(SDC)
• SDC (Synopsys Design Constraints),是Synopsys的设计约束条件,有其特定的
• •
格式(如下图) 由Synopsys公司的时续分析工具Prime Time生成 在自动布局布线过程中输入SDC文件,将使P&R过程,满足时序设计要求
前端提供的文件
导入SDC文件
• Timing--Constraints: Load SDC
(ataLoadSDC) • SDC (Synopsys Design Constraints)设计约束条件
Timing Setup(1)[选择寄生模型]
• Timing--AstroTime: Timing Setup • 选择TLU+寄生模型
确定好的精确的基本逻辑门版图 每一个单元通常都是等高的 一个标准单元库是包含着各种标 准单元的集合 这类标准单元库通常是由专门制 作库的团体提供
前端提供的文件
• 综合后的门级的verilog文件 • 时序文件(SDC) • PAD放置信息文件(TDF) • 库转换文件(DEF)
前端提供的文件
• 综合后的门级的verilog文件 • 时序文件(SDC) • PAD放置信息文件(TDF) • 库转换文件(DEF)
集成电路后端设计流程
• --Synopsys后端工具astro的使用
Astro的作用是什么?
• Astro将门级网
表,标准单元、 宏单元、pad单 元一起产生一 个放置好并且 布好线的物理 版图。 • 这个版图必须 适合特定的时 序约束、模型 尺寸和其它的 芯片规格。
Foundry提供的后端库文件
完成在Pad Area上的电源地环[2]
• PreRoute--Pad

Rings 物理连接Pad单元上 的电源地的pin脚, 形成电源地环
确定宏单元的放置
• 放置宏单元可以用手
工将宏单元移动到 Core Area的适当位置 中
在Core和Macros上加上电源地环
• PreRoute Rectangular Rings • 当要在Core上加ring时Around
Hale Waihona Puke Baidu
Milkyway数据库
• Astro中用的参考库都是milkyway数据库, • • •
是和设计库的数据分开的.一般包含另外 三个部分数据: CELL:所有layout数据 FRAM:在布局布线中用的抽象数据 LM:用于时续和功耗分析上的逻辑模型
什么是标准单元库?
• 每一个标准单元的版图都是预先 • • •
加入参考库
一般需要加入3 种参考单元库 • Standard cell lib • Macro cell lib • Pad cell lib
加入TLU+寄生模型加入Milkyway数据库 中
• Tools--Data Prep
Tech File--ITF To TLU+ • 加入TLU+寄生模型到 Milkyway数据库中是为了 之后用Star-RCXT做寄生 参数提取 • 选择MIN&NAX数据是为 了提取最精确的参数

Technology File 工艺文件(.tf) 版图显示文件(display.drf) 标准单元、I/O pad的gds2文件 包含标准单元、 I/O单元后端信息的 Milkymay数据库 Best、Typical、Worst三种状态的ITF文件 来生成tluplus文件,用于寄生参数的提取 DRC、LVS的规则文件
连接电源地的macro端口和pad到环上
• PreRoute Macros/Pads • 这个步骤可以把macro的电源 地端口和电源地pad连到最近的 电源地环上
ASTRO流程[Placement]
Placemet Stag

Placemeng的目的就是以容易饶线为目标将元件摆放至core area,并达到时 序上的需求. 解决时序问题的方法有两种:一种是timing driven placement,利用cell moving方式尽量将关键途径上的元件摆放在一起以降低元件与元件之间相 互连接的延迟;另一种为placement optimization,包括cell bypassing cell resizing,buffer/inverter insertion等 如果电路中包括scan chain(扫描链),建议在进行placement之前,打断其 连接,在clock tree synthesis(CTS)之后再重新连接,这样饶线会比较容易。 Scan chain将所有的连续的一个个pin脚按顺序串起来,假设在placement 时没有按照其顺序摆放,那么饶线是非常困难的。但是在placement时就 最佳化摆放位置,会浪费非常多的执行时间,并且有可能无法对时序做最 佳化。因此,在placement之前必须将scan chain拿掉,等到CTS后再重新 连接起来,并且其连接的顺序会和打断前不同。
ASTRO流程[Floorplanning]
Floorplan stage
• Floorplan是整个布局布线中最重要的一个
步骤,也是设计者掌控布局好坏的一个重 大环节。一个不好的Floorplan 可能会造成 芯片时序无法满足,布线困难或power不足 • 主要有三步工作 pad area规划 core area规划 power配置
• • • •
Floorplanning流程
在此流程中将 创建一个平面, 并且将Pad单 元和宏单元放 置并且定位并 且将拥挤降到 最小化
导入TDF文件
将之前生成的有Pad单元放置信息的TDF文 件导入到设计库中 axgLoadTDF
Floor planner
Floorplan--Floor Planner (axgPlanner) 在此可以设置core的宽长,core与pad之间的距离,标 准单元的放置方式
布局的区域
在一般情况下,一个芯 片是由两个区域合并 成的 Core Area Pad Area
• •
Core Area
• Core area 一般是用于 •
放置标准单元和宏单 元的区域 其大小,图形等可以在 Floor Planner中设置
Pad Area
Pad Area一般由四部分组成 Input/Output/InOut Pads Power pads and corner pads Pad fillers P/G rings
ASTRO流程
ASTRO流程[Design &timing setup]
Design & timing setup Stage
• Design & timimg Setup的目的为设定P&R (Place
and Route)的环境,包括建立design library,加入 reference library 加入technology file,读取电路加 入约束,设定timing等 需要将reference library, technology file, gatelevel netlist的资料准备好。 Design library是用来储存电路资讯, reference library是已事先建好的元件。standard cell,IO pad,memory都属于reference library, technology file定义了P&R规则
门级网表是从哪来的?
• 门级网表通常是
Design Conpiler 这类综合工具产 生的。 • 这类逻辑综合工 具“综合”了 RTL (register transfer level) code,使它转换 成门级网表,并 在设计约束下使 其速度和尺寸最 优化。
前端提供的文件
• 综合后的门级的verilog文件 • 时序文件(SDC) • PAD放置信息文件(TDF) • 库转换文件(DEF)
相关文档
最新文档