I am trying to install fluid gaurd rings and I am getting the following error. Any help on this??
*WARNING* (TECH-280310): Can not display install guard ring form because no valid technology library was found.
Also, I have created a MPP. I wanted to add rodStrech handle operation to it so that I can strech it in vertical direction to get via's in rows (Usually MPP's has strech operation only in X -direction. Trying to add strech operation in Y axis). I have looked into couple of posts and could not figure out the best suit for my requirement. Can any1 please add y axis strecth operation to my piece of code.
prog((tech techLibName techFileName) techLibName = "cmos045" techFileName = "tech.db" tech = techOpenTechFile(techLibName techFileName "r") if(tech==nil then return(nil) ) ;The template name is : M2X_M3X
leDefineMPPTemplate( ?techId tech ?name "M2X_M3X" ?layer list("M2X" "drawing") ?width 0.130000 ?choppable nil ?endType "truncate" ?beginExt 0.000000 ?endExt 0.000000 ?justification "center" ?offset 0.000000 ?encSubPath list( list( ?layer list("M3X" "drawing") ?enclosure 0.000000 ?choppable nil ?beginOffset 0.000000 ?endOffset 0.000000 ) ) ?subRect list( list( ?layer list("VIA2X" "drawing") ?width 0.070000 ?length 0.070000 ?choppable t ?sep 0.000000 ?justification "center" ?space 0.090000 ?beginOffset -0.030000 ?endOffset -0.030000 ?beginSegOffset 0.000000 ?endSegOffset 0.000000 ?gap "distribute" ) ) ) ; end of leDefineMPPTemplate procedure) ; end of prog in ASCII file
For Fluid Guard Rings, Derek is correct. Both the technology library itself must be writable (the directory), and if there's a data.dm file, that must be writable too. For a library to be considered to be a technology library, it must have a tech.db and that must be writable too.
For MPPs, you cannot add stretch handles to them (as level-0 objects). Stretch handles are only for pcells - if you had a pcell with a parameter which controlled some aspect of the MPP, you could use rodAssignHandleToParameter to associate a rod handle with a pcell parameter. If you're trying to stretch out the number of rows of contacts, then that's not that straightforwards, because that would vary the number of subpaths/subrectangles you are generating in the MPP. A fluid guard ring is a better way to achieve this (that was much of the reason for their introduction).