xsection: etch width is wider by 2 * dbu - bug or fearure

Hi Matthias,
I just noticed that what etch method behaves differently when using mask.etch vs just etch, namely it adds 2*dbu to the width when using etch without mask.

For example I have 200nm wide mask feature for devleoping resist opening using mask().etch - which produces 200nm wide opening. But when I etch hardmask through that opening in the resist, the resulting width in the hardmask is 200nm+2*dbu. Is it a bug or feature or necessity of the xsection engine?

Is there a way to have it 1:1 ?

 delta(20 * dbu)
@SiOx = grow(0.7, 0.7, :mode => :round)
@resist = grow(0.4, 0.4, :mode => :round)

#developing resist
mask(@l_litho).etch(0.5, 0, :mode => :round, :into => @resist)

#etching hardmask
etch(0.3, 0.0, :into => @SiOx)

Mask feature:

Result after resist development: mask(@l_litho).etch(0.5, 0, :mode => :round, :into => @resist)

Result after etching into SiOx: etch(0.3, 0.0, :into => @SiOx)

Comments

  • Sigh ...

    This is why I abondoned XSection. It suffers from a lot of simplifications. It is a smart painting tool, nothing else. People simply expect too much.

    "delta" is some cleanup distance and XSection is free to apply variations of this dimension.

    You have set it to 20*dbu which I assume is 20nm. On each side. You can first set the DBU to something smaller (using dbu, e.g. to 1e-5) and reset delta to somewhat less, if possible. Then this effect will be reduced, but never vanish.

    Matthias

  • I'll note that in real process lithography there is often
    a mask sizing applied at mask fab paperwork time, to
    return an on-wafer feature CD that is as-drawn, based
    on known lithography error (PR develop, over/under-etch,
    etc. all stack up per layer).

    So you could do that "as if" and note the same in any
    reportage, and nobody would blink. You've quantified the
    "process error" here, the rest is clerical.

Sign In or Register to comment.