geNewMakeMacro使用
请高人指点!
从算法上看, geNewMakeMacro和 BPV 是有一定差别的, 具体不清楚, 估计是Astro对于同一个操作的不同想法,所以都保留了,
geNewMakeMacro一般用于对block level 做fram,给top用,也可以对一般的macro做,
BPV(auExtractBlockagePinVia )是通用的,对io , std cell , macro都能做,
Astro做FRAM view的流程特复杂, 比如
1)read gds by auStreamIn
2) smash gds by cmSmash
3) load port description file :dbSetCellPortTypes , 这个可能都要手写
4)cmMarkCellType as macro , io
5) geNewMakeMacro or BPV ,
箭头抽不出来,有可能是port file没给,你可以看看Milkyway user guide,上面讲的比较清楚
最简单的方法还是 read_lef ,通过lef来做framview 最简单,
只要lef不要错得太厉害, pin位置,size大小对就行了,
你是读入gds来做的么
小编你好我在用Milkyway 把gdsstreamIn -> smash (explode text )之后,查看 生成的mw cel,text 是保留下来的,但 BPV
抽取的FRAM 没有任何terminal 生成,里面图形全部是user enter type, owner net 为空。
实际上我用 dbsetcelltypes定义了VDD VSS ,感觉也没什么用。
bpv对话框里 extract pin by text-> Metal# text 写不写都抽不出来。
在文档里看到 bpv之前 要用tcl mode加pg port声明:
“set_attribute [get_ports VDD] port_type "Power"
set_attribute [get_ports GND] port_type "Ground"”
试过一下,报warning: No port objects matched ‘VDD'
请问,streamin gds之后它的port定义只是从 dbsetcelltypes 得到吗,port只定义pg 会导致全部port 都得不到吗?
如果是hard macro,建议用geNewMakeMacro , stdcell采用bpv的,
不行通过lef 做,最快