物理综合的设计流程研究 1.2综合方法 随着集成电路集成度的不断提高,对集成电路的设计提出了越来越高的要求,设计的芯片 必须具备高性能,高可靠性和高保密性,同时设计周期应尽可能短。通常,综合方法是指电路 从较高级别的描述自动地转换到较低级别描述地自动设计方法,即从RTL级HDL描述通过编译 产生符合特定工艺地门级网表,实际上也是从行为级描述自动化生成门级电路的过程。它已成 为九十年代以来ASIC设计的核心技术之一。 综合(synthesis):就是把思想转换为实现欲想功能的可制造的设计。综合是约束驱动和基 于路径的。 在这里,综合也就是把行为级或RTL级的HDL描述转换为门级电路的过程,用公式表示就 是: 综合等于=翻译+优化+映像 Synthesis=Translation Optimization Mapping 用图形表示就是:(如图1.2所示) residue 16'h0000: if (high_bits ==2'b10) residue statetable[index]: Translate else state table[index]16'h0000 HDL Source Optimize Map Generic Boolean GTECH Target Technology 图1.2综合的概念 5
物理综合的设计流程研究 1.2 综合方法 随着集成电路集成度的不断提高,对集成电路的设计提出了越来越高的要求,设计的芯片 必须具备高性能,高可靠性和高保密性,同时设计周期应尽可能短。通常,综合方法是指电路 从较高级别的描述自动地转换到较低级别描述地自动设计方法,即从RTL级HDL描述通过编译 产生符合特定工艺地门级网表,实际上也是从行为级描述自动化生成门级电路的过程。它已成 为九十年代以来ASIC设计的核心技术之一。 综合(synthesis):就是把思想转换为实现欲想功能的可制造的设计。综合是约束驱动和基 于路径的。 在这里,综合也就是把行为级或RTL 级的HDL描述转换为门级电路的过程,用公式表示就 是: 综合等于= 翻译+ 优化+ 映像 ( Synthesis = Translation + Optimization + Mapping ) 用图形表示就是:(如图1.2所示) 图1.2 综合的概念 5
物理综合的设计流程研究 对一个模型进行综合的基本步骤如图1.3所示 Read technology library Read RTL design Build generic netlist Define timing constraint Optimize the design Report Analysis Write out the netlist 图1.3综合的基本步骤 1.3物理综合概述及方法简介 Synopsys公司在上海举办的2000电子设计自动化大会推出了Synopsys历经四年投巨资开 发了物理级综合解决方案。本次大会把物理级综合专题作为重要的内容之一 Synopsys公司提出的“物理级综合(Physical Synthesis)”方案指的是随着半导体制造技 术步入深亚微米时代,C设计已不能以前后端来划分,而必需将逻辑设计和物理设计结合在一 起。 Candence公司的PKS(Physical knowledge Synthesis)软件就是Candence公司推出的针对 物理级综合解决方案的软件。该软件涵盖了整个逻辑综合和自动布局布线流程。使用PKS就可 以将前端的逻辑设计和后端的物理设计结合在一起,不再截然分开的设计,实现了“物理级综 合(Physical Synthesis)”。 6
物理综合的设计流程研究 对一个模型进行综合的基本步骤如图1.3所示 图1.3 综合的基本步骤 1.3 物理综合概述及方法简介 Synopsys公司在上海举办的2000电子设计自动化大会推出了Synopsys历经四年投巨资开 发了物理级综合解决方案。本次大会把物理级综合专题作为重要的内容之一 Synopsys公司提出的“物理级综合(Physical Synthesis)”方案指的是随着半导体制造技 术步入深亚微米时代,IC设计已不能以前后端来划分,而必需将逻辑设计和物理设计结合在一 起。 Candence公司的PKS(Physical knowledge Synthesis)软件就是Candence公司推出的针对 物理级综合解决方案的软件。该软件涵盖了整个逻辑综合和自动布局布线流程。使用PKS就可 以将前端的逻辑设计和后端的物理设计结合在一起,不再截然分开的设计,实现了“物理级综 合(Physical Synthesis)”。 6
物理综合的设计流程研究 第二章 逻辑综合与Ambit的使用 2.1逻辑综合的一些基本概念 2.1.1什么是逻辑综合? 公式表示就是:综合=翻译+优化+映像 Synthesis Translation Optimization Mapping 用图表示如图2.1所示 Translation Optimization Mapping alw3s①pc8 edge clock ifisd_sig) data out -Ibl; clse if (reset sig) data out-Ib0: else if (enable) da▣cn-da▣j Generic netlist (technology independent) Target netlist RTL HDL (technology dependent) 1-2 图2.1逻辑综合 2.1.2 Ambit综合的特征 使用Ambit进行逻辑综合的特征如下图2.2所示: Verilog/HDL EDIF Verilog/VHDL parser EDIF parser RTL synthesis DCL library TCL Library mapping Full-chip Command timing lib Interface library engine Scan test Insertion NaviGates Optimization library GUI SDF PDEF GCF Verilog/VHIDL 图2.2 Ambit综合特征
物理综合的设计流程研究 第二章 逻辑综合与 Ambit 的使用 2.1 逻辑综合的一些基本概念 2.1.1 什么是逻辑综合? 公式表示就是:综合= 翻译+ 优化+ 映像 ( Synthesis = Translation + Optimization + Mapping ) 用图表示如图2.1所示 图 2.1 逻辑综合 2.1.2 Ambit 综合的特征 使用 Ambit 进行逻辑综合的特征如下图 2.2 所示: 图2.2 Ambit综合特征 7
物理综合的设计流程研究 2.2 Ambit的一些特性 2.2.1 Ambit的一般特性 ◆提供基于文本的TCL Shell,.ac_shell。. ◆启动Ambit综合的虚拟模式-navigates,可以使用下面两个命令: navigates或者ac_shell-gui 2.2.2 navigates的界面 ◆一个调试和分析工具,界面如图2.3所示: Schematic Viewer A debug and analysis tool HDL Text Editor TCL Editor BookShelf e 是6】 Module Brower ac_shellconsole 图2.3 navigates的图形界面 2.2.3 Ambit的文件管理 ◆navigates的界面提供一个完整的易理解的文件管理。 ◆提供有HTML的帮助文件。 ◆在ac shell里的文本帮助文件。 在ac_shell里使用help<command name>命令 2.2.4输入和输出 Ambit综合时能够 ◆读入Verilog或者VHDL RTL门级网表文件。 ◆输出Verilog或者VHDL门级网表文件。 ◆读入和输出读独立于平台的Ambit Data Base(ADB)文件。 ◆输出SDF路径约束 ◆输入SDF标准延时文件(IOPATH/INTERCONNECT)。 ◆使用write_assertions命令输出时序信息。 ◆读入和输出PDEF文件 ◆读入RC寄生信息 ◆读入和输出EDF文件 ◆输出GCF文件 2.2.5前端特性 6
物理综合的设计流程研究 2.2 Ambit的一些特性 2.2.1 Ambit的一般特性 ◆ 提供基于文本的TCL Shell, ac_shell。 ◆ 启动Ambit综合的虚拟模式-navigates,可以使用下面两个命令: navigates 或者 ac_shell –gui 2.2.2 navigates的界面 ◆ 一个调试和分析工具,界面如图2.3所示: 图2.3 navigates的图形界面 2.2.3 Ambit的文件管理 ◆ navigates的界面提供一个完整的易理解的文件管理。 ◆ 提供有HTML的帮助文件。 ◆ 在ac_shell里的文本帮助文件。 在ac_shell里使用 help <command name> 命令 2.2.4 输入和输出 Ambit综合时能够 ◆ 读入Verilog或者VHDL RTL门级网表文件。 ◆ 输出Verilog或者VHDL门级网表文件。 ◆ 读入和输出读独立于平台的Ambit Data Base(ADB)文件。 ◆ 输出SDF路径约束 ◆ 输入SDF标准延时文件(IOPATH/INTERCONNECT)。 ◆ 使用 write_assertions 命令输出时序信息。 ◆ 读入和输出PDEF文件 ◆ 读入RC寄生信息 ◆ 读入和输出EDIF文件 ◆ 输出GCF文件 2.2.5 前端特性 8
物理综合的设计流程研究 ◆分层设计 ◆闩锁和触发推理 ◆情况语句,有限状态机,代码选择和ambits结构提示。 ◆移位链算法运算符和移位器的推理 2.2.6报告的特性 ◆report timing ◆report area ◆report_hierarchy report_design_rule_violations ◆report library ◆report_net ◆report fanin ◆report fanout ◆report_fsm 通过以上命令,Abit在综合结束后可以给出一些有关时序,面积,层次,设计规则违背, 库,扇入或扇出的信息。 2.3 Ambit在逻辑综合中的应用 2.3.1综合一个模型的基本流程 ◆读入工艺库(设置目标库) ◆读入VHDL或者Verilog HDL文件 ◆建立普通网表 ◆定义时序约束 ◆检查约束和网表 ◆对目标工艺优化普通网表 ◆分析设计并验证时序是不是达到目标 ◆输出结果及查看相关信息 2.3.2调用Ambit 调用Ambit有两种模式 ◆文本模式:ac_shell ◆图形模式:ac_shell-gui或者navigates 2.3.3读入目标库 ◆使用下面的命令来读入工艺库 read_tlf csmc06core.tlf 注意:csmc06core.tf(目标库)是csmc0.6um单元库 ◆设置你要使用的目标库 set_global target_technology csmco6core.tlf 9
物理综合的设计流程研究 ◆ 分层设计 ◆ 闩锁和触发推理 ◆ 情况语句,有限状态机,代码选择和ambit结构提示。 ◆ 移位链算法运算符和移位器的推理 2.2.6 报告的特性 ◆ report_timing ◆ report_area ◆ report_hierarchy ◆ report_design_rule_violations ◆ report_library ◆ report_net ◆ report_fanin ◆ report_fanout ◆ report_fsm 通过以上命令,Ambit在综合结束后可以给出一些有关时序,面积,层次,设计规则违背, 库,扇入或扇出的信息。 2.3 Ambit在逻辑综合中的应用 2.3.1 综合一个模型的基本流程 ◆ 读入工艺库(设置目标库) ◆ 读入VHDL或者Verilog HDL文件 ◆ 建立普通网表 ◆ 定义时序约束 ◆ 检查约束和网表 ◆ 对目标工艺优化普通网表 ◆ 分析设计并验证时序是不是达到目标 ◆ 输出结果及查看相关信息 2.3.2 调用Ambit 调用Ambit有两种模式 ◆ 文本模式:ac_shell ◆ 图形模式:ac_shell –gui 或者 navigates 2.3.3 读入目标库 ◆ 使用下面的命令来读入工艺库 read_tlf csmc06core.tlf 注意:csmc06core.tlf(目标库)是csmc 0.6um单元库 ◆ 设置你要使用的目标库 set_global target_technology csmco6core.tlf 9