OPC & Mask Data Preparation (MDP) Guide

1. MDP Overview

Mask Data Preparation (MDP) converts OPC-corrected layouts into mask writer-ready formats (MEBES/OASIS). Key tasks include polygon fracture, sliver removal, shot count optimization, and mask layer mapping.

2. Pegasus vs Calibre MDP Comparison

Feature Cadence Pegasus MDP Calibre MDP
Main Purpose OPC layout → Mask writer format, fracture, shot optimization, layer mapping Same, tightly integrated with OPC/RET workflow
Fracture Rectangle / Trapezoid, shot merge automation Rectangle / Trapezoid, iterative merge
Sliver Handling Automatic removal + merge, min width configurable Automatic removal + merge
Shot Count Optimization Hierarchy reuse, trapezoid fracture, OPC-aware local optimization Hierarchy reuse, incremental OPC-aware optimization
Layer Mapping GDS → Mask layer, OPC/SRAF included GDS → Mask layer, OPC/SRAF included
Output Format MEBES / OASIS MEBES / OASIS
Strength Mask-centric, shot optimization automation Tightly integrated with OPC & RET verification

3. Pegasus MDP Step-by-Step Flow

OPC Corrected Layout (GDS) │ ▼ +---------------------------+ | MDP: Fracture | | - Rectangle / Trapezoid | +---------------------------+ │ ▼ +---------------------------+ | MDP: Sliver Cleanup | | - Remove width < 10nm | | - Merge adjacent edges | +---------------------------+ │ ▼ +---------------------------+ | MDP: Shot Optimization | | - Merge shots | | - Hierarchy reuse | | - Trapezoid fracture | +---------------------------+ │ ▼ +---------------------------+ | MDP: Mask Layer Mapping | | - OPC / SRAF layers | | - Priority / print check | +---------------------------+ │ ▼ +---------------------------+ | Output Mask File | | - MEBES / OASIS | | - Shot count report | | - File size report | +---------------------------+ │ ▼ [Mask Writer / Tape-out]

4. Key Concepts

5. Pegasus MDP Shell Example

#!/bin/bash
CALIBRE_HOME=/tools/pegasus
RULE=../rule/mdp.rule

$CALIBRE_HOME/bin/pegasus_mdp 
-64 
-turbo 32 
-mdp 
-hier 
-runset $RULE 
-log mdp.log

6. Pegasus MDP Rule Deck Example

LAYOUT SYSTEM GDSII
LAYOUT PATH "../output/opc_corrected.gds"
LAYOUT PRIMARY top

MASK WRITE MEBES
MASK MEBES GRID 5nm
MASK MEBES FORMAT 4

FRACTURE ENABLE
FRACTURE GRID 5nm
FRACTURE MAX_VERTICES 6
FRACTURE TRAPEZOID YES

SLIVER REMOVE YES
SLIVER MIN_WIDTH 10nm

HIERARCHY OPTIMIZE YES
HIERARCHY CELL REUSE YES

SHOT OPTIMIZE YES
SHOT MERGE YES

MASK OUTPUT "../output/mask_mebes.mebes"
REPORT SHOTCOUNT YES
REPORT FILESIZE YES

7. Interview One-Liner

English: In Cadence Pegasus MDP, we fracture OPC polygons into rectangles and trapezoids, remove slivers, optimize shot count, map mask layers, and generate MEBES or OASIS files for mask writer submission.