ICC的placement后,关于timing 约束不合理
小白求救啊,自己顶
lihai
set_output_delay
set_max_delay
set_min_delay
感觉唯一的优化手段就是group_path调整weight值。
timing 不好是指哪種, In to R, R to R, R to Out 哪種呢?還有時鐘約束會不會有overconstraint阿? Placement 是 routing 與 timing 的拉力結果要取得平衡.否則 timing 好 route 不出來也是白搭....
做的是mesh时钟,一直不太理解你们cts时钟平衡了什么的。那个target skew是什么东西?
你所说的timing很差是相对于init阶段而言的话,那么就有如下的理解:
1.init阶段和place后的timing report使用的都是相同的sdc,如果timing恶化很多,主要就是由于place阶段trail route之后的工具会根据route结果提取寄生参数,net delay计算结果相比init所使用的WLM变化较大,这是正常的情况,所以可以排除sdc的问题,但是可以根据place的结果来评估自己的floorplan的质量,看module分布是否合理。
2.如果是约束有问题,那么在init阶段,就会出现vio,这时候要关注sdc的约束是否正确,IN2REG,主要关注set_input_delay,REG2OUT,主要关注set_output_delay,j还有set_false_path是否完整
受教了,您说的init是指前端综合后报的timing吗?小白求教还有若在Placement后,有timing violation,其实总结起来就是三点:关注约束是否合理,调整floorplan,然后设置group
不要轻易设置bound,因为工具是timing驱动的placement,认为设置bound不好就会使结果更差,不过这个看情况。您一般会debug的方向是什么?
一起讨论下
您一般会怎么优化place的timing?debug的方向有哪些?设置group_path感觉只能针对少量的path,如果有大量的设置group_path都不知道怎么设置了,假如有上千条。不知道我理解的对不
我做的是blobk,一般只关注regto reg吧?还需要关注In toreg等其他三种path类型吗?您说的过度约束是指?是指max_transition和max_fanout设置的不合理,太小了吗?
首先你要看为什么变差了,差别大的在哪里?
是约束不好,还是place没做好,还是floorplan不合理。
具体问题具体分析。
您肿么不搭理我,新人有好多困惑,求传递正能量,帮我解答下
您一般可能关注去修改哪些约束?
说的太笼统, 要看你想重点优化哪部分timing
我一般不改的
placement结束后timing变差也不一定是约束不合理,还是看你具体是什么问题。所以首先还是看问题本身,到底是什么原因引起timing变差,然后再相应的找解决办法。
她的意思貌似说place出来的结果不好,place应该怎么做