Innovus 对multibit 的支持

Posted lelin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Innovus 对multibit 的支持相关的知识,希望对你有一定的参考价值。

 

 

如果在综合阶段没有做multibit merge, 或综合阶段由于缺失物理信息multibit cell merge 不合理,那就需要PR 工具做multibit merge 或split. 

 

Innovus 支持multibit 的merge 及split, 在setOptMode 中由如下两个option 控制:

  • -multiBitFlopOpt false| true| mergeOnly| splitOnly  

  • -multiBitFlopOptIgnoreSDC true| false

此外还可以用如下两个attribute 控制某些特定的寄存器是否要做merge 或split: 

  • dontMergeMultibit(settable): bool

  • dontSplitMultibit(settable): bool

顺便提一句,在Innovus 中要找一个object 的属性,可以用命令dbSchema 来check, 例如:要找instance 相关的关键词是multi 的属性,用命令:

dbSchema inst *multi*

返回值如:

技术图片

 

Innovus 不同阶段对mulitbit 的支持


P&R分好多步,每一步可支持mutibit 操作都不同,具体如下: 

preCTS:

  • Merging improves bits per flop metric.

  • Splitting improves bottleneck timing.

postCTS:

  • No merging is supported currently due to the impact it may have on the clock tree.

  • In Innovus 17.1 version, splitting of flops to improve bottleneck timing is supported.

postRoute:

  • No merging or splitting is supported.

 

在Innovus 中如何report multibit 优化结果


在Innovus log 中可以看到如下的关于multibit 的优化信息:

技术图片

 

 然而没有最终的summary. 可以用下面的proc 来report, 下载原始脚本请查看参考文献网址。

技术图片

技术图片

使用方法及输出:

技术图片

做了multibit 优化之后,会改变寄存器的名字,可能会对形式验证造成影响,可以在Innovus 中用命令dumpMultiBitFlopMappingFile 来dump multibit mapping file 给后续流程用,该命令可以dump 如下file: 

  • multi_bit_input_pin_mapping: includes multi-bit input     pin mapping information 

  • multi_bit_mapping: Includes multi-bit     optimization mapping information 

  • mbit.json: Includes multi-bit flop     mapping attribute information

以上是关于Innovus 对multibit 的支持的主要内容,如果未能解决你的问题,请参考以下文章

innovus 创建当日日期的文件夹

Innovus卡住,提示X Error:

Innovus update_io_latency

Perl教程 - 数组

微软将于明年4月终止对 Office 2013 的支持

P & R 11