Klarf坐标转换逻辑

·

6 min read

先来看Klarf里面几组重要的参数:

  1. DiePitch,它是包含(x,y)的一组坐标值,也可以写作Die Size,基于Wafer Map上的每个小方格的长(X)跟宽(Y),单位一般为微米(um)

  2. SampleCenterLocation,它是包含(x,y)的一组坐标值,理解为以物理圆心为(0,0)点,第一颗Die(小方格)左下角交点距离(0,0)点的值,单位为微米

  3. Die Index,它是包含(x,y)的一组坐标值,理解为Die(小方格)索引,假设我们在平面建立坐标系,圆心跟坐标(0,0)点重合,我们以DiePitch的X长度在X轴上等距离画刻度,以DiePitch的Y长度在Y轴上画刻度,这时候我们手里有以DiePitch(x,y)为大小的小方格N个,我们沿着(0,0)点放第一个小方格叫(0,0)die,那它的Index为(0,0),沿X轴放第二个小方格,它的索引为(1,0),沿着Y轴放第三个小方格,它的索引为(0,1),等我们将小方格放满整个圆里时,便有了:(0,0)(0,1)(0,2)(0,3)(1,0)(1,1)(0,-1)(-1,0)(-1,1)(-1,2)(1,2)(2,3)(3,2)...等这么一组Die Index

  4. DefectList,缺陷清单,我们给每一颗缺陷编号,这个编号叫DefectID,再给每颗缺陷确定位置坐标,这个时候我们要考虑,有坐标一定有参考对象,这个坐标的参考对象是谁?那在整个Map绘制中,无非有两个参考对象,Wafer Map(我们画的这个圆)、基于wafer Map里面的Die(圆里每个小方格)。这样的话我们在坐标对应关系中最多应该可以看到两组坐标,一组叫(x,y),一组叫(Xrel,Yrel),这是我们来界定它的参考对象,第一组(x,y)是基于wafer圆心为参考点的坐标,第二组(Xrel,Yrel)是基于每颗die(小方格左下脚为0,0点)的坐标,第一组可以不存在,因为根据第二组可以计算得到

  5. SampleOrientationMarkType,标记物,是指在当前wafer中它的上下左右要以什么为参考值,一般有NOTCH(缺口)、FLAT(平边)

  6. OrientationMarkLocation,标记物方向,一般有四个,DOWN、RIGHT、LEFT、UP(0,90,180,270)

  7. 厘清上述名词关系后我们开始进行坐标转换(假设通过Xrel,Yrel,需要得到X,Y)

     已知Xrel为:1125671,Yrel为:117344;
     SampleCenterLocation的X为:9636001,Y为:4129002;
     DiePitch的X为:2782971,Y为:1567961,
     DieIndex的X为:0,Y为:47
     X = (Xrel + X_DieIndex*X_DiePitch) - X_SampleCenterLocation
     Y = (Yrel + Y_DieIndex*Y_DiePitch) - Y_SampleCenterLocation
     这个必须考虑Notch方向
    

    附Klarf样例文件

     FileVersion 1 1;
     FileTimestamp 07-13-15 13:00:36;
     InspectionStationID "KLA-TENCOR" "2360" "KLAXXXX";
     SampleType WAFER;
     ResultTimestamp 07-13-15 13:00:36;
     LotID "GOLDEN_MAP";
     SampleSize 1 200;
     SetupID "7033_OQA_INK" 07-13-15 13:00:36;
     StepID "OQA_INK";
     DeviceID "7033";
     SampleOrientationMarkType NOTCH;
     OrientationMarkLocation DOWN;
     DiePitch 5.9322470000e+003 5.7678680000e+003;
     DieOrigin 0.000000 0.000000;
     WaferID "23";
     Slot 23;
     SampleCenterLocation 5.2245670000e+003 1.4676010000e+003;
     ClassLookup 256
      0 "No_Review"
      1 "False"
      2 "Unknown"
      3 "Bump"
      4 "Burried_P/D"
      5 "Scratch"
      6 "CMP_SC"
      7 "Surface_P/D"
      8 "Tiny_P/D"
      9 "Satellite"
      10 "Discolor"
      11 "Residue"
      12 "Bridge"
      13 "Roughness"
      14 "Prelayer_def"
      15 "Si_Residue"
      16 "Circle"
      17 "Dislocation"
      18 "Pt residue"
      19 "cone_defect"
      20 "Salicide_abn"
      21 "Swing"
      22 "Grain"
      23 "Ball_Defect"
      24 "24"
      25 "Prelayer_Sc"
      26 "Water_Mark"
      27 "27"
      28 "Poly_Residue"
      29 "Concave"
      30 "COP"
      31 "31"
      32 "Si_hole"
      33 "Seam"
      34 "34"
      35 "Over_Polish"
      36 "36"
      37 "SN_Residue"
      38 "38"
      39 "Smear"
      40 "Bubble"
      41 "41"
      42 "42"
      43 "Si damage"
      44 "OX_Loss"
      45 "Slurry"
      46 "Scum"
      47 "Ring Residue"
      48 "Hump"
      49 "BTA Residue"
      50 "Repeating"
      51 "Line shape"
      52 "Defocus"
      53 "Hillock"
      54 "PR/PM_Remain"
      55 "Pat_collapse"
      56 "punchthrough"
      57 "whisker"
      58 "Galvanic"
      59 "59"
      60 "Arcing"
      61 "Line_open"
      62 "Corrosion"
      63 "63"
      64 "64"
      65 "SLICE_P/D"
      66 "66"
      67 "Bridge_FM"
      68 "Met_Residue"
      69 "Pits"
      70 "70"
      71 "Metal_Grain"
      72 "Metal_Void"
      73 "73"
      74 "Pat_Fail"
      75 "Immersion"
      76 "Partial_Etch"
      77 "Volcano"
      78 "W recess"
      79 "79"
      80 "80"
      81 "81"
      82 "W_residue"
      83 "Cu diffuse"
      84 "Metal_Damage"
      85 "Cu loss"
      86 "Blind"
      87 "TiN_Particle"
      88 "Peeling"
      89 "Wave"
      90 "Grape Defect"
      91 "Other1"
      92 "Other2"
      93 "Other3"
      94 "Other4"
      95 "Other5"
      96 "Crater"
      97 "Dimple"
      98 "98"
      99 "Crack"
      100 "100"
      101 "Dark_VC"
      102 "Bright_VC"
      103 "Gray_VC"
      104 "104"
      105 "105"
      106 "106"
      107 "void"
      108 "108"
      109 "109"
      110 "Protrusion"
      111 "111"
      112 "Plug_Peeling"
      113 "M*_peeling"
      114 "oil ball"
      115 "Tiny_Residue"
      116 "pre patfail"
      117 "large defect"
      118 "118"
      119 "119"
      120 "W missing"
      121 "121"
      122 "Condense"
      123 "123"
      124 "124"
      125 "125"
      126 "126"
      127 "127"
      128 "128"
      129 "129"
      130 "shrink"
      131 "131"
      132 "132"
      133 "133"
      134 "134"
      135 "135"
      136 "136"
      137 "137"
      138 "138"
      139 "SC Pattern"
      140 "small_Bubble"
      141 "Big_bubble"
      142 "142"
      143 "Printing_PD"
      144 "swelling"
      145 "hole_Missing"
      146 "146"
      147 "PR_residue"
      148 "PR_peeling"
      149 "PR_collapse"
      150 "150"
      151 "drying_stain"
      152 "152"
      153 "153"
      154 "154"
      155 "155"
      156 "156"
      157 "157"
      158 "158"
      159 "159"
      160 "160"
      161 "161"
      162 "162"
      163 "163"
      164 "164"
      165 "165"
      166 "166"
      167 "167"
      168 "168"
      169 "169"
      170 "170"
      171 "171"
      172 "172"
      173 "173"
      174 "174"
      175 "175"
      176 "176"
      177 "177"
      178 "Cap Chipping"
      179 "Contaminate"
      180 "Cap Flying"
      181 "181"
      182 "182"
      183 "183"
      184 "184"
      185 "185"
      186 "186"
      187 "187"
      188 "188"
      189 "189"
      190 "190"
      191 "191"
      192 "192"
      193 "193"
      194 "194"
      195 "195"
      196 "196"
      197 "197"
      198 "Bu_too_low"
      199 "Bu_too_high"
      200 "Shift_PM"
      201 "Reject"
      202 "Inked"
      203 "Aligner_Fail"
      204 "Scan_R_Ov"
      205 "Max_D_Ov"
      206 "Met_DMG"
      207 "Met_Rough"
      208 "PAD_Attack"
      209 "Irreg_Open"
      210 "Passi_Crack"
      211 "IQC_Reject"
      212 "Bu_Par_die"
      213 "Edge_Die"
      214 "Met_Bridge"
      215 "Underdevelop"
      216 "216"
      217 "Wrinkle"
      218 "218"
      219 "Pad_no_Open"
      220 "Tenting"
      221 "Black_Dots"
      222 "Met_CRN"
      223 "RDL_Open"
      224 "Stains"
      225 "Extra_Gold"
      226 "Extra_Solder"
      227 "PM_On_Bu"
      228 "Extra_Bu"
      229 "P/D_on_Bu"
      230 "ROB"
      231 "Bu_Test_die"
      232 "Partial_RF"
      233 "Bu_Top_Rough"
      234 "Satellite_Bu"
      235 "Big_Bu"
      236 "Big/Small_Bu"
      237 "Shifted_Bu"
      238 "Small_Bu"
      239 "Incomp_Bu"
      240 "Slope_Bu"
      241 "Deformed_Bu"
      242 "Crater_on_Bu"
      243 "Bu_Scratched"
      244 "Void_on_Bu"
      245 "Nodule_on_Bu"
      246 "Bridging_Bu"
      247 "Missing_Bu"
      248 "Bad_signal"
      249 "249"
      250 "Necking"
      251 "251"
      252 "252"
      253 "OX residue"
      254 "edge peeling"
      255 "255";
     InspectionTest 1;
     SampleTestPlan 39
         -4   -16
         -3   -16
         -2   -16
         -1   -16
          0   -16
          1   -16
          2   -16
          3   -16
          4   -16
          5   -16
        -15    -5
        -15    -4
         16    -4
        -15    -3
         16    -3
        -15    -2
         16    -2
        -15    -1
         16    -1
        -15     0
         16     0
        -15     1
         16     1
        -15     2
         16     2
        -15     3
         16     3
        -15     4
         16     4
        -15     5
         -4    16
         -3    16
         -2    16
         -1    16
          0    16
          1    16
          2    16
          3    16
          4    16;
     AreaPerTest 2.5474000000e+010;
     DefectRecordSpec 13 DEFECTID XREL YREL XINDEX YINDEX XSIZE YSIZE DEFECTAREA DSIZE CLASSNUMBER TEST IMAGECOUNT IMAGELIST ;
     DefectList
      1 2.9500000000e+003 2.8800000000e+003 -4 -16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      2 2.9500000000e+003 2.8800000000e+003 -3 -16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      3 2.9500000000e+003 2.8800000000e+003 -2 -16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      4 2.9500000000e+003 2.8800000000e+003 -1 -16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      5 2.9500000000e+003 2.8800000000e+003 0 -16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      6 2.9500000000e+003 2.8800000000e+003 1 -16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      7 2.9500000000e+003 2.8800000000e+003 2 -16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      8 2.9500000000e+003 2.8800000000e+003 3 -16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      9 2.9500000000e+003 2.8800000000e+003 4 -16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      10 2.9500000000e+003 2.8800000000e+003 5 -16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      11 2.9500000000e+003 2.8800000000e+003 -15 -5 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      12 2.9500000000e+003 2.8800000000e+003 -15 -4 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      13 2.9500000000e+003 2.8800000000e+003 16 -4 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      14 2.9500000000e+003 2.8800000000e+003 -15 -3 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      15 2.9500000000e+003 2.8800000000e+003 16 -3 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      16 2.9500000000e+003 2.8800000000e+003 -15 -2 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      17 2.9500000000e+003 2.8800000000e+003 16 -2 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      18 2.9500000000e+003 2.8800000000e+003 -15 -1 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      19 2.9500000000e+003 2.8800000000e+003 16 -1 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      20 2.9500000000e+003 2.8800000000e+003 -15 0 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      21 2.9500000000e+003 2.8800000000e+003 16 0 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      22 2.9500000000e+003 2.8800000000e+003 -15 1 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      23 2.9500000000e+003 2.8800000000e+003 16 1 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      24 2.9500000000e+003 2.8800000000e+003 -15 2 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      25 2.9500000000e+003 2.8800000000e+003 16 2 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      26 2.9500000000e+003 2.8800000000e+003 -15 3 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      27 2.9500000000e+003 2.8800000000e+003 16 3 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      28 2.9500000000e+003 2.8800000000e+003 -15 4 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      29 2.9500000000e+003 2.8800000000e+003 16 4 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      30 2.9500000000e+003 2.8800000000e+003 -15 5 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      31 2.9500000000e+003 2.8800000000e+003 -4 16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      32 2.9500000000e+003 2.8800000000e+003 -3 16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      33 2.9500000000e+003 2.8800000000e+003 -2 16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      34 2.9500000000e+003 2.8800000000e+003 -1 16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      35 2.9500000000e+003 2.8800000000e+003 0 16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      36 2.9500000000e+003 2.8800000000e+003 1 16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      37 2.9500000000e+003 2.8800000000e+003 2 16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      38 2.9500000000e+003 2.8800000000e+003 3 16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0
      39 2.9500000000e+003 2.8800000000e+003 4 16 1.000000 1.000000 2.000000 1.0000000000e+000 2 1 0 0;
     SummarySpec 5 TESTNO NDEFECT DEFDENSITY NDIE NDEFDIE ;
     SummaryList
      1 39 0.153097 39 39;
     EndOfFile;