ICC - 数据准备


1. 需要准备好的文件

  • 逻辑层:需要.db、.sdc、.v文件
    • .db:通常与DC使用的库是相同的,提供std_cell、IO、Macro时序、功耗和面积等信息,包含器件延迟,工艺角等信息。
      • 需要设置相应的库为target_library和link_library。
    • .sdc:由DC导出,可人工修改,使其满足设计要求。
    • .v:由DC导出,门级网表文件。
      • 除了可以读入.v文件还可以读入.ddc文件,.ddc中不仅包含了netlist、sdc,还可以包含一些物理信息:placement blockage,-spg信息等。
  • 物理层:需要.mw、.tf、TLU文件
    • Milkway:记录工艺和标准单元、macro、pad cell物理相关信息,以及这些单元在布局时需要的最小间隔和对绕线的要求等。
      • 指定.tf文件以及mw_reference_library(包括使用的stdcell/IP等physical library)可通过下面指令。
        create_mw_lib -tech $TECH_FILE -mw_reference_library $MW_REFERENCE_LIB_DIRS
        
      • Milkway有多种view模式,可以看这篇文章。比较常用的是:CEL/FRAM,前者更为具体,而后者更抽象。
        • 对于Stdcel:IP厂商一般会同时提供CEL View+FRAM View,以及GDS+LEF。

        • Macro(包括Memory,PLL,IO等):一般IP厂商只提供GDS+LEF,我们需要使用synopsys的Milkway工具将其转化为对应的CEL和FRAM文件,以便ICC使用。

          细节 抽象
          Encounter GDS LEF
          IC Compiler CEL View FRAM View
    • physical library :典型的ICC流程中,物理库的信息是被包含在Milkyway数据库中。
    • .tf:工艺文件,提供了technology-specific信息以及tile的宽高,例如:每层金属的名称、物理和电学特性。另外,ICC要求TF必须包含Design Rules:包括width,pitch,spacing等值的定义。
    • TLU+
      • RC寄生模型文件,用于计算互连线RC,有多个corner的建模。
      • 由工艺厂商提供,但如果工艺厂商仅提供了itf文件,可以通过工具StarRC使用grdgenxo将itf文件转换成tluplus文件。指令如下。
        grdgenxo -itf2TLUPlus -i <ITF FILE> -o <TLU+ file>
        
        • 在Signoff时,可以使用STARRC抽取的nxtgrd文件(该文件比tluplus有更详细的信息),导入pt中。
  • IP库:.sldb文件
    • synthetic_library:DesignWare的可重用IP库,将运算符号转换成特定的库。

2. 指定库文件

  • set link_library:为网表中的每个子设计在ICC内存中找到相应的设计。
  • set target_library:与DC一致,使用link library进行翻译,优化后映射到目标库中。
  • set_min_library:同时指定bestcase用作保持时间分析以及指定worstcase用作建立时间分析。(用MCMM分析更好)
    • MCMM(Multi Corner - Multi Mode):让ICC吃掉所有scenario的时序约束,让软件自行评估和优化;例如一条违例的路径可能出现在不同的scenario中,有不同的时序裕量,有的-1,有的-0.2,那么ICC会在裕量最差的那个scenario中进行修复。在后面ICC Placement处还会详细介绍。
set_min_library "./wc_ccs.db" -min_version "./bc_ccs.db"

3. 检查物理库和逻辑库的一致性(check_library)

  • 默认检查命令:check_library
  • 完整检查命令:set_check_library_options -all (还会检查UPF power的约束,MMMC,CCS电流源模型等)

4. 设置0互联延时

  • 首先在最理想的情况下看是否存在setup的违规,如果违规则应返回前端修改设计。
set_zero_interconnect_delay_mode true
report_timing -delay_type max
set_zero_interconnect_delay_mode false
posted @ 2023-06-13 16:13  可达达鸭  阅读(425)  评论(0编辑  收藏  举报