Alternative contact DRC rule for Diva

V

Vaibhav

Guest
Hi all,

I work on the MOSIS 0.5um technology and we use the NCSU cadence
development kit. Mosis defines rules when you want to make denser
contacts with more constraints on the surrounding areas. These are
called alternative contacts and the rules in terms of lambda are
defined here: http://www.mosis.com/Technical/Designrules/scmos/scmos-contact.html

I want to export my design to Tanner tools. I have a MOSIS PDK from
tanner but in the DRC rule deck, the DRC rules for the above mentioned
contacts is not defined. I defined most of the rules, but I am stuck
on one rule which says that if you many contacts on say poly then the
distance from contacts to active should be 3 lambda. Idea is to detect
that you have multiple contacts and run the rule.

The Diva DRC rule from NCSU kit checks this error with following
command:

;; 5.7.b
sprintf( errMesg "(SCMOS Rule 5.7.b) poly contact to active
spacing, many contacts: %.2f um" (lambda*3.0))
saveDerived( geomGetLength( drc(cpEdge activeEdge sep <
(lambda * 3.0)) length > (lambda * 7.0) fig ) errMesg )

Can somebody please help me understand how this is checking the above
rule. Here's what I understand:
1. first check separation of poly contact edge(cpEdge) to edge of
active (activeEdge)
2. DRC command generates an error layer if this separation is less
than 3 lambda
3. Use geomGetLength command to find edges in the error layer whose
length are greater than 7 lambda and return error as a figure and save
it in the database.

What I don't understand, that how does checking for edge lengths
greater 7 lamda accomplishes this rule. What does the DRC command
return on which the geomGetLength operates on?

I would appreciate if any body could shed light on this.

Thanks

Vaibhav Garg
 

Welcome to EDABoard.com

Sponsor

Back
Top