IC Compiler II(ICC2) 后端设计流程简介

IC Compiler II(ICC2) 后端设计流程简介

一、设计流程图

Alt

二、Overview

Alt

三、Start ICC2

库文件操作命令:

  1. 创建库文件
    creat_lib name
    -ref_libs {option} #参考库
    -technology #导入技术文件
    -use_technology_lib #使用技术库文件
    -scale_factor #尺寸范围(或使用库技术文件定义:set_app_options -name lib.setting.use_tech_scale_factor -value true)
  2. 打开库文件
    open_lib
    No path :search by search_path variable .
    Relative Path: (.)当前文件夹 (…) 上个文件夹
    Absolute path: (/)
    打开库文件时会自动打开所有的ref_lib
    -read #只读模式打开
    -ref_ libs_for_edit #参考库编辑
  3. 当前设计库
    current_lib
  4. 获取所有打开的库
    get_libs
    get_libs -explicit 当前打开的库
    get_libs -implicit 获取所有参考库
  5. close_lib 关闭库
  6. save_lib 保存库(从memory 保存到disk)
    -compress 以压缩文件形式保存

Using Application Options

naming convention: category[.subcategory].option_name

get_app_options #list all available application options
get_app_options timer.* # list all available timer application options
report_app_options  # a report of application options

Man Pages

man report_timing #man the command of report_timing
man plan_options #man command followed by *category_options*
man plan.place_options # man command followed by *subcategory_options*
man PSYN-025 #查询错误信息

快捷键

快捷键Option
ctrl+l打开所选对象列表
ctrl+q查询对象信息
ctrl+h高亮
ctrl+m取消高亮
ctrl+r打开属性窗口

Floorplan

目标:

  • 确定芯片的尺寸,形状
  • I/O单元、填充和角落pad的位置
  • 宏单元(hard marco,IP,Blocks)的放置和blockages的规划
  • 电源规划

Placement and Opt

CTS and Postcts

Route & PostRoute

STA(修set_up 和hold violations)

 修复策略:增大 clok path 延迟或者 减小 data path 的延迟。由于clock path的延迟会延伸到下一级,因此往往先考虑减小 data path的延迟。 减小data path的延迟可以首先考虑将HVT ,RVT的cell换成LVT的cell,通过增加一定的功耗,减少延迟。

Finish

ICC2中PR的常用命令:

  1. 手动修timing
get_alternative_lib_cells -current_lib   lib_cell       #从当前库中查找可以用来替换lib_cell的cell
get_alternative_lib_cells -libraries  lib_cell      #从给定库中查找可以用来替换lib_cell的cell (默认从全部库中查找)
size_cell instance_cell_name -lib_cell  lib_cell_name #将该instance换成lib_cell
  1. 查看calibre drc 结果
read_drc_error_file
-drc_type calibre
#valid values are "calibre" and is default 
-error_data error_data_name 
#Default:find in the drc report file
-file calibre.report 
#DRC error report to read in

Tips: error cell not saved.using followong commands:
save_block #to save the error cell
close_drc_error_data -force #close the error cell
remove_drc_error_data -force #(to remove the error cell)

### 数字IC设计中的关键路径分析 在数字IC设计中,关键路径是指决定芯片最大工作频率的最长延迟路径。通过对关键路径的有效分析和优化,能够显著提升电路性能并满足时序约束。以下是关于关键路径的概念及其分析工具和方法的具体说明。 #### 1. 关键路径定义与重要性 关键路径是从输入端口到输出端口之间具有最长传播延迟的信号路径[^1]。它直接影响着整个系统的运行速度,因为任何超过指定时序约束的关键路径都会导致功能失效或性能下降。因此,在设计流程的不同阶段都需要对关键路径进行监控和优化。 #### 2. 分析工具 用于关键路径分析的主要工具有以下几种: - **Design Compiler (DC)** Design Compiler 是一种常用的逻辑综合工具,它可以生成初步的时序报告,并帮助工程师理解哪些部分可能成为潜在的关键路径[^2]。 - **PrimeTime (PT)** PrimeTime 是业界标准的静态时序分析工具之一,能够在后端实现之后提供精确的时序验证结果。通过 StarRC 提取寄生参数后,这些数据会被传递至 PT 中完成最终的时序检查。 - **Innovus 或 ICCompiler II (ICC2)** 这些物理实现工具不仅支持布局布线操作,还集成了动态时序收敛机制来处理复杂的设计挑战。它们会自动调整单元位置或者插入缓冲器等方式缓解关键路径上的压力。 #### 3. 解决方法 针对发现的关键路径问题,有多种策略可用于改善其特性: - **逻辑重构** 修改 RTL 描述以减少组合逻辑深度或将某些计算移至其他周期执行,从而降低整体延时。 - **技术映射优化** 更改目标库元件的选择,比如选用更快但消耗更多功率的标准细胞替代原有组件。 - **增加流水线结构** 向现有架构引入额外的寄存器级划分原本连续的操作序列,这样虽然增加了吞吐时间成本却能有效缩短单次迭代所需的时间间隔。 ```python # 示例代码展示如何向RTL添加pipeline stage always @(posedge clk or negedge reset_n) begin if (!reset_n) reg_stage <= 'b0; else reg_stage <= input_signal; # 添加中间寄存器 end ``` - **电源网络改进措施** 对于由IR压降引起的大规模区域内的慢速节点情况,则需重新审视全局VDD/VSS分配方案以及局部补偿电容配置等方面的工作。 #### 结论 综上所述,利用先进的EDA软件配合合理的算法手段可以很好地应对现代超大规模集成电路所带来的各种难题。同时也要注意到随着制程节点不断缩小带来的新现象也需要持续关注研究进展以便及时更新解决方案。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值