在hierarchical design 中,一般需要调用 hard macro,top调用 macro 的方法有多种:
1. 调用macro对应的db
2. 调用 macro 的 ilm 模型(2013之后的icc 不再支持 ilm)
3. 调用 macro 的 abstraction view
推荐的方法是调用 db 或者调用 abstraction view,这两者又有些区别:
db 中描述的 macro 信息包括: pin name, pin cap , pin trans ……
abstraction view 中描述的信息包括:从 pin 到 macro 内部连接 pin 的第一级 register,这段 path 的 delay cap trans 等信息
怎样使用 abstraction view 呢?
首先需要再hard macro 中创建 abstraction view,命令如下:
set_active_scenario [all_scenarios]
create_macro_fram ## 首先要有 fram view
create_block_abstraction ## 产生 abstraction view
save_mw_cel ## 切记一定要保存,否则 abstraction view 不会保存到 cell中
然后在 top 使用如下命令调用:
set_top_implementation_options -block_references { macro01 macro02 } -reset ## 先清除设定
set_top_implementation_options -block_references { macro01 macro02 } ## 指定需要调用 abstr view 的macro
注意:
block 和 top 的 scenario 名字必须相同,否则无法匹配
如果两者名字不同,可以用这条命令来 mapping 映射:
set_block_scenario -scenario top_scenario -block_scenario blk_scenario -block_refer macro01
to be continue……
-----------------------------------------------------------------------