DE102018207876A1 - Verfahren und Vorrichtung zum Erzeugen von Bildern für photolithographische Masken aus Designdaten - Google Patents

Verfahren und Vorrichtung zum Erzeugen von Bildern für photolithographische Masken aus Designdaten Download PDF

Info

Publication number
DE102018207876A1
DE102018207876A1 DE102018207876.9A DE102018207876A DE102018207876A1 DE 102018207876 A1 DE102018207876 A1 DE 102018207876A1 DE 102018207876 A DE102018207876 A DE 102018207876A DE 102018207876 A1 DE102018207876 A1 DE 102018207876A1
Authority
DE
Germany
Prior art keywords
transformation
model
design data
images
encoder
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE102018207876.9A
Other languages
English (en)
Inventor
Carsten Schmidt
Dirk Seidel
Alexander Freytag
Christoph Husemann
Christian Wojek
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Carl Zeiss SMT GmbH
Original Assignee
Carl Zeiss SMT GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Carl Zeiss SMT GmbH filed Critical Carl Zeiss SMT GmbH
Priority to DE102018207876.9A priority Critical patent/DE102018207876A1/de
Publication of DE102018207876A1 publication Critical patent/DE102018207876A1/de
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03FPHOTOMECHANICAL PRODUCTION OF TEXTURED OR PATTERNED SURFACES, e.g. FOR PRINTING, FOR PROCESSING OF SEMICONDUCTOR DEVICES; MATERIALS THEREFOR; ORIGINALS THEREFOR; APPARATUS SPECIALLY ADAPTED THEREFOR
    • G03F1/00Originals for photomechanical production of textured or patterned surfaces, e.g., masks, photo-masks, reticles; Mask blanks or pellicles therefor; Containers specially adapted therefor; Preparation thereof
    • G03F1/68Preparation processes not covered by groups G03F1/20 - G03F1/50
    • G03F1/70Adapting basic layout or design of masks to lithographic process requirements, e.g., second iteration correction of mask patterns for imaging

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Image Analysis (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zum Erzeugen eines oder mehrerer Bilder (1440) einer photolithographischen Maske aus (1425) Design-Daten (1110,1150) der photolithographischen Maske (1425) mit Hilfe eines Transformationsmodells (1000), das zumindest zwei Transformationsblöcke (1010, 1030) umfasst, wobei die zumindest zwei Transformationsblöcke (1010, 1030) zumindest jeweils eine generisch lernbare Funktion umfassen, die Eingaben (1050) in Ausgaben (1060) überführt, die als Eingaben (1050) für einen nachfolgenden Transformationsblock (1020,1030) verwendet werden, wobei das Verfahren die Schritte aufweist: (a) Bereitstellen der Design-Daten (1110, 1150) als Eingabe (1050) in einen ersten Transformationsblock (1010); und (b) Ausgeben eines oder mehrerer Bilder (1440) als Ausgabe (1060) eines zweiten Transformationsblocks (1030), wobei das eine oder die mehreren Bilder (1440) zeigen, wie Pattern-Elemente der photolithographischen Maske (1425), die auf der Basis der Design-Daten (1110,1150) erzeugt wurden, in einem mit einem Abbildungssystem (1410, 1510, 1520, 1530) aufgenommenen Bild (1420) erscheinen werden oder in einem von einem Simulationstool (1180) erzeugten Bild (1470) erscheinen werden.

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft Verfahren und Vorrichtungen zum Erzeugen von Bildern für photolithographische Masken aus Design-Daten, die zum Auffinden, Bewerten und Korrigieren von Defekten der photolithographischen Maske eingesetzt werden. Insbesondere betrifft die vorliegende Erfindung Verfahren und Vorrichtungen zum Erzeugen von Referenzbildern für photolihtographische Masken mit Hilfe eines Transformationsmodells auf der Basis von Design-Daten.
  • Stand der Technik
  • Als Folge der wachsenden Integrationsdichte in der Halbleiterindustrie müssen Photolithographiemasken zunehmend kleinere Strukturen auf Wafer abbilden. Die fortschreitende Miniaturisierung von Strukturen auf Halbleiterwafern und damit auch auf den zur Belichtung der Wafer benutzten photolithographischen Masken, Photomasken oder einfach Masken hat weitreichende Auswirkungen auf die Inspektion und Verifikation photolithographischer Masken. Die zunehmende Komplexität der Strukturen auf Photomasken, beispielsweise verstärkt durch die zunehmende Anwendung optischer Proximity Korrekturen (OPC, Optical Proximity Correction), kann dazu führen, dass sich bestimmte Strukturen auf einer Photomaske nicht oder nur noch selten wiederholen (sogenannte Single-Die-Masken). Damit ist eine Qualitätsbewertung (z.B. Defektinspektion) solcher Masken mittels einer häufig eingesetzten Referenzmessung an einer anderen, vergleichbar strukturierten Stelle der Maske (das sogenannte Die-to-Die-Verfahren) nicht oder nur mit größerem Aufwand, d.h. nach einer längeren Suche nach einer geeigneten Referenzposition) möglich.
  • Ein Verfahren, welches in solchen Fällen genutzt werden kann, ist das sogenannte Dieto-Database-Verfahren, bei dem ein Referenzbild mittels optischer Abbildungssimulation (Rendering) aus Design-Daten, beispielsweise aus Layout-Daten gewonnen wird.
  • Das Verfahren, bei dem ein Referenzbild aus Design-Daten einer Maske generiert wird, kann unabhängig von der oben angesprochenen Problematik eingesetzt werden.
  • Wichtige Voraussetzungen der Erzeugung eines Referenzbildes mittels Simulation aus Design- bzw. Layout-Daten sind die Kenntnis der Abbildungseigenschaften des optischen Abbildungssystems (z.B. eines Inspektions- oder eines Metrologiesystems), das zum Analysieren einer Photomaske eingesetzt wird, sowie die Kenntnis über den Aufbau der zu untersuchenden Photomaske, d.h. deren Geometrie und Materialzusammensetzung. Das optische Abbildungssystem ist im Allgemeinen sehr gut bekannt. Die Geometrie und die Materialdaten einer photolithographischen Maske, d.h. deren optische Eigenschaften, sind in der Regel auch bekannt, wobei sich Unsicherheiten aufgrund von Prozessvariationen beim Herstellen photolithographischer Masken ergeben können.
  • Ein ideales Referenzbild einer Maske wird mit Hilfe einer ab-initio oder rigorosen Simulation berechnet. Eine ab-initio Simulation berücksichtigt die optische Wechselwirkung (Streuung, Beugung, Absorption, Reflexion) der Beleuchtungsstrahlung des optischen Abbildungssystems, d.h. der auf die Photomaske auftreffenden elektromagnetischen Wellen, mit den Strukturen der Photomaske sowie die nachfolgende Propagation der transmittierten und/oder der reflektierten elektromagnetischen Felder vor bzw. hinter der Maske in die Ebene des Detektors des optischen Analysesystems numerisch rigoros auf Grundlage der Maxwell-Gleichungen. Dies bedeutet, die Maxwell-Gleichungen werden in drei Dimensionen für die jeweiligen Randbedingungen über geeignete numerische Verfahren gelöst. Dies stellt insbesondere für die Masken, deren Strukturen oder Pattern für die Beleuchtungsstrahlung dreidimensional erscheinen, aufgrund der unterschiedlichen Materialien einer Photomaske eine besondere Herausforderung dar. Die unterschiedlichen Materialien einer Photomaske weisen verschiedene Leitfähigkeiten und dielektrische Eigenschaften auf, wodurch für rigorose Simulationen große Rechenkapazitäten und lange Zeitdauern benötigt werden. Deshalb ist das Erzeugen von Referenzbildern zur Verifikation von Photomasken (z.B. zur Defektanalyse und/oder zur Defektkorrektur) auf der Basis von ab-initio Simulationen, die Maxwell-Gleichungen numerisch lösen, derzeit und in naher Zukunft in einer Fertigungsumgebung kaum praktikabel.
  • Ein vereinfachtes Modell, das die Maskenstrukturen als zweidimensional und die gebeugten Wellen als frei propagierend annimmt, wird „Kirchhoff-Modell“ oder „skalares Abbildungs-Modell“ genannt. Eine Simulation eines Referenzbildes auf der Basis des Kirchhoff-Modells ist um Größenordnungen schneller, vermag jedoch nicht alle Maskeneffekte hinreichend genau abzubilden. Bei der zunehmenden Komplexität und der stetigen Verringerung der Strukturgrößen moderner Maskensysteme sind deshalb entsprechende Anpassungen nötig. Durch die Optimierung geeigneter Parameter (z.B. Maskeneigenschaften, Parameter des Abbildungssystems) können ausreichend genaue Übereinstimmungen von Referenzbilder und Messbildern erreicht werden. Durch die erhöhte Anzahl an Simulationen, die zum Erzeugen eines Referenzbildes notwendig sind, verringert sich jedoch der Zeitvorteil einer Referenzbilderzeugung auf der Basis des Kirchhoff-Modells im Vergleich zu einer rigorosen Situation erheblich.
  • Die US 2013 / 0 019 212 A1 beschreibt ein Verfahren und eine Vorrichtung zum Bestimmen von Strukturen auf einer Photomaske. Die US 2016 / 0 195 387 A1 beschreibt ein Verfahren zum Bestimmen eines Platzierungsfehlers eines Strukturmerkmals einer photolithographischen Maske.
  • In einem neuen Ansatz beschreibt die WO 2017 / 087 653 A1 das Verwenden eines generativen Modells aus dem Bereich des Maschinellen Lernens (ML), um aus Design-Informationen simulierte Bilder einer Probe, etwa einer photlithographischen Maske oder eines Wafers zu erzeugen. Das generative Modell verwendet eine Encoder-Decoder-Architektur, um aus den Design-Informationen deren informationstragende Merkmale (engl. „Features“) zu extrahieren und aus den Features der Design-Informationen ein simuliertes Bild der Photomaske zu erzeugen.
  • Die Anwendung von solch allgemeinen Encoder-Decoder-Architekturen, welche Eingaben auf informationstragenden Merkmale reduzieren, um diese Dann wieder auf Zieldaten zu dekodieren, um Referenzbilder aus Design-Daten zu erzeugen, birgt jedoch Nachteile. In solchen Systemen stellen die aus den Eingangsdaten abgebildeten oder encodierten Features den Flaschenhals des Systems dar. In den Features müssen die gesamten Informationen enthalten sein, um daraus präzise die Ausgabedaten extrahieren oder decodieren zu können.
  • Der vorliegenden Erfindung liegt daher das Problem zu Grunde, Verfahren und Vorrichtungen anzugeben, die die oben beschriebenen Nachteile beim Erzeugen von Bildern aus den Design-Daten photolithographischer Masken zumindest zum Teil vermeiden.
  • Zusammenfassung der Erfindung
  • Gemäß einem Aspekt der vorliegenden Erfindung wird dieses Problem durch ein Verfahren nach Anspruch 1 gelöst. In einer Ausführungsform weist das Verfahren zum Erzeugen eines oder mehrerer Bilder einer photolithographischen Maske aus Design-Daten der photolithographischen Maske mit Hilfe eines Transformationsmodells, das zumindest zwei Transformationsblöcke umfasst, wobei die zumindest zwei Transformationsblöcke zumindest jeweils eine generisch lernbare Funktion umfassen, die Eingaben in Ausgaben überführt, die als Eingaben für einen nachfolgenden Transformationsblock verwendet werden, die Schritte auf: (a) Bereitstellen der Design-Daten als Eingabe in einen ersten Transformationsblock; und (b) Ausgeben eines oder mehrerer Bilder als Ausgabe eines zweiten Transformationsblocks, wobei das eine oder die mehreren Bilder zeigen, wie Pattern-Elemente der photolithographischen Maske, die auf der Basis der Design-Daten erzeugt wurden, in einem mit einem Abbildungssystem aufgenommenen Bild erscheinen werden oder in einem von einem Simulationstool (1180) erzeugten Bild (1195) erscheinen werden.
  • Ein Transformationsmodell muss nicht eine Abfolge Encoder, Feature-Projektion und Decoder umfassen. Stattdessen ist in jeder der N-Schichten eine generische, lernbare Funktion vorgesehen, welche Eingaben in Ausgaben überführt, ohne den Anspruch zu haben, eine geeignete und damit transferierbare Repräsentation (Features) der Eingaben in einem der Zwischenschritte zu generieren.
  • Eine generisch lernbare Funktion eines Transformationsblocks eines Transformationsmodells erhält als Eingabedaten die Ausgabedaten des vorhergehenden Transformationsblocks. Allgemein erhält ein N-ter Transformationsblock die Ausgabedaten des (N-1)-ten Transformationsblocks (ON-1). Die Ausgabedaten den (N-1)-ten Transformationsblocks sind die Eingabedaten des N-ten Transformationsblocks (IN): ON-1 = IN. Die Ausgabedaten des (N-1)-ten Transformationsblocks ON-1 können die ursprünglichen Eingabedaten I1 des ersten Transformationsblocks in unveränderter Form umfassen. Ferner können die Ausgabedaten des (N-1)-ten Transformationsblocks die Eingabedaten aller vorhergehenden Transformationsblöcke (1" ..., IN-1) in unveränderter Form umfassen. Darüber hinaus können die Eingabedaten des N-ten Transformationsblocks IN die von den vorhergehenden Transformationsblöcken transformierten Eingabedaten TN-1(ON-2), PN-1) = TN-1(IN-1, PN-1) umfassen. Dabei bezeichnet TN-1 die im (N-1)-ten Transformationsblock an den Eingangs- oder Eingabedaten IN-1 ausgeführte Transformation. PN bezeichnet die Modellparameter des Transformationsmodells im N-ten Transformationsblock.
  • Falls in dem N-ten Transformationsblock die Transformation TN einen Faltungsoperator beschreibt, werden in diesem Transformationsblock als Eingabegrößen oder Eingabedaten IN nur die transformierten Daten der vorhergehenden Schicht TN-1(IN-1, PN-1) berücksichtigt und die Eingabedaten der früheren Transformationsblöcke I1, ..., IN-1 ignoriert. Die Modellparameter PN dieses Transformationsblocks entsprechen Faltungsgewichten und der N-te Transformationsblock führt die Funktion einer Faltungsschicht oder eines Faltungsblocks aus.
  • Eine generisch lernbare Funktion eines Transformationsblocks kann zumindest ein Element aus der Gruppe umfassen: einen Faltungsblock (convolution block), einen Entfaltungsblock (de-convolution block), einen Bündelungsblock (pooling block), einen Entbündelungsblock (de-pooling block), einen DenseBlock, einen ResBlock, einen InceptionBlock, einen Encoder und einen Decoder.
  • Die Ausgabe eines Transformationsblocks kann die gleiche Dimension wie die Eingabe des Transformationsblocks aufweisen. Die Ausgabe eines Transformationsblocks kann eine andere Dimension wie die Eingabe des Transformationsblocks aufweisen.
  • Ein Transformationsmodell kann angelernt werden, dass es Design-Daten einer photolithographischen Maske in ein Bild transformiert, das aussieht wie ein von einem Abbildungssystem aufgenommenes Bild. Ein Transformationsmodell kann aber auch trainiert werden, Design-Daten einer Photomaske in ein Bild umzuwandeln, das wie ein von einem Simulations-Tool erzeugtes Bild aussieht.
  • Wie im einleitenden Teil bereits beschrieben, ist eine Simulation auf der Basis des Kirchhoff-Modells der photolithographischen Maske für moderne Masken nicht genau genug. Eine rigorose Simulation ist in einer Produktionsumgebung auf Zeitgründen nicht praktikabel. Das Erzeugen eines Referenzbildes aus Design-Daten löst dieses Problem. Dadurch wird es möglich, in einer Produktionsumgebung ein Referenzbild aus Design-Daten zu erzeugen, das aussieht, als wäre es aus einer rigorosen oder ab-initio Simulation entstanden.
  • Das erfindungsgemäße Verfahren vermeidet das zeitaufwändige Ausführen von tausenden von Messungen zum Erzeugen der notwendigen Trainingsdaten. Das erfindungsgemäße Verfahren benötigt jedoch ebenfalls eine entsprechende Menge an Trainingsdaten, was das Ausführen einer großen Anzahl zeitaufwändiger Simulationen bedeuten kann. Diese Simulationen können jedoch an einer zentralen Stelle mit speziell für diesen Zweck optimierten Computersystemen kostengünstig ausgeführt werden.
  • Das Simulationstool kann das Bild mittels eines Kirchhoff-Modells der photolithographischen Maske erzeugen. Das Simulationstool kann das Bild mittels einer numerischen Lösung der Maxwell-Gleichungen für photolithographische Maske, d.h. einer rigorosen oder ab-initio Simulation erzeugen. Ferner kann das Simulationstool zumindest ein erstes Teilbild aus zumindest einem ersten Teil der Design-Daten mittels des Kirchhoff-Modells und zumindest ein zweites Teilbild aus zumindest einem zweiten Teil der Design-Daten mittels einer rigorosen Simulation erzeugen.
  • Das Transformationsmodell kann ein Modell maschinellen Lernens umfassen. Ein Modell maschinellen Lernens wird im Folgenden auch als ML-Modell abgekürzt. Ein Transformationsmodell kann wie ein Modell maschinellen Lernens trainiert werden.
  • Ein erfindungsgemäßes Verfahren kann die Schritte umfassen: (a) Bestimmen informationstragender Merkmale aus den Design-Daten mit zumindest zwei Schichten eines Encoders des Modells maschinellen Lernens; und (b) Bestimmen des einen oder der mehreren Bilder aus den informationstragenden Merkmalen mit zumindest zwei Schichten eines Decoders des Modells maschinellen Lernens, wobei das eine oder die mehreren Bilder zeigen, wie Pattern-Elemente, die auf der Basis der Design-Daten auf der photolithographischen Maske erzeugt wurden, in einem mit einem Abbildungssystem aufgenommenen Bild erscheinen werden oder in einem von einem Simulationstool (1180) erzeugten Bild (1195) erscheinen werden; (c) wobei Ausgaben zumindest einer der Schichten als Eingaben an zumindest eine nicht benachbarte Schicht des Modells maschinellen Lernens verwendet werden.
  • In Encoder-Decoder-Architekturen werden auf der Encoder-Seite Eingabedaten durch eine Reihe von lernbaren Funktionen auf informationstragende Merkmale, Merkmale oder Features abgebildet (engl.: encoded). Aus diesen Features werden dann auf der Decoder-Seite mittels ebenfalls lernbaren Funktionen die Zieldaten, im vorliegenden Fall ein oder mehrere Bilder extrahiert (engl.: decoded). Die einzelnen Funktionen sowohl auf der Encoder- als auch der Decoder-Seite werden üblicherweise als Schichten (engl. „layer“) bezeichnet. In einer Encoder-Decoder-Architektur stehen einer Schicht typischerweise die Ausgaben der vorhergehenden Schicht als Eingaben zur Verfügung. Diese Encoder-Decoder-Struktur wird im Folgenden auch klassische Encoder-Decoder-Architektur genannt.
  • Die Anmelderin hat in umfangreichen Analysen herausgefunden, dass Transformationsmodelle, die als ML-Modelle auf der Basis klassischer Encoder-Decoder-Architekturen realisiert sind, nicht in der Lage sind, die winzigen Struktur- oder Pattern-Elemente moderner Photomasken ohne deutlichen Verlust an Ortsauflösung abzubilden. Wird beispielsweise ein Bild am Eingang eines Encoders durch eine Anzahl No von Pixeln dargestellt, so nimmt die Anzahl der Pixel während des Durchgangs der Bilddaten durch die einzelnen Schichten des Encoders von dessen Eingang bis zu der Feature-Schicht NF zum Beispiel durch auflösungsreduzierende Operationen wie etwa Pooling oder Bündelung ab (NF<No). Dadurch wird die Ortsauflösung der Merkmale oder der Merkmalskarten durch Bündelung oder Pooling verringert. Gleichzeitig kann die Merkmalstiefe, d.h. die Anzahl der Komponenten eines Merkmals oder der Merkmalskarten pro Schicht oder pro Kanal zunehmen, um den Verlust an Ortsauflösung teilweise zu kompensieren. Die Merkmalstiefe wird im Folgenden auch Dimension genannt.
  • Ein erfindungsgemäßes Verfahren löst dieses Problem, indem durch eine oder mehrere zusätzliche Verbindungen zwischen nicht benachbarten Schichten im Encoder-Teil, im Decoder-Teil, und/oder zwischen Encoder und Decoder des ML-Modells ein höherer Informationsfluss innerhalb des Modells maschinellen Lernens zugelassen wird. Dadurch kann ein Verlust an Ortsauflösung in der Encoder-Decoder-Architektur des ML-Modells weitgehend vermieden werden.
  • Das definierte Verfahren kann ferner den Schritt aufweisen: Anpassen einer räumlichen Dimension der Ausgaben einer Schicht an die räumliche Dimension der Eingaben der nicht benachbarten Schicht.
  • Die Dimension einer Schicht bezeichnet die Tiefe der Merkmale in den jeweiligen Schichten des Encoders oder des Decoders des ML-Modells, d.h. die Dimension gibt die Anzahl der Komponenten eines Merkmals an. Die Merkmalstiefe wird auch als die Anzahl der Kanäle eines Features bezeichnet. Falls die Ausgaben einer Schicht an eine nicht benachbarte Schicht weitergegeben werden, kann es vorkommen, dass die räumliche Dimension der Ausgaben der informationsliefernden Schicht nicht mit der räumlichen Dimension der Eingaben der informationsaufnehmenden Schicht übereinstimmt. Beim Auftreten dieser Situation wird die räumliche Dimension der Ausgaben an die räumliche Dimension der Eingaben angepasst.
  • Ferner kann das erfindungsgemäße Verfahren den Schritt aufweisen: Verändern der Ausgaben der zumindest einen Schicht vor dem Bereitstellen als Eingaben an die zumindest eine nicht benachbarte Schicht. Das Verändern der Ausgaben kann umfassen: Normieren der Ausgaben der zumindest einen Schicht und/oder Anpassen einer Bildgröße an die Bildgröße einer nicht benachbarten Schicht. Das Anpassen der Bildgröße kann das Auffüllen von Nullen am Rand eines Bildes umfassen.
  • Die Ausgaben einer Schicht können neben der nachfolgenden Schicht einer weiteren Schicht des Encoders und/oder des Decoders des ML-Modells als Eingaben bereitgestellt werden. Dabei ist es möglich, die Ausgaben in unveränderter Form als Eingaben einer weiteren Schicht zur Verfügung zu stellen. Es ist aber auch möglich, die Ausgaben vor dem Bereitstellen als Eingaben zu verändern, beispielsweise durch Vergrößern oder Verkleinern von deren Zahlenwerten, um so das Gewicht der Eingaben zu erhöhen oder zu verringern. Ferner ist es denkbar, gezielt einzelne Zahlenwerte der Ausgaben vor dem Bereitstellen als Eingaben an eine nicht benachbarte Schicht zu verändern.
  • Die Ausgaben zumindest einer der Schichten, die als Eingaben an zumindest eine nicht benachbarte Schicht verwendet werden, können einen Informationsfluss des Modells maschinellen Lernens in einer Vorwärtsrichtung vergrößern, indem zusätzliche Pfade für den Informationsfluss geschaffen werden.
  • Die Vorwärtsrichtung ist im Encoder von der Eingabeschicht zur Merkmalsschicht gerichtet und im Decoder von der Merkmalsschicht zur Ausgabeschicht des generativen Modells gerichtet
  • Das Transformationsmodell kann neuronales Netz umfassen. Das neuronale Netz kann ein tiefes neuronales Netz umfassen. Das Transformationsmodell kann ein generatives Modell umfassen. Das generative Modell kann ein tiefes generatives Modell umfassen. In folgenden wird als ein tiefes generatives Modell ein Modell verstanden, dessen Encoder und/oder Decoder mehr als zwei sequentielle Schichten aufweisen. Typischerweise weist ein tiefes generatives Modell drei bis fünfundzwanzig hintereinander angeordnete Schichten des Encoders und/oder des Decoders auf. Es ist jedoch auch möglich, dass ein Encoder und/oder ein Decoder eines generativen Modells mehr als 100 sequentielle Schichten aufweist.
  • Das generative Modell kann ein neuronales Faltungs- und Entfaltungsnetzwerk umfassen. Ein neuronales Faltungs- und Entfaltungsnetzwerk wird im englischen Sprachgebrauch als CNN (Convolutional Neural Network) bezeichnet. Falls die Eingabedaten in ein generatives Modell Bilder sind und somit über eine räumliche Struktur verfügen, ist eine sinnvolle Operation für einzelne Schichten einer Encoder-Decoder-Architektur die Faltung. Lernbare Parameter sind in diesem Fall beispielsweise die Einträge (engl.: weights) der Filtermasken der einzelnen Faltungsschichten. Zur Erhöhung der Modellkomplexität werden die Faltungsergebnisse einer Schicht üblicherweise nichtlinear transformiert. Dazu wird der mittels diskreter Faltung ermittelte Input eines jeden Neurons in einer Faltungsschicht mit Hilfe einer Aktivierungsfunktion, d.h. etwa durch die Anwendung einer Sigmoid-Funktion (sig(t)=0.5·(1+tanh(t/2)) oder einer Rectified Linear UNit (ReLU, f(x) = max(o, x)) in den Output verwandelt. Die Verkettung von mehreren Faltungsschichten, die jeweils eine Aktivierungsfunktion umfassen, erlaubt das Erlernen komplexer Muster aus den bereitgestellten Daten - sowohl für Erkennungsaufgaben (engl.: perception) als auch zum Transformieren zwischen verschiedenen Datenmodalitäten (beispielsweise zwischen Design-Daten und Bilddaten).
  • Die zumindest zwei Schichten des Encoders können zwei oder mehr Faltungsschichten (engl.: „convolutional layers“) und Bündelungsschichten umfassen, und/oder die zumindest zwei Schichten des Decoders können zwei oder mehr Entfaltungsschichten (engl.: „deconvolutional layers“) und Entbündelungsschichten umfassen. Bündelungsschichten werden im englischen Sprachgebrauch „pooling layers“ oder „sub-sampling layers“ genannt. Entbündelungsschichten werden in der englischsprachigen Literatur „de-pooling layers“ oder „up-sampling layers“ bezeichnet. Durch den Pooling-Effekt wird die Anzahl der Pixel zur Darstellung eines Objekts als Merkmal in einer Schicht verringert, gleichzeitig wird die Merkmalstiefe oder die Dimension in dem Encoder vergrößert. Die Merkmalstiefe wird auch als die Anzahl der Merkmale pro Schicht oder pro Kanal bezeichnet. Durch das Entbündeln oder durch das Erhöhen der Abtastrate (up-sampling) beim Durchgang von Daten eines Objekts durch den Decoder wird die Anzahl der Pixel zur Darstellung des Objekts als Merkmal in einer Schicht erhöht. Die zumindest zwei Schichten des Encoders können die informationstragenden Merkmale durch eine Verringerung einer Pixel-Anzahl zur Darstellung der Design-Daten bestimmen. Die zumindest zwei Schichten des Encoders können die informationstragenden Merkmale durch eine Verringerung der räumlichen Dimension der Design-Daten bestimmen.
  • Die Design-Daten können Layout-Daten und/oder können Computer Aided Design (CAD)-Daten umfassen. Ferner können Design-Daten eine Mehrzahl von Polygonen oder Polygonzüge umfassen, die Pattern-Elemente der photolithographischen Maske spezifizieren. Die Design-Daten können beispielsweise in Form einer zweidimensionalen Pixel-Matrix dargestellt werden. Das eine oder die mehreren Bilder können ein oder mehrere Luftbilder der photolithographischen Maske umfassen.
  • Das Verwenden der Ausgaben kann umfassen: Bereitstellen von Ausgaben zumindest einer Schicht des Encoders als Eingaben an zumindest eine Schicht des Decoders.
  • In einem Ausführungsbeispiel werden die Ausgaben einer Encoder-Schicht einer entsprechenden Schicht des Decoders als Eingaben zur Verfügung gestellt. Indem Ergebnisse einer oder mehrerer Encoder-Schichten einer oder mehrerer entsprechender Decoder-Schichten bereitgestellt werden, wird der Flaschenhals (engl.: bottleneck) der zentralen Feature-Schicht zumindest teilweise umgangen. Das zusätzliche Bereitstellen von feinkörnigen Informationen von der Encoder-Seite an den Decoder hilft letzterem bei der Herstellung des Bildes aus den Design-Daten am Ausgang des Transformationsmodells. Dadurch wird insbesondere die räumliche Information der Eingabe-Bilddaten beigehalten, was zu einer höheren räumlichen Genauigkeit der Ausgabe-Bilddaten am Ausgang des Encoders führt. In dem Artikel „U-Net: Convolutional networks for biomedical image segmentation“, 18th Intern. Conf. on Medical Image Computing and Computer-Assisted Intervention (MICCAI), 5.-9. Oktober, 2015, in München, wurde dieser Zusammenhang von den Autoren O. Ronneberger, P. Fischer und T. Brox durch pixelgenaue Segmentierungen von medizinischen Daten nachgewiesen.
  • Das Verwenden der Ausgaben der zumindest einen Schicht des Encoders als Eingaben durch zumindest eine Schicht des Decoders kann an die Schicht des Decoders erfolgen, deren Dimension der Ausgaben-liefernden Schicht des Encoders am nächsten ist.
  • Bei einem Transformationsmodell, dessen Encoder und Decoder eine gleiche Anzahl von Schichten aufweisen, entsprechen sich Schichten auf der Encoder- und der Decoder-Seite, wenn die Merkmale oder Features dieser Schichten die gleiche räumliche Dimension aufweisen. Indem die Ergebnisse einer Encoder-Schicht an die Decoder-Schicht weitergegeben werden, deren räumliche Dimension der Ausgaben-liefernden Schicht am nächsten ist, wird der bestmögliche Informationstransfer von der Encoderzu der Decoder-Seite des Transformationsmodells sichergestellt.
  • Das Verwenden der Ausgaben kann umfassen: Bereitstellen von Ausgaben von jeder der Faltungsschichten des Encoders als Eingaben an jede der Faltungsschichten des Encoders, die der räumlichen Dimension der Ausgaben-liefernden Schicht des Decoders am nächsten ist.
  • Durch Bereitstellen der Ergebnisse der Transformationsschichten des Encoders aller funktional gleichen oder ähnlichen Transformationsschichten des Decoders wird insbesondere die räumliche Information der Eingabedaten, d.h. der Design-Daten der photolithographischen Maske beibehalten, was zu einer höheren Genauigkeit der von dem Transformationsmodell generierten Bilder führt.
  • Das Verwenden von Ausgaben kann umfassen: Bereitstellen von Ausgaben zumindest einer Schicht des Encoders als Eingaben an zumindest eine übernächste oder eine weiter entfernte Schicht des Encoders und/oder Bereitstellen von Ausgaben zumindest einer Schicht des Decoders als Eingaben an zumindest eine übernächste oder eine weiter entfernte Schicht des Decoders.
  • Durch das Kurzschließen der Ausgaben von zwei nicht benachbarten Faltungsschichten eines Encoders und/oder eines Decoders werden Ergebnisse nicht benachbarter Encoder- und/oder Decoder-Schichten addiert und gemeinsam einer nachfolgenden Encoder- und/oder Decoder-Schicht bereitgestellt. Dadurch können ML- Modelle mit einer größeren Schichtenanzahl, die eine größere Abbildungsgenauigkeit ermöglichen, zuverlässig trainiert werden. Die Autoren K. He et al. berichten in dem Artikel „Deep residual learning for image rcognition", IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), June 26 - July 1, 2016, Las Vegas, Nevada, USA, S. 770-778, über die Verbesserung des Trainingsverhaltens von vollständigen faltenden Netzwerken FCN (Fully Convolutional Network) durch eine Feedforward-Beschaltung von Encoder-Decoder-Architekturen mit einer Schichtenzahl von bis zu 152 Schichten.
  • Das Anwenden von Ausgaben kann umfassen: Bereitstellen von Ausgaben einer Schicht des Encoders als Eingaben an jede übernächste Schicht des Encoders, solange sich die Dimension der Merkmale der Schichten des Encoders nicht ändert. Das Anwenden von Ausgaben kann ferner umfassen: Bereitstellen von Ausgaben einer Schicht des Encoders als Eingaben an jede übernächste Schicht des Encoders. Das Anwenden von Ausgaben als Eingaben kann an eine Schicht erfolgen, die zwei oder mehr Schichten von der die Ausgaben-bereitstellenden Schicht entfernt ist.
  • Das Verwenden von Ausgaben kann umfassen: Anordnen von zwei oder mehr Schichten, die eine gleiche Funktion ausführen, in einem Block und Bereitstellen der Eingaben an den Block jeder der Schichten innerhalb des Blockes sowie Kombinieren der Ausgaben jeder der Schichten des Blockes am Ausgang des Blockes.
  • Die Schichten innerhalb des Blocks können Faltungsschichten umfassen. Ferner kann der Block nach jeder Schicht einen Kombinationsknoten umfassen, der die Ausgaben von zwei oder mehr Schichten kombiniert. Der Block kann zwei oder mehr Schichten und zwei oder mehr Kombinationsknoten umfassen.
  • Innerhalb des Blockes erhält jede Schicht die verrechneten Ergebnisse aller vorhergehenden Schichten des Blocks und leitet seine Ergebnisse an die nachfolgende Schicht sowie an den Kombinationsknoten am Ausgang des Blockes weiter.
  • Das Verwenden von Ausgaben kann umfassen: Einbauen eines oder mehrerer Blöcke in den Encoder und/oder Einbauen eines oder mehrerer Blöcke in den Decoder des Transformationsmodells und Verwenden der Ausgaben des einen oder der mehreren Blöcke des Encoders als zusätzliche Eingaben des einen oder der mehreren Blöcke des Decoders.
  • Ein Transformationsmodell, das zwei oder mehr der oben definierten Blöcke enthält, erweitert den Datenfluss innerhalb der Encoder-Decoder-Architektur. Dadurch wird einerseits die Ortsauflösung gegenüber klassischen Encoder-Decoder-Systemen gesteigert und gleichzeitig die Lernbarkeit des Transformationsmodells verbessert. In der Publikation „The one hundred layers tiramisu; fully convolutional Dementes for semantic segmention“, Computer Vision and Pattern Recognition, December 5, 2016, arXiv: 1611.09326, beschreiben die Autoren S. Jegou et al. den oben definierten Block und dessen Einbau in ein CNN zum Lösen von Problemen der semantischen Bildsegmentierung.
  • Das definierte Verfahren kann ferner den Schritt aufweisen: Festlegen eines Verfeinerungsmoduls, das zumindest einmal in den Encoder eingebaut wird, wobei das Verfeinerungsmodul umfasst: (d) einen adaptiven Faltungssatz; (e) einen Mehrfachauflösungsfusionsblock; und (f) einen verketteten residualen Zusammenlegungsblock.
  • Das Verfeinerungsmodul kann gleichzeitig Eingaben von Schichten verschiedener räumlicher Dimension und somit unterschiedlicher Auflösungsstufen erhalten. Diese Eingaben werden individuell verarbeitet und am Ausgang des Verfeinerungsmoduls verschmolzen.
  • Der adaptive Faltungssatz kann zwei oder mehr parallel angeordnete residuale Faltungseinheiten umfassen, und/oder der Mehrfachauflösungsfusionsblock kann zwei oder mehr parallel angeordnete Faltungseinheiten umfassen, zwei oder mehr hinter den Faltungseinheiten angeordnete Entbündelungseinheiten umfassen, und kann eine Summationseinheit umfassen, die die Ausgaben der Entbündelungseinheiten summiert. Ferner kann der verkettende residuale Bündelungsblock eine Anregungseinheit und einen oder mehrere Bündelungsblöcke umfassen, die eine Bündelungsschicht und eine Faltungsschicht umfassen. Zudem kann das Verfeinerungsmodul eine Ausgabe-Faltungseinheit umfassen.
  • Ein erstes und zumindest ein zweites Verfeinerungsmodul können in einen Encoder eingefügt werden, die Ausgaben nach jedem Bündelungsschritt als Eingaben erhalten, wobei das zumindest eine zweite Verfeinerungsmodul zusätzlich die Ausgaben des ersten Verfeinerungsmoduls als Eingaben erhält.
  • Ein erstes und zumindest ein zweites Verfeinerungsmodul können in einen Encoder eingefügt werden, die Ausgaben nach jedem Zusammenlegungsschritt als Eingaben erhalten, wobei das zumindest eine zweite Verfeinerungsmodul zusätzlich die Ausgaben des ersten Verfeinerungsmoduls als Eingaben erhält. Das Verfeinerungsmodul kann eine Ausgabe-Faltungseinheit umfassen.
  • Ein Verfeinerungsmodul nutzt die verschiedenen Detailierungsstufen von Faltungsoperationen innerhalb des Encoders aus und kombiniert diese um eine hochaufgelöste Vorhersage zu machen. Das oben erläuterte Verfeinerungsmodul sowie dessen Einsatz in einem Encoder eines CNN beschreiben die Autoren G. Lin et al. in dem Artikel „RefineNet: Multi-path refinement networkd for high-resolution semantic segmentation", IEEE Cent. on Computer Vision and Pattern Recognition (CVPR), June 26 - July 1, 2016, Las Vegas, Nevada, USA, arXiv preprint arXiv: 1611.09326.
  • Die Eingabe kann zumindest einen zusätzlichen Parameter umfassen.
  • Das korrekte Trainieren eines Transformationsmodells, beispielsweise eines ML-Modells, insbesondere eines DNN (Deep Neural Network) erfordert typischerweise konsistente Trainingsdaten, die eine eineindeutige Abbildung der Eingabedaten auf die Ausgabedaten darstellen. Für den Bereich der Photomasken bedeutet dies, dass für jeden einzelnen Maskentyp (z.B. OMOG (Opaque MoSi On Glass), COG (Chrome On Glass), PSM (Phase Shift Mask), APSM (Alternating Phase Shift Mask) usw.) ein eigenes Transformationsmodell oder ML-Modell notwendig ist. Ferner wird für jede Änderung der Einstellung eines Systemparameters des Abbildungssystems ebenfalls das Training eines neuen Transformationsmodells oder eines neuen Modells maschinellen Lernens notwendig.
  • Ein erfindungsgemäßes Verfahren stellt eine Alternative zum soeben beschriebenen Vorgehen dar. Einem Transformationsmodell werden neben den Design-Daten zusätzlich ein oder mehrere zusätzliche Parameter übergeben. Der eine oder die mehreren zusätzlichen Parameter stehen dem Transformationsmodell sowohl während der Trainingsphase als auch zum Bestimmen des einen oder der mehreren Bilder als Eingabe zur Verfügung. Dadurch kann eine Art verallgemeinertes Modell für verschiedene Maskentypen für verschiedene Parametereinstellungen des Abbildungssystems für Vorhersagezwecke eingesetzt werden. Es muss nur ein verallgemeinertes Transformationsmodell trainiert werden und dieses kann anschließend für verschiedene Maskentypen und verschiedene Einstellungen der Systemparameter des Abbildungssystems eingesetzt werden.
  • Der zumindest eine zusätzliche Parameter kann zumindest einen Parameter der photolithographischen Maske und/oder zumindest einen Systemparameter des Abbildungssystems umfassen. Der zumindest eine Parameter der photolithographischen Maske kann einen Maskentyp umfassen und/oder der zumindest eine Systemparameter des Abbildungssystems kann eine Beleuchtungseinstellung und/oder Aberrationen des Abbildungssystems umfassen.
  • Das Abbildungssystem kann zumindest eines umfassen aus: ein optisches Abbildungssystem, und ein Rasterteilchenmikroskop. Ein optisches Abbildungssystem kann ein Metrologie-Tool wie etwa ein PROVE®-Tool oder ein AIMS™ (Aerial Image Measurement System) umfassen. Ein Rasterteilchenmikroskop kann ein Rasterelektronenmikroskop, ein Ionenstrahlmikroskop und/oder ein Atomstrahlmikroskop umfassen.
  • Ein Abbildungssystem kann ein Rastersondenmikroskop umfassen. Ein Rastersondenmikroskop kann zumindest ein Element auf der Gruppe umfassen: ein Rastertunnelmikroskop, ein Rasterkraftmikroskop, ein Magnetkraftmikroskop, ein optisches Rasternahfeldmikroskop und ein akustisches Rasternahfeldmikroskop.
  • Der zumindest eine zusätzliche Parameter kann Information über eine photolithographischen Prozess umfassen. Der zumindest eine zusätzliche Parameter kann zumindest ein Element der Gruppe umfassen: einen Typ einer photolithographischen Maske, eine zulässige Variation einer kritischen Dimension (CD), eine aktinische Wellenlänge, eine Belichtungsdauer, eine Belichtungseinstellung, eine numerische Apertur einer Belichtungsvorrichtung der photolithographischen Maske.
  • Der zumindest eine zusätzlichen Parameterkann einem der Transformationsblöcke des Transformationsmodells dem Transformationsmodell sowohl während des Trainings als auch im Betrieb übergeben werden. Dadurch wird während des Trainings der zusätzliche Parameter gelernt und bei der Erzeugung eines Bildes aus Design-Daten berücksichtigt. Die Zahl der zu trainierenden Transformationsmodelle kann dadurch deutlich verringert werden.
  • Der zumindest eine zusätzliche Parameter kann einem Transformationsblock eines Transformationsmodells zur Verfügung gestellt werden. Ferner kann der zumindest eine zusätzliche Parameter einer Eingabeschicht des Encoders oder der Feature-Schicht eines Modells maschinellen Lernens bereitgestellt werden. Der zumindest eine zusätzliche Parameter kann einer der Eingabeschicht nachfolgenden Schicht des Encoders bereitgestellt werden. Der zumindest eine zusätzliche Parameter kann der Eingabeschicht und einer der Eingabeschicht nachfolgenden Schicht des Encoders bereitgestellt werden. Der zumindest eine zusätzliche Parameter kann an das Transformationsmodell angepasst werden. Ein zusätzlicher Parameter, der in Form eines Skalars vorliegt, kann als ein Bild mit einem über das Bild hinweg konstanten Zahlenwert den Eingabedaten einem der Transformationsblöcke des Transformationsmodells hinzugefügt werden. Ferner ist es günstig, den zumindest einen zusätzlichen Parameter zusammen mit den Eingaben einer an eine nicht benachbarte Encoder-Schicht einem Modell maschinellen Lernens zur Verfügung zu stellen.
  • In einer alternativen Ausführungsform kann ein Transformationsmodell einen gemeinsamen Encoder-Zweig für die Eingabedaten und den zumindest einen zusätzlichen Parameter aber für jeden der zusätzlichen Parameter einen eigenen Decoder-Zweig aufweisen. Der Hyperparameter kann dann zum Beispiel in eine binäre Maske umgewandelt werden, welcher nur den jeweils gewählten Decoder-Zweig freischaltet und die übrigen Decoder-Zweige deaktiviert, d.h. beispielsweise mit Null multipliziert. Ein Hyperparameter ist im Bereich maschinellen Lernens ein Parameter, dessen Zahlenwert festgelegt wird, vor dem Trainingsprozess des Transformationsmodells beginnt. Im Gegensatz hierzu werden die Modellparameter eines Transformationsmodells während eines Lern- oder Trainingsprozesses bestimmt.
  • Der zumindest eine zusätzliche Parameter vergrößert den Trainingsaufwand des Transformationsmodells nur sublinear, da auch bei Berücksichtigung des zumindest einen zusätzlichen Parameter die für das Transformationsmodell zu lösende Probleme ähnlich sind, so dass das Transformationsmodell Teile der bereits bestimmten Modellparameter „wiederverwenden“ kann.
  • Das erfindungsgemäße Verfahren kann ferner die Schritte aufweisen: (a) Teilen der Design-Daten in mehrere Teile; (b) Bestimmen von aufgenommenen Teilbildern für einzelne Teile der Design-Daten mit dem Abbildungssystem; (c) Bestimmen von Teilbildern für die einzelnen Teile der Design-Daten durch Ausführen der Schritte (a) und (b) des erfindungsgemäßen Verfahrens; und (d) Zusammensetzen des einen oder der mehreren Bilder aus den bestimmten Teilbildern.
  • Das erfindungsgemäße Verfahren kann ferner den Schritt umfassen: Zusammensetzten eines aufgenommenen Bildes aus den aufgenommenen Teilbildern.
  • Viele Verfahren des maschinellen Lernens können für die Verwendung spezieller Recheneinheiten optimiert werden, um ihre Ausführung erheblich zu beschleunigen. Für DNN haben sich dabei besonders graphische Prozessoreinheiten (GPUs) als vorteilhaft erwiesen. Die berechenbare Bildgröße ist typischerweise durch den verfügbaren Arbeitsspeicher begrenzt. Die in der Abbildung von Photomasken üblichen Bildbereiche (FOV, Field Of View) sind jedoch mitunter deutlich größer als eine für DNN mit aktuellen GPUs handhabbare Größe. Diese Problematik kann durch das Aufteilen des zu berechnenden Bildbildbereichs in Teilbereich gelöst werden. Dabei werden die Teilbereiche eines Bildes einzeln berechnet. Dies gilt sowohl für das Training als auch für die Anwendung des Transformationsmodells auf Design-Daten. Die berechneten Teilbilder werden anschließend zum Gesamtbild zusammengesetzt.
  • Die mehreren Teile der Design-Daten können eine räumliche Überlappung aufweisen.
  • Durch eine räumliche Überlappung der einzelnen Teilbilder können Randeffekte in dem Gesamtbild vermieden werden. Für bestimmte Unterfamilien der DNNs kann das Zusammensetzen von Teilen bereits im Transformationsmodell vorgesehen sein und damit in effektiver Weise realisiert werden. Ein Beispiel hierfür sind FCNs (Fully Convolutional Networks).
  • Die Design-Daten können bezüglich verschiedener Strukturklassen aufgeteilt werden. Eine Strukturklasse kann ein zumindest ein Element aus der Gruppe umfassen: ein Kontaktloch, eine Linienstruktur (L/S- (Line/Space) Struktur), eine Logikstruktur mit geringer Proximity-Korrektur (OPC, Optical Proximity Correction), eine Logikstruktur mit starker OPC, eine Hilfsstruktur unterhalb der Auflösungsgrenze des Abbildungssystems (SRAF, Sub-Resolution Assist Feature).
  • Das erfindungsgemäße Verfahren kann ferner den Schritt aufweisen: Anpassen des Transformationsmodells an die verschiedenen Strukturklassen. Darüber hinaus kann das erfindungsgemäße Verfahren den Schritt aufweisen: Anpassen des Modells maschinellen Lernens an die verschiedenen Strukturklassen.
  • Ein Paradigma des Maschinellen Lernens (ML) ist die Notwendigkeit eine ausreichende Anzahl repräsentativer Lerndaten für Trainingszwecke des Transformationsmodells zur Verfügung zu haben. Dies bedeutet, Verfahren des ML können die Abbildung von Eingaben auf Ausgaben typischerweise nur für die Eingabedaten verlässlich ausführen, für die ähnliche Lerndaten vorliegen anhand derer das Transformationsmodell trainiert wurde.
  • Dadurch können nur die Abbildungen der Strukturelemente von Photomasken simuliert werden, die in den Trainingsdaten enthalten sind oder die sich eindeutig auf solche Strukturelemente zurückführen lassen. Für ein allgemein gültiges Transformationsmodell einer Photomaske sind daher möglichst viele unterschiedliche, der tatsächlichen Anwendung entsprechende Strukturelemente in den Trainingsdaten vorzusehen. Dies kann mitunter zu langen Trainingszeiträumen führen.
  • Es kann deshalb vorteilhaft sein, einzelne Strukturklassen durch separate TransformationsmModelle zu beschreiben und zu trainieren. Dadurch können zum einen die einzelnen Trainingsphasen kürzer ausfallen und zum anderen kann die erzielbare Genauigkeit bei der Bilderzeugung verbessert werden. Das Gesamtbild der photolithographischen Maske oder deren Bildausschnitt wird dann aus den von den verschiedenen Modellen erzeugten Teilbilder zusammengesetzt.
  • Das erfindungsgemäße Verfahren kann ferner den Schritt aufweisen: Anpassen des Transformationsmodells an spezifische Teile der Design-Daten.
  • DNNs sind nach einer rechenintensiven Lernphase sehr recheneffizient in ihrer Vorhersage. Deshalb kann die Verwendung eines trainierten DNNs für die Erzeugung eines Bildes, beispielsweise eines Luftbildes auf Design-Daten erhebliche Geschwindigkeitsvorteile mit sich bringen. Dadurch kann die Rechenzeit für die Generierung eines Referenzbilds signifikant reduziert werden. Als dessen Folge lässt die die zeitliche Performance bei Parameteroptimierungen zur Bestimmung von Defekten oder auch bei Verfahren der Design-Korrelation deutlich steigern. Mit ähnlich geringem Rechenaufwand können Referenzbilder mit dem derzeit üblichen FOV aus kleineren Teilbildern zusammengesetzt werden. Beispielsweise spielen OPC- (Optical Proximity Correction) Optimierungen für moderne Photomasken eine immer wichtigere Rolle. Durch Anpassen eines Transformationsmodells an Strukturelemente, die mittels eines OPC-Prozesses optimiert werden sollen, kann der Geschwindigkeitsvorteil einer Simulation bei der Referenzbilderzeugung ausgenutzt werden.
  • Das erfindungsgemäße Verfahren kann ferner den Schritt aufweisen: Trainieren des Transformationsmodells mit Design-Daten und mehreren mit dem Abbildungssystem aufgenommenen Bildern und/oder mit Design-Daten und mehreren simulierten Bildern zum Festlegen der Modellparameter des Transformationsmodells.
  • Neben der Wahl der Architektur des Transformationsmodells ist die ausreichende Verfügbarkeit von Trainingsdaten zur Bestimmung der Parameter des Modells essentiell. Im vorliegenden Fall umfassen die Trainingsdaten entsprechende Paare aus Design-Daten und gemessenen Bildern, beispielsweise gemessene Luftbilder. Alternativ können auch Paare aus Design-Daten und gemessenen Luftbild-Fokusstapeln für Trainingszwecke eingesetzt werden. Die Luftbilder bzw. die Luftbild-Fokusstapel können beispielsweise mit Hilfe eines AIMS™ gemessen werden. Die Größenordnung der benötigten Design-Daten/Luftbild-Paare hängt von dem Transformationsmodell und der betrachteten photolithographischen Maske ab. Eine typische Anzahl von Design-Daten/Luftbild-Paaren liegt im Bereich von 104. Je mehr redundante Datenpaare für Trainingszwecke vorliegen, desto genauer kann das Transformationsmodell trainiert werden. Es ist aber auch möglich, mit weniger Datenpaare ein Transformationsmodell zu trainieren. Beispielsweise können Transformationsmodelle für bestimmte Strukturklassen einer photolithographischen Maske mit weniger Datenpaaren trainiert werden.
  • Indem die Design-Daten direkt mit den gemessenen Bildern des Abbildungssystems verknüpft werden, werden automatisch alle Effekte der photolithographischen Maske (z.B. Effekte des Elektronenstrahl-Schreibens der Maske) und des Abbildungssystems (z.B. Aberrationen) berücksichtigt.
  • Die Design-Daten können Polygone und/oder Polygonzüge umfassen.
  • Die bisherigen Ausführungen waren auf Design-Daten gerichtet, die als gerendertes (pixeliertes) Bild in einer binären oder Graustufendarstellung als Eingabedaten vorliegen. Die Design-Daten können jedoch auch als eine Menge von Polygonen oder Polygonzügen vorliegen. Durch Wahl eines Transformationsmodells beispielsweise in Form eines RNN (Recurrent Neural Network) kann das Transformationsmodell trainiert werden, aus einer Menge von Polygonen ein Bild zu erzeugen. Im Vergleich zu den bisher häufig verwendeten Pixel-Daten liefern Polygone präzisere Daten des Designs einer Photomaske und ermöglichen dadurch das Generieren eines präziseren Bildes der Strukturelemente einer Maske durch das trainierte Transformationsmodell.
  • Das oben genannte erfindungsgemäße Verfahren kann ferner den Schritt aufweisen: Trainieren des Transformationsmodells mit Design-Daten und dem zumindest einen zusätzlichen Parameter und mehreren mit dem Abbildungssystem aufgenommenen Bildern zum Festlegen der Modellparameter des Transformationsmodells.
  • Neben den oben angegebenen Paaren aus Design-Daten und gemessenen Luftbildern bzw. gemessenen Luftbild-Fokusstapeln können die Trainingsdaten für das Transformationsmodell zusätzliche Datenpaare aus Design-Daten und simulierten Luftbildern umfassen.
  • Die benötigten Trainingsdaten können während der Inbetriebnahme eines Abbildungssystems aufgenommen werden. Hierfür können die in der Kalibrierungsphase anfallenden Messdaten, beispielsweise die bestimmten Luftbilder herangezogen werden. Auch das Training des ML- Modells kann während der Kalibrierungsphase ausgeführt werden. Damit die Inbetriebnahme nicht zu lange dauert, können die Parameter des ML- Modells im Betrieb des Abbildungssystems ständig optimiert werden. Hierfür wird jede Messung einer photolithographischen Maske, die als defektfrei identifiziert wurde, den Trainingsdaten hinzugefügt und die Trainingsphase wird erneut ausgeführt. Dieses Vorgehen führt zu einem inkrementellen Lernen des ML-Modells. Das Identifizieren einer Photomaske als defektfrei kann beispielsweise mittels des Vorwissens über durch eine verwendete Maske oder durch eine automatische Analyse der Messbilder anhand einer gemessenen oder simulierten Referenzdarstellung erfolgen. Hierbei kann es günstig sein, die ursprünglichen Trainingsdaten für das inkrementelle Lernen weiterhin vorrätig zu haben, um ein Überanpassen des ML-Modells an die neuen Daten zu vermeiden.
  • Das erfindungsgemäße Verfahren kann ferner den Schritt aufweisen: Trainieren des Transformationsmodells mit Design-Daten und mehreren mit dem Simulationstool erzeugten Bildern zum Festlegen der Modellparameter des Transformationsmodells.
  • Das erfindungsgemäße Verfahren kann ferner den Schritt aufweisen: Trainieren des Transformationsmodells mit Design-Daten und mehreren mit Hilfe des Kirchhoff-Modells erzeugten Bildern und Verfeinern des trainierten Transformationsmodells mit Hilfe eines oder mehrerer Bilder, die durch numerisches Lösen der Maxwell-Gleichungen erzeugt wurden.
  • Der Umfang der verfügbaren Trainingsdaten aus rigorosen Simulationen kann aufgrund der langen Simulationsdauer beschränkt sein. Damit dennoch ein ausreichendes Training des Transformationsmodells möglich ist, kann das Transformationsmodell in einem ersten Schritt auf der Basis von in ausreichendem Maße verfügbarer Simulationsdaten auf der Grundlage des Kirchhoff-Modells trainiert werden. Die so bestimmten Modellparameter des Transformationsmodells werden dann in einem zweiten Schritt mittels rigoroser Simulationsdaten verfeinert.
  • Ferner kann ein Transformationsmodell mit einem Hyperparameter „Kirchhoff ja/nein“ ausgestattet werden, dann kann das Transformationsmodell je nach Vorgabe durch den Anmelder durch Festlegen des beschriebenen Hyperparameters Bilder ausgeben, die aussehen, wie mit einem Kirchhoff-Modell simuliert oder die aussehen, wie wenn eine rigorose Simulation auf der Basis der Design-Daten ausgeführt wird.
  • Das erfindungsgemäße Verfahren kann ferner den Schritt aufweisen: Verändern der Design-Daten. Das Verändern der Design-Daten kann ein lokales Verändern von einem oder mehreren Pattern-Elementen der photolithographischen Maske umfassen. Ferner kann das Verändern der Design-Daten ein lokales Verändern zumindest einer physikalischen Größe der photolithographischen Maske umfassen.
  • Durch ein gezieltes Verändern der Design-Daten können in der Simulation ein oder mehrere Defekte in eine Photomaske eingeführt werden. Auf Basis der veränderten Design-Daten können simulierte Bilder der Maske erzeugt werden. Die veränderten Design-Daten können zum einen zum Erzeugen von Trainingsdaten für das generative Modell benutzt werden. Zum anderen kann das Transformationsmodell zum Vorhersagen der Auswirkung(en) eines Defekts in einem simulierten Bild eingesetzt werden.
  • Die Design-Daten können in mehrere Teile aufgespalten werden. Für einen ersten Teil der Design-Daten kann zumindest ein erstes Teilbild mit einem Abbildungssystem aufgenommen werden und für einen zweiten Teil der Design-Daten kann zumindest ein zweites Teilbild mit einem Simulationstool erzeugt werden. Das zumindest eine erste Teilbild und das zumindest eine zweite Teilbild können zu einem Referenzbild zusammengesetzt werden. Das zumindest eine erste Teilbild und das zumindest eine zweite Teilbild können zum Trainieren eines Transformationsmodells eingesetzt werden.
  • Das erfindungsgemäße Verfahren kann ferner den Schritt aufweisen: Bereitstellen der Ausgabe des zweiten Transformationsblocks dem ersten Transformationsblock und erneuten Durchlaufen der Ausgabe des zweiten Transformationsblocks durch die zumindest zwei Transformationsblöcke des Transformationsmodells.
  • Das erfindungsgemäße Verfahren umfasst ein Transformationsmodell mit einer Anzahl von Transformationsblöcken in einem Bereich von 2 bis 1500, bevorzugt 5 bis 1000, mehr bevorzugt 20 bis 500, und am meisten bevorzugt 30 bis 100.
  • Ein Computersystem kann Anweisungen umfassen, die, wenn sie von dem Computersystem ausgeführt werden, das Computersystem veranlassen, die Schritte der oben angegebenen Aspekte auszuführen.
  • Nach noch einem weiteren Aspekt der vorliegenden Erfindung wird das oben angegebene Problem durch die Vorrichtung des Anspruch 18 gelöst. In einer Ausführungsform umfasst die Vorrichtung zum Erzeugen eines oder mehrerer Bilder einer photolithographischen Maske aus Design-Daten der photolithographischen Maske mit Hilfe eines Transformationsmodells, das zumindest zwei Transformationsblöcke umfasst, wobei die zumindest zwei Transformationsblöcke zumindest jeweils eine generisch lernbare Funktion umfassen, die Eingaben in Ausgaben überführt, die als Eingaben für einen nachfolgenden Transformationsblock verwendet werden: (a) Mittel zum Bereitstellen der Design-Daten als Eingabe in einen ersten Transformationsblock; und (b) Mittel zum Ausgeben eines oder mehrerer Bilder als Ausgabe eines zweiten Transformationsblocks, wobei das eine oder die mehreren Bilder zeigen, wie Pattern-Elemente der photolithographischen Maske, die auf der Basis der Design-Daten erzeugt wurden, in einem mit einem Abbildungssystem aufgenommenen Bild erscheinen werden oder in einem von einem Simulationstool erzeugten Bild erscheinen werden.
  • Die zumindest zwei Transformationsblöcke können zumindest zwei hintereinander angeordnete Encoder-Decoder Kombinationen umfassen.
  • Die Vorrichtung kann ausgebildet sein, die Verfahrensschritte des erfindungsgemäßen Verfahrens sowie der oben beschriebenen Aspekte auszuführen.
  • Figurenliste
  • In der folgenden detaillierten Beschreibung werden derzeit bevorzugte Ausführungsbeispiele der Erfindung unter Bezugnahme auf die Zeichnungen beschrieben, wobei
    • 1 schematisch ein generatives Modell in Form einer Encoder-Decoder Architektur aus dem Stand der Technik wiedergibt;
    • 2 schematisch ein erstes Beispiel einer möglichen Erweiterung des generativen Modells der 1 aus dem Stand der Technik zeigt;
    • 3 schematisch zwei weitere Beispiele einer möglichen Erweiterung des generativen Modells der 1 präsentiert, die im Stand der Technik beschrieben sind;
    • 4 schematisch eine Erweiterung der Encoder-Decoder-Architektur der 1 mit mehreren einer der in der 3 angegebenen Erweiterungen zeigt;
    • 5 schematisch ein drittes Beispiel eines möglichen Erweiterungsblocks des generativen Modells der 1 angibt, das ebenfalls in Stand der Technik beschrieben ist;
    • 6 schematisch eine Erweiterung der in der 1 dargestellten Encoder-Decoder-Architektur mit mehreren der in der 5 präsentierten Erweiterungsblöcken veranschaulicht;
    • 7 schematisch einen weiteren Erweiterungsblock aus dem Stand der Technik für das generative Modell der 1 präsentiert;
    • 8 schematisch den Einbau von mehreren der Erweiterungsblöcke der 7 in eine Encoder-Decoder-Architektur der 1 darstellt;
    • 9 schematisch ein zweites Beispiel des Einbaus von mehreren der Erweiterungsblöcke der 7 in eine Encoder-Decoder-Architektur der 1 zeigt;
    • 10 schematisch ein Transformationsmodell mit mehreren Transformationsblöcken wiedergibt, das ohne Encoder, Feature-Projektion und Decoder auskommt;
    • 11 schematisch ein Schema zum Erzeugen von Trainingsdaten für das Transformationsmodell der 10 angibt, wobei die Bilder der Trainingsdaten mit Hilfe eines Simulationstools erzeugt werden;
    • 12 schematisch einen Ablauf einer Trainingsphase eines Transformationsmodells präsentiert, wobei die Trainingsphase einen Trainingsschritt und einen Verifikationsschritt beinhaltet;
    • 13 Design-Daten mit einem Referenzbild (Vorhersagedaten eines trainierten Transformationsmodells) und einem mit einem Simulationstool auf der Basis der Design-Daten erzeugten Bild vergleicht;
    • 14 schematisch eine Vorrichtung zeigt, in der ein Abbildungssystem und eine Recheneinheit integriert sind, wobei die Recheneinheit ein Transformationsmodell in Form eines Modells maschinellen Lernens umfasst;
    • 15 schematisch eine Kombination aus einer Recheneinheit und mehreren Inspektions- oder Metrologiesystemen darstellt; und
    • 16 ein Flussdiagramm eines Verfahrens zum Erzeugen eines oder mehrerer Bilder einer photolithographischen Maske mit Hilfe eines Transformationsmodells angibt.
  • Detaillierte Beschreibung bevorzugter Ausführungsbeispiele
  • Im Folgenden werden derzeit bevorzugte Ausführungsformen des erfindungsgemäßen Verfahrens und der erfindungsgemäßen Vorrichtung anhand der Erzeugung von Referenzbildern für eine photolithographische Maske genauer erläutert. Das erfindungsgemäße Verfahren und die erfindungsgemäße Vorrichtung können sowohl zum Generieren von Referenzbildern für transmissive als auch für reflektierende Photomasken eingesetzt werden. Darüber hinaus können das erfindungsgemäße Verfahren und die erfindungsgemäße Vorrichtung generell zum Erzeugen von Referenzbildern für Substrate verwendet werden, die ein oder mehr Pattern-Elemente auf einer ihrer Oberfläche aufweisen, wobei das eine oder die mehreren Pattern-Elemente eine andere Reflektivität oder Transmissivität für auftreffende Strahlung (z.B. UV-Strahlung, Röntgenstrahlung, Elektronenstrahlung) aufweisen als das Substrat.
  • Die 1 zeigt ein Beispiel eines generativen Modells 100 aus dem Stand der Technik, das in Form einer Encoder-Decoder-Architektur ausgeführt ist. Das Beispiel der 1 ist der Offenlegungsschrift WO 2017 / 087 653 A2 entnommen. Das generative Modell 100 weist einen Encoder 170 mit drei Encoder-Schichten 110, 115 und 120, eine Feature-Schicht 125 und einen Decoder 180 mit drei Decoder-Schichten 130, 135 und 140 auf. Die Decoder-Schichten 130,135 und 140 können in jeweils zwei Teilschichten 4, 7, 5, 8 und 6, 9 aufgeteilt werden. Als Eingaben 105 können der ersten Encoder-Schicht 110 Design-Daten 150 beispielsweise in Form von CAD- (Computer Aided Design) Daten 150 bereitgestellt werden. Falls in dem Decoder nur die Teilschichten 4, 5 und 6 betrieben werden, können die Decoder-Schichten 130, 135 und 140 aus den Features der Feature-Schicht 125 wieder die Design- bzw. CAD-Daten 150 am Ausgang der dritten Encoder-Schicht 140 reproduzieren. Dies ist durch die Ausgaben 145 der CAD-Daten 160 in der 1 veranschaulicht. Mit Hilfe der Encoder-Schichten 110, 115 und 120 des Encoders 170, der Feature-Schicht 125 und der Decoder-Schichten 4 bis 6 des Decoders 180 kann ein Pre-Training des generativen Modells 110 durchgeführt werden.
  • Nach Abschluss der Pre-Trainingsphase wird das generative Modell 100 trainiert, indem der ersten Encoder-Schicht 110 nochmals die Design- oder CAD-Daten 150 für den eigentlichen Trainingsprozess vorgegeben werden. Während des eigentlichen Trainingsprozesses sind in den Decoder-Schichten 130, 135 und 140 beide Teilschichten 4 und 7, 5 und 8 sowie 6 und 9 des Decoders 180 in Betrieb. Die Decoder-Schicht 140 liefert als Ausgaben 155 ein Bild von Pattern-Elementen einer photolithographischen Maske. Die von dem Modell 100 bestimmten Ausgaben 155 werden mit Bildern 165 verglichen, die mit Hilfe eines Abbildungssystems gemessen wurden (in der 1 nicht gezeigt). Abhängig vom gewählten generativen Modell existieren verschiedene Verfahren zum Anpassen der Parameter des generativen Modells 100 in der Trainingsphase. Für DNNs (Deep Neural Networks), die eine Vielzahl von Parametern aufweisen, hat sich die iterative Technik „Stochastic Gradient Descent“ etabliert. Dabei werden die Trainingsdaten dem generativen Modell 100 immer wieder „vorgelegt“, d.h. dieses berechnet aus den CAD-Daten 150 mit dem aktuellen Parametersatz ein Bild, beispielsweise ein Luftbild und vergleicht das berechnete Luftbild mit dem gemessenen Luftbild des Trainingsdatensatzes. Dieser Vergleich kann zum Beispiel pixelweise erfolgen. Ergeben sich Abweichungen zwischen dem berechneten Luftbild und dem gemessenen Luftbild, werden die Modellparameter des generativen Modells 100 angepasst. Die Trainingsphase endet, wenn ein lokales Optimum erreicht ist, d.h. die Abweichungen der Paare berechneter und gemessener Bilder kaum mehr variieren, oder aber ein vorgegebenes Zeitbudget aufgebraucht ist, d.h. nach einer vorgegebenen Anzahl von Schritten. Die Trainingsphase kann auch dadurch enden, dass die Validierungsgenauigkeit des trainierten Modells merklich ansteigt. Dies ist ein Anzeichen von Überanpassung des Modells.
  • Das Diagramm 200 der 2 präsentiert schematisch ein erstes Beispiel zur Erweiterung der Encoder-Decoder-Architektur des generativen Modells 100 der 1 oder allgemein einer Encoder-Decoder-Architektur eines Transformationsmodells. Das in der 2 dargestellte Beispiel ist der Publikation der Autoren O. Ronneberger, P. Fischer und T. Brox „U-Net: Convolutional Networks for Biomedical Image Segmentation“, 18th Intern. Conf. on Medical Image Computing and Computer-Assisted Intervention (MICCAI), 5.-9. Oktober, 2015, in München entnommen. Die Zahlenwerte am linken Rand der einzelnen Rechtecke geben die Pixelgröße der entsprechenden Darstellung eines Eingabebildes mit 572 × 572 Pixeln an. Die Zahlenwerte auf den einzelnen Rechtecken geben die Zahl der Kanäle in den einzelnen Schichten an. In dem in der 2 wiedergegebenen Beispiel werden die Ergebnisse oder Ausgaben jeder Bündelungsschicht des Encoders als Eingaben der entsprechenden Entbündelungsschicht des Decoders des generativen Modells bereitgestellt. Dadurch wird insbesondere die räumliche Information während der Transformationsvorgänge in der Encoder-Decoder-Struktur beibehalten. Dies führt zu einer größeren Genauigkeit des von dem Decoder erzeugten Bildes verglichen mit der linearen Encoder-Decoder-Architektur des generativen Modells der 1. Das in dem Diagramm 200 der 2 angegebene generative Modell stellt ein Beispiel eines vollständig faltenden Netzwerkes (FCN, Fully Convolutional Network) dar.
  • Die 3 zeigt zwei Beispiele von Blöcken 300 und 350, die die Ausgaben von zwei bzw. vier Schichten eines Encoders mit den Eingaben in den Block 300 bzw. 350 verrechnet, um das finale Ergebnis des Blockes zu erhalten. Durch die zusätzliche Verbindung in den Blöcken 300 und 350 müssen diese Blöcke nur eine Abweichung von der Identitätsabbildung lernen. Die in der 3 dargestellten Blöcke können auch in einem Decoder-Teil einer Encoder-Decoder-Architektur eingesetzt werden.
  • Die 4 zeigt einen sechszehnmaligen Einbau des Blockes 300 der 3 in einen Encoder 400, der 34 Schichten aufweist. In dem Encoder 400 der 4 sind die Blöcke 300, in denen eine Änderung der Dimension in dem Encoder 400 erfolgt, gestrichelt dargestellt. Die Blöcke 300 und 350 der 3 und der Encoder 400 der 4 sind dem Artikel „Deep Residual Learning for Image Recognition", K. He et al., IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), June 26 - July 1, 2016, Las Vegas, Nevada, USA, S. 770-778, entnommen. Die in der 4 wiedergegebene Konfiguration kann auch in den Decoder-Teil einer Encoder-Decoder-Architektur eingesetzt werden. Dazu müssen lediglich die gepunkteten Pfeile, die in der 4 eine Bündelung oder ein Pooling beschreiben, durch eine Entbündelung oder ein De-pooling ersetzt werden.
  • In der 5 ist ein weiteres Beispiel in Form eines Blockes 500 wiedergegeben, der es ermöglicht, die Encoder-Decoder-Architektur des generativen Modells 100 der 1 zu erweitern. Der in der 5 dargestellte Block 500 weist vier Schichten oder Transformationsschichten auf. Innerhalb des Blocks 500 wird die Eingabe an eine Schicht jeweils auch der übernächsten Schicht als Eingabe kombiniert mit den Ausgaben der vorhergehenden Schicht zur Verfügung gestellt. Ferner werden die Ausgaben der einzelnen Schichten zusätzlich am Ausgang des Blocks 500 mit den Ergebnissen aller Schichten des Blockes 500 verrechnet. Allgemein ausgedrückt liegen der k-ten Schicht alle bisher errechneten Ausgaben der vorhergehenden Schichten sowie die initiale Eingabe als Eingabedaten vor. Die Ausgabe der k-ten Schicht wird dann allen nachfolgenden Schichten als Eingabedaten zur Verfügung gestellt. Schließlich werden die erzeugten Ausgaben aller Schichten zusammengefasst und als finale Ausgabe des Blockes weitergegeben.
  • Die 6 zeigt ein generatives Modell, in das sowohl in den Encoder 610 als auch den Decoder 620 jeweils zwei der in der 5 präsentierten Blöcke 500 eingebaut sind. Zusätzlich sind die Blöcke 500 des Encoders 610 der 6 kurzgeschlossen. Darüber hinaus werden die Ausgaben der einzelnen Blöcke 500 des Encoders 610 den Blöcken 500 des Decoders 620 als zusätzliche Eingaben zur Verfügung gestellt. Die 5 und 6 sind der Publikation „The one hundred layers tiramisu; fully convolutional denseness for semantic segmentation", Computer Vision and Pattern Recognition, December 5, 2016, arXiv: 1611.09326, der Autoren S. Jegou et al. entnommen.
  • Die 7 präsentiert einen Verfeinerungsblock 700, der gleichzeitig Eingaben auf mehreren Auflösungsstufen erhält und diese individuell mit Eingabe-abhängigen Faltungsoperationen bearbeitet, deren Ergebnisse verschmilzt und dieses Zwischenergebnis mit einem verketteten residualen Zusammenlegungsblock transformiert.
  • Das Diagramm 800 der 8 stellt ein Beispiel eines Verfeinerungsmodells dar, welches mehrere Verfeinerungsblöcke 700 in einem Encoder eines generativen Modells kombiniert, um hoch präzise, lernbare Transformationen zu realisieren. Das Diagramm 900 der 9 zeigt ein Beispiel eines Einbaus von mehreren Verfeinerungsblöcken 700 der 7 in einen Decoder eines generativen Modells. Die Diagramme 700, 800 und 900 der 7 bis 9 sind dem Artikel „RefineNet: Multi-Path Refinement Network for High-Resolution Semantic Segmentation", IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), June 26 - July 1, 2016, Las Vegas, Nevada, USA, arXiv preprint arXiv: 1611.09326, der Autoren G. Lin et al. entnommen.
  • Die 10 zeigt schematisch ein Beispiel eines Transformationsmodells 1000, welches ohne explizite Encoder 170, Feature-Projektion 125 und Decoder 180 auskommt. Vielmehr weist das beispielhafte Transformationsmodell 1000 der 10 N Transformationsblöcke 1010, 1020, 1030 auf, wobei jeder der N Transformationsblöcke 1010, 1020, 1030 zumindest eine generisch lernbare Funktion beinhaltet, die in einer sequentiellen Anordnung Eingaben 1050 in Ausgaben 1060 überführen, die wiederum Eingaben 1050 für den nachfolgenden Transformationsblock 1020, 1030 darstellen. Das Transformationsmodell 1000 der 10 erhebt nicht den Anspruch, eine geeignete und deshalb transferierbare Repräsentation der Eingaben in einem der Zwischenschritte in informationstragende Merkmale (Feature-Projektion) zu generieren. Der erste Transformationsblock 1010 erhält die Eingaben X 1050 (beispielsweise Design-Daten einer photolithographischen Maske) und der N-te Transformationsblock 1030 liefert ein berechnetes Bild, das einem mit einem Abbildungssystem gemessenen Bild oder einem mit einem Simulationstool simulierten Bild der photolithographischen Maske ähnlich ist. Die Eingabe X 1050 kann einen oder mehrere zusätzliche Parameter umfassen, die die photolithographische Maske und/oder ein Abbildungssystem charakterisieren.
  • Das Diagramm 1100 der 11 zeigt das Erzeugen von Trainingsdaten zum Bestimmen der Modellparameter eines Transformationsmodells 1000 aus Design-Daten und simulierten Bildern, die auf der Basis von Design-Daten erzeugt wurden. Die Design-Daten 1110 einer photolthographischen Maske können zum Beispiel in Form einer GDS-(Graphic Data System File) Datei vorliegen. Eine GDS-Datei beschreibt die Design-Daten einer photolithographischen Maske als Polygone. Die Design-Daten 1110 einer photolithographischen Maske werden zum Generieren in Trainingsdaten in einem Design-Clustering-Prozess 1130 in mehrere Teile aufgeteilt. Beispielsweise kann ein Teil 1140 oder ein Cluster 1140 der Design-Daten 1110 die Layout-Daten einer Fläche von 25 µm × 25 µm umfassen. In einem zweiten Schritt werden aus den einzelnen Teilen oder Clustern 1140 sogenannte Design-Clips 1150 ermittelt. In dem in der 11 dargestellten Beispiel weist ein Design-Clip 1150 eine Fläche von 2,5 µm × 2,5 µm auf. Die Größe der Design-Clips 1150 hängt von der verfügbaren Speichergröße der Recheneinheit oder des Computersystems ab, das ein Transformationsmodell 1000 nutzt, um ein Referenzbild für eine photolithographische Maske zu bestimmen.
  • In dem in der 11 dargestellten Beispiel werden mehr als 100 Design-Clips 1150 benötigt, um einen Teil oder ein Cluster 1140 einer Photomaske zu überdecken, da die Design-Clips 1150 einen Überlapp über ein Cluster 1140 der Maske aufweisen sollen. Die Daten bezüglich eines Clusters 1140 und eines Design-Clips 1150 erhält der Design-Clustering-Prozess 1130 über den Input der Trainingsparameter 1120. Falls das Transformationsmodell 1000 einen oder mehrere Hyperparameter enthält, der beispielsweise einen Typ einer photolithographischen Maske spezifiziert, so dass verschiedene Maskentypen mit einem Transformationsmodell 1000 beschrieben werden können, wird der oder die Werte bzw. der oder die Zahlenwerte des bzw. der Hyperparameter(s) als Trainingsparameter 1120 dem Transformationsmodell 1000 übergeben (in der 11 nicht gezeigt).
  • Die von dem Design-Clustering-Prozess 1130 ermittelten Design-Clips 1150 werden zum einen an ein Simulationstool 1180 weitergeleitet und bilden zum anderen eine erste Hälfte 1185 der Trainingsdaten 1190. Neben den Design-Clips 1150 kann das Simulationstool 1180 einen oder mehrere zusätzliche Parameter 1160 in Form von Systemparameter(n) 1160 oder Toolparameter(n) 1160 eines optischen Abbildungssystems erhalten. Die Systemparameter 1160 können Belichtungseinstellungen und/oder Aberrationen des optischen Abbildungssystems umfassen. Darüber hinaus kann das Simulationstool 1180 einen oder mehrere zusätzliche Parameter 1170 in Form von Maskenparametern 1170 erhalten. Der bzw. die Maskenparameter 1170 können beispielsweise einen Maskentyp und/oder optische Eigenschaften einer photolithographischen Maske umfassen.
  • Das Simulationstool 1180 kann auf der Basis der empfangenen Design-Daten 1110, beispielsweise in Form von Design-Clips 1150 ein simuliertes Bild oder ein simuliertes Bild eines Design-Clips 1150 erzeugen. Hierfür kann das Simulationstool 1180 eine Simulation auf der Basis eines Kirchhoff-Modells ausführen. Alternativ kann das Simulationstool 1180 ein simuliertes Bild eines oder mehrerer Design-Clips 1150 durch Ausführen einer ab-initio oder rigorosen Simulation, d.h. durch ein numerisches Lösen der Maxwell-Gleichungen für den Design-Clip 1150, ausführen. Durch Ausführen der Simulationen der Design-Clips 1150 generiert das Simulationstool 1180 die zweite Hälfte 1185 der Trainings-Daten 1190. Die von dem Simulationstool 1180 erzeugten Bilder können simulierte Luftbilder sein.
  • In einer alternativen Ausführungsform kann das Simulationstool 1180 beim Durchführen der Simulationen den bzw. die Systemparameter 1160 eines optischen Abbildungssystems und/oder den bzw. die Maskenparameter 1170 der Photomaske berücksichtigen, zu der die Design-Clips 1150 als Design-Daten 1110 gehören. Das Berücksichtigen der Systemparameter 1160 und der Maskenparameter 1170 ermöglicht das Trainieren eines verallgemeinerten Transformationsmodells 1000, das zum Generieren von Referenzbildern für verschiedene Maskentypen herangezogen werden kann. Zudem kann ein trainiertes oder parametriertes Transformationsmodell 1000 zum Erzeugen von Referenzbildern in Abhängigkeit von den Einstellungen der Systemparameter 1160 eines Abbildungssystems eingesetzt werden. Um die absolute Trainingszeit zu reduzieren, kann eine Parameterschätzung eines bereits angelernten oder trainierten Transformationsmodells 1000, etwa für einen bestimmten Maskentyp und/oder für einen spezifischen Systemparameter 1160 eines Abbildungssystems als Initiallösung für ein neu zu trainierendes Transformationsmodell 1000 genutzt werden.
  • In der bisher im Kontext der 11 beschriebenen Ausführungsform umfassen die Trainingsdaten 1190 für ein Transformationsmodell 1000 Daten-Tupel der Form (Design-Daten 1150, simulierte Daten 1185). In einer anderen Ausführungsform zum Erzeugen von Trainingsdaten 1190, die in der 11 nicht wiedergegeben ist, wird die zweite Hälfte der Trainingsdaten-Tupel nicht durch ein Simulationstool 1180 generiert. Vielmehr bilden die zweite Hälfte der Trainingsdaten-Tupel gemessene Bilder, etwa Luftbilder oder Luftbildstapel, die mit einem Abbildungssystem aufgenommen wurden, d.h. die Trainingsdaten-Tupel sind von der Form (Design-Daten 1150, gemessenes Bild). Da Trainingsdaten-Tupel der Form (Design-Daten 1150, simulierte Daten 1185) insbesondere beim Verwenden eines Kirchhoff-Modells deutlich leichter erzeigt werden können als Bilder mit einem Abbildungssystem aufzunehmen, liegt das Verhältnis von (Design-Daten 1150, simulierte Daten 1185) und (Design-Daten 1150, gemessenes Bild) vorzugsweise in einem Bereich von 10:1.
  • Das Diagramm 1200 der 12 illustriert den Ablauf einer Trainingsphase eines Transformationsmodells 1000, die in zwei Stufen abläuft. Wie im Kontext der 11 ausgeführt, weisen die Trainingsdaten 1190 Daten-Tupel in Form von Design-Daten 1150 und simulierten Daten 1185 oder Design-Daten 1150 und gemessenen Bildern 1205 auf. In dem in der 12 dargestellten Beispiel umfassen die Design-Daten 1110, 1150 Design-Clips 1150. In dem in der 12 dargestellten Beispiel weist der simulierte Design-Clip 1150 ein vertikales periodisches Streifenmuster auf. Wie ebenfalls während der Diskussion der 11 besprochen, können die andere Hälfte der Trainingsdaten-Tupel 1190 simulierte Bilddaten 1185 etwa simulierte Luftbilder 1185 sein. In einer alternativen Ausführungsform kann die zweite Hälfte der Trainingsdaten-Tupel 1190 gemessene Bilder 1205 beispielsweise gemessene Luftbilder 1205 umfassen.
  • In einem ersten Schritt 1210 werden aus den Trainingsdaten 1190 oder Trainingsdaten-Tupeln 1190 Daten für eine Trainingsepoche ausgewählt. In einer Trainingsepoche 1220 werden alle im Schritt 1210 ausgewählten Trainingsdaten 1190 dem Transformationsmodell 1000 zumindest einmal vorgelegt. In dem in der 12 dargestellten Beispiel umfasst das Transformationsmodell 1000 ein neuronales Netz 1230. Aus einem Vergleich der Design-Clips 1150 mit den simulierten 1185 oder gemessenen Bilder 1205 werden während der Trainingsphase 1220 die Modellparameter des Transformationsmodells 1000 bestimmt. Dies kann beispielsweise durch eine iterative Anwendung des „Stochastic Gradient Descent“ (SGD)-Verfahrens ausgeführt werden. In der 12 ist dies durch das Diagramm 1235 angedeutet.
  • In einer zweiten Stufe des Trainierens oder des Anlernens des Transformationsmodells 1000 werden dem Transformationsmodell 1000 Verifikationsdaten 1240 vorgelegt. Ähnlich wie die Trainingsdaten 1190 umfassen die Verifikationsdaten 1240 Daten-Tupel von der Form Design-Clips 1245 und simulierte 1250 oder Design-Clips 1245 und gemessene Bilder 1255 bzw. Bildausschnitte einer photolihtographischen Maske. Falls das Transformationsmodell 1000 die simulierten 1250 oder die gemessenen Bilder 1255 mit einer vorgegebenen Genauigkeit vorhersagen kann, ist die Trainingsphase für das Transformationsmodell 1000 bei Schritt 1270 abgeschlossen.
  • Wenn die Abweichung des von dem Transformationsmodell 1000 erzeugten Bildes von dem simulierten 1250 oder dem gemessenen Bild 1255 größere als ein vorgegebener Schwellenwert ist, gibt es mehrere Möglichkeiten diese Differenz zu verkleinern. Zum einen können den Trainingsdaten 1190 mehr Daten-Tupel (Design-Daten 1150, simuliertes Bild 1185) bzw. (Design-Daten 1150, gemessenes Bild 1205) hinzugefügt werden. Zum anderen kann das Transformationsmodell 1000 verbessert werden. Dies kann beispielsweise erfolgen, indem einem Transformationsmodell 1000 in Form eines ML-Modells 1230 mehr Faltungsschichten hinzugefügt werden. Darüber hinaus kann die Zeitspanne für eine Trainingsepoche verlängert werden. Zudem kann als Optimierungsverfahren nicht SGD verwendet werden, sondern ein anderes Verfahren. Ferner kann das Training nochmals mit anderen zufälligen Modellparameterinitialisierungen gestartet werden. Dadurch wird typischerweise ein anderes lokales Optimum der Modellparameter gefunden. Überdies können die Parameter des Lernverfahrens geändert werden. Beispielsweise kann eine andere Lerngeschwindigkeit für das trainierende Transformationsmodell 1000 eingestellt werden und/oder eine Bestrafung von komplexen Lösungen kann geändert werden. Schließlich kann eine andere Zielfunktion optimiert werden, beispielsweise kann anstatt einer L2-Regularisierung eine robustere Regularisierung wie etwa L1 oder Huber-Loss benutzt werden.
  • Nach Abschluss der Trainingsphase werden dem Transformationsmodell 1000 Nutzdaten 1280 in Form eines Design-Clips 1285 eingegeben und das angelernte Transformationsmodell 1000 erzeugt ein Bild 1290 oder ein Referenzbild 1290, das einem simulierten oder einem gemessenen Bild von Pattern-Elementen einer photolithographischen Maske sehr ähnlich ist.
  • In dem Diagramm 1300 der 13 sind ein simuliertes und ein von einem Transformationsmodell 1000 erzeugtes Bild eines Design-Clips miteinander verglichen. Das linke Teilbild des Diagramms 1300 präsentiert einen Design-Clip 1320 einer photolithographischen Maske 1310. Der Design-Clip 1320 umfasst eine regelmäßige Anordnung von transparenten Quadraten 1325 in einer intransparenten absorbierenden Schicht 1330 der photolithographischen Maske 1310. Das zweitlinke Teilbild des Diagramms 1300 zeigt die Vorhersage des trainierten Transformationsmodells 1000 für den Design-Clip 1320 des linken Teilbildes. Die bedeutet, das zweitlinke Teilbild stellt ein Bild 1340 in Form eines Luftbildes 1340 des Design-Clips 1320 dar, das das trainierte Transformationsmodell 1000 auf der Basis der Design-Daten des Design-Clips 1320 erzeugt hat.
  • Das zweitrechte Teilbild des Diagramm 1300 präsentiert ein simuliertes Bild 1350 des Design-Clips 1320 ebenfalls in Form eines Luftbildes 1350. Das simulierte Bild 1350 der Design-Daten des Design-Clips 1320 wurde von dem Simulationstool 1180 der 11 durch Simulation mittels eines Kirchhoff-Modells für den Design-Clip 1310 erzeugt. Mit bloßem Auge ist kein Unterschied zwischen dem Bild 1340, das von dem trainierten Transformationsmodell 1000 erzeugt wurde und dem mittels des Simulationstools 1180 generierten Bildes 1350 feststellbar. Das linke Teilbild zeigt ein Differenzbild 1360, bei dem das von dem trainierten Transformationsmodell 1000 erzeugte Referenzbild 1340 von dem simulierten Bild 1350 abgezogen wurde. Die Struktur des Differenzbildes 1360 kann weiter verringert werden oder zum Verschwinden gebracht werden, in dem das simulierte Bild 1350 oder das Luftbild 1350 anstelle des Kirchhoff-Modells mit Hilfe einer rigorosen Simulation aus dem Design-Clip 1320 erzeugt wird.
  • Alternativ kann das Transformationsmodell 1000 mit Luftbildern trainiert werden, die das Simulationstool 1180 mittels einer rigorosen Simulation erzeugt, anstelle von auf der Basis eines Kirchhoff-Modells erzeugten Luftbildern. Es ist aber auch möglich, das Transformationsmodell 1000, das anhand von Luftbildern trainiert wurde, die mittels eines Kirchhoff-Modells gewonnen wurden, mit Hilfe von Trainingsdaten 1190 auf der Basis rigoroser Simulationen nochmals zu trainieren bzw. das Trainieren zu verfeinern.
  • Die 14 veranschaulicht eine Alternative zum in der 11 dargestellten Erzeugen von Referenzbildern aus Design-Daten 1100 oder Design-Clips 1150. Ferner illustriert die 14 eine zweite Möglichkeit zum Integrieren eines Verfahrens zum Erzeugen eines oder mehrerer Bilder einer photolithographischen Maske aus Design-Daten 1110, 1150 der photolithographischen Maske mit Hilfe eines Transformationsmodells 1000 oder zum Erzeugen eines oder mehrerer Referenzbilder in einem Inspektionssystem 1400 oder in einem Metrologiesystem 1400 für Photomasken. Das Inspektions- oder Metrologiesystem 1400 umfasst ein Abbildungssystem 1410 und eine Recheneinheit 1430. In der 14 ist das Abbildungssystem 1410 durch eine Abbildungsoptik 1415 symbolisiert. Das Abbildungssystem 1410 bildet mittels der Abbildungsoptik 1415 Pattern-Elemente einer photolithographischen Maske 1425 in ein Messbild 1420 oder ein gemessenes Bild 1420 ab.
  • Die Recheneinheit 1430 des Inspektions- oder Metrologiesystems 1400 umfasst ein Transformationsmodell 1000. Als Eingangsdaten 1050, Eingabedaten 1050 oder als Eingaben 1050 erhält das Transformationsmodell 1000 Design-Daten 1110. Diese können beispielsweise in Form einer GDS-Datei oder einer PNG-Datei vorliegen. Ferner kann das Transformationsmodell 1000 Parameter 1170 der untersuchten photolihtographischen Maske 1425 als Eingaben 1050 empfangen. Das Transformationsmodell 1000 erzeugt aus den Design-Daten 1110 und ggf. dem oder den Maskenparametern 1170 der Maske 1425 ein Referenzbild 1440.
  • In dem in der 14 dargestellten beispielhaften Inspektions- und Metrologie System 1400 sind das Abbildungssystem 1410 und die Recheneinheit 1430 in einer Vorrichtung kombiniert. Es ist jedoch auch möglich, das Abbildungssystem 1410 und die Recheneinheit 1430 als getrennte Vorrichtungen auszuführen, die über eine oder mehrere Kommunikationseinheiten miteinander verbunden sind (in der 14 nicht gezeigt).
  • In einer Verifikationseinheit 1445 der Recheneinheit 1430 des Inspektions- oder Metrologiesystems 1400 werden das im dem Abbildungssystem 1410 gemessene Bild 1420 mit dem Referenzbild 1440 verglichen. Falls die Abweichung zwischen Referenzbild 1440 und gemessenem Bild 1420 kleiner als ein vorgegebener Schwellenwert ist, wertet eine Auswerteeinheit 1450 das Messbild 1420 beispielsweise bezüglich des Vorliegens eines Defekts der photolithographischen Maske 1425 aus. Zu diesem Zweck vergleicht die Auswerteeinheit 1450 das Referenzbild 1440 mit dem gemessenen Bild 1420. Dieser Vergleich wird typischerweise basierend auf einem pixelweisen Vergleich der beiden Bilder 1420 und 1440 ausgeführt. Anschließend gibt die Auswerteeinheit 140 des Inspektions- und Metrologiesystems 1400 das Ergebnis der Auswertung als Maskenqualifizierungsergebnis 1460 aus.
  • Falls die Verifikationseinheit 1445 feststellt, dass eine globale Abweichung zwischen dem Referenzbild 1440 und dem gemessenen Bild 1420 einen vorgegebenen Schwellenwert überschreitet, aktiviert die Recheneinheit 1430 das Simulationstool 1180 der Recheneinheit 1430. Das Simulationstool 1180 generiert aus den Design-Daten 1110 bzw. einem Design-Clip 1150 ein simuliertes Bild, etwa ein Luftbild. Zum Ausführen der Simulation kann das Simulationstool 1180 zusätzlich einen oder mehrere Maskenparameter 1170 der photolithographischen Maske und/oder einen oder mehrere Systemparameter 1160 des Abbildungssystems 1410 erhalten. Das Simulationstool 1180 kann ein Bild des Design-Clips 1150 auf der Basis des Kirchhoff-Modells für die photolihtographische Maske 1425 oder durch Ausführen einer rigorosen Simulation erzeugen. Die bisherigen Ausführungen zur 14 beschreiben den Fall, dass das Transformationsmodell 1000 den Design-Clip 1150 nicht ausreichender Genauigkeit vorhersagen kann. Die nachfolgend beschriebene übliche Simulation dient als „langsame“ Backup Lösung für die Generation eines Referenzbildes 1470.
  • Das Simulationstool 1180 der Recheneinheit 1430 kann das simulierte Referenzbild 1470 an die Auswerteeinheit 1450 der Recheneinheit 1430 weitergeben. Auf der Basis eines Vergleichs des simulierten Referenzbildes 1470 und des gemessenen Bildes 1420 kann die Auswerteeinheit 1450 den vom gemessenen Bild 1420 repräsentierten Teil der photolithographischen Maske analysieren und feststellen, ob die photolithographische Maske 1425 im Bereich des gemessenen Bildes 1420 einen Defekt aufweist.
  • Ferner gibt das Simulationstool 1180 das simulierte Referenzbild 1470 als Aktualisierung 1480 der Trainingsdaten an das Transformationsmodell 1000.
  • Die 15 zeigt ein Beispiel der Bereitstellung einer zentralen Recheneinheit 1550, auf die mehrere gleiche oder ähnliche Inspektions- oder Metrologiesysteme zugreifen können. In dem in der 15 dargestellten Beispiel gibt ein erstes Inspektions- oder Metrologiesystem 1510 Messdaten 1540, d.h. gemessene Bilder 1420 und zusätzliche Parameter, wie etwa Maskenparameter 1170 und/oder Systemparameter 1160 des Inspektions- oder Metrologiesystems 1510, an die zentrale Recheneinheit 1550 weiter. Das erste Inspektions- oder Metrologiesystem 1510 kann zum Beispiel ein PROVE®-Tool umfassen. Ein zweites Inspektions- oder Metrologiesystem 1520, etwa ein AIMS™, kann ebenfalls Messdaten und ggf. einen oder mehrere zusätzliche Parameter an die zentrale Recheneinheit 1550 geben. Ferner kann ein drittes Inspektions- und Metrologiesystem 1530, beispielsweise ein MeRiT®, Messdaten sowie ggf. einen oder mehrere zusätzliche Parameter an die zentrale Recheneinheit 1550 übergeben.
  • Die zentrale Recheneinheit 1550 weist einen zentralen Speicher 1555 auf, in dem Design-Daten 1110, beispielsweise in Form von Design-Clips 1150 gespeichert sind. Ferner können in dem zentralen Speicher 1555 Maskenparameter 1170 und Systemparameter 1160 für die verschiedenen Inspektions- oder Metrologiesysteme 1510, 1520 und 1530 abgelegt sein. Ferner weist die beispielhafte zentrale Recheneinheit 1550 der 15 zwei Bildanalyse-Tools 1560 und 1565 auf. Dadurch ermöglicht die zentrale Recheneinheit 1550 das gleichzeitige Analysieren von zwei Bildern durch zwei Benutzer unterschiedlicher Geräte 1570 und 1575.
  • Die zentrale Recheneinheit 1550 beinhaltet in dem in der 15 veranschaulichten Beispiel zwei Transformationsmodelle 1000 in Form von zwei Modellen maschinellen Lernens 1580 und 1585. Falls die Modelle maschinellen Lernens 1580 und 1585 einen oder mehrere zusätzliche Parameter verarbeiten können, erhalten die Modelle maschinellen Lernens 1580 und 1585 eine Auswahl dieses oder der zusätzlichen Parameter über die Einheiten 1590 und 1595 der zentralen Recheneinheit 1550. Die trainierten Modelle maschinellen Lernens 1580 und 1585 generieren Referenzbilder 1545 und stellen diese den Inspektions- oder Metrologiesystemen 1510, 1520 und 1530 zur Verfügung.
  • Schließlich präsentiert die 16 ein Flussdiagramm 1600 eines Ausführungsbeispiels des in dieser Anmeldung definierten Verfahrens zum Erzeugen eines oder mehrerer Bilder 1440 einer photoltihographischen Maske 1425 aus Design-Daten 1110, 1150 der photolithographischen Maske 1425 mit Hilfe eines Transformationsmodells 1000. Das Transformationsmodell 1000 umfasst zumindest zwei Transformationsblöcke 1010, 1030, wobei die zumindest zwei Transformationsblöcke 1010, 1030 zumindest jeweils eine generisch lernbare Funktion umfassen, die Eingaben 1050 in Ausgaben 1060 überführt, die als Eingaben 1050 für einen nachfolgenden Transformationsblock 1020, 1030 verwendet werden. Das Verfahren beginnt bei Schritt 1610. Im ersten Schritt 1620 werden Design-Daten 1110, 1150 als Eingabe 1050 einem ersten Transformationsblock 1010 bereitgestellt. Im zweiten Schritt 1630 werden ein oder mehrere Bilder 1440 als Ausgabe 1060 eines zweiten Transformationsblocks 1030 ausgeben, wobei das eine oder die mehreren Bilder 1440 zeigen, wie Pattern-Elemente, die auf der Basis der Design-Daten 1150 auf der photolithographischen Maske 1425 erzeugt wurden, in einem mit einem Abbildungssystem 1410, 1510, 1520, 1530 aufgenommenen Bild 1420 erscheinen werden oder in einem von einem Simulationstool 1180 erzeugten Bild 1470 erscheinen werden. Das Verfahren endet bei Schritt 1640.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 2013/0019212 A1 [0008]
    • US 2016/0195387 A1 [0008]
    • WO 2017/087653 A1 [0009]
    • WO 2017/087653 A2 [0103]
  • Zitierte Nicht-Patentliteratur
    • K. He et al. berichten in dem Artikel „Deep residual learning for image rcognition“, IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), June 26 - July 1, 2016, Las Vegas, Nevada, USA, S. 770-778 [0044]
    • Autoren G. Lin et al. in dem Artikel „RefineNet: Multi-path refinement networkd for high-resolution semantic segmentation“, IEEE Cent. on Computer Vision and Pattern Recognition (CVPR), June 26 - July 1, 2016 [0056]
    • „Deep Residual Learning for Image Recognition“, K. He et al., IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), June 26 - July 1, 2016, Las Vegas, Nevada, USA, S. 770-778 [0107]
    • „The one hundred layers tiramisu; fully convolutional denseness for semantic segmentation“, Computer Vision and Pattern Recognition, December 5, 2016, arXiv: 1611.09326 [0109]
    • „RefineNet: Multi-Path Refinement Network for High-Resolution Semantic Segmentation“, IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), June 26 - July 1, 2016, Las Vegas, Nevada, USA, arXiv preprint arXiv: 1611.09326, der Autoren G. Lin et al [0111]

Claims (20)

  1. Verfahren zum Erzeugen eines oder mehrerer Bilder (1440) einer photolithographischen Maske (1425) aus Design-Daten (1110, 1150) der photolithographischen Maske (1425) mit Hilfe eines Transformationsmodells (1000), das zumindest zwei Transformationsblöcke (1010, 1030) umfasst, wobei die zumindest zwei Transformationsblöcke (1010, 1030) zumindest jeweils eine generisch lernbare Funktion umfassen, die Eingaben (1050) in Ausgaben (1060) überführt, die als Eingaben (1050) für einen nachfolgenden Transformationsblock (1020,1030) verwendet werden, das Verfahren die Schritte aufweisend: a. Bereitstellen der Design-Daten (1110, 1150) als Eingabe (1050) in einen ersten Transformationsblock (1010); und b. Ausgeben eines oder mehrerer Bilder (1440) als Ausgabe (1060) eines zweiten Transformationsblocks (1030), wobei das eine oder die mehreren Bilder (1440) zeigen, wie Pattern-Elemente der photolithographischen Maske (1425), die auf der Basis der Design-Daten (1110,1150) erzeugt wurden, in einem mit einem Abbildungssystem (1410,1510,1520,1530) aufgenommenen Bild (1420) erscheinen werden oder in einem von einem Simulationstool (1180) erzeugten Bild (1470) erscheinen werden.
  2. Verfahren nach Anspruch 1, wobei das Transformationsmodell (1000) ein Modell maschinellen Lernens (1230) umfasst.
  3. Verfahren nach dem vorhergehenden Anspruch, wobei das Verfahren die Schritte umfasst: a. Bestimmen informationstragender Merkmale (125) aus den Design-Daten (1110,1150) mit zumindest zwei Schichten (110, 115, 120) eines Encoders (170) des Modells maschinellen Lernens (1230, 1580, 1585); und b. Bestimmen des einen oder der mehreren Bilder (1440) aus den informations-tragenden Merkmalen (125) mit zumindest zwei Schichten (130, 135, 140) eines Decoders (180) des Modells maschinellen Lernens (1230, 1580, 1585), wobei das eine oder die mehreren Bilder (1440) zeigen, wie Pattern-Elemente, die auf der Basis der Design-Daten (1110, 1150) auf der photolithographischen Maske (1425) erzeugt wurden, in einem mit einem Abbildungssystem (1410, 1510, 1520, 1530) aufgenommenen Bild (1420) erscheinen werden oder in einem von einem Simulationstool (1180) erzeugten Bild (1470) erscheinen werden; c. wobei Ausgaben zumindest einer der Schichten (110, 115, 120, 130, 135, 140) als Eingaben an zumindest eine nicht benachbarte Schicht (120, 130, 135, 140) des Modells maschinellen Lernens (1230, 1580, 1585) verwendet werden.
  4. Verfahren nach dem vorhergehenden Anspruch, ferner den Schritt aufweisend: Verändern der Ausgaben der zumindest einen Schicht (110, 115, 120, 130, 135, 140) vor dem Bereitstellen als Eingaben an die zumindest eine nicht benachbarte Schicht (120, 130, 135, 140).
  5. Verfahren nach Anspruch 3 oder 4, wobei das Verwenden der Ausgaben umfasst: Bereitstellen von Ausgaben zumindest einer Schicht (110, 115, 120) des Encoders (170) als Eingaben an zumindest eine Schicht (130, 135, 140) des Decoders (180).
  6. Verfahren nach einem der Ansprüche 3-5, wobei das Verwenden von Ausgaben umfasst: Bereitstellen von Ausgaben zumindest einer Schicht (110) des Encoders (170) als Eingaben an zumindest eine übernächste (120) oder eine weiter entfernte Schicht des Encoders (170) und/oder Bereitstellen von Ausgaben zumindest einer Schicht (130) des Decoders (180) als Eingaben an zumindest eine übernächste (140) oder eine weiter entfernte Schicht des Decoders (180).
  7. Verfahren nach einem der Ansprüche 3-6, wobei das Verwenden von Ausgaben umfasst: Anordnen von zwei oder mehr Schichten, die eine gleiche Funktion ausführen, in einem Block und Bereitstellen der Eingaben an den Block jeder der Schichten innerhalb des Blockes sowie Kombinieren der Ausgaben jeder der Schichten des Blockes am Ausgang des Blockes.
  8. Verfahren nach dem vorhergehenden Anspruch, wobei das Verwenden von Ausgaben umfasst: Einbauen eines oder mehrerer Blöcke in den Encoder (170) und/oder Einbauen eines oder mehrerer Blöcke in den Decoder (180) des Modells maschinellen Lernens (1230, 1580, 1585) und Verwenden der Ausgaben des einen oder der mehreren Blöcke des Encoders (170) als zusätzliche Eingaben des einen oder der mehreren Blöcke des Decoders (180).
  9. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Eingabe zumindest einen zusätzlichen Parameter (1160, 1170) umfasst.
  10. Verfahren nach dem vorhergehenden Anspruch, wobei der zumindest eine zusätzliche Parameter (1160, 1170) einem der Transformationsblöcke (1010, 1030) oder einer Eingabeschicht (110) des Encoders (170) bereitgestellt wird.
  11. Verfahren nach einem der vorhergehenden Ansprüche, ferner die Schritte aufweisend: a. Teilen der Design-Daten (1110, 1150) in mehrere Teile; b. Bestimmen von aufgenommenen Teilbildern (1420) für einzelne Teile der Design-Daten (1110, 1150) mit dem Abbildungssystem (1410); c. Bestimmen von Teilbildern für die einzelnen Teile der Design-Daten (1110, 1150) durch Ausführen der Schritte a und b des Anspruchs 1; und d. Zusammensetzen des einen oder der mehreren Bilder aus den bestimmten Teilbildern.
  12. Verfahren nach einem der vorhergehenden Ansprüche ferner den Schritt aufweisend: Trainieren des Transformationsmodells (1000) mit Design-Daten (1110, 1150) und mehreren mit dem Abbildungssystem (1410, 1510, 1520, 1530) aufgenommenen Bildern (1420) und/oder mit Design-Daten (1110,1150) und mehreren simulierten Bildern (1470) zum Festlegen der Modellparameter des Transformationsmodells (1000).
  13. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Design-Daten (1110,1150) Polygone und/oder Polygonzüge umfassen.
  14. Verfahren nach einem der vorhergehenden Ansprüche, ferner den Schritt aufweisend: Trainieren des Transformationsmodells (1000) mit Design-Daten (1110, 1150) und mehreren mit Hilfe eines Kirchhoff-Modells erzeugten Bildern (1205) und Verfeinern des trainierten Transformationsmodells (1000) mit Hilfe eines oder mehrerer Bilder (1205), die durch numerisches Lösen der Maxwell-Gleichungen erzeugt wurden.
  15. Verfahren nach einem der vorhergehenden Ansprüche, ferner den Schritt aufweisend: Verändern der Design-Daten (1150).
  16. Verfahren nach einem der vorhergehenden Ansprüche, ferner den Schritt aufweisend: Bereitstellen der Ausgabe (1060) des zweiten Transformationsblocks (1030) dem ersten Transformationsblock (1010) und erneuten Durchlaufen der Ausgabe (1060) des zweiten Transformationsblocks (1030) durch die zumindest zwei Transformationsblöcke (1010, 1030) des Transformationsmodells (1000).
  17. Computersystem, das Anweisungen umfasst, die, wenn sie von dem Computersystem ausgeführt werden, das Computersystem veranlassen, die Schritte der Ansprüche 1 bis 16 auszuführen.
  18. Vorrichtung (1410, 1510, 1520, 1530) zum Erzeugen eines oder mehrerer Bilder (1440) einer photolithographischen Maske (1425) aus Design-Daten (1110, 1150) der photolithographischen Maske (1425) mit Hilfe eines Transformationsmodells (1000), das zumindest zwei Transformationsblöcke (1010, 1030) umfasst, wobei die zumindest zwei Transformationsblöcke (1010, 1030) zumindest jeweils eine generisch lernbare Funktion umfassen, die Eingaben (1050) in Ausgaben (1060) überführt, die als Eingaben (1050) für einen nachfolgenden Transformationsblock (1020,1030) verwendet werden, umfassend: a. Mittel zum Bereitstellen der Design-Daten (1110, 1150) als Eingabe (1050) in einen ersten Transformationsblock (1010); und b. Mittel zum Ausgeben eines oder mehrerer Bilder (1420) als Ausgabe (1060) eines zweiten Transformationsblocks (1030), wobei das eine oder die mehreren Bilder (1420) zeigen, wie Pattern-Elemente der photolithographischen Maske (1425), die auf der Basis der Design-Daten (1110, 1150) erzeugt wurden, in einem mit einem Abbildungssystem (1410, 1510,1520,1530) aufgenommenen Bild (1420) erscheinen werden oder in einem von einem Simulationstool (1180) erzeugten Bild (1470) erscheinen werden.;
  19. Vorrichtung (1410, 1510, 1520, 1530) nach dem vorhergehenden Anspruch, wobei die zumindest zwei Transformationsblöcke (1010, 1030) zumindest zwei hintereinander angeordnete Encoder- (170) Decoder- (180) Kombinationen umfassen.
  20. Vorrichtung (1410, 1510, 1520, 1530) nach Anspruch 18 oder 19, wobei die Vorrichtung (1410, 1510, 1520, 1530) ausgebildet ist, die Verfahrensschritte der Ansprüche 1 bis 16 auszuführen.
DE102018207876.9A 2018-05-18 2018-05-18 Verfahren und Vorrichtung zum Erzeugen von Bildern für photolithographische Masken aus Designdaten Ceased DE102018207876A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102018207876.9A DE102018207876A1 (de) 2018-05-18 2018-05-18 Verfahren und Vorrichtung zum Erzeugen von Bildern für photolithographische Masken aus Designdaten

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102018207876.9A DE102018207876A1 (de) 2018-05-18 2018-05-18 Verfahren und Vorrichtung zum Erzeugen von Bildern für photolithographische Masken aus Designdaten

Publications (1)

Publication Number Publication Date
DE102018207876A1 true DE102018207876A1 (de) 2019-06-06

Family

ID=66547887

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018207876.9A Ceased DE102018207876A1 (de) 2018-05-18 2018-05-18 Verfahren und Vorrichtung zum Erzeugen von Bildern für photolithographische Masken aus Designdaten

Country Status (1)

Country Link
DE (1) DE102018207876A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022114236B3 (de) 2022-06-07 2023-06-15 Carl Zeiss Smt Gmbh Verfahren zur Registrierung von Strukturen auf Mikrolithografie-Masken, Computerprogrammprodukt und Mikrolithografie-Verfahren
WO2023241267A1 (zh) * 2022-06-14 2023-12-21 腾讯科技(深圳)有限公司 光刻掩膜生成模型的训练方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130019212A1 (en) 2011-07-12 2013-01-17 Dirk Seidel Method And Apparatus For The Position Determination Of Structures On A Mask For Microlithography
US20160195387A1 (en) 2010-09-10 2016-07-07 Carl Zeiss Smt Gmbh Method For Determining The Registration Of A Structure On A Photomask And Apparatus To Perform The Method
WO2017087653A2 (en) 2015-11-19 2017-05-26 Kla-Tencor Corporation Generating simulated images from design information
US20170191948A1 (en) * 2016-01-04 2017-07-06 Kla-Tencor Corporation Optical Die to Database Inspection

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160195387A1 (en) 2010-09-10 2016-07-07 Carl Zeiss Smt Gmbh Method For Determining The Registration Of A Structure On A Photomask And Apparatus To Perform The Method
US20130019212A1 (en) 2011-07-12 2013-01-17 Dirk Seidel Method And Apparatus For The Position Determination Of Structures On A Mask For Microlithography
WO2017087653A2 (en) 2015-11-19 2017-05-26 Kla-Tencor Corporation Generating simulated images from design information
US20170191948A1 (en) * 2016-01-04 2017-07-06 Kla-Tencor Corporation Optical Die to Database Inspection

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
„Deep Residual Learning for Image Recognition", K. He et al., IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), June 26 - July 1, 2016, Las Vegas, Nevada, USA, S. 770-778
„RefineNet: Multi-Path Refinement Network for High-Resolution Semantic Segmentation", IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), June 26 - July 1, 2016, Las Vegas, Nevada, USA, arXiv preprint arXiv: 1611.09326, der Autoren G. Lin et al
„The one hundred layers tiramisu; fully convolutional denseness for semantic segmentation", Computer Vision and Pattern Recognition, December 5, 2016, arXiv: 1611.09326
Autoren G. Lin et al. in dem Artikel „RefineNet: Multi-path refinement networkd for high-resolution semantic segmentation", IEEE Cent. on Computer Vision and Pattern Recognition (CVPR), June 26 - July 1, 2016
JÉGOU, Simon [et al.]: The one hundred layers tiramisu: Fully convolutional DenseNets for semantic segmentation. 05-12-2016 (arXiv:1611.09326v2). S. 1-9. URL: https://arxiv.org/pdf/1611.09326v2.pdf [abgerufen am 2018-11-16] *
K. He et al. berichten in dem Artikel „Deep residual learning for image rcognition", IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), June 26 - July 1, 2016, Las Vegas, Nevada, USA, S. 770-778

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022114236B3 (de) 2022-06-07 2023-06-15 Carl Zeiss Smt Gmbh Verfahren zur Registrierung von Strukturen auf Mikrolithografie-Masken, Computerprogrammprodukt und Mikrolithografie-Verfahren
WO2023241267A1 (zh) * 2022-06-14 2023-12-21 腾讯科技(深圳)有限公司 光刻掩膜生成模型的训练方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
DE60202230T2 (de) Naheffektkorrektur mittels nicht aufgelöster Hilfsstrukturen in Form von Leiterstäben
DE60306438T2 (de) Verfahren und Vorrichtung zur Zerlegung von Halbleiter-Bauelementmustern in Phasen- und Chromregionen für chromfreie Phasenlithographie
DE602004011860T2 (de) Methode und Vorrichtung für modellgestützte Plazierung phasenbalancierter Hilfsstrukturen für optische Lithographie mit Auflösungsgrenzen unterhalb der Belichtungswellenlänge
EP1875307B1 (de) Verfahren zur maskeninspektion im rahmen des maskendesigns und der maskenherstellung
DE102015114918B4 (de) Verfahren zum Durchführen einer OPC
DE60112355T2 (de) Verfahren zum Entwurf und Verfahren zur Verwendung einer Phasenverschiebungsmaske
DE102018126670A1 (de) Fortschreitende Modifizierung von generativen adversativen neuronalen Netzen
DE60209306T2 (de) Verfahren zur Identifizierung von Regionen extremer Wechselwirkung, Verfahren zum Entwerfen von Maskenmustern und zur Herstellung von Masken, Verfahren zur Herstellung von Elementen und Computerprogramme
DE102019130889A1 (de) Schätzung der tiefe eines mit einer monokularen rgb-kamera aufgenommenen videodatenstroms
DE102018108324A1 (de) System und Verfahren zur Schätzung eines optischen Flusses
DE102016218977B4 (de) Verfahren zur Ermittlung eines OPC-Modells
DE102008019341A1 (de) Verfahren zur Analyse von Masken für die Photolithographie
DE102019206651B4 (de) Verfahren zum dreidimensionalen Bestimmen eines Luftbildes einer Lithographiemaske
DE102019130311A1 (de) Transponierte schwachbesetzte matrix multipliziert mit dichtbesetzter matrix für ein training neuronaler netzwerke
DE102018207882A1 (de) Vorrichtung und Verfahren zur Analyse eines Elements eines Photolithographieprozesses mit Hilfe eines Transformationsmodells
DE112020000448T5 (de) Kameraselbstkalibrierungsnetz
EP3557487B1 (de) Generieren von validierungsdaten mit generativen kontradiktorischen netzwerken
DE10230532B4 (de) Verfahren zum Bestimmen des Aufbaus einer Maske zum Mikrostrukturieren von Halbleitersubstraten mittels Fotolithographie
CH714206A2 (de) Verfahren und Vorrichtungen zum Entwerfen optischer Systeme.
DE102018207876A1 (de) Verfahren und Vorrichtung zum Erzeugen von Bildern für photolithographische Masken aus Designdaten
DE60305377T2 (de) Methode und Vorrichtung für die Definition von Mustern einer Fotomaske mittels einer Booleschen Kombination der Designdaten mit skalierten Designdaten
DE60219544T2 (de) Methode zur Naheffekt-Korrektur mit teilweise strahlungsdurchlässigen, nicht aufgelösten Hilfsstrukturen
DE10355264B4 (de) Verfahren zur Verbesserung eines Simulationsmodells der photolithographischen Projektion
WO2020126719A1 (de) Grössenveränderung von bildern mittels eines neuronalen netzes
DE112021005739T5 (de) Erzeugung von peptid-basiertem impfstoff

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R230 Request for early publication
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0017500000

Ipc: G06F0030000000

R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final