caravel icon indicating copy to clipboard operation
caravel copied to clipboard

close missing DRC rules in klayout deck

Open jeffdi opened this issue 1 year ago • 14 comments

jeffdi avatar Jan 10 '24 16:01 jeffdi

issue surfaced on 2311 projects for hvi and nwell

jeffdi avatar Jan 10 '24 16:01 jeffdi

received violator cells from SWT, but they don't cover all the rules and we are missing Calibre reports to benchmark results. The reported are numerous.

jeffdi avatar Jan 10 '24 16:01 jeffdi

We can implement rules for ourselves based on the s8 calibre rules and the derived (generated) layer tables. But the generated layer tables are not part of the public documentation, so they would be for internal use only.

However, there are various rules in the public documentation that affect the generated layers. In some cases, these rules effectively become MR rules in the absence of any direct check of the mask layer itself. The rule nwell.9 (when HVI intersects nwell, the nwell must be completely covered by HVI) is one such rule. We need to add that rule to our own MR deck because we don't have MR rules for the generated layers. There are probably other similar rules that cover other generated layers.

RTimothyEdwards avatar Jan 10 '24 16:01 RTimothyEdwards

The current ruleset incorrectly checks MR_capm.SP.2 rule. The attached PDF shows how the rule should be applied.

capm_rules.pdf

DavidRLindley avatar Apr 11 '24 18:04 DavidRLindley

The current ruleset incorrectly checks MR_capm.SP.2 rule. The attached PDF shows how the rule should be applied.

capm_rules.pdf

@DavidRLindley there is still no explanation of what is met3_bottom_plate

marwaneltoukhy avatar Apr 14 '24 09:04 marwaneltoukhy

@DavidRLindley Couple of follow up questions:

  • Just to confirm Metal3 not continuous under CAPM, but electrically connected implies connectivity through other metal layers e.g.: met3 -> via2 -> met2 -> via2 -> met3
  • In scenario 3, does MR_capm.SP.2 apply to spacing between Met3_bot_plate and a met3 patch that doesn't enclose capm? There is such a case in the violator cells.

kareefardi avatar Apr 14 '24 15:04 kareefardi

Hi Marwan, All the Skywater documentation is pretty clear that met3_bottom_plate is Met3 AND capm grown by the minimum enclosure of capm by Met3 (0.14um).

Hi Kareem, I think the answer is yes to both questions. Your first question is a very good one. I should not have limited my scenario by Met3 only connection.

I will verify my answers with Skywater.

David

On Sun, Apr 14, 2024 at 11:25 AM Kareem Farid @.***> wrote:

@DavidRLindley https://github.com/DavidRLindley Couple of follow up questions:

  • Just to confirm Metal3 not continuous under CAPM, but electrically connected implies connectivity through other metal layers e.g.: met3 -> via2 -> met2 -> via2 -> met3
  • In scenario 3, does MR_capm.SP.2 apply to spacing between Met3_bot_plate and a met3 patch that doesn't enclose capm? There is such a case in the violator cells.

— Reply to this email directly, view it on GitHub https://github.com/efabless/caravel/issues/521#issuecomment-2054097236, or unsubscribe https://github.com/notifications/unsubscribe-auth/BFSQ4KMU7HKE6JIIRWIOH4LY5KNXTAVCNFSM6AAAAABBVBPS6KVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANJUGA4TOMRTGY . You are receiving this because you were mentioned.Message ID: @.***>

DavidRLindley avatar Apr 15 '24 12:04 DavidRLindley

Marwan, Kareem,

I verified the following with Skywater.

  1. met3_bot_plate is defined as (capm:dg AND met3:dg) sized by 0.14um
  2. the capm spacing (MR_capm.SP.1) needs to be satisfied regardless of how the metal3 geoms are connected.
  3. MR_capm.SP.2 applies to any met3 that is not connected to the met3_bot_plate.

David

DavidRLindley avatar Apr 15 '24 18:04 DavidRLindley

Thanks David. Should we assume that similar rules apply for cap2m?

kareefardi avatar Apr 16 '24 11:04 kareefardi

Yes.

On Tue, Apr 16, 2024 at 7:45 AM Kareem Farid @.***> wrote:

Thanks David. Should we assume that similar rules apply for cap2m?

— Reply to this email directly, view it on GitHub https://github.com/efabless/caravel/issues/521#issuecomment-2058894687, or unsubscribe https://github.com/notifications/unsubscribe-auth/BFSQ4KPKI7G6GANTWMVG4C3Y5UFMHAVCNFSM6AAAAABBVBPS6KVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANJYHA4TINRYG4 . You are receiving this because you were mentioned.Message ID: @.***>

DavidRLindley avatar Apr 16 '24 13:04 DavidRLindley

Two psdm rules are being flagged on some proprietary memory macro IP.

  1. psdm.4 : min. spacing across areaid:ce : 0.38um I think this rule is not applied correctly since both psdm geoms are inside areaid:ce.

  2. psdm.6a : min. psdm spacing on parallel edges in areaid:ce : 0.38um FAB looked at the attached PDF and agreed that our psdm.6a rule did not apply because the edges were not parallel. The correct rule to apply in this scenario is the lesser core rule 0.29um.

We can have a Zoom meeting if you want to view the errors.

psdm_rules.pdf

DavidRLindley avatar Apr 22 '24 18:04 DavidRLindley

As of 2024/May/08 these issues exist in the rules

  1. mcon straddling the areaid:core is truncated by the rules
  2. I have a couple examples in Chipalooza_1 where the a couple of licon shapes are being incorrectly flagged
  3. We need an global li density check.
  4. We need to settle on the final set of capm rules.
  5. The switches need to be address. They didn't work correctly in my last run of the most recent rules (core PSDM/NSDM).

DavidRLindley avatar May 08 '24 14:05 DavidRLindley

need to include new issues related to created layer DRC errors.

jeffdi avatar May 22 '24 15:05 jeffdi

remaining issues

  • licon
  • mcon
  • created layers rules - need to generate from reversed engineer work by Tim as well as violator

verify if new rule deck has created layer rules - then check for violator cells

jeffdi avatar May 22 '24 15:05 jeffdi