| ||
背景:在先进工艺中,金属线在path delay当中占的比例越来越大,因此优化绕线也是提升设计性能的一个突破口。而在实际的设计中,会面临不同情况下的特殊绕线需求,因此进行有选择性的绕线的技巧也是工程师必备的技能之一。
在P&R当中,金属线可分为电源/地线,信号线,时钟线,特殊绕线等等,本篇笔记主要介绍信号线的处理技巧。主要分为手动画线和选择性自动绕线两个方面。
手动画线
规则:符合lef里的width,spacing等要求
Case 1, 面对特殊的IP、hard macro等等的出pin,有可能不走在track上,工具自动绕线会有drc出现,这个时候可以用工具的gui界面采取手动画线的方式做一个引导,然后把画好的线fix住,后面可以依靠tool自动绕线完成完整连接。
Case 2,针对特殊的big buffer,需要预先画好信号线,并做NDR处理,避免drc,这里也可以采用手动画线的方式。
Case 3,针对timing critical的path再迭代的时候,可以选择性绕线,优先critical的path去绕。
Case 4,特别的drc的处理,针对特定区域的线进行切除删除并cut row:
proc delete_box_metal {layer} {
set box_list {0 0 100 100}
edit_cut_route -only_visible_wires -line {0 100 0 0}
select_obj [get_obj_in_area -area $box_list -obj_type special_wire -layer $layer]
delete_routes -layer $layer -selected -type special
}
delete_box_metal M2
split_row -area {0 0 100 100}
等等不同情况的对net的操作,慢慢积累。