DE60207588T2 - Zustandsschätzung und einteilung für ein herstellungssystem - Google Patents

Zustandsschätzung und einteilung für ein herstellungssystem Download PDF

Info

Publication number
DE60207588T2
DE60207588T2 DE60207588T DE60207588T DE60207588T2 DE 60207588 T2 DE60207588 T2 DE 60207588T2 DE 60207588 T DE60207588 T DE 60207588T DE 60207588 T DE60207588 T DE 60207588T DE 60207588 T2 DE60207588 T2 DE 60207588T2
Authority
DE
Germany
Prior art keywords
state
controller
uncertainty
estimates
measurement
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.)
Expired - Lifetime
Application number
DE60207588T
Other languages
English (en)
Other versions
DE60207588D1 (de
Inventor
Alexander Pasadyn
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.)
GlobalFoundries Inc
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of DE60207588D1 publication Critical patent/DE60207588D1/de
Application granted granted Critical
Publication of DE60207588T2 publication Critical patent/DE60207588T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06311Scheduling, planning or task assignment for a person or group
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32297Adaptive scheduling, feedback of actual proces progress to adapt schedule
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P80/00Climate change mitigation technologies for sector-wide applications
    • Y02P80/10Efficient use of energy, e.g. using compressed air or pressurized fluid as energy carrier
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft generell das Gebiet der Halbleitervorrichtungs-Herstellung und insbesondere Zustandsschätzung und Einplanung für ein Herstellsystem, wie aus dem Dokument US 6285971 B1 bekannt.
  • HINTERGRUND DER ERFINDUNG
  • Es ist bei der Halbleiterherstellung typisch, dass unterschiedliche Produkt unter Anwendung einer Vielzahl von Prozessbedingungen auf denselben Einrichtungsteilen gefertigt werden. Aufgrund der Art der Prozessbedingungen und der hohen Materialkosten ist es sehr schwierig und häufig unmöglich, Messwerte von Schlüsselprozess-Variablen bei Prozessverlauf zu erhalten. Produkt-Wafers werden in Chargen auf Bearbeitungswerkzeugen unter Verwendung von Anleitungen bearbeitet, welche die zum Bedienen des Werkzeugs erforderlichen Parameter spezifizieren, wie z.B. Druck, Temperatur und Bearbeitungszeit. Messungen werden nach Beendigung der Bearbeitungsschritte durchgeführt, um festzustellen, ob die Chargen ihren Spezifikationen entsprechen. Bei von Durchlauf zu Durchlauf erfolgendem Steuerverfahren werden die am Ende jedes Durchlaufs zur Verfügung stehenden Daten verwendet, um bessere Anleitungseinstellungen für nachfolgende Chargen festzulegen. Diese Aufgabe wird dadurch erschwert, dass Messungen häufig von verschiedenen unterschiedlichen möglichen Variations-Quellen verfälscht werden.
  • Die Herstellung von Halbleitervorrichtungen ist durch teuere Einrichtungen und Rohmaterialien gekennzeichnet, die verwendet werden, um mik roskopische Merkmale in einer Chargenbearbeitungs-Umgebung zu erzeugen. In dieser Umgebung werden Chargen von Wafern einer Reihe von Operations-Einheiten mit dem Endziel unterzogen, Funktionsteile zu erzeugen. Während sämtlicher Vorgänge sind extreme Bearbeitungsbedingungen und herzustellende Merkmale mit kritischer Abmessung immerwiederkehrende Themen. Diese Bedingungen bedeuten letztendlich, dass es schwierig (und in vielen Fällen unmöglich) ist, wichtige Qualitätsvariablen in situ zu messen. Variablen, die von Interesse sind, werden typischerweise nach dem Bearbeiten einer Charge gemessen. Leider ist es typischerweise nicht möglich, zurückzugehen und einen Vorgang erneut durchzuführen, um eine falsch bearbeitete Charge zu korrigieren. Daher wird eine effiziente Bearbeitungssteuerung benötigt, die sicherstellt, das jeder Durchlauf plangemäß erfolgt.
  • Bei der von Durchlauf zu Durchlauf erfolgenden Steuerung bei der Halbleiterherstellung handelt es sich um eine Art von Chargen-Steuerung, bei der eine Charge nur ein Wafer oder mehrere Partien von Wafern umfassen kann. Das Standard-Ausgangssignal eines Durchlauf-zu-Durchlauf-Controllers ist eine Prozessanleitung. Diese Anleitung definiert die Sollwerte für in das Bearbeitungswerkzeug eingebaute "Niedrigpegel"-Controller. Auf diese Weise überwacht der Durchlauf-zu-Durchlauf-Controller den Werkzeug-Controller durch Spezifizieren für Prozessvariable, wie z.B. Temperatur, Druck, Strömung und Bearbeitungszeit, benötigte Werte. Der Werkzeug-Controller handhabt die zum Halten dieser Variablen auf den geforderten Werten erforderlichen Betätigungen. Ein typischer Durchlauf-zu-Durchlauf-Steuerungsaufbau umfasst eine Rückkopplungsschleife, bei der Einstellungen an den Anleitungsparametern anhand der nach der Bearbeitung gemessenen Chargen-Eigenschaften durchgeführt werden. Typischerweise ist es die Aufgabe des Durchlauf-zu-Durchlauf-Controller sicherzustellen, dass jede Charge ihre Inline-Targets trifft. Inline-Targets beziehen sich auf Messungen, die durchgeführt werden, während die Wafer erst einen Teil ihrer Bearbeitungsschritte beendet haben. Die Inline-Targets bieten Richtlinien für das Vorsehen von Funktionsteilen am Ende der Fertigungslinie.
  • Durchlauf-zu-Durchlauf-Controllers für die Herstellung von diskreten Teilen führen zu mehreren inhärenten Komplikationen. Anders als bei einem kontinuierlichen Prozess, bei dem Anlagen-Ausgänge zum Herstellen spezieller Produkte zusammengefasst werden können, muss jedes Teil, das hergestellt wird, zum korrekten Funktionieren sämtliche Qualitäts- oder Leistungsziele erreichen. Folglich müssen aggressive Steuerfunktionen ausgewählt werden, da die Herstellbeschränkungen keine Reihe von vom Target abweichende Chargen bei Annäherung des Controller an das Target zulässt. Wenn das Systemmodell in der Lage ist, akkurate Vorhersagen zu machen, kann der Controller ziemlich aggressiv sein. Der Grund dafür ist, dass die Stabilität des Controller an die Fähigkeit des Modells, das Verhalten des realen Systems anzupassen, gebunden ist. Ein Controller, der bei Auftreten eines Modell-Fehlers und anderer Unsicherheiten zu aggressiv ist, kann in der Tat eine unzureichende Leistung aufweisen und zu Instabilität führen. Diese Situation kann eintreten, da ein Controller Prozessentscheidungen anhand von Annahmen darüber trifft, wie seine Eingangs-Veränderungen den Prozess beeinflussen. Die qualitativen Auswirkungen kleiner Eingangs-Veränderungen sind häufig leicht verständlich und werden vermittels der zugrundeliegenden Physik des Systems vorhergesagt. Andererseits können größere und dramatischere Veränderungen den Prozess dadurch beieinträchtigen, dass eine Dynamik schneller eingebracht wird als der Prozess handhaben kann. Bei einem besseren Verständnis des Prozesses können Veränderungen schneller und effizienter durchgeführt werden.
  • Der aggressivste zu verwendende Controller ist ein betriebsinverser oder aperiodischer Controller. Dieser Controller versucht, gemessene eingehende Störungen unverzüglich zurückzuweisen und die Steuerparameter für jede Charge exakt an ihren Targets einzustellen. Die Parameter können durch Substituieren der gewünschten Ausgänge in das Prozessmodell und direktes Lösen hinsichtlich der Eingänge festgelegt werden. Die konservativsten Steu eraktionen können durch Auferlegen von Beschränkungen dahingehend, wie schnell Eingangs-Variable sich verändern dürfen, erreicht werden.
  • Da sich die Prozess-Verstärkung und weitere für die Herstellprozesse wichtigen Variablen mit der Zeit verändern können, muss sich ein erfolgreicher Controller den sich verändernden Prozessbedingungen anpassen. Die Grundlage für einen solchen adaptiven Controller sind Systemidentifiziertechniken. Systemidentifiziertechniken zielen auf das Festlegen eines Models mit den gleichen Eingangs-/Ausgangs-Charakteristiken und gegebenenfalls der gleichen natürlichen Modellstruktur wie der des zu untersuchenden physischen Systems ab. Bei zahlreichen praktischen Anwendungen ist es nicht möglich, eine exakte Modellform für den zu untersuchenden Prozess zu erhalten. So stellt sich bei der Online-Systemidentifizierung häufig das Problem der Parameterschätzung. Dabei wird eine Form für das Modell vorbestimmt, und die Modellparameter werden rekursiv aus den Prozessdaten aktualisiert. Sich verändernde Prozessbedingungen können als Veränderung der geschätzten Modellparameter über die Zeit betrachtet werden.
  • Bei der Mikroelektronik-Herstellung ist es gängige Praxis, Techniken zur statistischen Prozesssteuerung (SPC) auf die Prozess-Ausgänge anzuwenden. Die SPC kann auch auf die Ausgänge eines Systems, das unter automatisierter Steuerung arbeitet, angewendet werden. Diese Ausgänge umfassen nicht nur die Steuerausgänge des Prozesses, sondern auch die gemessene Varianz des realen Prozesses von der von dem Controller benutzten Vorhersage. Generell umfasst die Anwendung von SPC-Techniken das Setzen von Grenzen für die maßgeblichen Variablen und das Untersuchen des Prozesses, wenn dieser die Grenzen überschreitet. Wie ihr Name impliziert, ist die statistische Prozesssteuerung in hohem Maße in der Behandlung der maßgeblichen Prozessvariablen als Verteilungen verwurzelt. Mehrere unterschiedliche Statistiken können überwacht werden, um sicherzustellen, dass der Prozess stationär bleibt. Diese Techniken zeigen an, ob der Prozess kontrolliert abläuft oder nicht, Entscheidungen darüber, was zu tun ist, wenn der Prozess außer Kontrolle gerät, bleiben jedoch den Ingenieuren überlassen.
  • Diese SPC-Techniken können darstellen, wie gut ein automatisierter Controller arbeitet, um den Prozess innerhalb der Steuerungsgrenzen zu halten. Wenn die Grenzen überschritten werden, muss entweder der Prozess oder der automatische Controller eingestellt werden. Reale Prozesse und die Störungen dieser Prozesse verändern sich jedoch mit der Zeit, so dass es nicht unbedingt stimmt, dass sämtliche maßgeblichen Prozessvariablen stationär bleiben. Ferner kann es zahlreiche Systeme geben, bei denen sämtliche für die Steuerung wichtigen Messungen so oft durchgeführt werden können wie gewünscht. Bei diesen Systemen ist es möglich, dass einige Messwerte, bei denen es sich um Ausreißer handelt, nicht identifiziert werden, und zwar einfach deshalb, weil sie nicht gemessen werden. In diesem Zusammenhang machen statische Grenzen für die Prozessvariablen nicht immer Sinn. Die ideale Lösung ist ein automatischer Controller, der Prozessveränderungen detektieren und sich selbst einstellen kann, um diesen Rechnung zu tragen. Ein solcher automatischer Controller kann den Prozess einstellen, bevor die Steuerungsgrenzen für die Qualitäts-Ausgänge überschritten werden. Dieser Controller muss erkennen, dass das Modell, das er benutzt, ungültig werden kann, und so muss er neue Messdaten immer als eine Gelegenheit zu Umgestalten des Prozesses behandeln.
  • Zum Erreichen einer adäquaten Leistung in einer unsicheren Umgebung muss das Steuersystem auf Prozessänderungen reagieren. Adaptive Steuertechniken sind eine Kategorie von Steuerschemata, bei denen der Controller automatisch seine Steuerparameter und Abstimmung anpasst, um den beobachteten Veränderungen in dem Prozess selbst Rechnung zu tragen. Diese Techniken beruhen häufig auf Online-Modellparameter-Schätzungen, und die Controller-Einstellungen werden kontinuierlich justiert, um sie an das von den Messwerten abgeleitete aktuelle Systemmodell anzupassen. Eine adaptive Steuerung ist sinnvoll, wenn das echte Modell des Systems kompli ziert oder ein System hoher Ordnung ist, da die Steuerungsfunktion auf einem einfacheren Modell mit einstellbaren Parametern basieren kann. Diese Controllers können anhand einer Vielzahl von Auslegungsverfahren ermittelt werden, einschließlich Polverschiebungstechniken und Minimierung von quadratischen Kostenfunktionen. Adaptive Steuertechniken können hochentwickelte Steuerkonzepte ermöglichen, wie z.B. eine optimale Steuerung, die in Fällen angewendet wird, in denen das zu untersuchende System sehr kompliziert oder schwer verständlich ist.
  • Bei einem vorgegebenen System mit manipulierten Eingängen und einen quantitativen Leistungsziel kann eine Theorie zur optimalen Steuerung angewendet werden, um den besten Satz von Eingängen zu finden. Das Problem mit der optimalen Steuerung ist das Festlegen des Satzes von Eingängen, der eine Zielfunktion minimiert (oder maximiert), wobei gleichzeitig die Beschränkungen hinsichtlich des Systemmodells und weitere Prozessanforderungen beachtet werden. Mathematisch wird dies durch die nachstehende Gleichung beschrieben, bei der x den Prozesszustand repräsentiert, u den manipulierten Eingang repräsentiert, t die Zeit repräsentiert, f die Zielfunktion ist und gi eine Reihe von Einschränkungen hinsichtlich der Lösung ist. min uf(x, u, t) (1) gi(x, u, t) ≥ 0 (2)
  • Bei bestimmten Systemtypen ist dies ein guter Ansatz zum Lösen des Steuerungsproblems. Ein Vorteil der optimalen Steuerung liegt darin, dass das Steuerungsziel klar definiert ist. Das Bewerten der Zielfunktion bei der Lösung bietet ein quantitatives Maß der erwarteten Leistung des Controller. Gepaart mit adaptiven Techniken kann die optimale Steuerung die Steuerungsziele erreichen, selbst wenn sich das System mit der Zeit verändert. Die Gleichungen hinsichtlich der optimalen Steuerung sind sehr allgemein gehalten und sind nicht auf das Beschreiben einfacher Systeme beschränkt. Die Einschränkungs-Gleichungen gi umfassen normalerweise Differentialgleichungen oder Differenzgleichungen, die den Prozess sowie Betriebsgrenzen regeln, die den Prozess-Eingängen und -zuständen auferlegt sind. Bei den meisten realen Prozessen führt das oben beschriebene Problem häufig zu einem Satz nichtlinearer Differentialgleichungen mit gemischten Randbedingungen.
  • Optimale Lösungen sind für einige einfache Prozessmodelle abgeleitet worden. Eine Kategorie solcher Probleme sind ein lineares (L) Modell und eine quadratische (Q) Zielfunktion mit additivem Gaußschem (G) Rauschen in dem Modell, was auch als LQG-Problem bezeichnet wird. Bei diesen Systemen kann der optimale Controller abgeleitet werden. Generell müssen Näherungen für reale Prozesse durchgeführt werden und muss ein suboptimaler Controller verwendet werden. Der Grund dafür ist, dass das echte Modell des Systems häufig entweder unbekannt oder zu kompliziert ist, als dass der optimale Controller eine geschlossene Lösung bieten könnte. Ein gemeinsamer Ansatz ist das Formulieren des Problems als LQG und die Verwendung des entsprechenden linearen Controller.
  • Ein bei der adaptiven Steuerung angewandtes Verfahren ist ein suboptimaler Ansatz, bei dem angenommen wird, dass das Prozessmodell eine einfache Modellform hat, die Werte der Modellparameter jedoch unbestimmt oder zeitlich veränderlich sind. Bei dieser Formulierung kann die optimale Steuerungsfunktion für das gewählte Modell vermittels der unbekannten Modellparameter abgeleitet werden. Dann können Systemidentifiziertechniken zum Ermitteln der Werte der Modellparameter verwendet werden, welche das beobachtete Systemverhalten am besten erklären.
  • In diesem Fall hat der Controller ein Modell, das nahe dem aktuellen Betriebspunkt akkurat ist. Wenn sich der Prozess zu weiteren Betriebspunkten bewegt, werden die Modellparameter aktualisiert, so dass der Controller immer noch effizient arbeiten kann. Die wichtigste Einschränkung liegt darin, dass das Modell dem Eingangs-/Ausgangsverhalten des echten Prozesses in der aktuell maßgeblichen Region angepasst sein muss. Das Vorhandensein von Störungen und einer Dynamik, das bei dem Modell nicht berücksichtigt ist, kann die Stabilität des Controller beeinflussen. Der Controller muss in der Lage sein, intelligent auf Fehler in den Parameterschätzungen sowie tatsächliche Veränderungen in dem Prozess zu reagieren, die Veränderungen an den Modellparametern erforderlich machen. Ein adaptiver Controller schätzt rekursiv die Modellparameter nach jeder Abfragung, und der Steuervorgang wird dann anhand der neuen Werte der Parameterschätzungen berechnet.
  • Es gibt unterschiedliche Ansätze zur adaptiven Steuerung. Bei dem oben beschriebenen Vorgang handelt es sich um ein indirektes Verfahren, bei dem der Steuervorgang anhand der geschätzten Modellparameterwerte berechnet wird. Bei dem Verfahren zur direkten adaptiven Steuerung wird die Steuerfunktion selbst (wie z.B. Verstärkungen) rekursiv aus dem Messfehlern berechnet wird. Der optimale adaptive Controller versucht, ein Dual-Steuer-Problem unter Anwendung einer Formulierung zu lösen, die die gleichzeitige Steuerung und Identifizierung des Prozesses zum Ziel hat. Ein ausreichend hochentwickelter Controller berücksichtigt die Notwendigkeit zum Charakterisieren des Prozesses und "sondiert" den Prozess, um besser Parameterschätzungen zu erhalten.
  • Der adaptive Controller beruht auf Systemidentifiziertechniken zum Überbrücken des Spalts zwischen der gewählten Modellform und dem tatsächlichen zu Steuerzwecken verwendeten Modell durch Auswählen geeigneter Werte für sämtliche Parameter in der Modellform. Die Systemidentifiziertechniken sind in zwei Hauptkategorien unterteilt (d.h. Offline und Online), und zwar in Abhängigkeit davon, ob sie in Echtzeit an Daten angewendet werden, die bei in Betrieb befindlichem System ermittelt werden.
  • Bei Offline-Systemidentifizierschemata wird ein kompletter Satz von Prozess-Eingangs- und Ausgangsdaten untersucht, um ein Modell zu erstellen. Diese Schemata sind sehr flexibel, da zahlreiche unterschiedliche Modellformen ausprobiert werden können, und sie bieten den Vorteil, dass sie in der Lage sind, sämtliche Prozessdaten gleichzeitig zu analysieren. Ein solches System kann sogar Modelle, wie z.B. künstliche neuronale Netze (ANN), die keine vorgeschriebene Struktur haben, verwenden. Die Haupteinschränkung hinsichtlich eines Offline-Systemidentifiziersystems liegt darin, dass es nicht vorhersagen kann, wie sich das Modells in Zukunft verändern kann.
  • Online-Systemidentifiziertechniken sind bei Ablauf des zu untersuchenden Prozesses aktiv. Dabei werden Prozessmessungen durchgeführt, und es wird ein Systemmodell mit vorbestimmter Form rekursiv aktualisiert. Der Schätzer beobachtet das System und stellt die Modellparameter innerhalb der gewählten Modellstruktur ein. Generell hat der Schätzer keinen kompletten Datensatz, mit dem er arbeiten kann. Er hat nur Zugang zu den Messungen, die bereits durchgeführt worden sind. Ein Online-Systemidentifiziersystem bietet jedoch einen eindeutigen Vorteil gegenüber einem Offline-Verfahren. Das Online-Verfahren kann schnell auf Veränderungen in dem Prozess reagieren. Prozessänderungen erscheinen als Fehler in den Werten der Modellparameter. Wenn die Prozessänderung allmählich über die Zeit erfolgt, kann bei dem Online-Systemidentifizierverfahren das Modell während des sich verändernden Prozesses eingestellt werden, so dass der Vorhersagefehler klein gehalten wird.
  • Die übliche Technik zum exponential gewichteten gleitenden Durchschnitts-(EWMA-)Filtern kann bei der rekursiven Parameterschätzung angewendet werden. Hierbei wird eine neue Parameterschätzung durch Anwendung einer gewichteten Kombination aus einer Parameterschätzung auf der Basis der aktuellen Messung und der aktuellen Parameterschätzung ermittelt, welche wie folgt dargestellt ist x ~k+1 = λxk+1 + (1 – λ)x ~k, (3)wobei x der Messwert ist und x ~ die Schätzung ist.
  • Die Wahl des EMWM-Gewichtungsparameters λ beeinflusst die Tatsache, ob der Schätzer langsam (bei langsam driftenden Prozessen) oder schnell (bei eine schnelle Veränderung durchmachenden Prozessen) reagiert. Somit beeinflusst eine unterschiedliche Auswahl des Gewichtungsparameters die Stabilität eines Controller bei Verwendung der Parameterschätzungen unter unterschiedlichen Umständen.
  • Zum effizienten rekursiven Online-Schätzen von Modellparametern sind einige Prozess-Charakteristiken erforderlich. Die Identifikation eines unter automatischer Steuerung ablaufenden Prozesses ist kompliziert, da die Aktionen des Controller das zugrundeliegende Verhalten des Prozesses verdecken. Generell müssen die Eingänge in den Prozess derart variieren, dass die Modellparameter eindeutig identifizierbar sind. Dieses Erfordernis wird als persistente Erregung bezeichnet. Eine Schwierigkeit besteht darin, dass die Erfüllung eines typischen Steuerungsziels das Maß an Erregung reduziert, wenn der Prozess an dem gewünschten Betriebspunkt einen Beharrungszustand erreicht.
  • Adaptive Steuertechniken können auf Chargen-Prozesse für die Durchlauf-zu-Durchlauf-Steuerung angewendet werden. Das Systemmodell sagt das Prozessverhalten jeder Charge sowie die Veränderung des Systems von Charge zu Charge voraus. Die Verantwortung des Controller liegt in der Wahl der optimalen Eingangseinstellungen für jede Charge. In einer realen Herstellumgebung erfolgt eine kontinuierliche Veränderung der Prozessbedingungen, so dass die Systemmodelle regelmäßig aktualisiert werden müssen. Zum Erreichen der besten Eingänge für jede Charge muss der Controller durch Einstellen der Modellparameter auf die sich verändernden Prozessbedingungen reagieren. Dies kann durch Lösen des Systemidentifizierungsproblems jedes Mal dann erfolgen, wenn neue Daten verfügbar werden.
  • Die Durchlauf-zu-Durchlauf-Chargensteuerung bei der Halbleiterherstellung wird häufig dadurch verkompliziert, dass mehrere Produkte und meh rere Bearbeitungswerkzeuge vorgesehen sind. Diese Situationen treten sehr häufig bei der Halbleiterherstellung auf, sie stellen jedoch auch in anderen Chargenbearbeitungs-Umgebungen ein Problem dar, wie z.B. bei der Produktion von Polymeren. Es ist wichtig, dass jede Charge die erforderlichen Spezifikationen erfüllt, es ist jedoch schwierig, bei der Umschaltung zwischen unterschiedlichen Produkten und Werkzeugen geeignete Anleitungseinstellungen zu wählen. Die Online-Systemidentifizierung und die adaptive Steuerung können helfen, dieses Problem sehr viel leichter lösbar zu machen. Selbstverständlich hängt der Erfolg des Controller von der Wirkung der Störungen und Systemeingänge sowie der Controller-Konfiguration selbst ab.
  • Man betrachte einen Prozess, der als einfaches Beispiel linear modellierbar ist x = rt. (4)
  • Das Maß der Reaktion nach der Zeit t wird durch x angegeben, und r ist die Rate, die bekanntermaßen mit sich verändernden Prozessbedingungen schwankt. Das Target ist ein gewünschtes Maß an Reaktion x*. Nach jedem Durchlauf wird eine neue Schätzung für die Rate r anhand der Ergebnisse des Durchlaufs erstellt. Bei zahlreichen Anwendungen stellt sich schnell heraus, dass unterschiedliche Produkte sehr unterschiedliche scheinbare Reaktionsraten aufweisen. Die Rate kann jedoch von Charge zu Charge abweichen, selbst wenn nur ein Produkt hergestellt wird. Dies kann durch Reaktorverschmutzung, Verschlechterung von Verbrauchsmaterialien oder Prozessleckagen hervorgerufen werden.
  • Ein einfaches Verfolgen einer Schätzung von r von Durchlauf zu Durchlauf ist nicht akzeptabel, da jede Umschaltung auf ein anderes Produkt als Stufenumschaltung erscheint. Bei jeder Produktumschaltung bewegt sich die Ratenschätzung über mehrere Durchläufe langsam zu der neuen beobachteten Rate. Eine Reaktorverschmutzung bewirkt, dass die Rate im Verlaufe der Durchläufe kontinuierlich abnimmt. Ein EWMA wird zum Filtern der scheinbaren Ratendaten aus jedem Durchlauf angewendet, und die gefilterten Werte werden als Ratenschätzwerte verwendet. Wenn ein zweites Produkt durchläuft, unterscheidet sich die scheinbare Rate stark von der des ersten Produkts, und das Filter bewirkt, dass dies in der Zustandsschätzung langsam mit der Zeit berücksichtigt wird. Die Zustandsschätzung hinkt somit hinter dem beobachteten Wert hinterher, insbesondere wenn eine Produktumschaltung erfolgt. Dieser Unterschied zwischen der Schätzung und dem realen Zustand bewirkt, dass ein Controller, der diese Schätzung verwendet, das Target verfehlt.
  • Frühere Arbeiten auf diesem Gebiet haben zu dem Konzept der Beobachter-Einplanung geführt. Dabei wird ein Modell für den Werkzeugzustand (x) entwickelt, der von dem Produkt unabhängig ist. Dieser Werkzeugzustand ist eine inhärente Rate für das Werkzeug. Eine Veränderung dieser Rate beeinflusst sämtliche auf dem Werkzeug laufenden Produkte. xk+1 = Axk + Buk (5)
  • Der Prozesszustand x wird unter Anwendung der Ausgangsgleichung auf den Produktzustand y abgebildet yk = Cxk. (6)
  • Dann wird der Schätzer zum Verfolgen des Werkzeugzustands x anstelle des Produktzustands y verwendet. Eine Prüfung der Kalman-Optimal-Filter-Gleichungen ergibt, dass eine optimale Beobachterverstärkung eine Funktion der Ausgangs-Abbildung C ist. So kann mittels einer Offline-Analyse die reproduzierbare Produktabhängigkeit quantifiziert werden, um ein neues Modell für die Rate r zu erhalten, wobei r0 die "inhärente Rate" des Bearbeitungswerkzeug ist und kp ein produktspezifischer Korrekturfaktor ist. r = r0kp. (7)
  • Der Beobachter schätzt dann r0 anstelle von r, durch Skalieren der beobachteten Rate mittels des korrekten produktspezifischen Faktors kp. Wenn die produktspezifischen Faktoren genau bekannt sind, funktioniert das oben beschriebene Schema sehr gut. Veränderungen beim Betrieb des Bearbeitungswerkzeugs werden unabhängig davon beobachtet, welches Produkt gerade läuft. In einer realen Herstellumgebung treten jedoch mehrere Komplikationen auf. Beispielsweise können mehrere Bearbeitungswerkzeuge vorhanden sein, neue Produkte erscheinen und Experimente sowohl hinsichtlich der Rohmaterialien als auch der Ausfallzeit der Bearbeitungswerkzeuge aufwendig sein. Dies wirkt sich hier dadurch aus, dass die produktspezifischen Faktoren nicht immer a priori bekannt sind, und so ist es nicht unbedingt sicher anzunehmen, dass kp (und somit C) bekannte Werte sind.
  • Bei dem oben beschriebenen Verfahren wird ein einzelner Parameter (r0) beobachtet, es ist jedoch erforderlich, einen Weg zu finden, um schnell Schätzwerte für neue Werte von kp zu finden. Im Prinzip kann dies durch Beobachten der Rate bei jedem Durchlauf und entsprechendes Aktualisieren der Modellparameter erfolgen. In der Praxis treten Bedenken hinsichtlich der Beobachtbarkeit auf. Das Ergebnis jedes Durchlaufs ist ein Messwert der scheinbaren Rate r, die sowohl von r0 als auch kp beeinträchtigt wird, so dass ein Schätzschema in der Lage sein muss, die zur Verfügung stehenden Informationen zum Einstellen sämtlicher Parameter so, wie es erforderlich ist, verwenden zu können.
  • Zum Schätzen von r0 und kp aus den Daten (r) kann die vorstehende Gleichung mit einer Näherung einer Taylor-Reihe angewendet werden, Δr = r0 × Δkp + kp× Δr0. (8)
  • Eine scheinbare Veränderung des Werts von r kann als Veränderung der Schätzwerte von r0 und kp ausgedrückt werden. Somit ist es erforderlich, die Veränderungen (unter Anwendung einer Analyse-einer-Varianz-Technik) zu klassifizieren, um festzustellen, wie der Fehler zwischen den beiden Parametern aufzuteilen ist.
  • Ein einfaches Verfahren zum Aufteilen des Fehlers ist das Anwenden eines linearen Filters auf jeden Parameter. r0,new = r0,measλ + r0,last(1 – λr) (9) kp,new = kp,measλk + kp,last(1 – λk) (10)
  • Die Lambda-Werte werden variiert, um das Vertrauen in die Parameterschätzungen zu reflektieren. Wenn erwartet wird, dass r0 sich verändert, ist λr hoch, und wenn kp als fehlerhaft angesehen wird, ist λk hoch.
  • Beispielsweise besteht bei einem gut eingeführten Produkt ein hohes Maß an Vertrauen, dass kp akkurat ist. Ferner ist bekannt, dass r0 mit der Zeit abdriftet. Somit wird die Beziehung λr >> λk angewendet. Andererseits besteht bei einem neuen Produkt weniger Vertrauen in den Wert von kp. Es wird erwartet, dass ein inakkurater Wert von kp die Rate stärker beeinflusst, als das Rauschen oder Driften von r0, so dass die Bedingung λk >> λr eingestellt wird.
  • Diese Technik ist zwar leicht verständlich, ist aber eingeschränkt anwendbar, da es sich hierbei um ein regelbasiertes Schema handelt, das auf schwer zu quantifizierenden Konzepten beruht. Ferner ist es nicht immer möglich, die Modell-Gleichungen der Reihe nach für jeden Parameter aufzulösen.
  • Ein erfolgreicher Controller für die hier beschriebenen Prozesstypen wäre in der Lage, das zweifache Problem des gleichzeitigen Identifizierens und Steuerns anzusprechen. Es ist einfacher, etwas über den Prozess zu lernen, indem große Eingangsveränderungen oder außerhalb der Produktion stattfindende Experimente durchgeführt werden, dies steht jedoch in direktem Widerspruch zu dem primären Ziel des Controller. Das Treffen einer Prozessauswahl umfasst einen Kompromiss zwischen der strengen Verfolgung der Targets und der Unterstützung bei der Charakterisierung des Prozesses, da diese beiden Ziele miteinander in Konflikt stehen.
  • Eine Durchlauf-zu-Durchlauf-Steuerung, wie sie bei der Großserien-Mehrprodukt-Halbleiterherstellung praktiziert wird, passt sich nicht leicht in den Rahmen herkömmlicher Ansätze zur Prozesssteuerung ein. Bei einem herkömmlichen Ansatz wird ein Prozessmodell mit einem vorgegebenen Satz von Zuständen, Eingängen und Ausgängen definiert. In einigen Fällen ist das Modell statisch und in anderen verändert es sich mit der Zeit. Bei jedem Zeitschritt beeinflussen Eingänge und Störungen die Zustände und werden Ausgänge gemessen. Dann führt der Controller eine Aktualisierung durch, und der Prozess wird wiederholt. Ein Grund dafür, dass dieser Ansatz nicht immer erfolgreich ist, liegt darin, dass häufig mehrere Bearbeitungswerkzeuge sowie mehrere Produkte vorgesehen sind. Es ist in modernen Mikroelektronik-Fertigungsanlagen gängige Praxis, hauptsächlich wegen der mit den Werkzeugen und der begrenzten Kapazität der Anlage verbundenen hohen Kapitalkosten zahlreiche unterschiedliche Produkte und Prozesse auf jedem Bearbeitungswerkzeug ablaufen zu lassen. Ferner wird von sämtlichen für einen Prozess wichtigen Messungen generell nur ein Teilsatz bei jedem Durchlauf durchgeführt. Das Festlegen, wie Controller-Aktualisierungen in dieser Umgebung durchzuführen sind, kann eine Herausforderung sein.
  • Ein Durchlauf-zu-Durchlauf-Controller beruht darauf, dass er ein Prozessmodell aufweist, das von Durchlauf zu Durchlauf beständig korrekt bleibt. Wenn sich die unterschiedlichen Prozesse, die auf dem Werkzeug ablaufen, signifikant voneinander unterscheiden, kann der Controller ein unerwartetes Verhalten aufweisen, da ein Umschalten auf einen neuen Prozess als große Störung erscheinen kann. Ferner kann es mehrere erfolgreiche Durchläufe eines vorgegebenen Prozesses dauern, bis sich der Controller wieder stabilisiert hat, dies kann jedoch durch die Herstellbeschränkungen verhindert werden. Im besten Fall legt der Controller optimale Einstellungen für sämtliche Prozesse fest, die unabhängig von der Reihenfolge, in der sie auftreten, auf dem Werkzeug ablaufen müssen.
  • Bei der adaptiven Steuerung arbeitet ein Online-Systemidentifizierschema zusammen mit dem Controller und stellt das Modell kontinuierlich derart ein, dass es das echte Verhalten des Systems imitiert. Eine sehr schwierige Aufgabe ist dabei das Feststellen, welche der zahlreichen Möglichkeiten (Parameter, Bias-Schätzungen) die Quelle der in dem Ausgang beobachteten Fehler ist. Bei der Halbleiterherstellung lautet eine gemeinsame Frage, ob die Fehler Unterschieden in den Werkzeugen oder Unterschieden in den Produkten zuzuweisen sind.
  • Der vorliegenden Erfindung liegt die Aufgabe zugrunde, die Auswirkungen eines oder mehrerer der oben beschriebenen Probleme zu eliminieren oder zumindest zu reduzieren.
  • OFFENBARUNG DER ERFINDUNG
  • Ein Aspekt der vorliegenden Erfindung betrifft ein Verfahren zum Überwachen eines Herstellsystems. Das Verfahren umfasst das Festlegen mehrerer beobachteter Zustände, die dem Herstellsystem zugeordnet sind. Es werden Zustandsschätzungen für die beobachteten Zustände erzeugt. Es wird ein Unsicherheitswert für jede Zustandsschätzung erzeugt. Es werden Messdaten empfangen, die einer Entität in dem Herstellsystem zugeordnet sind. Die Zustandsschätzungen werden anhand der Messdaten und der den Zustandsschätzungen zugeordneten Unsicherheitswerte aktualisiert. Die Unsi cherheitswerte können auch zum Beeinflussen von Planungsentscheidungen verwendet werden.
  • Ein weiterer Aspekt der Erfindung betrifft ein System zum Überwachen eines Herstellsystems. Das System weist einen Controller auf, der zum Festlegen mehrerer dem Herstellsystem zugeordneter beobachteter Zustände, Erzeugen von Zustandsschätzungen für die beobachteten Zustände, Erzeugen eines Unsicherheitswerts für jede Zustandsschätzung, Empfangen von einer Entität in dem Herstellsystem zugeordneten Messdaten und Aktualisieren der Zustandsschätzungen anhand der Messdaten und der den Zustandsschätzungen zugeordneten Unsicherheitswerte vorgesehen ist. Das System kann fernen einen Planungs-Controller zum Treffen von Planungsentscheidungen anhand von vorhergesagten Veränderungen der Unsicherheitswerte aufweisen.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die Erfindung wird anhand der nachfolgenden Beschreibung in Zusammenhang mit den beiliegenden Zeichnungen besser verständlich, in denen gleiche Bezugszeichen gleiche Elemente bezeichnen. Es zeigen:
  • 1 ein vereinfachtes Blockschaltbild eines Herstellsystems gemäß einem Ausführungsbeispiel der vorliegenden Erfindung;
  • 2 ein vereinfachtes Blockschaltbild eines Teil des in 1 gezeigten Herstellsystems;
  • 3A und 3B grafische Darstellungen einer beispielhaften Wahrscheinlichkeitsdichtefunktion;
  • 4 bis 29 grafische Darstellungen der Leistung eines in 1 gezeigten Controller bei verschiedenen Szenarien; und
  • 30 ein Blockschaltbild eines Systems mit einem Prozess-Controller und einem Planungs-Controller gemäß einer weiteren Ausführungsform der vorliegenden Erfindung; und
  • 31 ein vereinfachtes Ablaufdiagramm eines Verfahrens zum Einplanen von Aktivitäten in einem Herstellsystem gemäß einer weiteren Ausführungsform der vorliegenden Erfindung.
  • Obwohl die Erfindung verschiedene Modifikationen und alternative Formen aufweisen kann, sind spezifische Ausführungsformen der Erfindung beispielhaft in den Zeichnungen gezeigt und nachstehend detailliert beschrieben. Es sei jedoch darauf hingewiesen, dass die Beschreibung spezifischer Ausführungsformen die Erfindung nicht auf die speziellen offenbarten Formen beschränkt, sondern im Gegenteil sämtliche Modifikationen, Äquivalente und Alternativen abdeckt, die in den Geist und Umfang der Erfindung fallen, wie in den beiliegenden Patentansprüchen definiert.
  • AUSFÜHRUNG(EN) DER ERFINDUNG
  • Ausführungsbeispiele der Erfindung werden nachstehend beschrieben. Aus Gründen der Klarheit sind nicht sämtliche Merkmale einer echten Implementierung in dieser Spezifikation beschrieben. Es sei jedoch angemerkt, dass bei der Entwicklung einer solchen echten Ausführungsform zahlreiche implementierungsspezifische Entscheidungen getroffen werden müssen, um die spezifischen Ziele der Entwickler zu erreichen, wie z.B. Beachtung von systembezogenen und betriebswirtschaftlichen Beschränkungen, die von Implementierung zu Implementierung variieren. Ferner sei angemerkt, dass ein solcher Entwicklungsaufwand komplex und zeitaufwendig sein kann, jedoch trotzdem eine Routineaufgabe für Fachleute auf dem Sachgebiet darstellt, wenn ihnen diese Offenbarung zur Verfügung steht.
  • 1 zeigt ein vereinfachtes Blockschaltbild eines veranschaulichenden Herstellsystems 10. Bei der dargestellten Ausführungsform ist das Herstellsystem 10 zum Herstellen von Halbleitervorrichtungen vorgesehen. Obwohl die Erfindung als in einer Halbleiter-Fertigungsanlage implementiert beschrieben ist, ist die Erfindung nicht darauf beschränkt und kann in anderen Herstellumgebungen verwendet werden. Die hier beschriebenen Techniken sind auf eine Vielzahl von Werkstücken oder Fertigungsteilen anwendbar, einschließlich, jedoch nicht beschränkt auf, Mikroprozessoren, Speichervorrichtungen, Digitalsignalprozessoren, anwendungsspezifische integrierte Schaltungen (ASICs) oder andere ähnliche Vorrichtungen. Die Techniken sind ferner auf andere Werkstücke oder Fertigungsteile als Halbleitervorrichtungen anwendbar.
  • Ein Netzwerk 20 verbindet verschiedene Komponenten des Herstellsystems 10 miteinander, wodurch diese Informationen austauschen können. Das dargestellte Herstellsystem 10 weist mehrere Werkzeuge 3080 auf. Jedes Werkzeug 3080 kann zum Verbinden mit dem Netzwerk 20 mit einem (nicht gezeigten) Computer gekoppelt sein. Die Werkzeuge 3080 sind in Sätze gleicher Werkzeuge gruppiert, wie durch die Buchstaben-Suffixe angezeigt. Beispielsweise repräsentiert der Satz Werkzeuge 30A30C Werkzeuge eines bestimmten Typs, wie z.B. ein chemisch-mechanisches Planarisierwerkzeug. Ein spezielles Wafer oder eine Vielzahl von Wafers durchläuft bei der Herstellung die Werkzeuge 3080, wobei jedes Werkzeug 3080 eine spezifische Funktion in den Prozessablauf ausführt. Beispielhafte Bearbeitungswerkzeuge für eine Halbleitervorrichtungs-Herstellumgebung umfassen Messwerkzeuge, fotolithografische Steppers, Ätzwerkzeuge, Ablagewerkzeuge, Polierwerkzeuge, Werkzeuge für ein schnelles thermisches Verfahren, Implantierwerkzeuge etc. Die Werkzeuge 3080 sind nur zur Erläuterung in Reih und Glied grup piert. Bei einer tatsächlichen Implementierung können die Werkzeuge in einer beliebigen Ordnung oder Gruppierung angeordnet sein. Ferner sollen die Verbindungen zwischen den Werkzeugen in einer speziellen Gruppierung nur Verbindungen mit dem Netzwerk 20 statt Verbindungen zwischen den Werkzeugen repräsentieren.
  • Ein Manufacturing Execution System-(MES-)Server 90 leitet die Operation auf hoher Ebene des Herstellsystems 10. Der MES-Server 90 überwacht den Status der verschiedenen Entitäten in dem Herstellsystem 10 (d.h. Partien, Werkzeuge 3080) und steuert den Strom von Herstellartikeln (z.B. Partien von Halbleiter-Wafers) durch Prozessablauf. Ein Datenbank-Server 100 ist zum Speichern von auf den Status der verschiedenen Entitäten und Herstellartikel in dem Prozessablauf bezogenen Daten vorgesehen. Der Datenbank-Server 100 kann Informationen in einem oder mehreren Datenspeichern 110 speichern. Die Daten können Vor-Prozess- und Nach-Prozess-Messdaten, Werkzeugzustände, Partie-Prioritäten etc. umfassen.
  • Teile der Erfindung und der entsprechenden detaillierten Beschreibung sind in Form von Software oder Algorithmen und symbolischen Darstellungen von Operationen auf Datenbits in einem Computerspeicher dargestellt. Mit diesen Beschreibungen und Darstellungen übermitteln Fachleute auf dem Sachgebiet auf effiziente Weise das Wesentliche ihrer Arbeit an andere Fachleute auf dem Sachgebiet. Ein Algorithmus, wie der Ausdruck hier und auch generell verwendet wird, ist eine folgerichtige Sequenz von Schritten, die zu einem gewünschten Ergebnis führen. Diese Schritte erfordern physische Manipulationen von physischen Quantitäten. Normalerweise, jedoch nicht notwendigerweise, sind diese Quantitäten optische, elektrische oder magnetische Signale, die gespeichert, übertragen, zusammengefasst, verglichen oder anderweitig verarbeitet werden können. Es hat sich manchmal als zweckmäßig herausgestellt, hauptsächlich aus Gründen des normalen Gebrauchs, diese Signale als Bits, Werte, Elemente, Symbole, Zeichen, Terme, Zahlen o.dgl. zu bezeichnen.
  • Man beachte jedoch, dass alle diese und ähnliche Ausdrücke den entsprechenden physischen Quantitäten zugeordnet werden sollten und nur zweckdienliche Etiketten für diese Quantitäten sind. Wenn nichts anderes spezifisch angegeben ist oder aus der Spezifikation hervorgeht, beziehen sich Ausdrücke wie z.B. "Bearbeiten" oder "Kalkulieren" oder "Berechnen" oder "Festlegen" oder "Anzeigen" o.dgl. auf die Aktivität und Prozesse eines Computersystems oder einer im Wesentlichen gleichen Computervorrichtung, die Daten, welche als physische und elektronische Quantitäten in den Registern und Speichern des Computersystems dargestellt sind, zu anderen Daten verarbeitet und transformiert, welche auf im Wesentlichen gleiche Weise als physische Quantitäten in den Speichern oder Registern des Computersystems oder Informationsspeicher-, -übertragungs- oder -anzeigevorrichtungen repräsentiert sind.
  • Ein beispielhaftes Informationsaustausch- und Prozesssteuer-Framework, das zur Verwendung in dem Herstellsystem 10 geeignet ist, ist ein Advanced Process Control (APC) Framework, wie es unter Verwendung des Catalyst-Systems von KLA-Tencor, Inc. implementiert werden kann. Bei dem Catalyst-System werden Semiconductor Equipment and Materials International (SEMI) Computer Integrated Manufacturing (CIM) Framework-konforme Systemtechnologien angewendet, und das Catalyst-System basiert auf dem Advanced Process Control (APC) Framework. Die CIM-(SEMI E81-0699 – Provisional Specification for CIM Framework Domain Architecture) und APC-(SEMI E93-0999 – Provisional Specification for CIM Framework Advanced Process Control Component) Spezifikationen stehen für die Öffentlichkeit bei SEMI zur Verfügung, deren Hauptsitz sich in Mountain View, CA, befindet.
  • Das Herstellsystem 10 weist ferner einen Controller 130 auf, der auf einer Arbeitsstation 140 arbeitet. Wie nachstehend genauer beschrieben, legt der Controller 130 die Betriebsanweisungs-Einstellung für verschiedene Werk zeuge 3080 in dem Herstellsystem 10 fest. Hier verwendete Abkürzungen und Symbolbezeichnungen sind nachstehend in Anhang A zusammengefasst.
  • Die in 1 gezeigte Aufteilung der Bearbeitungs- und Datenspeicherfunktionen auf die verschiedenen Computer oder Arbeitsstationen erfolgt generell, um eine Unabhängigkeit und zentrale Informationsspeicherung zu bieten. Selbstverständlich können eine andere Anzahl von Computern und andere Anordnungen verwendet werden.
  • 2 zeigt ein vereinfachtes Blockschaltbild eines Teils des Herstellsystems 10 aus 1. Bei der dargestellten Ausführungsform weist der Teil des Herstellsystems 10 erste und zweite Bearbeitungswerkzeuge 200 und 210 auf, die mit dem Controller 130 verbunden sind und zum Durchführen von Prozessen an drei unterschiedlichen Produkten (A, B und C) vorgesehen sind. Die Anzahl der Werkzeuge 200, 210 und der Produkte ist nur zur Vereinfachung der Spezifikation so ausgewählt. Selbstverständlich kann eine andere Anzahl der Werkzeuge 200, 210 und der Produkte verwendet werden. Die von den Werkzeugen 200, 210 durchgeführten Prozesse können in einer beliebigen Produkt-/Werkzeug-Kombination durchgeführt werden. Der Controller 130 weist eine Steuerfunktionskomponente 132 und eine Beobachterkomponente 134 auf. Die Beobachterkomponente schätzt und aktualisiert Zustände des Herstellsystems 10. Die Steuerfunktionskomponente benutzt diese Zustandsinformationen zum Festlegen der Betriebsanweisungs-Parameter für die Werkzeuge 200, 210.
  • Unter Verwendung einer linearisierten Form und unter der Annahme, dass es einen einzelnen "Nenn"-Punkt für sämtliche Kombinationen gibt, können die Varianzen von der Nominal-Beseitigung für jeden Kontext durch folgende Gleichungen beschrieben werden y1A = r0f0t + r1f0t0 + r0fAt0 (11) y1B = r0f0t + r1f0t0 + r0fBt0 (12) y1C = r0f0t + r1f0t0 + r0fCt0 (13) y2A = r0f0t + r2f0t0 + r0fAt0 (14) y2B = r0f0t + r2f0t0 + r0fBt0 (15) y2C = r0f0t + r2f0t0 + f0fCt0 (16)wobei sich der tiefgestellte Index "1" auf das Bearbeitungswerkzeug 200 bezieht und sich der tiefgestellte Index "2" auf das Bearbeitungswerkzeug 210 b bezieht.
  • Das gesamte System kann zu einem einzelnen Zustandsraummodell zusammengefasst werden
    Figure 00230001
    wobei die Zustände aus der Einstellung (xadj), Werkzeug-Bias (r1 und r2) und Produkt-Bias (fA, fB und fC) bestehen. Dieses Modell stellt eine hypothetische Situation dar, in der sämtliche Produkt-/Werkzeug-Kombinationen gleichzeitig mit den gleichen Eingangseinstellungen ablaufen. Obwohl es unwahrscheinlich ist, dass diese Situation in der Praxis eintritt, ist sie für das Verständnis der Interaktion zwischen den verschiedenen Bearbeitungskontexten sinnvoll. Es ist beispielsweise klar, dass der Einzelproduktfaktor fA unabhängig von dem Bearbeitungswerkzeug für sämtliche Durchläufe des Produkts A verwendet wird.
  • Der hier berechnete Beobachtbarkeitstest
    Figure 00240001
    ist um Eins rangdefizient, so dass das System in seiner aktuellen Form nicht beobachtbar ist. Der Grund dafür liegt darin, dass sämtliche Durchläufe sowohl durch ein Produkt-Bias als auch ein Werkzeug-Bias beeinträchtigt werden. Eine zusätzliche Einschränkung wäre erforderlich, um das eine oder das andere zu verriegeln. Ein Verfahren zum Hinzufügen zusätzlicher Messwerte zu dem System umfasst die Anwendung von Qualifizierungsexperimenten. Dabei laufen Standardtests auf der Einrichtung ab, die das Bearbeiten speziell vorbereiteter "Referenz"-Chargen umfassen. Da diese Tests über die Werkzeuggruppen standardisiert sind, ist es zweckmäßig anzugeben, dass es kein produktspezifisches Bias für diese speziellen Durchläufe gibt. Das bedeutet, dass das Werkzeug-Bias direkt während des Tests an einem speziellen Werkzeug gemessen werden kann. Wenn solche Experimente nicht zur Wahl stehen, ist es auch möglich, einfach ein Referenz-Werkzeug oder -Produkt auszuwählen, das ein (bekannten) Nenn-Bias aufweist. Der primäre Nachteil dieses Verfahrens liegt darin, dass es schwierig sein kann, ein Referenz-Werkzeug oder -Produkt in einer sich kontinuierlich verändernden Umgebung zu identifizieren. Der Schlüssel hierzu liegt jedoch darin, einen Weg zu finden, das System beobachtbar zu machen. Die einzigen Möglichkeiten dazu sind das Hinzufügen benötigter Ausgänge (Messwerte), das Hinzufügen von Beschränkungen (effektives Reduzieren der Anzahl von Zuständen) oder das Verändern der Form des Modells zu einem vollständig anderen.
  • Bei dem vorstehenden Beispiel erscheinen die Werkzeugqualifizierungen als zwei neue Fälle, die durch die folgenden Gleichungen dargestellt werden y1 = r1 (20) y2= r2 (21)wobei y1 und y2 die Varianzen von der bei der Qualifizierung der Werkzeuge 200 (d.h. 1) bzw. 210 (d.h. 2) beobachtete Nenn-Beseitigung repräsentieren. Wenn die Qualifizierungsexperimente dem beispielhaften System hinzugefügt werden, lautet die neue Ausgangs-Gleichung für das kombinierte System wie folgt
  • Figure 00260001
  • Die Beobachtbarkeitsmatrix für dieses neue System ist
    Figure 00260002
    ist eine Full Rang-Matrix, und somit ist dieses System beobachtbar. Das System ist hier jedoch immer noch ein fiktionaler Fall, bei dem sämtliche möglichen Durchläufe gleichzeitig erfolgen können. In der Praxis erfolgt immer nur ein Durchlauf auf einmal. Es ist notwendig, den geeigneten Weg zum Aktualisieren der Modellzustände nach jedem Durchlauf festzulegen.
  • Strukturell ähnelt dieses System einem realen System, bei dem die unterschiedlichen Messwerte mit unterschiedlichen Frequenzen abgefragt werden. Bei einem solchen System verändert sich die Beobachtbarkeit mit der Zeit, wenn unterschiedliche Mess-Kombinationen zur Verfügung stehen. Die zugrundeliegende implizite Anforderung besteht jedoch darin, dass das System in dem Grenzfall beobachtbar ist, in dem sämtliche möglichen Messungen bei jedem Zeitschritt durchgeführt werden.
  • Wie oben anhand der vorstehenden Gleichungen beschrieben, ist es möglich, ein diskretes Zeitsystemmodell zu haben, bei dem nur ein Teilsatz der möglichen Messungen bei jedem Zeitschritt durchgeführt wird. Bei einem solchen System ist es erforderlich, Zustandsaktualisierungen immer dann durchzuführen, wenn neue Messwerte eintreffen, und dabei so viele Informationen wie möglich aus den neuen Messwerten in die Zustandsschätzungen zu integrieren. Generell bewirken Vorhersagefehler (Varianzen zwischen den gemessenen und den vorhergesagten Ausgängen) Veränderungen an den Zustandschätzungen. Bei der dargestellten Ausführungsform umfasst der zu prüfende primäre Fall einen Messwert, der von mehr als einem Zustand beeinflusst wird.
  • Ein solches Problem scheint unlösbar, da ein einzelner bekannter Messwert zum Aktualisieren von mehr als einem unbekannten Zustand verwendet werden muss. Bei der dargestellten Ausführungsform verwendet der Controller 130 jedoch zusätzliche verfügbare Informationen zum Durchführen von Zustandsaktualisierungen. Wie nachstehend genauer beschrieben, hält die Beobachterkomponente 134 Schätzungen für sämtliche Zustände sowie ein Maß an Sicherheit dieser Schätzungen aufrecht und verwendet eine statistische Analyse zum Festlegen, welche Zustände am wahrscheinlichsten die Ursache für einen beobachteten Fehler in dem vorhergesagten Messwert ist.
  • Die Beschreibung konzentriert sich nun auf die Konfiguration der Beobachterkomponente 134. Ein wichtiger Nutzen, der aus dem Verständnis der Theorie der optimalen Steuerung resultiert, liegt in der Erkenntnis, dass die Steueraktivitäten von dem Erlernen des Systems getrennt werden können. Dieses allgemeine Prinzip bietet intuitive Möglichkeiten für die Abstimmung des Controller 130. Beispielsweise kann die Reaktion der Steuerfunktionskomponente 132 träger sein, ohne dass dadurch die Zustandsschätzroutine beeinflusst wird. Die Steuerfunktionskomponente 132 kann die besten Informationen über den Zustand des Systems 10 nutzen, um erforderlichen Entscheidungen zu treffen. Die folgende Beschreibung konzentriert sich auf das Zustandsschätzproblem. Wenn dieses Problem gelöst ist, kann ein beliebiger Steuerfunktionstyp angewendet werden, um die Zustandsschätzungen zu nutzen.
  • Die folgende Beschreibung behandelt das Problem der Durchführung von Zustandsaktualisierungen, wenn nicht sämtliche Messungen bei jedem Zeitschritt durchgeführt werden. Zusätzlich zu der Steuerung einer Halbleiterherstelllinie ist diese Art von System auch auf einen herkömmlichen chemischen Prozess anwendbar, bei dem einige Variablen häufiger abfragt werden als andere. Beispielsweise kann ein Durchsatzmesser kontinuierlich Durchsatzratenmessungen durchführen, die Zusammensetzungsanalyse wird jedoch möglicherweise nur alle paar Stunden durchgeführt.
  • Es ist notwendig, bei Vorhandensein von nur Teilinformationen die besten Schätzungen der wahren Werte der Systemzustände festzulegen. Der erste Schritt ist das Sicherstellen, dass das System in dem Fall beobachtbar ist, in dem sämtliche möglichen Messungen bei jedem Zeitschritt durchgeführt werden, wie oben beschrieben.
  • Die Systemzustände sind generell unbekannte Größen, die zusätzlich zu den bekannten Effekten aus dem Systemmodell von Rauschen und Störun gen beeinflusst werden. Vom Standpunkt der Analyse aus betrachtet kann jeder Systemzustand als stetige Zufallsvariable behandelt werden. Der Einfachheit halber sei in dieser Beschreibung angenommen, dass jede normalerweise mit einer Varianz von σ2 um ihre aktuelle Schätzung verteilt ist.
  • Zu Beginn eines Schätzvorgangs werden sämtliche Varianzen auf statistische Werte basierend auf einer experimentellen Analyse des Prozesses initialisiert. Die Wahrscheinlichkeitsdichtefunktion jedes Zustands wird dann durch folgende Gleichung angegeben
    Figure 00290001
    wobei x das Mittel ist und σ2 die Varianz ist. Eine grafische Darstellung dieser Funktion ist in 3A gezeigt
  • Bei einem n-Vektor von Zufallsvariablen wird die Wahrscheinlichkeitsdichte durch folgende Gleichung angegeben
    Figure 00290002
    wobei x der Vektor des Mittels ist und V die Kovarianz-Matrix ist, die durch folgende Gleichung angegeben ist
  • Figure 00290003
  • Eine grafische Darstellung dieser multidimensionalen Wahrscheinlichkeitsdichtefunktion ist in 3B gezeigt. Wenn anfangs nichts über die Abhängigkeiten zwischen den Zuständen bekannt ist, ist V einfach eine Diagonalmatrix der Varianzen der Zustandsschätzungen.
  • Angesichts der bei einem bestimmten Zeitschritt durchgeführten Messungen werden die Erwartungswerte sämtlicher Zustände benötigt. Das Prozedere wird anhand eines einfachen beispielhaften Falls beschrieben und dann verallgemeinert. Bei diesem Beispiel sei angenommen, dass ein System zwei Zustände aufweist, die durch folgende Gleichung
    Figure 00300001
    und eine Ausgangsgleichung angegeben sind y = Cx, (29)wobei
  • Figure 00300002
  • Bei einem beliebigen Zeitschritt sind x ^1 und x ^2 die aktuellen Schätzungen für die Zustände, während σ1 und σ2 die diesen Schätzungen zugeordneten Varianzen sind. Unter der Annahme, dass die Zustände unabhängig sind und normal um die Schätzungen verteilt sind, wird die Wahrscheinlichkeitsdichtefunktion durch folgende Gleichung angegeben
  • Figure 00300003
  • Die Ausgangsmatrix enthält zwei Messwerte, wenn jedoch nur einer ermittelt wird, bleibt es erforderlich, eine Zustandsaktualisierung durchzuführen. Entsprechend den vorstehenden Gleichungen wird der Vorhersagewert für die erste Messung durch folgende Gleichung angegeben y1% = a1x ^1 + a2x ^2. (32)
  • Wenn ein Messwert von yl,m für yl ermittelt wird, lautet der Vorhersagefehler eyl = y ^l – yl,m (33)
  • Die Beobachterkomponente 134 verteilt diesen Fehler zwischen den Zuständen x1 und x2. Diese Verteilung kann durchgeführt werden, da eine durch folgende Messung implizierte Linie l yl,m = a1x1 + a2x2 (34)in dem Raum enthalten ist, in dem die Wahrscheinlichkeitsdichtefunktionen für die Zustände definiert sind. Die Projektion der gemeinsamen Wahrscheinlichkeitsdichtefunktion auf diese Linie l liefert einen Indikator für die Wahrscheinlichkeitsverteilung nach Erhalt des Messwerts. Die Linie l kann in 3 als Kreuzung zwischen der Ebene p und der Wahrscheinlichkeitsdichtefunktion visualisiert sein.
  • Zum Berechnen der Erwartungswerte der Zustände repräsentiere (x1,0, x2,0) den Punkt auf l, der (x ^1,
    Figure 00310001
    ) am nächsten liegt. Dieser Punkt wird der Einfachheit halber gewählt, da er für eine beliebige Linie l existiert. Der Punkt ist hier als Lösung des folgenden Problems abgeleitet
    Figure 00310002
    a1x1 + a2x2 = Yl,m, (36)
  • Wenn a2 ≠ 0, dann
  • Figure 00320001
  • Einsetzen dieser Gleichung in die Gleichung 35 ergibt
  • Figure 00320002
  • Setzen der Ableitung relativ zu x1 auf Null ergibt
  • Figure 00320003
  • Gruppieren der x1-Terme ergibt
  • Figure 00320004
  • Daher
  • Figure 00320005
  • Durch Symmetrie
  • Figure 00330001
  • Somit gilt
  • Figure 00330002
  • Die Linie l kann durch folgende Gleichung in t parametrisiert werden x1(t) = x1,0 + a2t (44) x2(t) = x2,0 – a1t (45)
  • Jetzt kann die nicht normalisierte Ganzzahl kl der Wahrscheinlichkeitsdichtefunktion entlang der Linie l durch folgende Gleichung definiert werden
  • Figure 00330003
  • Dann wird der Erwartungswert t durch folgende Gleichung angegeben
    Figure 00330004
    und werden die Erwartungswerte der Zustände durch folgende Gleichung angegeben x1 = x1,0 + a2texp (49) x2 = x2,0 – a1texp (50)
  • Logischerweise wird durch die Aktualisierung der Vorhersagefehler derart zwischen den beiden Zuständen verteilt, dass die Veränderung, die an der Zustandsschätzung durchgeführt worden ist, bei einem Parameter mit einer größeren Unsicherheit (Varianz) größer ist. Der Grund dafür liegt darin, dass der erwartete Punkt auf der Linie l von der Parameterschätzung mit einer "breiteren" Wahrscheinlichkeitsdichte dominiert wird. Dies ist in 3B grafisch dargestellt. Die Ebene p, die die Wahrscheinlichkeitsdichtefunktion schneidet, repräsentiert die Informationen, die in einem neuen Messwert enthalten sind, welcher sowohl eine Funktion von x1 als auch x2 ist. Das Kreuzen der Ebene p durch die Wahrscheinlichkeitsdichtefunktion ist die Wahrscheinlichkeitsverteilung angesichts der neuen Informationen.
  • Die vorstehende Beschreibung hat ein im Wesentlichen gleiches Ziel wie die Ableitung des diskreten Kalman-Filters. Es ist gewünscht, zum Erhalten besserer Parameterschätzungen Unsicherheitsinformationen zu verwenden. Es gibt mehrere Wege, das Kalman-Filter abzuleiten. Bei der vorstehenden Formulierung werden die Messinformationen (l) als absolut behandelt, während sie bei der Kalman-Filter-Ableitung Unsicherheiten enthalten, wie es auch bei den Zustandsschätzungen der Fall ist. Mathematisch fungiert die Linie l oben als Einschränkung, während sie bei der Kalman-Filter-Formulierung einem pönalisiertem Term in einer Zielfunktion entspricht, welche minimiert wird. Der Kalman-Filter-Ansatz bezüglich dieses Problems wird hier genauer behandelt, da es sich hierbei um einen viel allgemeineren Ansatz hinsichtlich des Schätzproblems handelt.
  • Es sei ein System betrachtet, bei dem X der aktuelle Vektor der Zustandsschätzungen ist, P die Fehler-Kovarianzmatrix für die Zustandsschätzungen ist und y ein Vektor der Messungen ist, der durch folgende Gleichung beschrieben wird y = Cx + v, (51)wobei v einen willkürlichen Messfehler mit einem Null-Mittel und einer Kovarianzmatrix R repräsentiert.
  • Bei dem oben beschriebenen System minimiert das diskrete Kalman-Filter im Wesentlichen den Leistungsindex
    Figure 00350001
    über x, um zu dem neuen Zustandsschätzvektor zu gelangen.
  • Dieser gewichtete Leistungsindex der kleinsten Quadrate minimiert den Vorhersagefehler bei gleichzeitiger Pönalisierung von Veränderungen an den Zustandsschätzungen, wobei das Vertrauen in die aktuellen Schätzungen hoch ist. Dies ist leicht zu erkennen, wenn die Kovarianzmatrix P eine nur aus den Varianzen bestehende Diagonalmatrix ist. Eine sehr sichere Zustandsschätzung weist eine niedrige Varianz auf, so dass das entsprechende Element P–1 sehr hoch ist. Ferner sind bei Empfang mehrerer Messwerte diese in der Zielfunktion entsprechend ihren Vertrauenspegeln (wie durch die Varianz-Terme in der Matrix R bestimmt) gewichtet.
  • Es ist sinnvoll festzustellen, dass bei sehr kleinen Termen R das neue x bei der Erläuterung des Messwerts y gute Arbeit leisten muss, da die (y – Cx)-Terme bei großem R–1 stark pönalisiert werden. Bei kleinem R besteht nur eine sehr geringe Unsicherheit in dem Messvektor y. Im Extremfall nähert sich die Lösung dem Fall an, in dem die Zustandsschätzungen auf der von den Messwerten definierten Linie (oder Ebene) enden, wie in Gleichung 34. Das in Gleichung 52 beschriebene Optimierungsproblem kann durch Einstellen des Differentials dJ auf Null analytisch gelöst werden. dJ = dxTP–1(x – x) – (Cdx)TR–1(y – Cx). (53)
  • Somit 0 = dxT[P–1(x – x) – CTR–1(y – Cx)] (54)
  • Da dx willkürlich variierbar ist, muss der in Klammern angegebene Term Null sein, und es ist möglich, hinsichtlich des optimalen x eine algebraische Lösung zu finden. 0 = P–1x – P–1 x – CTR–1y + CTR–1Cx (55) 0 = (P–1 + CTR–1C)x – P–1 x – CTR–1y (56) (P–1 + CTR–1C)x = P–1 x + CTR–1y + CTR–1 x – CTR–1 x (57) (P–1 + CT–1C)x = (P–1 + CTR–1C)x + CTR–1y – CTR–1Cx (58) x = x + (P–1 + CTR–1C)–1CTR–1(y – Cx). (59)
  • In dem oben beschriebenen Fall mit zwei Variablen C = [a1a2] (60)und
  • Figure 00370001
  • Da es nur eine Messung gibt, ist die Matrix R einfach nur der Einfach-Term R. So gilt für diesen Fall
  • Figure 00370002
  • Die Gleichung 62 kann wie folgt weiter vereinfacht werden
  • Figure 00370003
  • Figure 00380001
  • Dieses Ergebnis zeigt, wie die Unsicherheiten in den Zustandsschätzungen und der Messwert die Aktualisierung beeinflussen.
  • In dem Fall, in dem nur ein Teilsatz der Messwerte ermittelt wird, werden x, R und C in der Gleichung 52 durch die reduzierten Versionen ersetzt. Hier ist yr der Vektor der ermittelten Messwerte, enthält Cr die Reihen in C, die die ermittelten Messwerte angeben, und ist Rr die Kovarianzmatrix für diesen reduzierten Satz von Messwerten. In dieser Situation wird die Zustandsaktualisierung wie folgt angegeben x = x + (P–1 + Cr TRr –1Cr)–1Cr TRr –1(yr – cr x). (67)
  • Da unterschiedliche Messungen durchgeführt werden, verändern sich die effektiven C- und R-Matrizen. Da die effektive Ausgangsmatrix nicht konstant ist, erreichen die Varianzschätzungen (und somit die effektiven Aktualisierungsgewichtungen) niemals einen Beharrungszustand, wenn der Controller 130 über zahlreiche Zeitschritte arbeitet. Die Beobachterkomponente 134 verändert stetig ihre Verstärkung, wenn sich die Bearbeitungsmischung verändert.
  • Zustands- und Varianzschätzungen werden zu zwei verschiedenen Zeitpunkten aktualisiert: zu dem Bearbeitungszeitpunkt und bei Eintreffen der Messinformationen. Die Aktualisierung zu dem Bearbeitungszeitpunkt ist eine vorhersagbare Aktualisierung unter Verwendung eines bekannten Modells des Systems. In diesem Fall wird angenommen, dass der Modellfehler ein Mittel von Null und eine bekannte Kovarianz aufweist. Die aktuellen Zustands- und Varianzschätzungen durchlaufen beide die Zustandsübergangsmatrix und erreichen neue Schätzungen. Bei der Aktualisierung bei dem Messschritt (der Erneuerung) werden die neuen Informationen berücksichtigt, die sich aus den durch Lösen des in Gleichung 52 angegebenen Problems erhaltenen Messwerten ergeben.
  • Die Entwicklung von x in der Zeit wird durch folgende Gleichung angegeben xk+1 = Akxk + Bkuk + Gkwk (68)wobei uk der Prozesseingang und wk ein willkürlicher Prozessfehler mit einen Mittel von Null und einer Kovarianzmatrix Q ist. Wie oben wird die durchgeführte Messung durch folgende Gleichung angegeben yk = Ckxk + vk, (69)wobei v einen willkürlichen Messfehler mit einem Mittel von Null und einer Kovarianzmatrix R repräsentiert.
  • Jedes Mal, wenn der Prozess abläuft, werden die Zustandsschätzungen und die Fehler-Kovarianz unter Anwendung der folgenden Gleichungen aktualisiert xnew = Axold + Bu (70) Pnew = APoldAT + GQGT (71)
  • Mit diesen Gleichungen wird die Schätzung für x unter der Annahme aktualisiert, dass kein Rauschen vorhanden ist, die in P enthaltene Unsicherheit steigt jedoch. Jedes Mal, wenn eine Messung durchgeführt wird, werden die Zustandsschätzungen und die Fehler-Kovarianz unter Anwendung der folgenden Gleichungen aktualisiert: xnew = xold + (Pold –1 + CTR–1C)–1CTR–1(y – Cxold) (72) Pnew= (Pold –1 + CTR–1C)–1 (73)
  • Diese Gleichungen gewährleisten, dass die neue Schätzung von x die Messdaten widerspiegeln, und die in P enthaltene Unsicherheit sinkt. Es sollte zur Kenntnis genommen werden, dass sich durch die Aktualisierung der Messung die nicht Diagonal-Terme in der Fehler-Kovarianzmatrix verändern. Diese Terme behalten auf der Basis vergangener Messungen im Gedächtnis, wie Zustände miteinander in Beziehung stehen.
  • So wird nach jedem Zeitschritt die Fehler-Kovarianzmatrix zusammen mit den Zustandsschätzungen aktualisiert. Generell wird durch einen Bearbeitungsschritt die Unsicherheit (Varianz) erhöht, während durch eine zusätzliche Messung die Unsicherheit gesenkt wird. Die Tatsache, dass unterschiedliche Messkombinationen durchgeführt werden, führt zu unterschiedlichen Mustern in der Kovarianzmatrix.
  • Nichtlineare Systeme können unter Anwendung der Matrix aus Teil-Ableitungen der Modellgleichungen anstelle der Matrizen A, B und C gehandhabt werden. Generell ist immer noch die gleiche Analyse anwendbar und wird das Prozessmodell bei jedem Zeitschritt um den aktuellen Betriebspunkt linearisiert.
  • Im Nichtlinear-Fall handelt es sich bei den Modellgleichungen um eine allgemeinere Beziehung zwischen aktuellen und künftigen Zustandswerten. xk+1 = f(xk, uk) (74) yk = h(xk) (75)
  • Bei einem vorgegebenen Zeitschritt können diese Gleichungen zum Erzeugen der entsprechenden Terme aus dem linearen Modell linearisiert werden.
  • Figure 00410001
  • In der folgenden Beschreibung wird die Anwendung eines Schätzalgorithmus auf Basis des in einer Durchlauf-zu-Durchlauf-Steuersituation mit mehrere Bearbeitungskontexten zu verwendenden Kalman-Filters dargestellt. Der Algorithmus verwendet x k und P k, den Zustandsschätzvektor und die Unsicherheitsinformationen aus der Fehler-Kovarianzmatrix. Wenn es Zeit ist, Einstellungen für einen speziellen Durchlauf zu berechnen, muss die Beobachterkomponente 134 zuerst die Zustände und Messungen identifizieren, die auf den Durchlauf anwendbar sind. Da es das Ziel des Durchlaufs ist, einen speziellen Wert des Systemausgangs zu erzielen, muss der Controller 130 die effektive Ausgangsabbildung C für den vorgegebenen Kontext berechnen.
  • Bei der korrekten Ausgangsabbildung und den aktuellen Zustandsschätzungen kann die Steuerfunktionskomponente 132 die Prozesseingänge berechnen und ermöglichen, dass der Prozess fortgeführt wird. Ferner berechnet zu diesem Zeitpunkt die Beobachterkomponenten 134 Schätzungen für die Nachprozesszustände x ^k+1 und die Kovarianz P ^k+1 unter Verwendung des Prozessmodells. Unter Verwendung der effektiven Ausgangsmatrix kann die Beobachterkomponente 134 ferner den Ausgang y ^k+1 vorhersagen.
  • Nach dem Durchlauf empfängt die Beobachterkomponente 134 einen Messwert yk+1. Die Beobachterkomponenten 134 kann die aktuellen Zustands- und Kovarianzschätzungen zusammen mit dem neuen Messwert zum Minimieren der Gleichung 52 verwenden. Dies führt zu neuen Werten für x ^k+1 und P ^k+1. Wenn neue Produkte oder Werkzeuge 200, 210 hinzugefügt werden, müssen deren Zustandsschätzungen den bereits gespeicherten und aktualisierten Zuständen hinzugefügt werden.
  • Aufgrund sich verändernder Prozessbedingungen, wie z.B. des Hinzufügens neuer Produkte oder Werkzeuge 200, 210, ist es möglich, dass sich die Anzahl der von der Beobachterkomponente 134 verfolgten Zustände verändert. Es ist vorteilhaft, wenn diese Veränderungen den Controller 130 so wenig wie möglich beeinträchtigen. Zum Erreichen dieser minimierten Beeinträchtigung werden die Informationen über den neuen Zustand mit dem bestehenden Zustandvektor und der Fehler-Kovarianzmatrix zusammengefasst. Nach der Wahl einer geeigneten Anfangs-Mutmaßung hinsichtlich der Zustandsschätzung wird zum Verfolgen des neuen Zustands ein neues Element dem Zustandsvektor hinzugefügt. Ferner werden eine neue Reihe und Spalte der Fehler-Kovarianzmatrix hinzugefügt. Diese neuen Elemente in der Kovarianzmatrix können alle mit Null initialisiert werden, mit Ausnahme des Varianz-Terms, der relativ hoch eingestellt sein sollte, um anzuzeigen, dass der neue Zustand nicht gut charakterisiert ist.
  • Die Abstimmparameter umfassen die geschätzten Rauscheigenschaften für die Modell-Unsicherheit (die G- und Q-Matrizen in den Systemmodell-Gleichungen) und Messwerte (die R-Matrix). Ferner müssen die Anfangs-Mutmaßungen hinsichtlich neuer Zustände und Zustandsschätzvarianzen festgelegt werden. Durch Wählen einer hohen Anfangs-Mutmaßung hinsichtlich der Unsicherheit in einer neuen Zustandsschätzung wird die Beobachterkomponente 134 gezwungen, diese vorzugsweise zu aktualisieren, bis sie in stärkerem Maße mit der Leistung der bestehenden Zustände übereinstimmt.
  • Die Wahl der R-Matrix hat einen Einfluss darauf, wie schnell das Schätzschema auf Messdaten anspricht. Größere Werte führen zu einem trägeren Ansprechen. Die Wahl der G- und Q-Matrizen hat einen Einfluss darauf, wie schnell die relativen Unsicherheiten bei den unterschiedlichen Modellzuständen mit der Bearbeitung ansteigen. Diese können verwendet werden, um zu bewirken, dass das Schätzschema bestimmte Parameter im Vergleich zu anderen bevorzugt aktualisiert.
  • Das optimale Abstimmen und selbst die Modellform hängen in starkem Maße von den Prozessbedingungen ab. Es gibt keinen perfekten Controller, sondern nur einen besten Controller für einen bestimmten Satz von Prozessbedingungen. Ein gutes Verständnis der erwarteten Störungen führt zu einem Konzept, das unter diesen Umständen gut funktioniert.
  • Bei dem oben beschriebenen Zustandsschätzschema gibt es zwei Zeitpunkte, zu denen sich die Zustands- und Unsicherheitsschätzungen verändern. Dabei handelt es sich um die Vorhersage zum Bearbeitungszeitpunkt und die Aktualisierung zum Messzeitpunkt. Zum korrekten Funktionieren hält der Zustandsschätzalgorithmus die vollständige Historie sämtlicher durchgeführter Durchläufe, einschließlich sämtlicher bekannter, darauf bezogener Messungen fest. In einer Chargen-orientierten Bearbeitungsumgebung, in der Messungen vor und nach der Bearbeitung durchgeführt werden, ist es möglich, dass Messungen verzögert oder sogar ganz übersprungen werden. Es muss sichergestellt sein, dass der Zustandsschätzer die empfangenen Informationen korrekt in eine akkurate Bearbeitungshistorie einbaut.
  • Im Prinzip ist es möglich, eine vollständige Bearbeitungshistorie für das System festzuhalten, die die Eingänge und Ausgänge für jeden Bearbeitungsdurchlauf enthält. Dann wird bei Eintreffen eines Messwerts dieser einfach an der geeigneten Stelle in die Historie eingesetzt. Sämtliche aktuellen Zustandsschätzungen können beginnend mit den ursprünglichen Mutmaßungen durch Iterieren durch jeden Zeitschritt in der Historie berechnet werden.
  • Ein solches Verfahren macht eine sehr große Datenspeicherkapazität erforderlich. Es ist jedoch nicht immer notwendig, zum Berechnen der korrekten aktuellen Zustandsschätzungen sämtliche dieser Daten zu speichern. Bei einem System mit 100%-iger Messung (Berechnung sämtlicher Variablen für jeden Durchlauf) werden schließlich die Ergebnisse sämtlicher Durchläufe gemessen. Wenn bei dem Bearbeitungsschritt ein Protokoll für den Durchlauf erstellt wird, kann dieses mit den Messdaten aktualisiert werden, wenn die Informationen verfügbar werden.
  • Sämtliche vollständige (Prozess- und Messdaten verfügbar) Protokolle, beginnend mit dem Anfang der Historientabelle und weiter bis zu dem ersten nicht gemessenen Durchlauf, kann zu den laufenden "Anfangs-Mutmaßungen" für die Tabelle zusammengefasst werden. Dies erfolgt durch Ausführen sowohl der Vorhersageaktualisierung als auch der Messaktualisierung für jedes Protokoll. Es kann nichts ohne Erstellung eines Bearbeitungsprotokolls bearbeitet werden, somit gibt es keine Möglichkeit, einen Messwert zu erhalten, der nicht einem noch in der Tabelle befindlichen Bearbeitungsereignis entspricht. Dadurch wird die Historientabelle nur auf den Zeitpunkt reduziert, zu dem noch Messwerte fehlen.
  • Wenn es die Betriebs-Beschränkungen nicht ermöglichen, dass bei jedem Durchlauf Messungen durchgeführt werden, ist es erforderlich, eine Ab laufzeit zu definieren. Durchgänge, die älter sind als die Ablaufzeit und bei denen noch keine Messung durchgeführt worden ist, werden unter der Annahme verworfen, dass bei diesen niemals Messungen durchgeführt werden. Dadurch wird es ermöglicht, dass die oben beschriebene Standard-Zusammenfassung selbst bei unvollständiger Messung fortgesetzt wird. Bei einem nicht gemessenen Prozessdurchlauf erfolgt beim Zusammenfassen nur die vorhersagbare Aktualisierung.
  • Die oben beschriebenen Einstellungen ermöglichen es, dass der Controller Messdaten als kontinuierlichen Strom behandeln, selbst wenn die Daten spät eintreffen können und manchmal gar nicht eintreffen. Das folgende Beispiels zeigt, wie der Controller für einen Mehrfach-Werkzeug- und -Produkt-Prozess eine typische Situation handhabt. In diesem Fall sei angenommen, dass die Werkzeug- und Produktnamen ausreichen, um festzustellen, welche Modellzustände bei jedem Durchlauf beeinflusst werden. Tabelle 1 zeigt eine Liste von Prozessereignissen für diesen Fall.
  • Tabelle 1 – Prozessereignisse: Fall 1
    Figure 00450001
  • Wenn der Prozess in der in Tabelle 1 angegebenen Reihenfolge abläuft, brauchen kein Historieinformationen gesichert zu werden. Jedes Ereignis kann die Controller-Zustände auf normale Weise aktualisieren, wie in der Tabelle angegeben. Hier sind die einzigen Daten, die gesichert werden müssen, in x* enthalten, das den "Gesamtdurchlauf" des Satzes von Zustands- und Unsicherheitsschätzungen bezeichnet. Die Werte für x* werden bei jedem Ereignis aktualisiert, und dann werden die Ereignisdaten verworfen.
  • Wenn jedoch eine Bearbeitung eintritt wie in der nachstehenden Tabelle 2 angegeben, muss die Beobachterkomponente 134 entscheiden, wie die neuen Daten zu interpretieren sind. Das Handhaben der Messereignisse ist nicht so einfach wie oben, da die Messinformationen veraltet sind. Es ist offensichtlich, dass die Beobachterkomponente 134 noch eine Zustandsaktualisierung bei jeder neuen Messung durchführen muss, sie kann jedoch neue Zustandswerte nicht einfach auf der jüngsten Messung basieren lassen, da sich die neuen Informationen auf einen Vorgang beziehen, der in der Vergangenheit stattgefunden hat. Die Lösung liegt in der Sicherung sämtlicher Ereignisinformationen, so dass die vollständige Historie konstruiert werden kann, wenn die Informationen verfügbar werden. Die Informationen werden dann nur verworfen, wenn sie nicht länger benötigt werden.
  • Tabelle 2 – Prozessereignisse: Fall 2
    Figure 00460001
  • Figure 00470001
  • Es sei angenommen, dass x0 den Satz von Zustands- und Unsicherheitsschätzungen bezeichnet, bevor gespeicherte Ereignisse darin enthalten sind. Dann kann x* beginnend mit x0 und durch Iterieren über die gespeicherten Ereignisse berechnet werden, wobei die erforderlichen Aktualisierungen verwendet werden.
  • Bei dem ersten Ereignis in Tabelle 2 besteht keine Abhängigkeit von anderen Informationen. Daher können die Zustandsschätzungen vorhergesagt werden und kann x0 aktualisiert werden. In diesem Fall ist x* gleich x0 und werden die Ereignisdaten verworfen.
  • Die nächsten drei Ereignisse (2–4) in Tabelle 2 sind unvollständig, da die Messschritte für frühere Chargen übersprungen worden sind. In diesem Fall bleibt x0 konstant und werden die Daten für die drei Ereignisse einer von der Beobachterkomponente 134 aufrechterhaltenen internen Historie hinzugefügt. Diese Historie ist in der nachstehenden Tabelle 3 dargestellt. Es sei darauf hingewiesen, dass das Ereignis, das bekanntermaßen fehlt, mit "N/A" bezeichnet ist. Jetzt kann x* beginnend bei x0 durch Iterieren über die drei in Tabelle 3 aufgeführten Ereignisse berechnet werden.
  • Tabelle 3 – Interne Historie des Controller (Ereignisse 2–4)
    Figure 00470002
  • Wenn das nächste Ereignis (5) eintrifft, weist die Beobachterkomponente 134 soweit einen vollständigen Datensatz für sämtliche Chargen auf, so dass x0 aktualisiert werden kann. Hier enthält die interne Historie die in Tabelle 4 aufgeführten Ereignisse. Die Beobachterkomponente 134 kann x0 durch Iterieren über diese Ereignisse aktualisieren. Dann werden die Ereignisdaten sicher verworfen.
  • Tabelle 4 – Interne Historie des Controller (Ereignisse 2–5)
    Figure 00480001
  • Die nächsten beiden Ereignisse (6–7) sind unvollständig, da Charge 3 nie gemessen wurde. Wie oben, fügt die Beobachterkomponente 134 diese ihrer in Tabelle 5 dargestellten internen Historie hinzu und führt keine Aktualisierung von x0 durch. Wie oben beschrieben, ist es möglich, ein zulässiges Zeitfenster für die einzutreffenden Daten zu definieren. Wenn genug Zeit vergangen ist, kann die Beobachterkomponente 134 annehmen, dass die Messdaten für Charge 3 niemals eintreffen werden und kann durch Zusammenfassen der Daten von den Ereignissen 6 und 7 zu x0 fortfahren.
  • Tabelle 5 – Interne Historie des Controller (Ereignisse 6–7)
    Figure 00480002
  • Anhand der vorstehenden Analyse ist jedes Element in der Messmatrix eine willkürliche Variable gleich einer Funktion eines oder mehrerer Zustände. Somit ist es möglich, eine Wahrscheinlichkeitsdichtefunktion für die vorhergesagten Werte des Vektors der Messungen zu definieren. Wenn x eine Fehler-Kovarianzmatrix P aufweist und die Vorhersage des Ausgangs durch Cx angegeben ist, wird die Kovarianz für den vorhergesagten Ausgang durch CPCT angegeben. Diese Kovarianzmatrix kann unter Anwendung von Gleichung 26 zum Erstellen einer Wahrscheinlichkeitsdichtefunktion für den vorhergesagten Ausgang verwendet werden.
  • Für die vorhergesagten Messungen berechnete Vertrauensbereiche können dann mit spezifizierten Grenzen verglichen werden, um die Anforderungen hinsichtlich Bearbeitung und Stichprobenprüfung festzulegen, die erforderlich sind, um innerhalb der Betriebsgrenzen zu bleiben. Dieser Vergleich gibt dem Controller 130 eine Metrik zum Schätzen seiner eigenen Leistung und als potentielle Warnung an den Benutzer oder sogar zum Ergreifen von Maßnahmen zum Verhindern eines Problems, bevor dieses auftritt.
  • In dieser Beschreibung ist gezeigt, dass es eine statistische Basis zum Verwenden eines Unsicherheits-Terms zum Ansteuern der Zustandschätzungsaktualisierungen gibt. Unter Anwendung der beschriebenen Technik werden Zustände in einem Modell aktualisiert, selbst wenn direkte Messwerte dieser Zustände nicht verfügbar sind. Die Beschreibung präsentiert jetzt Simulationsdaten für zahlreiche unterschiedliche Kombinationen von Betriebsbedingungen sowie einige Vergleiche mit anderen Verfahren.
  • Das oben beschriebene Zustandsschätzungsschema dient zum Analysieren großer Systeme mit mehreren Variationsquellen unter Verwendung von nur Teilen der gewünschten Daten zu einem vorgegebenen Zeitpunkt. In der nachstehenden Spezifikation sind mehrere Simulationen beschrieben, die darstellen, wie das Zustandschätzungsschema auf unterschiedliche Bearbei tungsbedingungen anspricht. Erstens wird ein Basisfall zum Verifizieren der Leistung des Controller 130 unter Nennbedingungen aufgebaut. Dann werden sequentiell Komplikationen hinzugefügt, um realistischere Betriebsbedingungen herzustellen. Die Leistung wird auch mit einem anderen (nicht gezeigten) Controller unter Verwendung der gleichen Problem-Daten verglichen.
  • In diesem Abschnitt wird die Umgebung der Anfangs-Tests beschrieben, und einige der in den übrigen Tests gemachten grundlegenden Annahmen werden anhand der erzielten Ergebnisse begründet. Zum Untersuchen der tatsächlichen Effekte der sich verändernden Prozessbedingungen wird ein einfaches Durchlauf-zu-Durchlauf-Anlagenmodell gewählt. Dieses Anlagenmodell ist ein zeitdiskretes Modell, das sich über die Anzahl von Durchläufen entwickelt. Die zeitkontinuierlichen Effekte, die bei der Bearbeitung jeder Charge auftreten, werden integriert, um durchschnittliche Charakteristiken der Charge als Ganzes zu repräsentieren. Entsprechend dem Anlagenmodell ist der Ausgang einfach gleich dem Eingang plus der Anlagen-Vorspannung. Die Anlagen-Vorspannung wird in keiner Weise durch den gewählten Wert des Eingangs beeinflusst.
  • Da die nachfolgenden Durchläufe die Verwendung mehrerer unterschiedlicher Arten von Produkten und unterschiedlicher Bearbeitungswerkzeuge simulieren, ist es erforderlich, die Variationsquellen zu bestimmen, so dass geeignete Systemzustände gewählt werden können. Bei einer realen Anwendung beinhaltet dies eine detaillierte Analyse von verfügbaren Prozessdaten, aber bei diesem Beispiel wird angenommen, dass die Vorspannung aus einer Komponente aus dem Bearbeitungswerkzeug sowie aus der aus einem durchlaufenden Produkt besteht.
  • Bei der Simulation bezieht sich Produkt nicht nur auf verschiedene Produkte, sondern auf die allgemeine Klasse von Merkmalen, die einen Durchlauf auf einem Werkzeug von einem anderen unterscheiden. Mit anderen Worten: jede Produkt-/Schicht-Kombination in einer realen Umgebung wäre bei dieser Simulation ein unterschiedliches "Produkt". Das Prozessmodell für ein spezielles Werkzeug und Produkt kann wie folgt dargestellt werden y = xl1 + xP1 + u, (79)wobei y der Ausgang, xl1 und xP1 die Werkzeug- und Produktvorspannungen und u der gewählte Prozesseingang sind. Das Target ist ein spezieller Wert von y. Bei den meisten Simulationen wird ein Wert von Null als Target gewählt. Eine weitere Annahme lautet, dass Werkzeugqualifizierungs-Ereignisse verfügbar und in der Lage sind, xl1 direkt für jedes Werkzeug i zu messen. Diese Annahme der Qualifizierungsereignisse führt dazu, dass das System beobachtbar ist.
  • Es wird ein herkömmliches zeitdiskretes Zustandsraummodell verwendet, einschließlich der Terme für Prozess- und Messrauschen xk+l = Ak + Bkuk + Gkwk, (80) yk = Ckxk + vk. (81)
  • Somit wird bei einem System mit m Werkzeugen und n Produkten ein Zustandvektor wie folgt angegeben x = [Xadjxl1xl2LxlmxP1xP2LxPn]T (82)wobei xadj der Einstellzustand ist und sämtliche Werkzeuge und Produkte mit einzelnen Elementen verfolgt werden. Die Vektoren w und v repräsentieren das Prozessrauschen bzw. das Messrauschen, und beide werden als normal verteilt mit einem Mittel von Null angenommen. Die Rauschvektoren werden bei dem Steuermodell verwendet, so dass Annahmen in den Zustandsschätzroutinen getroffen werden können. Bei den Simulationen werden andere Störungen zusätzlich zu den Rausch-Termen dem Modell hinzugefügt. Diese an deren Störungen beeinflussen das System durch direktes Modifizieren der Zustände derart, dass der Controller 130 keine Vorhersage treffen kann.
  • Die Zustandsübergangsmatrix ist eine Rechteckmatrix mit einer Größe von m + n + 1 und wird wie folgt dargestellt
    (83)
    was zeigt, dass sämtliche Werkzeug- und Produktparameter nominell stationär sind. Es wird angenommen, dass der Prozesseingang nur xadj beeinflusst, so dass die Größe m + n + 1 durch 1 beträgt, was zu folgendem Effekt führt B = [10L0]T. (84)
  • Die vollständige Ausgangsmatrix (mit einer Größe von mn + m durch mn + n + 1) für den Prozess wird wie folgt angegeben
    Figure 00530001
    was zu einem beobachtbaren System führt. Bei jedem Simulations-Durchlauf ist nur eine Reihe aus der Ausgangsmatrix aktiv. Dieser reduzierte Teilsatz der Ausgangsmatrix ist mit Ceff bezeichnet.
  • Bei den Simulationen in dieser Beschreibung werden drei Hauptkomponenten verwendet, die auf eine Kommunikation nur auf bestimmte Weise beschränkt sind. Die Primärkomponente ist der Simulationstreiber 136, der für das Aufrechterhalten der "realen" Parameterwerte und das Berechnen von "Messungen" anhand der Steuerbewegungen zuständig ist. Obwohl der Simulationstreiber 136 in 2 dargestellt ist, würde er normalerweise nicht bei einer echten Implementierung verwendet werden. Er ist zwecks besseren Ver ständnisses der nachstehenden Erläuterungen dargestellt. Die Steuerfunktionskomponente 132 ist für das Berechnen der Einstellungen für jeden Durchlauf anhand von von dem Simulationstreiber 136 erzeugten Werkzeug- und Produkt-IDs zuständig. Die Beobachterkomponente 134 ist für das Aktualisieren der Zustandsschätzungen anhand von von dem Simulationstreiber berechneten Messinformationen zuständig. Diese Flexibilität ermöglicht die Verwendung eines anderen Modells für die Anlage als der Controller 130 selbst verwendet, zur einfacheren Erläuterung wird diese Möglichkeit jedoch bei diesen Anfangs-Simulationen nicht angewendet.
  • Bei diesen Anfangs-Tests wird eine Anlage mit zehn Werkzeugen und zehn unterschiedlichen Produkten verwendet. Jedem Werkzeug und Produkt ist eine eindeutige Vorspannung zugewiesen, so dass es in dem Modell zwanzig Vorspannzustände gibt. Ferner sind jeder Vorspannung ihre eigenen Störeigenschaften, einschließlich Rauschen und Drift, zugewiesen. Das Rauschen bei jedem Zustand liegt ungefähr in einer Größenordnung, die kleiner ist als die durchschnittliche Differenz zwischen den Werten unterschiedlicher Zustände. Ein im Wesentlichen gleiches Maß an Rauschen wird jeder durchgeführten Messung hinzugefügt. Es wird ein nominell stationärer Prozess gewählt, um die Zustandsschätzung zu betonen. Da sich die Zustände normalerweise nicht bewegen, sind die Effekte der Störungen leichter zu visualisieren.
  • Erstens wird der Prozesssignal-Datensatz durch Wählen von Produkten und Werkzeugen, die willkürlich durchlaufen, erzeugt, wobei sämtliche Werkzeuge und Produkte die gleiche Wahrscheinlichkeit aufweisen. Der Datensatz wird als Historie von Werkzeug-IDs, Produkt-IDs und realen Zuständen für jeden Durchlauf gesichert. Bei jedem simulierten Durchlauf sendet der Simulationstreiber die Produkt- und Werkzeug-IDs, das Target und eine eindeutige ID für den speziellen Durchlauf an die Steuerfunktionskomponente 132. Die Steuerfunktionskomponente 132 führt den gewählten Prozesseingang zurück und ist für das Aufrechterhalten ihres eigenen Informationssatzes bezüglich jedes Durchlaufs zuständig. Der Simulationstreiber 136 berechnet dann den Prozessausgang anhand des vorgegebenen Eingangs und der wahren Zustände. Dieser Ausgang wird dann zusammen mit der eindeutigen ID für den Durchlauf an die Beobachterkomponente 134 des Controllers 130 weitergeleitet. Die Beobachterkomponente 134 aktualisiert die Zustandsschätzungen für den Controller 130 anhand der gelieferten Ausgangsdaten.
  • Da der Schwerpunkt dieser Beschreibung auf der Zustandsschätzung liegt, wird eine sehr einfache Steuerfunktion für das Implementieren durch die Steuerfunktionskomponente 132 gewählt. Die Steuerfunktionskomponente 132 verwendet die Zustandsschätzungen für die aktuellen Werkzeug- und Produktvorspannungen und wendet eine Anlageninversion zum Auflösen hinsichtlich des Eingangs an, wodurch der Ausgang an dem Target platziert wird. Selbstverständlich kann bei einer tatsächlichen Implementierung eine Vielzahl von unterschiedlichen Steuerfunktionen angewendet werden. Bei Anwendung dieser Steuerfunktion zeigt die Abweichung des Ausgangs von dem Target den Fehler in den verwendeten Zustandsschätzungen.
  • Die Konfiguration der Beobachterkomponente 134 enthält zahlreiche einstellbare Parameter, die zu Abstimmungszwecken verwendet werden können. Wie oben beschrieben, betreffen diese Parameter die angenommenen Rauscheigenschaften des zu untersuchenden Systems. Bei diesen Simulationen wird eine Anzahl von Annahmen getroffen. Erstens wird angenommen, dass sämtliche Messungen gleichermaßen zuverlässig sind, so dass die in der Reff-Matrix enthaltene Varianzschätzung immer gleich ist. In einer echten Fertigungseinrichtung können Wartungsinformationen von Messwerkzeugen und Informationen über bestimmte Produkte unterschiedliche Werte liefern. Die anderen Annahmen betreffen das Prozessrauschen. Die Rausch-Terme in dem Prozessmodell sind bei der gesamten Simulation konstant. Die G- und F-Matrizen sind derart eingestellt, dass die die unterschiedlichen Zustände beeinflussenden Rauscheigenschaften nicht miteinander in Beziehung stehen und die Werkzeugzustände rauschbehafteter sind als Produktzustände. Auch hier muss bei einer realen Anwendung eine Offline-Analyse zum Ermitteln dieser Werte angewendet werden. Entsprechend dem Modell beeinflusst das Rauschen sämtliche Zustände, selbst diejenigen, die Werkzeugen und Produkten entsprechen, welche bei dem aktuellen Durchlauf nicht aktiv sind.
  • Diese Rauschschätzungen sind Teil des Modells und stehen nicht mit dem tatsächlich Rauschen in Beziehung, das in die Simulationen eingebracht wird, während diese ablaufen. Es ist möglich, die Schätzungen zu manipulieren, um unterschiedliche Ergebnisse zu erzielen. Wenn beispielsweise der Beobachter zu träge ist, können die Prozessrausch-Terme höher eingestellt werden. Da die Parameter dann eine größere Unsicherheit aufweisen würden, würde die Beobachterkomponente 134 größere Einstellungen an den Zustandsschätzungen durchführen.
  • Der erste Test für den Controller 130 ist der Start ohne Informationen über die Zustände des Systems, um sicherzustellen, dass dieser in der Lage ist, das System unter Kontrolle zu bringen. Die realen Zustände enthalten Rauschen und ein geringes Maß an Drift. 4 zeigt eine grafische Darstellung des Ausgangs bei in einen Prozess mit 10 Werkzeugen und 10 Produkten platziertem Controller 130. Der Controller 130 besitzt keine früheren Informationen über die Werte der Zustände und ist in der Lage, diese schnell zu erlernen und den Prozess unter Kontrolle zu bringen.
  • Der Controller wird initialisiert, wobei seine sämtlichen Zustandsschätzungen auf Null sind. Es gibt ferner eine Anfangs-Kovarianzmatrix. Hier wird eine Diagonalmatrix als Ausgangspunkt mit Werten verwendet, die derart gewählt sind, dass sie die anfängliche Unsicherheit bei jedem der Zustände repräsentieren. Da von Produkt zu Produkt auftretende Unterschiede stärker sein können als Unterschiede zwischen den Werkzeugen, wird die Anfangs-Varianz für die Produktzustände höher eingestellt als die für Werkzeugzustände.
  • Gemäß 4 negiert der Controller 130 die Mehrheit der Fehler nach ungefähr 25 Durchläufen und läuft der Controller 130 danach in einem stabi len Betriebszustand. Der stabile Rauschpegel in dem Ausgang ist ungefähr gleich der Größe des von dem Simulationstreiber 136 in den Prozess eingebrachten Rauschens. Der Controller 130 beginnt mit 20 unbekannten Zuständen und identifiziert sie alle nach ungefähr der gleichen Anzahl von Durchläufen ziemlich gut.
  • Obwohl es wichtig ist, erläutern zu können, dass der Controller 130 diese Aufgabe erfüllen kann, ist es nicht wahrscheinlich, dass dieser Fall in einer realen Produktionsumgebung eintritt. Es könnte eine Offline-Analyse zum Festlegen von sinnvollen Anfangs-Mutmaßungen bezüglich der Zustände des Controller 130 angewendet werden. Wenn ein Prozess mit dieser Kombination aus Werkzeugen und Produkten abläuft, bevor ein Controller 130 verwendet wird, könnte die Beobachterkomponente 134 des Controller 130 auf den Produktionsdaten laufen, um die korrekten Zustandsschätzungen vor dem Starten des Controller 130 zu erstellen.
  • Es ist bei neuen Produkten gängigere Praxis, diese langsam über die Zeit einzuführen, während bestehende Produkte allmählich auslaufen. Bei diesem Beispiel gibt es insgesamt 10 Werkzeuge und 10 Produkte, wie in dem oben beschriebenen Fall, die Regeln für die Simulation sind jedoch unterschiedlich. Alle 10 Werkzeuge stehen zu Beginn zur Verfügung, Produkte werden jedoch langsam über die Zeit hinzugefügt. Anfangs steht nur ein Produkt zur Verfügung, aber alle 100 Durchläufe wird ein neues Produkt diesem Mix hinzugefügt. Das Ansprechen des Controller 130 ist in 5 dargestellt, die eine grafische Darstellung der effektiven kombinierten Werkzeug- und Produktvorspannung zeigt, die besteht, wenn 10 Produkte rampenförmig auf 10 Werkzeuge platziert werden. Bei jedem Durchlauf werden das zu bearbeitende Produkt und das zu verwendende Werkzeug willkürlich aus dem verfügbaren Satz ausgewählt. Die in 5 gezeigte grafische Darstellung wird durch Eintragen des Ausgangs y bei auf Null gehaltenem Eingang u erhalten.
  • Jedes neue Produkt erscheint als Störung, wenn es hinzugefügt wird, der Controller 130 befasst sich jedoch schnell mit Störungen. Es ist unwahrscheinlich, das ganze Chargen brandneuer Produkte ohne Vorbereitung in einer realen Produktionsumgebung produziert werden. Bei Einführung eines neuen Produkts können in vielen Fällen Teil-Chargen bearbeitet werden, um den Controller 130 mit den geeigneten Informationen zu versorgen. In anderen Fällen kann ein Ingenieur genug Wissen besitzen, um auf effiziente Weise eine angemessene Anfangs-Mutmaßung hinsichtlich des neuen Zustands auszuwählen.
  • Es ist bekannt, dass bei Erscheinen eines neuen Produkts eine hohe Wahrscheinlichkeit besteht, dass die Anfangs-Zustandsschätzung fehlerhaft ist. Aus diesem Grund sollte der Zustand für das neue Produkt eingestellt werden, wenn der Controller 130 tatsächlich das Target nicht trifft. In dem Steueralgorithmus erfolgt dies durch Spezifizieren einer Anfangs-Varianzschätzung für neue Zustände. Wenn ein neuer Zustand hinzugefügt wird, wird ein neues Element mit der neuen Zustandsschätzung in den Zustandsvektor eingesetzt und werden eine neue Reihe und Spalte der Fehler-Kovarianzmatrix hinzugefügt. Bei diesen Simulationen sind die neue Reihe und Spalte in der Kovarianzmatrix alle auf Null gesetzt, mit Ausnahme des Diagonalelements. Dieses Element ist auf die Anfangs-Varianzschätzung für den Zustand gesetzt. Spezifizieren eines höheren Werts für diese Anfangsschätzung bedeutet, dass der neue Zustand einen größeren Teil des Fehlers aus dem ersten Durchlauf absorbiert, bei dem der neue Zustand verwendet wird.
  • Anschließende Testfälle beginnen mit stabilen Systemen und der Annahme, dass der Controller 130 nahe den korrekten Zustandswerten startet. Auf diese Weise können einzelne Störungen eingekoppelt und analysiert werden, ohne dass die Beobachterkomponente 134 jedes Mal wieder die Anfangs-Zustandsschätzung erlernen muss. In diesem Abschnitt wird eine Folge von Standardstörungen erzeugt und als Prozesssignal für den Controller 130 verwendet. In jedem Fall beginnt das System an einem stabilen Betriebspunkt und hat der Controller 130 aktuelle Zustandsschätzungen. Die Fähigkeit des Controller 130, auf sprungartigen Störungen, Rampenstörungen und Target-Veränderungen anzusprechen, wird als erstes getestet. Dann werden schwierigere Aufgaben, wie z.B. Messverzögerung und fehlende Messwerte, dargestellt, um die Robustheit des Controller 130 angesichts realistischerer Situationen zu prüfen.
  • Es sei darauf hingewiesen, dass die hier zu untersuchenden Störungen reproduzierbare und systematische Effekte beinhalten. Generell gibt es auch zufällige und unvorhersehbare Hochfrequenzkomponenten, die als Rauschen auftreten, da sie nicht von Elementen des gewählten Prozessmodells erfasst werden. Die Beobachterkomponente 134 kann nur Abweichungen innerhalb des Umfangs der gewählten Modellform detektieren, und das Ziel des Controller 130 besteht darin, diese zu eliminieren.
  • Es gibt zahlreiche Ereignisse, die zu einer offensichtlichen unverzüglichen Veränderung in der Leistung eines Werkzeugs führen können. Eine sprungartigen Störung ist ein gebräuchliches Signal zum Testen von Filtern und Controllern. Mathematisch wird die sprungartige Störung als Sprungfunktion dargestellt δk(t) = 0, (86) t < k δk(t) = 1, (87) t ≥ k
  • Der Simulationstreiber 136 fügt eine sprungartige Störung einem der Werkzeugzustände nach 100 Durchläufen hinzu, um sicherzustellen, dass der Controller die unerwartete Störung korrekt zurückweist. Bei einem Mehrfach-Bearbeitungs-Aufbau wie diesem System ist die stufenartige Störung nicht so unkompliziert wie bei einem herkömmlichen Prozess. Bei einem einfachen System bleibt eine sprungartige Störung von dem Zeitpunkt ihres Auftretens bis zur Durchführung einer Korrektur sichtbar. Bei dem hier zu untersuchen den System beobachtet der Controller 130 jedoch Kombinationen unterschiedliche Zustände bei jedem Zeitschritt. Die Störung erscheint nur gelegentlich, da sie nur sichtbar ist, wenn der eine Störung aufweisende Zustand verwendet wird.
  • Gemäß 6 ist der Controller in der Lage, die stufenartige Störung bei Durchlauf 100 zu kompensieren. Es gibt mehr als eine "Spitze" in der grafischen Darstellung, da der Controller 130 feststellen muss, ob die Störung in dem Produkt- oder dem Werkzeugzustand aufgetreten ist, und es vergehen einige Durchläufe, bis das fehlerverdächtige Werkzeug und Produkt wieder verwendet werden. Wenn der Controller die Ergebnisse für einen Durchlauf falsch vorhersagt, ist es nicht sofort offensichtlich, welche der Zustandsschätzungen fehlerhaft ist. Wie oben beschrieben, verwendet die Beobachterkomponente 134 die aktuellen Schätzungen hinsichtlich der Parameter-Unsicherheiten, um den Fehlern den Parametern zuzuweisen. Es ist bekannt, den fehlerhaften Zustand zu isolieren, und es muss ein anschließender Durchlauf, der entweder den Werkzeugzustand oder den Produktzustand ebenfalls nutzt, verwendet werden. Jeder anschließende Durchlauf zeigt die Störung in geringerem Maße.
  • Die Fehler-Kovarianzmatrix, die in einem Kalman-Schätzschema vorhanden ist, enthält Informationen darüber, wie die Zustände miteinander in Beziehung stehen. In diesem Fall weiß bei erstmaligem Auftreten der sprungartigen Störung die Beobachterkomponente 134 nicht, ob der verwendete Werkzeugzustand oder Produktzustand fehlerhaft ist. Sie verteilt jedoch den Fehler gemäß ihren relativen Unsicherheiten auf die beiden Zustände, was bedeutet, dass eine Zustandsschätzung im Falle einer Störung, die nur in einem einzelnen Zustand auftritt, teilweise falsch bewegt wird. Die Kreuz-Terme in der Fehler-Kovarianzmatrix, die die beiden betroffenen Zustände in Beziehung zueinander setzt, werden jedoch eingestellt. Diese Einstellung liefert im Wesentlichen Informationen an die Beobachterkomponente 134, die sie zum Reparieren der falsch bewegten Zustandsschätzungen verwenden kann, sobald geeignete Informationen verfügbar werden.
  • Dieses Auffüllen von Informationen ist eine sinnvolle Eigenschaft der Beobachterkomponente 134. Wie oben beschrieben, basieren gemeinsame Zustands- und Parameterschätzschemata für Mehrprozessumgebungen auf dem Aufteilen von Daten. Eine Charakteristik der aufgeteilten Daten besteht darin, dass eine Messung nur ihresgleichen beeinflusst. Informationen von einer neuen Messung eines Parameters können beispielsweise nicht zum Bestätigen oder Zurückweisen eines beobachteten Signals in einem anderen Parameter verwendet werden. Dieses kombinierte Schätzschema kann jedoch auf diese Weise Daten teilen, was bedeutet, dass zum Erzielen korrekter Zustandsschätzungen weniger Messungen erforderlich sind.
  • Ein weiteres Beispiel für die Zweckmäßigkeit dieser Technik ist die Verwendung von Qualifizierungsdaten. Obwohl in einer realen Anlage zahlreiche Qualifizierungsereignisse nach der Werkzeugwartung oder anderen diskreten Ereignissen durchgeführt werden, ist es möglich, ein Qualifizierungsereignis zur Unterstützung bei der Zustandsschätzung zu verwenden. Wenn eine größere Störung detektiert wird, muss die Beobachterkomponente 134 in der Tat den Fehler den verschiedenen Zuständen zuweisen. Das unverzügliche Durchführen eines Qualifizierungstests an dem betroffenen Werkzeug kann jedoch helfen, die Auswirkung der Störung auf den Controller 130 zu minimieren. Das Qualifizierungsereignis ist eine direkte Messung des einem speziellen Bearbeitungswerkzeug zugeordneten Zustands. Dies zeigt bekanntermaßen, ob der beobachtete Fehler auf ein Werkzeug-Problem oder ein Produkt-Problem zurückzuführen war. Da sich die Kovarianzmatrix merkt, welche Einstellungen nach der Messung des Werkzeugzustands durchgeführt werden, werden beide betroffenen Zustände zu den korrekten Werten bewegt.
  • Die in 7 gezeigte Simulation ist mit der in 6 gezeigten identisch, mit der Ausnahme, dass in diesem Fall eine Werkzeugqualifizierung un verzüglich nach Entdeckung der Störung erzwungen wird. In diesem Fall wird die Störung viel früher zurückgewiesen.
  • Es gibt ferner zahlreiche Fälle, in denen eine Rampe oder eine konstante Drift in dem Prozess auftreten kann. Bei dieser Simulation läuft eines der Werkzeuge zwischen Durchlauf 100 und 400 rampenmäßig hoch. Für den Controller 130 erscheint diese Art von Störung als eine persistente Abweichung von dem Target, selbst wenn die Zustandsschätzungen kontinuierlich aktualisiert werden. Es gab bisher bei sämtlichen Simulationen ein geringes Maß an Drift, aber in diesem Fall ist die Drift viel größer.
  • Gemäß 8 ist der Controller 130 in der Lage, diese Störung in gewissem Maße zu kompensieren. Generell ist diese Störung schwer zurückzuweisen, und die Gesamtleistung des Controller verschlechtert sich bei der Länge der Drift. Controller können speziell abgestimmt sein, um diese Art von Störung durch Vergrößern der Zustandsmatrix zurückzuweisen, so dass die Rampenstörung in dem Modell enthalten ist, dies bewirkt jedoch einen Leistungs-Kompromiss hinsichtlich anderer Arten von Störungen. Dieser spezielle Controller ist viel eher geeignet, sprungartige Störungen zu behandeln. Rampenstörungen, die die Größenordnung der bei der Simulation auftretenden aufweisen, zeigen generell ein größeres Werkzeugproblem an und führen höchstwahrscheinlich zu einer Abschaltung.
  • In einer realen Produktionsumgebung ist es nicht immer möglich, auf Messergebnisse zu warten und erst dann die nächste Produkt-Charge durchlaufen zu lassen. Die Messungen können eine beträchtliche Zeit dauern, da Wafers einzeln aufgenommen werden müssen und normalerweise mehrere für eine Messung vorgesehene Stellen auf jedem Wafer untersucht werden müssen. Es ist wichtig, die Bearbeitungswerkzeuge in Betrieb zu halten, so dass diese so bald wie möglich nach Abarbeitung jeder Charge mit einem neuen Durchlauf beginnen. Somit können die Messungen um mehrere Durchläufe hinter den Bearbeitungsschritten zurückbleiben. Die ist kein einfaches Beispiel für einen zeitverzögerten Prozess, da die Verzögerung nicht konstant ist. Messwerte treffen nach Abschluss der Messungen ein, und der Controller 130 muss diese so bald wie möglich berücksichtigen.
  • Bei dieser Folge von Tests werden die Prozessdatensätze aus früheren Tests wiederverwendet, die Messwerte werden jedoch nicht sofort zu der Beobachterkomponente 134 gesendet. Stattdessen bleiben die Messungen konstant um eine feste Anzahl von Durchläufen hinter der Bearbeitung zurück. Die in 9 dargestellte Simulation weist eine Verzögerung von 10 Durchläufen bei den Messungen auf, und die in 10 gezeigte Simulation weist eine Verzögerung von 30 Durchläufen auf.
  • Bei diesen Tests ist der Controller 130 immer noch in der Lage, die sprungartige Störung zurückzuweisen, das Ansprechen verzögert sich jedoch, da der Fehler erst nach Eintreffen der Messwerte erkannt wird. Im Vergleich zu dem Fall ohne Messverzögerung gibt es viel mehr Durchläufe, bei denen die Targets verfehlt werden, und bei dem Test mit der längeren Verzögerung dauert die Abarbeitung nach der Störung länger. Wie bei einem herkömmlichen Einzel-Eingangs-/Einzel-Ausgangs-Prozess ist der Controller 130 ineffizient, wenn die Messverzögerung zu groß ist.
  • Es ist nicht immer möglich, die zum Steuern jeder Charge bei jedem Bearbeitungsschritt wichtigen Charakteristiken zu messen. Dies ist auf eine Reihe von Faktoren zurückzuführen. Erstens wird durch das Messen von Wafers einer Charge nach einem speziellen Bearbeitungsvorgang die Zeit verlängert, in der sich diese Wafer in der Anlage befinden. Das Erfordernis der akkuraten Charakterisierung muss mit dem Erfordernis abgeglichen werden, Material so schnell wie möglich durch die Linien zu bewegen. Es wird nur soviel Material gemessen, wie zum Erstellen einer repräsentativen Probe erforderlich ist. Ferner bestimmt die Anzahl von Messungen, die in einem vorgegebenen Zeitraum durchgeführt werden müssen, die Anzahl von Messwerkzeugen, die in der Anlage vorhanden sein müssen. Da die Werkzeuge normalerweise sehr teuer sind, stellt dies ebenfalls eine Einschränkung dar.
  • Daher kann es Durchläufe geben, bei denen der Controller 130 die Einstellungen errechnen muss, jedoch niemals eine Rückmeldung von dem Messsystem erhält. In der simulierten Umgebung ist die Auswirkung dieser Situation messbar, da der Simulationstreiber 136 immer ermitteln kann, um was es sich bei den fehlenden Messwerten handelt, und diese der Kurve des Controller-Ausgangs hinzufügen kann. Bei diesen Simulationen wird der oben beschriebene Fall der sprungartigen Störung angewendet, der Controller 130 empfängt jedoch nur ein Drittel der Messwerte.
  • 11 zeigt, wie der Ausgang dem Controller 130 erscheint, während 12 die realen Ausgänge zeigt, einschließlich der Chargen, die der Controller 130 nicht zu sehen bekam. Die für den Controller 130 sichtbaren Messwerte stehen im Vergleich zu dem in 6 dargestellten Fall der vollständigen Messungen recht gut da. Viele der keiner Messung unterzogenen Chargen waren jedoch zum Zeitpunkt der sprungartigen Störung von dem Target entfernt. Die Tatsache, dass die grafische Darstellung drei Spitzen aufweist, ist rein zufällig und steht nicht mit der Tatsache in Beziehung, dass einer von drei Messwerten verwendet wurde. In diesem speziellen Fall war der dritte von der Störung beeinflusste Durchlauf der erste, bei dem eine Messung durchgeführt wurde. 13 zeigt den gleichen Fall wie das Szenario aus 11 und 12, wobei jedoch verschiedene Messwerte herausgenommen worden sind (d.h. ein anderes Drittel der Messwerte wurde von dem Controller 130 nicht empfangen). Gemäß 13 verändert sich die Gesamtleistung des Controller 130, wenn verschiedene Messwerte herausgenommen werden.
  • Je nach Prozessbedingungen können unterschiedliche Variablen leichter oder schwerer zu beobachten sein. Im folgenden Abschnitt lief eine Reihe von Tests mit im Wesentlichen gleichem Aufbau wie bei den früheren Tests ab, jedoch mit anderen Prozessregeln und -bedingungen. Es wird bei diesen Tests versucht, dem Prozessablauf realistische Beschränkungen aufzuerlegen. Untersuchte Variablen umfassen Anlagengröße, Produktpriorisierung und Betriebsvorschriften.
  • Reale Produktionseinrichtungen weisen eine große Anzahl von Werkzeugen und Produkten auf. Werte im Bereich von 20 Werkzeugen und 50 Produkten sind angemessene Werte für einen Prozessbereich. Die Anzahl von Produkten kann sehr groß werden, da jeder Prozessbereich Chargen an zahlreichen unterschiedlichen Stellen in dem Prozessablauf aufweist. Jede auf einem vorgegebenen Produkt auszubildende Schicht kann sich hinsichtlich des Zustandsschätzalgorithmus so unterschiedlich verhalten wie ein unterschiedliches Produkt. Die hier ablaufende Simulation umfasst 10 Werkzeuge und 50 Produkte. Das Ansprechen des Controller 130 in diesem größeren System auf eine sprungartige Störung ist in 14 dargestellt.
  • Die grafische Darstellung aus 14 ist der grafischen Darstellung für ein in 6 gezeigtes 10 × 10-System im Wesentlichen gleich. Der Controller 130 ist in der Lage, schnell den fehlerhaften Zustand zu identifizieren und die Störung zurückzuweisen. Dieses Ergebnis ist wichtig, da es die Fähigkeit der Zustandsschätzroutine zum Vergrößern auf viel größere Systeme zeigt.
  • Eine Technik zum Behandeln der Probleme, die in Zusammenhang mit der großen Anzahl von Produkten und Werkzeugen auftreten, liegt darin, spezifische Produkte so lange wie möglich vor dem Umschalten auf spezifischen Werkzeugen laufen zu lassen. Diese Technik wird allgemein als Zweckbestimmung des Werkzeugs bezeichnet und ist ziemlich weit verbreitet. Wenn mehr Werkzeuge als Produkte vorhanden sind, verringert sich das Steuerproblem von einem großen Problem mit mehreren Variablen zu einfacheren Problemen mit einer Anzahl von Einzel-Variablen. Bei jeder Werkzeug-Produkt-Kombination braucht nur der kombinierte Zustand verfolgt zu werden, und es werden keine Informationen zwischen den Kontexten aufgeteilt. Normalerweise sind mehr Produkte als Werkzeuge vorhanden, so dass Werkzeuge für lange Durchläufe spezieller Produkte zwischen den Umschaltungen zweckbestimmt sind.
  • Die Zweckbestimmung von Werkzeugen stellt jedoch einen Kompromiss dar. Ein Werkzeug-Zweckbestimmungsschema reduziert die Flexibilität durch Beschränken der potentiellen Werkzeuge, auf denen eine vorgegebene Charge laufen kann. Wenn der Durchlauf eines speziellen Produkts ein Problem darstellt, kann die Zweckbestimmung von Werkzeugen inakzeptable Verzögerungen verursachen. Ferner tritt ein Problem auf, wenn ein Werkzeug (selbst vorübergehend) außer Betrieb genommen werden muss. Die Produkte, die auf dem speziellen Werkzeug laufen, müssen zu anderen Werkzeugen transportiert werden, und es müssen Versuche durchgeführt werden, um die geeigneten Bearbeitungseinstellungen für die neue Kombination herauszufinden.
  • Das hier beschriebene Parameterschätzschema wird durch die Zweckbestimmung der Werkzeuge beeinflusst, da die Zweckbestimmung bewirkt, dass eine bestimmte Kombination von Werkzeug- und Produktzuständen viel gängiger ist als andere. Bekanntermaßen wird es, wenn ein vorgegebenes Produkt immer auf demselben Werkzeug läuft, schwieriger, zwischen Fehlern in den Zustandsschätzungen für dieses Werkzeug und Produkt zu unterscheiden. Bei den nächsten beiden beschriebenen Simulationen werden die oben verwendeten 10 Werkzeug- und 50 Produktschritt-Veränderungsdatensätze genutzt, jedoch das Maß verändert, in dem die Zweckbestimmung durchgeführt wird.
  • 15 zeigt das Ansprechen, wenn der Controller 130 eines Prozesses mit 10 Werkzeugen und 50 Produkten auf eine unerwartete sprungartige Störung bei Durchlauf 100 anspricht. Bei der Simulation werden die kurzen kontinuierlichen Durchläufe zweckbestimmter Werkzeuge durch Umschalten auf ein anderes Werkzeug nur während 25% der Zeit unterstützt. 16 zeigt den Fall, in dem eine längere Dauer der Zweckbestimmung des Werkzeugs (d.h. Umschaltung nur während 10% der Zeit) unterstützt wird.
  • Die Ergebnisse der in 15 und 16 dargestellten Simulationen weisen zahlreiche Spitzen in dem Steuerausgang auf, und die Spitze bei den längsten zweckbestimmten Durchläufen ist viel drastischer. Jede Spitze wird durch eine Umschaltung auf eine andere Werkzeug-/Produktkombination hervorgerufen. Dabei wird die stufenartige Störung viel schneller zurückgewiesen als in vorhergehenden Fällen. Ferner sei angemerkt, dass zwischen den Spitzen der Rauschpegel niedriger ist als bei den vorhergehenden Simulationen. Idealerweise würde der Controller 130 die ganze Zeit über diesen reduzierten Rauschpegel erreichen, dies ist jedoch Teil des unvermeidlichen Kompromisses. Wie nachstehend genauer erläutert, ist das System, wie bei diesen Tests definiert, nicht beobachtbar, wenn eine Zweckbestimmung wirksam ist. Bei einem zweckbestimmten Durchlauf handelt es sich bei den durchgeführten Messungen um eine Kombination aus einem Werkzeugzustand und einem Produktzustand. Der Controller 130 muss einen oder beide einstellen, sobald Ausgangsfehler detektiert werden, und er hat keine Möglichkeit festzustellen, welcher wirklich fehlerhaft ist. Wenn der Zeitpunkt der Umschaltung gekommen ist, besteht eine hohe Wahrscheinlichkeit, dass mindestens eine Zustandsschätzung einen signifikanten Fehler enthält. Daher ist die Zweckbestimmung von Werkzeugen ein Kompromiss, bei dem kurzzeitige Verstärkungen bei einer größeren Unsicherheit bei der unvermeidlichen Umschaltung akzeptabel sind.
  • Bei dem nächsten Szenario wird ein typischer Produktionsfall getestet, bei dem ein spezielles Produkt viel häufiger auftritt als andere. Das Ziel dieses Szenarios liegt darin, darzustellen, dass die Nebenprodukte bei den langen Durchläufen des Hauptprodukts nicht "vergessen" sind. Ferner sollte das Hauptprodukt durch das Zurückschalten von den Nebenprodukten nicht beeinträchtigt werden. Bei dieser Simulation mit 10 Werkzeugen und 10 Produkten betrifft über die Hälfte der Durchläufe ein einzelnes Produkt. Die anderen neun Produkte sind gleichmäßig auf die anderen Durchläufe verteilt. Wie bei den vorhergehenden Durchläufen beeinflusst eine stufenartige Störung eines der Werkzeuge bei Durchlauf 100. Gemäß 17 handhabt der Controller 130 dieses Szenario auf effiziente Weise.
  • Vom Standpunkt der Robustheit und Stabilität aus betrachtet, müssen zwei Hauptaspekte berücksichtigt werden. Herkömmlicherweise muss sichergestellt sein, dass die Steuervorgänge und Zustandsaktualisierungen nicht so aggressiv sind, dass sie derart auf Rauschen oder veraltete Messwerte ansprechen, dass der Prozess instabil wird. Diese Analyse hängt in starkem Maße von der speziellen gewählten Steuerfunktion ab und davon, wie gut das Modell den wahren Prozess repräsentiert. Da die Produktionsanwendung eine sehr aggressive Steuerfunktion erforderlich macht, konzentriert sich diese Beschreibung auf die Stabilität der Zustandsschätzung selbst und darauf, wie gut die wahren Zustände verfolgt werden.
  • Bei einem herkömmlichen zeitinvarianten Prozess, bei dem die gleichen Messungen bei jedem Zeitschritt durchgeführt werden, erreicht die bei einem Kalman-Schätzschema verwendete Fehler-Kovarianzmatrix schließlich einen Beharrungszustand. In diesem Beharrungszustand gleichen die Vergrößerungen der Unsicherheit aufgrund prozessinhärenten Rauschens die Verringerungen der Unsicherheit aufgrund der Messungen exakt aus. Solange das Modell der Unsicherheit in dem Prozess relativ akkurat ist, liefern die Diagonal-Terme aus der Kovarianzmatrix Stabilzustandswerte für die Unsicherheiten in jeder Zustandsschätzung. Das bedeutet, dass mit Ausnahme von unerwarteten Prozessstörungen die Unsicherheiten in den gesteuerten Prozessausgängen ebenfalls bekannt sind. Eine korrekte Prozess-Charakterisierung ist hierbei wichtig, da diese Ergebnisse nur aussagekräftig sind, wenn das inhärente Prozessrauschen verstanden wird.
  • Wenn der Kalman-Zustandsschätzer in einem Prozess verwendet wird, bei dem die Ausgangsmatrix variiert, kann die Fehler-Kovarianzmatrix keinen Beharrungszustand erreichen. Jedes Mal, wenn sich die Ausgangsmatrix verändert, verändern sich relative Unsicherheiten zwischen unterschiedlichen Zustandsschätzungen. Obwohl ein Beharrungszustand nicht erreicht werden kann, ist es immer noch wichtig, dass die Unsicherheit in den Parameterschätzungen eingegrenzt werden kann. Dadurch kann die Unsicherheit in den gesteuerten Prozessausgängen ebenfalls eingegrenzt bleiben. Es ist offensichtlich, dass genügend Messungen durchgeführt werden müssen, um sicherzustellen, dass die Unsicherheit der Parameterschätzung auf einem akzeptablen Niveau bleibt. Im nächsten Teil der Beschreibung wird genauer erläutert, wie sich die Unsicherheit bei unterschiedlichen Arten von Bearbeitungsbedingungen und Messungen verändert.
  • Der Systemparameterschätzteil eines adaptiven Steuerverfahrens umfasst ein geschlossenes Regelschema. Die Identifizierung eines geschlossenen Systems kann schwierig sein, da der Controller 130 das scheinbare Eingangs-Ausgangs-Verhalten des Prozesses signifikant verändern kann. Wenn der Controller 130 ordnungsgemäß arbeitet, läuft der Prozess mit sehr geringen Schwankungen nahe dem Target ab. In diesem Fall ist die Dynamik des Systems schwer zu beobachten.
  • Eine übliche Vorgehensweise bei der Identifizierung eines geschlossenen Regelsystems ist die Verwendung einer persistenten Ansteuerungsbeschränkung. Generell soll dabei sichergestellt werden, dass die Prozessbedingungen in ausreichendem Maße variiert werden, um sämtliche Moden in der gewählten Modellform anzusteuern. Wenn der Controller 130 einen Prozess bei dem Target störungsfrei ablaufen lässt, gibt es nur eine sehr geringe Bewegung bei den Prozesszuständen und ist die Dynamik des Systems schwer (oder manchmal unmöglich) zu beobachten.
  • Durch persistente Ansteuerung werden kleine Störungen in die Stellgrößen eingekoppelt, so dass bei kleinen Schwankungen um die Prozess-Targets die Dynamik sichtbar wird. Es kann ferner möglich sein, die Prozess eingänge auf die gleiche Weise zu betrachten wie ein geplantes Experiment. Beim Planen eines Experiments zum Schätzen von Modellparametern werden Eingangspunkte gewählt, die versuchen, alle möglichen Moden der Modellform zu untersuchen. Wenn der Prozess immer mit Eingängen arbeiten soll, die denen aus dem Experiment gleichen, sollte es möglich sein, nachzuweisen, dass dies zu den bestmöglichen Schätzungen der Modellparameter führt.
  • Es ist nicht einfach, Standardtechniken zur persistenten Ansteuerung auf viele Prozesssysteme und -modelle anzuwenden, die in einer Chargen-Bearbeitungsumgebung gängig sind. In vielen Fällen wird die zu schätzende Zustandsvariable nicht direkt von den üblichen gewählten Eingangsvariablen beeinflusst. Ein gängiges Beispiels ist ein zeitgesteuerter Prozess, bei dem der zu schätzende Zustand eine Rate ist und die Bearbeitungszeit manipuliert ist. Aufgrund von Reaktorverschmutzung oder Verschlechterung von Verbrauchsmaterialien kann die gewählte Bearbeitungszeit tatsächlich eine Auswirkung auf die Bearbeitungsrate für künftige Durchläufe haben. Die Zeit müsste jedoch gut außerhalb des Standard-Betriebsbereichs eingestellt werden, damit die Ratendifferenzen erkennbar werden.
  • Es gibt Prozesse, bei denen Standardtechniken zur persistenten Ansteuerung angewendet werden können, bei zahlreichen Prozessen muss jedoch eine etwas andere Vorgehensweise angewendet werden. Aufgrund der großen Bedeutung, die jeder ihre Targets erreichenden Charge zugemessen wird, wird eine Technik zum Wählen von Zeiten zum Ansteuern des Prozesses untersucht, wobei dieser die meiste Zeit ungestört bei dem Target abläuft.
  • Es muss erkannt werden, dass nicht sämtliche in einer Produktionsumgebung erfassten Daten gleich sind. Einige Daten sind informativer, da die Qualität von Daten davon abhängt, was gemessen wird und unter welchen Bedingungen die Messungen durchgeführt werden. Der Informationsgehalt von Daten hängt davon ab, was der Beobachter aus den Daten erfahren möchte. Beispielsweise zeigen wiederholte Temperaturmessungen bei einem vorgegebenen Druck eindeutig, wie hoch die Temperatur ist, sie zeigen jedoch nicht an, wie hoch die Temperatur bei einem anderen Druck wäre.
  • Anhand einer gewählten Modellform können unterschiedliche Eingangssignale unterschiedliche Moden und Frequenzbereiche anzeigen. Wie im nächsten Abschnitt erläutert, ist es erforderlich, zum ordnungsgemäßen Steuern eines Prozesses die richtigen Informationen zur richtigen Zeit zur Hand zu haben. Nur bei Verständnis des betrachteten Prozesses weiß man genau, welche Informationen benötigt werden.
  • Standardtests hinsichtlich Bedingungen für die Beobachtbarkeit können zum Vergleichen unterschiedlicher Strategien zum Anordnen von Sensoren unter dem Aspekt der Informationen, die sie liefern können, angewendet werden. Selbst wenn ein System beobachtbar ist, gibt es unterschiedliche Grade von Einfachheit, mit der Parameter geschätzt werden können. Die Konditionszahl der Beobachtbarkeitsmatrix kann Einblick in diese Auswirkungen bieten. Techniken zum Testen der Beobachtbarkeit werden hier zum Vergleichen der Schätzmöglichkeit unter unterschiedlichen Betriebsbedingungen angewendet.
  • Ein einfaches Beispiels zeigt die Bedeutung von guten Informationen, wenn eine Identifizierung mit geschlossenem Regelkreis in Zusammenhang mit der Prozesssteuerung durchgeführt wird. Man betrachte einen einfachen Prozess, bei dem der Ausgang konstant bleibt, sofern kein Eingangssignal angelegt wird. Das Ziel ist ein schnelles Ansprechen auf Target-Veränderungen, die auf den Eingang wirkende Verstärkung schwankt jedoch auf unvorhersehbare Weise.
  • Die Gleichung yk+1 = f(yk, bk, uk) = yk + bkuk, (88) bei der bk die unbekannte Verstärkung (wirksam zum Zeitpunkt k) ist und uk das angelegte Eingangssignal ist, beschreibt den Prozess.
  • Da b ein unbekannter Parameter ist, muss dieser als zusätzlicher Zustand zu Schätzzwecken hinzugefügt werden. Ein Standard-Kalman-Schätzschema kann durch Linearisieren des Systems um den aktuellen Betriebspunkt herum angewendet werden. Dies erfolgt wie durch die nachstehenden Gleichungen dargestellt:
  • Figure 00720001
  • Es sei darauf hingewiesen dass
    Figure 00720002
    Bei diesem System wird die Beobachtbarkeitstestmatrix durch folgende Gleichung angegeben
  • Figure 00720003
  • Daher ist das System nur beobachtbar, wenn uk nicht Null ist. Dies ist wichtig, da bei dem Beharrungszustands-Betriebspunkt u Null ist. Der unbekannte Parameter b kann nur identifiziert werden, wenn u von Null ferngehalten wird, was durch eine Beschränkung der persistenten Erregung an dem Controller erfüllt werden würde. Dieses einfache Beispiel zeigt, wie die Bedingung einer persistenten Erregung mit einer Beobachtungsbedingung in Beziehung stehen kann.
  • Generell ergeben sich unvorhersagbare Ergebnisse, wenn es dem Zustandsschätzer ermöglicht wird, an dem unbeobachtbaren Punkt zu arbeiten. Es ist jedoch erforderlich, eine Steuerung mit Rückführung durchzuführen, falls eine Störung auftritt. Ein Kalman-Schätzschema hält die Schätzung in langsamer Bewegung, da die Schätzungen zur Erläuterung der Messungen nur soweit wie nötig bewegt werden.
  • Bei den folgenden Simulationen lief der oben beschriebene Prozess unter unterschiedlichen Erregungsbedingungen ab. Bei der ersten gab es keine Erregung. Beim zweiten Durchlauf wurde eine Beschränkung der persistenten Erregung auferlegt, und beim dritten Durchlauf erfolgte eine Erregung nur über einen kleinen Teil der Zeit. In sämtlichen Fällen wurde von der Steuerfunktionskomponente 132 eine Anlagen-Inversion angewendet und wurde ein Kalman-Zustandsschätzer für die Beobachterkomponente 134 verwendet. Im Verlauf der Simulation verläuft der wahre Wert der Verstärkung b rampenförmig, wie in 18 dargestellt. Da die Anlagen-Inversion als Steuerfunktion angewendet wird, sind Fehler in einer Zustandsschätzung sofort als Fehler in dem Steuerausgang sichtbar.
  • Bei der ersten, in 19 gezeigten Simulation wird das Eingangssignal erst angelegt, wenn sich das Target verändert. Da sich die Verstärkung verändert hat, besteht eine signifikante Abweichung vom Target beim ersten Zeitschritt, bei dem das neue Target wirksam ist. Beim Großteil der Simulation ist der Controller 130 nach Informationen ausgehungert, da es keine Möglichkeit gibt, die unbekannte Verstärkung zu beobachten.
  • Bei der zweiten, in 20 gezeigten Simulation wird eine Beschränkung der persistenten Erregung angelegt. Hier variiert der Eingang bei jedem Zeitschritt in ausreichendem Maße, so dass die Verstärkung geschätzt werden kann. Wenn sich das Target verändert, führt der Controller 130 die Umschaltung mit geringerem Fehler durch als im vorhergehenden Fall. Es sind jedoch bei der gesamten Simulation Störeinflüsse eingebracht worden, um die Verstärkung offensichtlich zu machen.
  • Der Rang der Beobachtbarkeits-Test-Matrix wird normalerweise zum Testen der Beobachtbarkeit angewendet. Wenn diese Matrix eine Full-Rank-Matrix ist, ist ihre Konditionszahl begrenzt. Bei der ersten Simulation ging die Konditionszahl der Beobachtbarkeits-Test-Matrix ins Unendliche, da die Matrix rangdefizient geworden ist. Im Gegensatz dazu bleibt bei persistenter Erregung die Konditionszahl innerhalb vernünftiger Grenzen. In 21 wird die Konditionszahl der Beobachtbarkeits-Test-Matrix für die zweite Simulation verfolgt. Eine weitere sinnvolle Information ist die Spur (Summe der Diagonalelemente) der in der Zustandsschätzroutine verwendeten Fehler-Kovarianzmatrix. Die Spur bildet ein Gesamtmaß der in der Kovarianzmatrix evidenten Unsicherheit. 22 und 23 zeigen diesen Wert für die erste bzw. zweite Simulation.
  • Bei der dritten, in 24 gezeigten Simulation wird angenommen, dass vorzeitig bekannt ist, wann sich das Target verändern wird. In diesem Fall muss der Prozess erst gestört werden, wenn die Informationen über die Verstärkung benötigt werden. Hier läuft alles glatt, bis die Target-Änderung bevorsteht. Die Target-Änderung erfolgt immer noch auf korrekt Weise, und der Prozess wird erst gestört, wenn die Informationen benötigt werden.
  • Der Fall, in dem der Prozess angeregt wird, die Parameter zu erlernen, steht im Widerspruch zu dem, was ein Controller, der den Wert eines reinen mittleren quadratischen Fehlers anwendet, zu ermitteln versuchen würde. Bei der Halbleiterherstellung bietet sich eine andere Art der Leistungsfunktion hinsichtlich des Problems an. Generell weisen die in der Herstellung befindlichen Vorrichtungen bei dem meisten Inline-Targets Toleranzen auf. Solange der Messwert sich in sinnvoller Nähe des Target-Werts befindet, arbeitet die Vorrichtung korrekt. Innerhalb des Toleranzbereichs gibt es nur einen sehr geringen wahrnehmbaren Unterschied in den endgültigen Ausgangs-Charakte ristiken der Vorrichtung. Es besteht jedoch ein sehr steiler Abfall, hinter dem die Vorrichtung einfach nicht mehr arbeitet. Ein Beispiel dafür ist die Ausrichtung von Prozessschichten zwecks Herstellung eines elektrischen Kontakts. Es kann eine Leistungsfunktion bestehen, die dieses Verhalten imitiert, indem sie sämtliche Datenpunkte innerhalb des Toleranzbereichs als gut und sämtliche Punkte außerhalb des Toleranzbereichs als schlecht behandelt. Diese Art der Leistungs-Metrik ist gut an ein Beobachtungsschema mit persistenter Erregung angepasst, da die Erregung ein Erlernen induzieren kann, wobei sie sicher innerhalb des Toleranzbereichs bleibt.
  • Die Anzahl von Datenpunkten ist nicht der einzige Faktor, der bei der Feststellung der Effizienz des Controller 130 von Bedeutung ist. Jede der vorhergehenden Simulationen wies die gleiche Anzahl von Messungen der gleichen Ausgangsvariablen auf. Die Reihenfolge der Daten und der Istwerte beeinflusst den Informationsgehalt. Die Bedingungen, unter denen die Daten ermittelt werden, sind ebenfalls von Bedeutung.
  • Es ist nicht erforderlich, zu jeder Zeit perfekte Informationen zur Verfügung zu haben. Bei der zweiten Simulation war der korrekte Wert der Prozessverstärkung die ganze Zeit bekannt. Bei der dritten Simulation war es jedoch möglich, den Prozess bei bekannter Verstärkung nur zu bestimmten Zeiten zu steuern.
  • Bei einem echten Prozess ist es häufig möglich, von der anstehenden Target-Änderung zu wissen, bevor diese eintritt. Der Prozess unterliegt jedoch auch unbekannten Störungen. In beiden Fällen ist es wichtig, ausreichend Informationen zur Verfügung zu haben, um den Prozess schnell auf den Target-Wert zu treiben. Somit besteht eindeutig ein Gleichgewicht zwischen den Erlernen von Allem, was es über den Prozess zu wissen gibt, und dem Ablauf des Prozesses ohne Störeinflüsse.
  • Bei den vorstehenden Beispielen waren sowohl die Spur der Fehler-Kovarianzmatrix als auch die Konditionszahl der Beobachtbarkeits-Test-Matrix als Indikatoren der Menge an verfügbaren Prozessinformationen dargestellt. Diese Werte können zum Erzeugen von Erregungsbeschränkungen verwendet werden, die der Controller 130 anwenden kann, um den Prozess beobachtbar zu halten.
  • 31 zeigt ein vereinfachtes Ablaufdiagramm eines Verfahrens zum Einplanen von Aktivitäten in einem Herstellsystem. In Block 300 sind mehrere in Zusammenhang mit dem Herstellsystem aufgetretene beobachtete Zustände. definiert. In Block 310 werden Zustandsschätzungen für die beobachteten Zustände erzeugt. In Block 320 werden Unsicherheitswerte für die Zustandsschätzungen erzeugt. In Block 330 sind mehrere Kandidaten-Pläne zum Durchführen von Aktivitäten in dem Herstellsystem aufgezeigt. In Block 340 sind Veränderungen der Unsicherheitswerte anhand der Kandidaten-Pläne vorhergesagt. In Block 350 wird einer der Kandidaten-Pläne anhand der vorhergesagten Veränderungen der Unsicherheitswerte ausgewählt.
  • Die Beschreibung konzentriert sich nun auf das Anwenden der oben aufgezeigten Informationen zum Treffen von Planungsentscheidungen für das Herstellsystem 10. Bei der Herstellung diskreter Teile ist es unbedingt erforderlich, dass sich jede Charge auf dem Target befindet und absichtlichen Störungen des Prozesses entgegengetreten wird. Ferner wird üblicherweise von einem Prozessmodel ausgegangen, bei dem die Prozesseingänge für einen Durchlauf nachfolgende Durchläufe nicht beeinflussen. Daher ist es vorteilhaft, das Identifikationsproblem auf andere Weise zu betrachten. Bei dieser Technik sind nicht herkömmliche Stellgrößen so dargestellt, dass sie den Prozess auf im Wesentlichen gleiche Weise beeinflussen wie eine standardmäßige persistente Erregung.
  • In dem vorhergehenden Abschnitt ist dargestellt worden, dass die Verfügbarkeit der richtigen Informationen zum richtigen Zeitpunkt wichtig ist. In jedem Fall war die gleiche Anzahl von Datenpunkten vorhanden, die Ergebnisse waren jedoch sehr unterschiedlich. Es ist eindeutig sinnvoll, definieren zu können, was mit den richtigen Daten gemeint ist, um diese Ergebnisse auf sinnvollere Situationen zu extrapolieren.
  • In diesem Abschnitt wird versucht, Wege zu finden, das Konzept der Verfügbarkeit der richtigen Informationen zum richtigen Zeitpunkt zu quantifizieren. Beispielsweise ist bekannt, dass sämtliche geeigneten Informationen zur Verfügung stehen sollten, bevor versucht wird, ein wichtiges Produkt einen Prozess durchlaufen zu lassen. Das konsistente und objektive Anwenden der Theorie ist jedoch hilfreich, um zu erfahren, welche Informationen wichtig sind und wie diese verwendet werden sollen. Wie nachstehend genauer erläutert, wird eine mathematische Zielfunktion erzeugt, die den Erwartungswert des Ausgangs hinsichtlich der zu treffenden Entscheidung präzise ausdrückt. Durch Vergleichen des Werts einer angemessen erstellten Zielfunktion für unterschiedlich gewählte Aktivitäten ist es möglich, zu einer Lösung zu gelangen, die den oben beschriebenen Erfordernissen genügt.
  • Die Kovarianzmatrix, die zur Verfügung steht, wenn ein Kalman-Schätzschema angewendet wird, kann einen nützlichen Einblick bieten. Die Diagonalelemente dieser Matrix messen das aktuelle Maß an Unsicherheit in ihren entsprechenden Zustandsschätzungen. Die Entwicklung der Kovarianz wird vollständig durch die Bearbeitungsreihenfolge und die gewählten Messungen bestimmt. Wenn das System zu dem nächsten Zeitschritt übergeht, bewirken die in den Zuständen enthaltenen Unsicherheiten ein Aktualisieren der Fehler-Kovarianzmatrix gemäß der Gleichung Pnew = APAT + GQGT. (92)
  • Wenn eine Messung durchgeführt wird (unter Verwendung eines bestimmten Cr und Rr), wird die Fehler-Kovarianz entsprechend der folgenden Gleichung aktualisiert Pnew = (P–1 old + CTR–1C)–1 (93)
  • Diese Gleichungen hängen nicht von den tatsächlichen gemessenen Zahlenwerten oder dem aktuellen Zustand des Prozesse ab. Sie definieren einfach die Auswirkungen der Messung unterschiedlicher Größen angesichts einiger Annahmen über die Struktur des zugrundeliegenden Systems.
  • Das Verfolgen der Terme der Kovarianzmatrix ist eine komplizierte Aufgabe. Der Grund dafür ist, dass alles, was über die Beziehungen zwischen unterschiedlichen Variablen bekannt ist, berücksichtigt wird. Das Durchführen einer Messung einer Variablen hat einen Einfluss darauf, wie künftige Messungen anderer, damit in Beziehung stehender Variablen behandelt werden.
  • An einem sehr einfachen beispielhaften System werden diese Konzepte erläutert. Man betrachte einen nominell stationären Prozess mit zwei Zuständen und zwei Messwerten, wie durch die nachstehenden Gleichungen beschrieben.
  • Figure 00780001
  • Dieses System kann als Beschreibung eines einfachen Prozesses betrachtet werden, bei dem x1 ein messbarer Werkzeugzustand ist, während x2 ein Produktparameter ist, der keinen verfügbaren direkten Messwert aufweist. In jedem Fall ist es wichtig und möglich, beide Parameter identifizieren zu können, und ein direkter Messwert steht nur für einen davon zur Verfügung.
  • Bei jeder der folgenden Reihe von Simulationen wird eine gleiche Anzahl von y1- und y2-Messungen durchgeführt. Bei jeder neuen Simulation wird die Messreihenfolge variiert, um ihre Auswirkung auf die Fehler-Kovarianz festzustellen. Ein Kalman-Filter-basiertes Schema, wie oben beschrieben, wird als Zustandsschätzer verwendet, wobei sämtliche Rausch- und Varianzschätzungen einheitlich beginnen. Die Varianz-Terme für beide Zustände sind für jeden Fall eingetragen. Die effektiven Mess-Abbildungsmatrizen für die beiden Messungen werden durch folgende Gleichungen beschrieben.
  • Figure 00790001
  • Bei der ersten, in 25 gezeigten Simulation werden sämtliche y2-Messungen zuerst durchgeführt. Da die Messung von beiden Zuständen beeinflusst wird und es keine Informationen über die Relativwerte der Zustände gibt, steigt die Unsicherheit beider Zustände während der ersten Hälfte der Simulation stetig an. Während der zweiten Hälfte werden die y1-Messungen durchgeführt. Da es sich hierbei um eine direkte Messung von x1 handelt, sinkt die diesem Zustand zugeordnete Unsicherheit schnell ab.
  • Da es jedoch keine Informationen über x2 gibt, steigt die Unsicherheit dieses Werts schnell an. Es ist wichtig, darauf hinzuweisen, dass der Punkt auf dem Diagram, der die niedrigste Gesamt-Unsicherheit aufweist, der unmittelbar nach der Hälfte des Punkts ablaufende Durchlauf ist. Hier wird das erste Bit von Informationen über den wahren Wert von x1 erzeugt und enthält die Kovarianzmatrix bereits die Informationen darüber, wie x1 und x2 miteinander in Beziehung stehen.
  • Bei der zweiten, in 26 gezeigten Simulation werden sämtliche y1-Messungen zuerst durchgeführt. Die Ergebnisse sind denen aus dem vorhergehenden Fall im Wesentlichen gleich. Bei der Messung von y1 bleibt die Unsicherheit in der Schätzung von x1 niedrig, während die von x2 schnell ansteigt. Bei der Messung von y2 steigt die Unsicherheit in beiden Schätzungen an. Auch hier befindet sich der Punkt mit der niedrigsten Gesamt-Unsicherheit an der Umschaltung. Wenn nur eine Messung durchgeführt wird, steigt die Gesamt-Unsicherheit immer weiter an, bis eine komplementäre Messung durchgeführt wird.
  • Bei der dritten, in 27 gezeigten Simulation werden einige der Ergebnisse der ersten beiden Simulationen verwendet. Hier alternieren die Messwerte zwischen y1 und y2. Das ständige gemeinsame Nutzen von Informationen ermöglicht es, dass die Unsicherheit in beiden Parameterschätzungen niedrig bleibt. Da die Zustandsübergangsmatrix für den Prozess die Identitätsmatrix ist, wird die Beobachtbarkeits-Test-Matrix durch folgende Gleichung angegeben
  • Figure 00800001
  • Bei diesem System ist ein Rang von 2 erforderlich, und diese Matrix erfüllt diese Einschränkung. Wenn jedoch keiner der beiden Messwerte zur Verfügung stünde, wäre das System nicht beobachtbar. Deshalb steigt die Unsicherheit nur an, wenn einer der Messwerte über längere Zeiträume verwendet wird. Tabelle 6 zeigt eine Zusammenfassung der Ergebnisse hinsichtlich der Durchschnittswerte der Varianzen.
  • Tabelle 6 – Ergebnisse der Abhängigkeit von der Bearbeitungsreihenfolge
    Figure 00800002
  • In einer typischen Fertigungseinrichtung gibt es mehr Produkte und viel weniger Qualifizierungsdurchläufe. Das Konzept, gemäß dem die Bearbeitungs- und Messreihenfolge die Qualität der Parameterschätzung beeinflusst, verändert sich jedoch nicht. Die Tests zeigen, dass durch lange Strecken einer speziellen Art von Durchlauf die Gesamteffizienz eines Schätzers reduziert wird, der versucht, sämtliche Prozessparameter zu identifizieren. Wenn es mehrere Variationsquellen gibt, wird es durch das Durchführen nur eines einzelnen Durchlauftyps nicht ermöglicht, dass ein Schätzschema zwischen unterschiedlichen Fehlerquellen unterscheidet. Die Folge von Tests bildet eine theoretische Basis für das Konzept, dass häufige Produkt- und Werkzeugumschaltungen vom Standpunkt einer Parameterschätzung aus betrachtet besser sind.
  • Die oben beschriebenen Simulationen legen nahe, dass es möglich ist, die Menge an Informationen in einem Datensatz zu quantifizieren. Es ist offensichtlich, dass die Qualität der erhaltenen Informationen etwas vollständig anderes ist als die Quantität von Daten. Der Informationswert hängt in hohem Maße von den Eigenschaften des betrachteten Systems ab. Bei einem vollständig statischen störungsfreien System sind neue Informationen nicht so kritisch. Wenn die Systemeigenschaften festgestellt sind, dienen neue Informationen nur als Bestätigung. In einem dynamischen System, in dem möglicherweise Störungen auftreten, werden jedoch neue Informationen immer benötigt. Wenn mehr über das System bekannt ist, sind Störungen schneller identifizierbar.
  • Die Fehler-Kovarianzmatrix ist ein sinnvoller und geeigneter Indikator für den Bedarf an mehr Informationen. Eine korrekte Anfangs-Prozess-Charakterisierung führt zu akkuraten Schätzungen des Maßes an Rauschen in dem System, und durch die Weiterentwicklung der Kovarianzmatrix werden diese Schätzungen festgehalten. Die Weiterentwicklung der Kovarianzmatrix hängt nicht von den Werten der Messdaten ab. Zusammen mit der in das Sys tem eingebauten Systemrausch-Charakterisierung beeinflussen nur die Reihenfolge und Wahl der Messungen die Kovarianzmatrix.
  • Jedes Bearbeitungs- oder Messereignis beeinflusst die Zustandsschätzung x und die Kovarianzmatrix Px auf bekannte Weise. Die Spur (Summe von Diagonalelementen) von Px liefert ein Maß des Gesamtmaßes an Unsicherheit in den Zustandsschätzungen. Mit den vorhergehenden Routinen für das quadratische Mittelwertkriterium wird versucht, die Spur der Fehler-Kovarianzmatrix durch Verändern der Zustandsschätzungen zu minimieren. Es ist nun möglich, Bearbeitungsentscheidungen im Hinblick darauf zu betrachten, wie diese die Spur von Px beeinflussen.
  • In dem folgenden Abschnitt werden einige übliche Bearbeitungsentscheidungen dahingehend überprüft, wie diese mit der Informationsqualität in Beziehung stehen. Statt der Konzentration auf typische Durchlauf-zu-Durchlauf-Prozesseinstellungen, wie z.B. Anleitungs-Sollwerte, behandelt dieser Abschnitt stattdessen Gesamttrends. Die Bedeutung der Bearbeitungsreihenfolge und der Werkzeugauswahl werden hinsichtlich ihrer Auswirkungen auf die über das System zur Verfügung stehenden Informationen untersucht.
  • Einfach ausgedrückt, besteht der endgültige Zweck einer Halbleiterfertigungseinrichtung darin, dass Arbeitsprodukte so schnell wie möglich bei minimalen Kosten erhalten werden. Es ist möglich, mehrere (möglicherweise miteinander in Konflikt stehende) Ziele aufzuzeigen, die mathematisch ausgedrückt werden können. Einige üblicherweise angestrebte Ziele sind nachstehend zusammengefasst:
    • • Maximieren des Durchsatzes (Minimieren der Zeit)
    • • Minimieren der Verwendung von Rohmaterialien
    • • Minimieren der mittleren quadratischen Abweichung von Inline-Targets
    • • Minimieren der Anzahl von großen Ausreißern von Inline-Targets
  • Bekanntermaßen ist es offensichtlich, dass ein Kompromiss zwischen diesen Zielen geschlossen werden muss. In einem Extremfall könnten spezielle Experimente durchgeführt werden, bevor jede Charge von Produktmaterial bei jeder Operations-Einheit verarbeitet wird, so dass sämtliche wichtigen Parameter bekannt sind. Dagegen verschwindet das Material am schnellsten, wenn keine Experimente und keine Messungen an dem Produkt durchgeführt werden. In der Realität verschiebt sich das Gleichgewicht mit sich verändernden betrieblichen Erfordernissen. Ein ideales Steuersystem wäre in der Lage, diese sich verändernden Anforderungen zu verstehen und auf einem sehr hohen Niveau darauf zu reagieren.
  • Eine Anzahl von Bearbeitungsentscheidungen haben eine Auswirkung auf die für einen Zustandsschätzalgorithmus zur Verfügung stehenden Informationen. Einige wenige Schlüsselentscheidungen werden hier mit genauen Angaben darüber beschrieben, wie diese optimiert werden könnten, um die Zustandsschätzung zu unterstützen. Bei einer offensichtlichen Entscheidung wird bestimmt, welche Chargen gemessen werden sollen. Bei vielen Durchlauf-zu-Durchlauf-Steueranwendungen ist es nicht zweckmäßig, sämtliche Parameter zu messen, die zum Steuern jeder Charge wichtig sind. Das Durchführen von Messungen nimmt mögliche Fertigungszeit in Anspruch, und in einigen Fällen werden auch zusätzliche Materialien (wie z.B. Pilot-Wafers) benötigt. Aus diesen Gründen kann ein Durchlauf-zu-Durchlauf-Controller in einer industriellen Umgebung einen reduzierten Satz von Prozessmessungen, mit dem er arbeiten kann, aufweisen. Es ist eindeutig vorteilhaft, einen Satz von Messungen zu wählen, der die meisten Informationen über den Prozess liefert, und dabei wäre eine Gesamtkostenminimierung angemessen.
  • Typischerweise werden regelbasierte Verfahren zum Auswählen von Stichprobenplänen angewendet. Bei diesen Verfahren wird eine Reihe von Kri terien geprüft, um festzustellen, ob eine vorgegebene Charge gemessen wird. Beispielsweise kann spezifiziert sein, die erste Charge zu messen, die nach jedem Wartungsereignis auf jedem Werkzeug läuft, sämtliche Chargen eines bestimmten Produkts zu messen und jede dritte Charge zu messen, die nicht von den vorherigen Regeln abgedeckt ist.
  • Obwohl diese Pläne leicht implementierbar sind, ist es schwer zu verstehen, auf welche Weise diese tatsächlich den Prozess beeinflussen. Die hier beschriebenen Verfahren basieren auf Zielfunktionen. Eine Zielfunktion ist so definiert, dass sie zum Vergleichen eines Plans mit einem anderen und zum Fällen eines Urteils darüber, welcher besser ist, angewendet werden kann.
  • Eine weitere wichtige Entscheidung betrifft die Bearbeitungsreihenfolge selbst. In einer Bearbeitungsumgebung mit Unsicherheiten, in der Störungen auftreten können, werden durch das Verändern der Bearbeitungs-(und Mess-)Reihenfolge die Informationen verändert, die bei der Bearbeitung jeder Charge zur Verfügung stehen. Das Zuweisen von Material, das auf unterschiedlichen Bearbeitungswerkzeugen laufen soll, hat eine große Auswirkung auf die verfügbaren Informationen. Diese Auswirkung wird nachstehend genauer beschrieben.
  • Jede dieser Einplanungsentscheidungen kann hinsichtlich ihrer Auswirkung auf die Zustandsfehler-Kovarianzmatrix analysiert werden. Es ist jedoch sinnvoll, darauf hinzuweisen, dass es auch andere Auswirkungen gibt. Das Verändern der Bearbeitungsreihenfolge oder der Werkzeugzuweisung beeinflusst den Durchsatz, somit ist es hilfreich, nachfolgende Konsequenzen zu berücksichtigen. Die hier angewandte Strategie heißt, zuerst jeder dieser Prozessentscheidungen einzeln zu analysieren. Dann wird ein allgemeinere Formulierung präsentiert, die sich mit den Kombinationen befasst, die bei der praktischen Anwendung auftreten.
  • Bei einem vorgegebenen Bearbeitungsplan (Werkzeugzuweisung und Bearbeitungsreihenfolge) gibt es eine Beschränkung der Gesamtanzahl von Messungen. Die speziellen durchzuführenden Messungen sind frei wählbar, solange die Beschränkung eingehalten wird. In einem Bearbeitungsbereich bildet das gesamte Material, das entweder bearbeitet wird oder auf die Bearbeitung wartet, eine Warteschlange aus möglichen Messungen. Diese Warteschlange bildet den Vorhersagehorizont für einen Auswahlalgorithmus und hat eine angenommene Länge n.
  • Es wird ein Vektor u von Binärvariablen definiert, wobei jedes Element ui einer Charge in der Warteschlange entspricht. Bei diesem Vektor bedeutet eine 1, dass die Charge gemessen wird, während eine 0 bedeutet, dass sie nicht gemessen wird. Bei einer vorgegebenen Wahl des Vektors u kann das Prozessmodell zum Weiterentwickeln der Kovarianzmatrix über den gesamten Vorhersagehorizont verwendet werden, wobei die gesamte Bearbeitung und die gewählten Messungen berücksichtigt werden.
  • fn(u) beziehe sich auf die Summe über sämtliche Zeitschritte in dem Vorhersagehorizont des anhand des Eingangsvektors u berechneten Werts des Leistungsindexes. Der Wert dieser Zielfunktion hängt von der Struktur des zugrundeliegenden Systemmodells und der gewählten Werte der Rauschparameter ab. Ferner können in Abhängigkeit von den zum Zeitpunkt der Lösung der Optimierung aktuellen Werten in der Kovarianzmatrix unterschiedliche Ergebnisse erhalten werden. Dies ist bekannt, da zu unterschiedlichen Zeitpunkten unterschiedliche Messungen in größerem Maße benötigt werden.
  • Nun kann ein Optimierungsproblem zum Identifizieren der korrekten Messungen definiert werden. In einem speziellen Fall, in dem c die Anzahl von in der Warteschlange befindlichen Chargen, die gemessen werden können, bezeichnet, definieren die folgenden Gleichungen das Problem mathematisch: min ufn(u) (99)
    Figure 00860001
    ui∊{0.1} (101)
  • Der Vektor u, der das Optimierungsproblem löst, minimiert die Unsicherheit in den Parameterschätzungen, wobei er gleichzeitig die Einschränkung hinsichtlich der maximalen Anzahl von Messungen einhält.
  • Bei einem vorgegebenen Bearbeitungs- und Stichprobenplan besteht eine gewisse Flexibilität in der Reihenfolge, in der Material bearbeitet wird. Es gibt eine Warteschlange von Material, das darauf wartet, in dem Bereich bearbeitet zu werden, und Chargen können in beliebiger Reihenfolge aus der Warteschlange ausgewählt werden, solange bestimmte Einschränkungen eingehalten werden. Wie oben beschrieben, ist die Fehler-Kovarianzmatrix wegabhängig. Das Verändern der Reihenfolge von Durchläufen kann eine Auswirkung auf die zur Verfügung stehenden Informationen haben, wenn bei jedem Durchlauf eine Bearbeitung durchzuführen ist. So kann auch hier die Fehler-Kovarianzmatrix zum Behandeln eines Optimierungsproblems verwendet werden. Es ist vorbestimmt, welche Chargen gemessen werden und welche ohne Messung durchlaufen.
  • Es wird wieder angenommen, dass die Chargen-Warteschlange eine Länge n aufweist. Ein Vektor u von ganzzahligen Variablen wird definiert, wobei jedes Element ui einer Charge in der Warteschlange entspricht. Bei diesem Vektor bezeichnet der Wert ui jedes Elements i den Zeitschritt, bei dem die Charge durchläuft. Aus diesem Grund muss der Vektor u eingeschränkt sein, um sämtliche Ganzzahlen zwischen 1 und n zu enthalten.
  • Auch hier kann ein Leistungsindex J(P) hinsichtlich einer speziellen Kovarianzmatrix P definiert werden, und zum Zwecke des Auswählens der Bearbeitungsreihenfolge wäre die Spur von P eine sinnvolle Wahl, obwohl die Gewichtung derart eingestellt werden könnte, das einige Parameter wichtiger sind als andere.
  • fn(u) beziehe sich auf die Summe über sämtliche Zeitschritte in dem Vorhersagehorizont des anhand des Eingangsvektors u berechneten Werts des Leistungsindexes. Wie oben, hängt der Wert der Zielfunktion von dem Systemmodell und den Anfangswerten in der P-Matrix ab. Wie in dem vorstehenden Fall kann ein Optimierungsproblem definiert werden, um die korrekte Wahl des Eingangsvektors u festzulegen. min ufn(u) (102) ui∊{0, 1, 2, K, n} (103) ui≠ uj(i ≠ j). (104)
  • Für einen vorgegebenen Satz von zu bearbeitendem Material müssen geeignete Werkzeuge für die Bearbeitung ausgewählt werden. Selbstverständlich gibt es Einschränkungen aufgrund von Kapazitäts- und Durchsatzbelangen. Innerhalb der Grenzen der Einschränkungen ist es jedoch möglich, ein bestimmtes Material für bestimmte Werkzeuge auszuwählen, um mehr über das System zu erfahren. Es gibt eine Anzahl von Heuristiken, die angesichts des Rahmens der Verfolgung einer Parameterunsicherheit hinsichtlich unterschiedlicher Produkte und Werkzeuge ausgedrückt werden können. Angesichts der Tatsache, dass einige Parameter einen größeres Vertrauenswert aufweisen als andere, ist es von einem betrieblichen Standpunkt aus betrachtet sinnvoll, wichtigere oder kritischere Produkte auf Werkzeugen mit zuverlässigeren oder aktuellen Zustandsinformationen laufen zu lassen.
  • Von einem Identifizierungs-Standpunkt aus betrachtet ist es möglich, etwas über ein unbekanntes Werkzeug zu erfahren, indem man ein gut charakterisiertes Produkt auf dem Werkzeug laufen lässt. Umgekehrt kann das Laufenlassen eines neuen Produkts auf einem Werkzeug, das mit einem hohen Maß an Vertrauen behaftet ist, helfen, schnell etwas über das neue Produkt zu erfahren. In diesem Abschnitt wird versucht, diese Regeln objektiver zu definieren.
  • Dieses Problem kann nicht untersucht werden, ohne die Implikationen auf den gesamten Anlagendurchsatz zu berücksichtigen. Werkzeugeinplan-Entscheidungen erfolgen herkömmlicherweise mit dem Ziel der Zeitminimierung. Bei diesem Test werden Durchsatzbelange mit einer einfachen Einschränkung behandelt, generell ist dies jedoch ein anderer Teil eines größeren Optimierungsproblems. Andere Forscher haben die Verwendung der Vorhersagemodell-Steuerformulierung zum Optimieren von Durchsatz und Bestand untersucht.
  • Wie in den vorhergehenden Fällen gibt es eine Warteschlange aus n Chargen, die darauf warten, einen Prozessbereich zu durchlaufen. Bei jeder Charge ist das Produkt bekannt, und es ist vorherbestimmt, ob die Charge einer Messung unterzogen wird oder nicht. Wenn die Bearbeitungswerkzeuge von 1 bis k durchnummeriert sind, kann ein Vektor u aus ganzzahligen Variablen definiert werden, wobei jedes Element ui einer Charge in der Warteschlange entspricht. Bei diesem Vektor bezeichnet der Wert ui jedes Elements i das Werkzeug, auf dem die Charge läuft.
  • Auch hier kann ein Leistungsindex J(P) hinsichtlich einer speziellen Kovarianzmatrix P definiert werden. Zum Festlegen, welche Prozesswerkzeuge arbeiten sollen, kann wieder die Spur von P verwendet werden, und wie oben könnte die Gewichtung derart eingestellt werden, dass einige Parameter wichtiger sind als andere.
  • fn(u) beziehe sich auf die Summe über sämtliche Zeitschritte in dem Vorhersagehorizont des anhand des Eingangsvektors u berechneten Werts des Leistungsindexes. Auch hier hängt der Wert der Zielfunktion von dem Systemmodell und den Anfangswerten in der P-Matrix ab. Wie in dem vorstehenden Fall kann ein Optimierungsproblem definiert werden, um die korrekte Wahl des Eingangsvektors u festzulegen. min ufn(u) (105) ui∊{0, 1, 2, K, k} (106)
  • In diesem Abschnitt wurde gezeigt, dass eine Zustandsschätzung mehr umfasst als die Menge an erfassten Daten. Es wurden Verfahren beschrieben, mit denen versucht wurde, die Informationsmenge in einem Datensatz zu quantifizieren. Diese Verfahren können zum Treffen von Bearbeitungsentscheidungen angewendet werden, die mehr verfügbare Informationen für die Zustandsschätzung zur Folge haben. In der folgenden Beschreibung werden diese letzten Szenarien zu einer kohärenten Strategie zur Datenerfassung zusammengefasst. Bei dieser Strategie wird die auf Unsicherheit basierende Zustandsschätzung durch Lieferung eines beständigen und zuverlässigen Stroms neuer Informationen komplementiert.
  • Die oben beschriebenen Stichproben-Szenarien beinhalten Prozessentscheidungen und deren Auswirkungen auf eine Zustands- und Parameterschätzung. Obwohl jede dieser Situationen einzeln untersuchenswert ist, müssen sie in einer realen Produktionseinrichtung alle gleichzeitig betrachtet werden. Die folgende Beschreibung bezieht sich auf das Erfordernis eines umfassenden Plans für Informationserfassung und Parameterschätzung.
  • Als einleitender Schritt wird zunächst gezeigt, dass Bearbeitungsentscheidungen, wie z.B. Planung und Stichprobenprüfung, getroffen werden können, wobei die Erfordernisse des Zustandsschätzalgorithmus als Führungsgröße verwendet werden können. Aus diesem Grund ist eine Anzahl von Simulationsdurchläufen dargestellt, bei denen die oben beschriebenen Optimierungsprobleme angewandt werden. Bei jedem dieser Testszenarien wer den der Anlagen- und Zustandsschätzalgorithmus auf die gleiche Weise initialisiert. Bei jedem Szenario wird eine andere Bearbeitungsentscheidung untersucht.
  • Um die Anzahl möglicher Lösungen zu begrenzen und die Fälle leicht verständlich zu machen, wird ein System mit drei Prozesswerkzeugen und drei Produkten von dem Simulationstreiber 136 spezifiziert. Wie bei früheren Situationen wird angenommen, dass die einzigen wichtigen Variationsquellen die Differenzen zwischen den Produkten und den Werkzeugen sind. Zufallsrauschen und eine leichte Drift werden bei den Simulationen den Zuständen hinzugefügt. Bei jedem Szenario beginnt der Controller 130 ohne Kenntnis der Systemzustände und arbeitet über 200 Zeitschritte, bis er vollständig ausgeregelt ist. Die nächsten 20 Durchläufe sind Gegenstand des Tests. Bei sämtlichen Tests wird derselbe Satz von Tests wie im Basisfall angewendet. Tabelle 7 zeigt die bei sämtlichen Szenarien angewendete Basiskonfiguration.
  • Tabelle 7 – Zusammenfassung des Prozessentscheidungs-Basisfall-Durchlaufs
    Figure 00900001
  • Figure 00910001
  • Der erste Satz von Tests behandelt das Auswählen eines optimalen Stichprobenplans. Das Ziel des Tests ist das Auswählen der Durchläufe, bei denen Messungen durchgeführt werden, so dass die Unsicherheit in sämtlichen Parameterschätzungen minimiert wird. Dies erfolgt durch Anwenden der in Gleichung 102 definierten Zielfunktion und der dieser zugeordneten Beschränkungen. Das Auswerten der Zielfunktion ist ein nichtlinearer iterativer Prozess. Wenn ein Eingangsvektor u gewählt worden ist, kann das Prozessmodell zum Weiterentwickeln der Kovarianzmatrix in Vorwärtsrichtung über die Zeit angewendet werden.
  • Bei diesem Problem wird durch die Einschränkungen (Gleichungen 103 und 104) der mögliche Lösungsraum vollständig definiert. Im Wesentlichen müssen c Messungen aus den n möglichen gewählt werden. Da die Bearbeitungsreihenfolge festgelegt ist, ist die Reihenfolge, in der die Messungen ausgewählt werden, nicht von Bedeutung, solange sämtliche Messungen ausgewählt sind, bevor die Bearbeitung beginnt. Das bedeutet, dass die Anzahl von möglichen Kandidaten-Plänen, die definiert sein können, wie folgt angegeben wird
  • Figure 00910002
  • Bei insgesamt 20 Durchläufen kann dieses Optimierungsproblem durch eine gründliche Suche nach der brauchbaren Domäne gelöst werden. In der nachstehenden Tabelle 8 sind die Ergebnisse des Tests für mehrere unterschiedliche Werte von c zusammengefasst.
  • Tabelle 8 – Zusammenfassung der Stichprobenoptimierungs-Tests
    Figure 00920001
  • Mehrere Ergebnisse werden unverzüglich aus diesen Durchläufen offensichtlich. Erstens ist Durchlauf 5, der Werkzeugqualifizierungs-Durchlauf, bei jeder Lösung präsent. Dieser spezielle Durchlauf ist der hilfreichste beim Sichern der wahren Parameterwerte. Als nächstes favorisiert der Algorithmus Mess-Durchläufe nahe dem Testanfang. Dies ist bekannt, da die Unsicherheit mit jedem Durchlauf steigt. Durch Messungen bei mehreren Durchläufen nahe dem Anfang kann der Schätzer die durchschnittliche Unsicherheit niedrig halten. Die Durchläufe mit weniger Messungen zeigen, dass der Algorithmus versucht, etwas über das Gesamtsystem zu erfahren. Durch Stichproben an mehreren Durchläufen, die das gesamte Spektrum von Werkzeugen und Produkten abdecken, kann der Schätzalgorithmus ein vollständiges Bild von dem System erhalten.
  • Es ist interessant darauf hinzuweisen, dass sich der Wert der Zielfunktion bei mehr als ungefähr 10 Messungen einpendelt. Dies ist in 28 ge nauer dargestellt. Dies legt nahe, dass eine praktische Anwendung dieses Algorithmus das Identifizieren von Messungen wäre, die nicht genügend Informationen liefern, um die Kosten für diese Messungen bezüglich Zeit und Ressourcen zu rechtfertigen.
  • Der zweite Satz von Tests behandelt das Auswählen der Bearbeitungsreihenfolge. Hierbei sind die Messungen zu unterziehenden Durchläufe vorbestimmt, die Bearbeitungsreihenfolge kann jedoch willkürlich innerhalb der vorgegebenen Chargen-Warteschlange vorgesehen sein. Auch hier ist es das Ziel, die Unsicherheit in den Parameterschätzungen zu minimieren. Die Einschränkungen in Gleichungen 103 und 104 definieren einen Satz möglicher Lösungen. Die Reihenfolge wird durch Auswählen von jeweils einer Charge aus der Warteschlange, bis sämtliche Durchläufe beendet sind, festgelegt. Da es für dieses Problem n! Lösungen (d.h. Kandidaten-Pläne) gibt, ist eine gründliche Suche nach dem Lösungsraum nicht zweckmäßig.
  • Bei diesen Test-Durchläufen wird eine suboptimale Vorgehensweise angewendet, um die Anzahl von Kandidaten-Plänen zu begrenzen und ungefähre Lösungen zu erhalten, die ausreichen, um die Schlüsselpunkte darzustellen. Anstelle des Versuchs, den gesamten Lösungsraum abzudecken, kann eine Reihe von n einfacheren Problemen gelöst werden. Bei jedem Durchlauf wird die eine Charge ausgewählt, die die unmittelbarste Verbesserung des Ziels bietet. Dieser Prozess wird wiederholt, bis sämtliche Chargen durchgelaufen sind.
  • Zum Durchführen des Tests ist es erforderlich, den Stichprobenplan vorzubestimmen. Zur Durchführung des Tests mit unterschiedlichen Mengen an Informationen erfolgen Tests, bei denen jede Charge, jede zweite Charge, jede dritte Charge, jede vierte Charge und jede fünfte Charge einer Messung unterzogen wird. Mit dem Wissen, wann die Messungen durchgeführt werden, muss der Controller 130 über die Bearbeitungsreihenfolge entscheiden, mit der die Menge an zur Verfügung stehenden Informationen maximiert wird.
  • Die nachstehende Tabelle 9 präsentiert die Ergebnisse der Untersuchung der Bearbeitungsreihenfolge. Bei jedem Test wird der unter Anwendung der neuen Reihenfolge erhaltene Zielwert mit dem bei der vorgegebenen Reihenfolge erhaltenen Wert aus Tabelle 7 verglichen. Bei jedem Test wird durch die Lösung im Hinblick auf eine bessere Bearbeitungsreihenfolge der Wert der Zielfunktion signifikant verbessert.
  • Tabelle 9 – Zusammenfassung der Reihenfolgenoptimier-Tests
    Figure 00940001
  • Der letzte Satz von Tests behandelt das Werkzeugzuweisungs-Problem. Hier sind die Bearbeitungsreihenfolge und der Stichprobenplan für einen Chargen-Satz vorbestimmt. Das Ziel ist die Minimierung der Unsicherheit in den Parameterschätzungen durch Wählen des geeignetsten Bearbeitungswerkzeugs für jede Charge in der Warteschlange. Die Einschränkungen in Gleichungen 105 und 106 definieren einen Satz möglicher Lösungen.
  • Bei einer Warteschlange mit n Chargen und insgesamt k Werkzeugen gibt es kn mögliche Lösungen. Da die Anzahl möglicher Lösungen exponentiell mit der Größe des Problems steigt, ist eine gründliche Suche nach dem Lösungsraum generell nicht zweckmäßig. Wie oben, wird eine suboptimale Vorgehensweise angewendet, um ungefähre Lösungen durch Begrenzen der Anzahl von Kandidaten-Plänen zu erzielen.
  • Bei jedem Durchlauf wird das Werkzeug gewählt, das die größte Verbesserung der Zielfunktion erbringt. Somit wird eine Reihe von n einfacheren Problemen gelöst, um festzulegen, wo sämtliche Chargen laufen sollen. Die nachstehende Tabelle 10 zeigt die durch den Algorithmus festgelegte Bearbeitungsreihenfolge.
  • Tabelle 10 – Zusammenfassung des Werkzeugzuweisungs-Durchlaufs
    Figure 00950001
  • Diese Zuweisung von Chargen zu Werkzeugen führt zu einer ungefähr 10-prozentigen Verbesserung des Werts der Zielfunktion. Es gibt jedoch einige noch bemerkenswertere Ergebnisse. In 29 wird der simulierte Ausgangsfehler des Steueralgorithmus bei Anwendung des vorgegebenen Werkzeugzuweisungsplan mit dem des optimierten Plans verglichen. Ein großes Maß an Variabilität ist in der optimierten Version eliminiert, da die Produkte mit großer Unsicherheit in der Parameterschätzung auf Werkzeugen mit einer relativ kleinen Schätzungsunsicherheit laufen.
  • Ein wichtiges Merkmal dieser Simulierung besteht darin, dass es keine Einschränkung gibt, die eine gleichmäßige Verwendung der Werkzeuge vorschreibt. Die Ergebnisse zeigen, dass der Algorithmus die Durchläufe gleichmäßig auf die betroffenen Werkzeuge aufgeteilt hat. Der Grund dafür ist, dass sich die Unsicherheit in der Parameterschätzung für ein vorgegebenes Werkzeug mit der Zeit vergrößert, selbst wenn das Werkzeug nicht zur Verwendung ausgewählt worden ist. Somit muss der Algorithmus sämtliche Werkzeuge verwenden, damit genügend Informationen zur Verfügung stehen, um die Unsicherheit bei sämtlichen Werkzeugen niedrig zu halten.
  • Wie in dem vorstehenden Abschnitt erläutert, haben Herstellprozess-Entscheidungen, wie z.B. Werkzeugeinplanungs- und Stichprobenpläne, eine sehr reale Auswirkung auf die Fähigkeit zum effizienten Durchführen der Prozesssteuerung. Ferner ist erläutert worden, dass eine korrekte Handhabung dieser Entscheidungsvariablen den Steuerausgang verbessern kann. Obwohl diese Entscheidungsvariablen die von dem Controller 130 gehandhabten Prozessvariablen nicht direkt beeinflussen, beeinflussen sie die Quantität und die Qualität der Informationen, die dem Controller 130 zur Verwendung beim Aktualisieren seiner Zustands- und Parameterschätzungen zur Verfügung stehen. Bei einem modellbasierten Controller führen unterschiedliche Werte der Modellparameter zu unterschiedlichen Werten der Zielfunktion, und daher werden unterschiedliche Prozesseingänge gewählt.
  • Unter Verwendung der in einem Kalman-Zustandsschätzschema zur Verfügung stehenden Fehler-Kovarianzmatrix werden die Herstellentscheidungen so dargestellt, dass sie eine explizite Beziehung zu den relativen Unsicherheiten in den unterschiedlichen Parameterschätzungen in dem Controller 130 aufweisen. Es kann ein Modell hergestellt werden, dass Prozessentschei dungen mit deren Auswirkungen auf die Unsicherheiten in den Parameterschätzungen in Beziehung setzt. Je nach den aktuellen Vertrauenspegeln in den Parameterschätzungen kann das Durchführen einer speziellen Messung oder der Betrieb eines speziellen Bearbeitungswerkzeugs sehr unterschiedliche Auswirkungen haben.
  • An dieser Stelle ist es zweckmäßig, das Prozessmodell von dem Überwachungs-Planungsmodell zu trennen, wie in 30 dargestellt. Ein Prozess-Controller 300 implementiert ein Prozessmodell 310 auf niedriger Ebene, das beschreibt, wie die Prozessvariablen bei Manipulierung der Eingänge beeinflusst werden. Die Prozessvariablen umfassen Anleitungseinstellungen, gemessene Chargen-Eigenschaften und Variationsquellen. Bei diesem Modell sind die Chargen bis zu ihren Erscheinen unbekannt, und dann wird durch ihre Eigenschaften festgelegt, wie sie durch die Bearbeitungseinrichtung beeinflusst werden. Ein Planungs-Controller 320 implementiert ein Überwachungs-Planungsmodell 330 und befasst sich nicht mit den Details hinsichtlich der Bearbeitung der Chargen. Stattdessen befasst er sich nur mit der Bewegung des Materials durch die Anlage.
  • Die Umgebung besteht aus einer Folge von diskreten Ereignissen. Diese Ereignisse umfassen das Bearbeiten von Chargen, das Qualifizieren von Werkzeugen und das Messen von Chargen. Bei jedem dieser Ereignisse kann das Prozessmodell 310 zum Feststellen der erwarteten Auswirkungen auf die realen Prozesszustände sowie die Unsicherheiten in den Parameterschätzungen verwendet werden. Das auf höherer Ebene befindliche Planungsmodell 330 kann zum Feststellen der Auswirkungen des Ereignisses auf Bestandsniveau, Durchlaufzeit und Werkzeugauslastung verwendet werden.
  • Hierbei wird eine Mehrebenenstrategie angewendet. Die oben beschriebenen und von dem Prozess-Controller 300 implementierten Zustandsschätztechniken sind zum Lösen des Problems der Festlegung der besten Parameterschätzungen angesichts sämtlicher zur Verfügung stehenden Prozess informationen bestens geeignet. Diese Zustandsschätzung hat keinen Input hinsichtlich der Reihenfolge, in der Material bearbeitet wird, oder darüber, welche Messwerte empfangen werden, sie kann sich jedoch auf effiziente Weise mit den ankommenden Informationen befassen.
  • Auf der nächsten Ebene handhabt der Planungs-Controller 320 das Einplanen durch Analysieren von Kandidaten-Plänen, um mehrere Ziele zu erreichen. Zusätzlich zu dem Sicherstellen, dass die Bearbeitungswerkzeuge auf effiziente Weise ausgelastet werden und Material die Anlage in einem angemessenen Zeitraum durchläuft, muss der Planungs-Controller 320 sicherstellen, dass der auf einer niedrigeren Ebene befindliche Prozess-Controller 300 und sein Zustandsschätzalgorithmus zweckdienliche Informationen erhalten.
  • Dieses Kaskadenschema ermöglicht einen modularen Aufbau, wobei jeder Controller 300, 320 die Aufgaben erledigt, für die er am besten geeignet ist. Ein auf einer noch höheren Ebene befindlicher Betriebs-Optimierungs-Controller 340 kann zum Festlegen der Ziele für den Planungs-Controller 320 vorgesehen sein.
  • Bei den Eingängen in das Planungsmodell 330 handelt es sich um die Prozessentscheidungen. Bei einem vorgegebenen Zeitschritt muss eine Anzahl von Entscheidungen getroffen werden. Der Einfachheit halber sei angenommen, dass sämtliche Durchläufe die gleiche Zeit dauern und dass sie alle gleichzeitig anfangen und aufhören. Dies ermöglicht eine Vereinfachung der Entscheidungsvariablen. Wenn es eine Warteschlange mit nb Chargen gibt, die darauf warten, einen Prozessbereich zu durchlaufen, muss bei einem vorgegebenen Zeitschritt entschieden werden, welche Chargen bei diesem Zeitschritt auf sämtlichen Werkzeugen in dem Prozessbereich laufen. Wenn es nt Werkzeuge in dem Prozessbereich gibt, definieren die ni Elemente des Vektors u die Chargen, die auf den Werkzeugen laufen. Üblicherweise müssen nicht sämtliche Chargen in der Warteschlange Produktions-Chargen sein. Werk zeugqualifizierungen und andere Ereignisse können ebenfalls in demselben Rahmen vorhanden sein. Ein zweiter Eingangsvektor v, der ebenfalls die Länge nt aufweist, wird benötigt, um zu spezifizieren, ob bei jedem in u beschriebenen Durchlauf Messungen durchgeführt werden.
  • Bei den gewählten Entscheidungsvektoren (d.h. Kandidaten-Plänen) bei einem Zeitschritt kann die Auswirkung auf die Fehler-Kovarianzmatrix für den Prozesszustandsschätzer errechnet werden. Wie bei den vorhergehenden Beispielen kann eine Zielfunktion hinsichtlich der Operationen auf dieser Matrix definiert werden.
  • Eine Modell-Vorhersagesteuerungs-(MPC-)Formulierung kann ein exzellentes Mittel zum Lösen der oben beschriebenen Optimierungsproblemen in einer praktischen Situation sein. Obwohl eine Simulation mit einer vorbestimmten Material-Warteschlange in einer bekannten Umgebung durchgeführt werden kann, ist die Situation in einer realen Herstelleinrichtung viel komplizierter. Die Bearbeitungsbedingungen unterliegen immer Veränderungen, und die von dem Controller getroffenen Entscheidungen können entsprechend den betrieblichen Anforderungen außer Kraft gesetzt werden. Bei Anwendung einer MPC-Formulierung wird jedes Mal bei Lösung des Optimierungsproblems nur die erste Entscheidung implementiert. Wenn neue Informationen verfügbar werden, wird das Problem wieder gelöst. Dieses Schema ist zum Handhaben der sich schnell verändernden Bedingungen in der Anlage gut geeignet.
  • Eine MPC kann mehrer Zeitschritt vorausschauen, um zu untersuchen, wie aktuelle Veränderungen künftige Durchläufe beeinflussen. Zur Anwendung einer MPC-Formulierung werden die Systemzustände und ein Modell bezüglich deren Veränderung definiert. Die Zustände sind einfach die Unsicherheiten in der Parameterschätzung, wie sie unter Anwendung der Zustandsfehler-Kovarianzmatrix festgestellt werden, welche von dem Prozess-Controller 300 verwendet wird. Das Modell bezüglich der Veränderung der Zustände wird an hand der Gleichungen festgelegt, mit denen festgestellt wird, wie sich die Kovarianzmatrix bei Bearbeitung und Messung von Chargen verändert.
  • Die "Messungen", die der Planungs-Controller 320 empfängt, sind die neuen Werte in der Kovarianzmatrix, die von dem Prozess-Controller 300 nach der Implementierung der eigentlichen Bearbeitungsentscheidungen geliefert werden. Die eigentlichen Bearbeitungsentscheidungen können den Entscheidungen entsprechen oder nicht entsprechen, die der Planungs-Controller 320 aufgrund von äußeren Einflüssen wünscht.
  • Ein weiterer wichtiger Vorteil der MPC-Vorgehensweise liegt in der Möglichkeit, dass diese Einschränkung hinsichtlich der Entscheidungen beinhalten kann. Durch Anwendung des Vorhersagehorizonts können komplizierte Einschränkungen, wie z.B. der Prozentsatz an Material, an dem über einen langen Zeitraum Messungen durchgeführt worden sind, verwendet werden. Einschränkungen hinsichtlich Werkzeugzuweisung, Stichprobenprüfung und der Zeit, die Chargen auf ihre Bearbeitung warten, können alle in diesen sehr generischen Rahmen eingefügt werden.
  • Es gibt viele Vorteile bei dieser zusammengefassten Prozess- und Einrichtungssteuerungsstrategie. Herkömmlicherweise ist die Planung entsprechend den betrieblichen Erfordernissen angepasst worden, wobei die Auswirkung auf die Prozesssteuerung nur in geringem Maße oder gar nicht analysiert worden ist. Die Prozesssteuerung muss innerhalb der Grenzen der von der Betriebseinrichtung auferlegten Beschränkungen erfolgen. Das Integrieren der Planungs-Erfordernisse in die Prozesssteuerungs-Erfordernisse bietet für beide mehrere klare Vorteile, wie hier beschrieben.
  • Generell werden Messungen durchgeführt, um sicherzustellen, dass Chargen korrekt bearbeitet werden. Da dem Prozess-Controller Zugang zu dem Stichprobenplan ermöglicht wird, bewirkt das Verständnis der Unsicherheiten in den Prozessen, dass relevante Messungen ausgewählt werden. Da die Unsicherheiten in den Parameterschätzungen direkt in Unsicherheiten in den Prozessausgängen umgesetzt werden, ist es möglich, Messungen auf das Maß zu reduzieren, das benötigt wird, um sicherzustellen, dass sämtliche Prozessausgänge innerhalb angemessener Toleranzen liegen. Dies führt nicht nur zu einer Zeitersparnis, sondern begrenzt auch die Anzahl von erforderlichen Messwerkzeugen. Selbstverständlich kann der Planungs-Controller 330 auch sorgfältig ausgewählte Messungen vorschlagen, wenn die Unsicherheit im Ausgang zu groß wird. Ihm stehen korrekte Daten zum Treffen einer fundierten Entscheidung darüber zur Verfügung, welche potentiellen Messungen den größten Nutzen erbringen.
  • Eine weitere beispielhafte Anwendung der Planungsoptimierung ist die Bearbeitung "wichtiger" Partien. Eine spezielle Partie kann aus verschiedenen Gründen (z.B. vorhergesagte Leistungs-Charakteristiken, Test-Partien etc.) als Partie mit hoher Priorität gekennzeichnet sein. Bei einer solchen Partie kann es wünschenswert sein, die mit der bezeichneten Partie in Zusammenhang stehende Bearbeitung zu optimieren. Die Unsicherheitsanalyse ist auf verschiedene Kandidaten-Pläne, einschließlich der Ziel-Partie, und den Kandidaten-Plan mit der niedrigsten Unsicherheit anwendbar, wenn die Bearbeitung der Ziel-Partie ausgewählt werden kann.
  • Der Planungs-Controller 330 kann ferner Zeitpunkte für spezielle Ereignisse, wie z.B. Werkzeugqualifizierungen, wählen. Diese Ereignisse werden normalerweise bei der Ausrüstungswartung angewendet, können jedoch auch zur Verbesserung der Qualität von Daten verwendet werden. Der Planungs-Controller 330 besitzt die Informationen, aufgrund derer er weiß, wann die geschätzten Parameter für einen Werkzeugzustand eine signifikante Unsicherheit aufweisen. Dies ist ein guter Zeitraum zum Durchführen von Wartungsarbeiten an dem Werkzeug, da die an die Wartung anschließende Qualifizierung neue Informationen über den Zustand der Werkzeugparameter liefert. Durch diese Vorgehensweise können durch Einplanen von Ereignissen zu einem Zeit raum, zu dem diese wirklich erforderlich sind, die Stillstandszeit reduziert und der Steuerausgang verbessert werden.
  • Die zuvor untersuchten Planungs- und Stichproben-Optimierungsprobleme fallen in eine Klasse schwieriger mathematischer Probleme. Erstens ist die Bewertung der Zielfunktion ein stark nichtlinearer Prozess. Selbst wenn das auf einer niedrigen Ebene befindliche Prozessmodell linear ist, erfordert die Aktualisierung der Fehler-Kovarianzmatrix bei Empfang der Messdaten die Anwendung von Matrixinversionstechniken. Die Probleme werden ferner dadurch verstärkt, dass die Entscheidungsvariablen diskrete Werte anstelle von kontinuierlichen Werten sind. Ein allgemein übliches Verfahren zum Feststellen der Extremwerte einer kontinuierlichen nichtlinearen Funktion ist das Ermitteln von Ableitungen relativ zu den unabhängigen Variablen. Generell stimmen diese Extremwerte nicht mit den diskreten Werten der Entscheidungsvariablen überein, die von den Systemeinschränkungen zugelassen sind, so dass kompliziertere Suchverfahren angewendet werden müssen.
  • Wie anhand der weiter oben in diesem Abschnitt beschriebenen Simulations-Durchläufe dargestellt, nimmt die Anzahl von von den einfachsten Suchschemata benötigten Zielfunktionsbewertungen mit zunehmender Systemgröße schnell astronomische Ausmaße an. Eine gewisse Abhilfe kann durch Unterteilen des Problems in kleinere Teile und Zusammenfassen der Lösungen, wie es bei späteren Simulationen erfolgt ist, geschaffen werden. Ferner ist es möglich, von einer durchführbaren Lösung auszugehen, wobei kleine, zu anderen durchführbaren Lösungen führende Veränderungen erfolgen, um zu sehen, ob sich der Zielwert verbessert. Der Nachteil dieser Verfahren liegt darin, dass es keine Garantie gibt, das allgemeine Optimum zu erreichen. Es muss ein Gleichgewicht zwischen dem Erfordernis nach den akkuratesten Antworten und dem Erhalt der Antworten in einem angemessenen Zeitraum gefunden werden. Es gibt eine große Anzahl von Faktoren, die beim Festlegen der Planung von Durchläufen in einem großen Werk berücksichtigt werden müssen.
  • Bei einer Ausführungsform können eine einzelne Zielfunktion und mit dieser in Zusammenhang stehende Einschränkungen definiert werden, um sämtliche Probleme einzuschließen. Das Ziel wäre die Erfüllung der Anforderungen zahlreicher unterschiedlicher Parteien mit Fachkenntnissen in unterschiedlichen Bereichen. Beispielsweise kann ein Steuerungs- und Regelungsingenieur in der Lage sein, die Wichtigkeit einer speziellen Charge dahingehend zu beschreiben, wie groß der Umfang an gelieferten Informationen wäre, wohingegen ein Operations-Research-Experte eher damit befasst wäre, wie lange die Charge auf den Durchlauf wartet und wie sie auf effizientere Weise über die Linie bewegt werden kann. Ferner muss ein Ingenieur, der versucht, einen Prozess zu verbessern, möglicherweise bestimmte Chargen auf bestimmten Werkzeugen mit speziellen Einstellungen laufen lassen. Für das Erstellen eines einzelnen Ziels, das alle diese Anforderungen erfüllt, ist die Spezifikation der relativen Wichtigkeit jedes Problems erforderlich.
  • Eine alternative Vorgehensweise besteht darin, separate Systeme auf die Erfordernisse jeder Partei zuzuschneidern. Jedes dieser Systeme kann auf einfache Weise die Prozessentscheidungen festlegen, die es am stärksten wünscht. Ein Überwachungssystem wäre dann für die Lösung von Konflikten zuständig. Wie in dem vorhergehenden Abschnitt beschrieben, werden normalerweise regelbasierte Systeme zum Einplanen von Produktionsdurchläufen verwendet. Diese Systeme sind generell zum Minimieren von Verzögerungen und Kosten bei geringer Berücksichtigung der Erfordernisse von Durchlauf-zu-Durchlauf-Steuerungsanwendungen vorgesehen. Das Integrieren in diese Art von System wäre erforderlich, um das Einplanen in eine bestehende Einrichtung zu beeinflussen.
  • Die hier beschriebenen Techniken sind eine exzellente Vorgehensweise, die zum Verständnis der Handhabung der zahlreichen unterschiedlichen Prozesse führt, welche in einer großen Halbleiterherstellanlage gleichzeitig aktiv sind. Durch die Untersuchung des kombinierten Systemmodells wird die Tatsache bekräftigt, dass es eine große Anzahl von Daten gibt, die bei unterschiedlichen Prozessen gemeinsam genutzt werden können. Da die Unterschiede zwischen Ausrüstung, Produkten und Prozessen häufig viel größer sind als die Schwankungen von Durchlauf zu Durchlauf bei einem Einzelprozess, ist das kombinierte Modell beim Eliminieren der Unterschiede zwischen den unterschiedlichen Bereichen des Prozesses dadurch erfolgreich, dass es jeweils Daten von mehreren Durchläufen verwendet. Der Hauptnutzen dieses Verfahrens liegt darin, dass die Informationen in verschiedenen Bearbeitungskontexten gemeinsam genutzt werden, so dass das Systemmodell bei der Detektion von Fehlern sehr schnell aktualisiert wird.
  • Ein weiteres Hauptergebnis besteht darin, dass bei einem Zustands- und Parameterschätzalgorithmus das Verständnis des Maßes an Unsicherheit in den Schätzungen genauso wichtig ist wie das Erhalten von Werten der Schätzungen selbst. Es wurde eine rekursive Zustandsschätzroutine auf der Basis der Schätzung von Vertrauenspegeln zum Durchführen von Aktualisierungen selbst dann, wenn nur ein Teil der gewünschten Messdaten zur Verfügung steht, vorgeschlagen. Praktischen Herstellprobleme, wie z.B. verzögerte und fehlende Messungen, wurden beschrieben und behandelt. Das Ergebnis ist ein zufriedenstellendes Schema, das auf zahlreiche unterschiedliche Prozesse in der Herstelleinrichtung anwendbar ist.
  • Es wurde ein Unterschied zwischen den zur Verfügung stehenden Daten und den Nutzinformationen, die diese enthalten, gemacht. Die Leistung eines Zustandsschätzschemas hängt in starkem Maße von der Qualität der Informationen ab, die dieses erhält. Die Zustandsschätzfehler-Kovarianzmatrix wurde als Indikator der Unsicherheit in den Schätzungen identifiziert, und die Auswirkungen der Messungen auf diese Matrix wurden im Hinblick darauf erläutert, wie die Messungen die Unsicherheiten in den Schätzungen beeinflussen.
  • Bearbeitungsentscheidungen, wie z.B. Chargen-Einplanung, Werkzeugzuweisungen und Stichprobenpläne wurden so dargestellt, dass sie eine Auswirkung auf die Controller-Leistung haben. Unter Verwendung von in der Fehler-Kovarianzmatrix enthaltenen Parameterschätzunsicherheitsinformationen können diese Bearbeitungsentscheidungen optimiert werden, um bessere Prozesssteuerungsergebnisse zu erbringen. Die Simulationsergebnisse zeigten, dass durch Verwenden von Informationen von dem Prozess-Controller messbare Verbesserungen in der Zustandsschätz- und Steuerausgangsleistung erreichbar sind, um bessere Einplanungs- und Stichprobenprüfentscheidungen zu unterstützen. Ferner wurde gezeigt, dass der Zustandsschätzalgorithmus Messwerte identifizieren kann, die nur wenige Informationen liefern, so dass diese Messwerte möglicherweise übersprungen werden können.

Claims (14)

  1. Verfahren zum Überwachen eines Herstellsystems (10), mit folgenden Schritten: Festlegen mehrerer beobachteter Zustände, die dem Herstellsystem (10) zugeordnet sind; Erzeugen von Zustandsschätzungen für die beobachteten Zustände; Erzeugen eines Unsicherheitswerts für jede Zustandsschätzung; Empfangen von Messdaten, die einer Entität in dem Herstellsystem (10) zugeordnet sind; und Aktualisieren der Zustandsschätzungen anhand der Messdaten und der Unsicherheitswerte, die den Zustandsschätzungen zugeordnet sind; wobei das Verfahren ferner folgende Schritte umfasst: Identifizieren mehrerer Kandidaten-Pläne zum Durchführen von Aktivitäten in dem Herstellsystem (10); Vorhersagen von Änderungen der Unsicherheitswerte anhand der Kandidaten-Pläne; und Selektieren eines der Kandidaten-Pläne anhand der vorhergesagten Änderungen der Unsicherheitswerte.
  2. Verfahren nach Anspruch 1, ferner mit folgenden Schritten: Erzeugen eines Zustandsschätzungsvektors, der die Zustandsschätzungen aufweist; und Erzeugen einer Kovarianzmatrix, die dem Zustandsschätzungsvektor zugeordnet ist, mit Diagonal-Termen, die die Unsicherheitswerte definieren, und Nicht-Diagonal-Termen, die Abhängigkeitsbeziehungen zwischen den Zuständen definieren.
  3. Verfahren nach Anspruch 1, ferner mit folgenden Schritten: Durchführen eines Bearbeitungsschritts in dem Herstellsystem (10); und Aktualisieren jeder Zustandsschätzung anhand des Bearbeitungsschritts und der zugeordneten Unsicherheitswerte.
  4. Verfahren nach Anspruch 1, bei dem das Herstellsystem mehrere Werkzeuge (30, 40, 50, 60, 70, 80) zum Bearbeiten von Produkten und Festlegen der mehreren beobachteten Zustände aufweist, ferner mit folgendem Schritt: Festlegen mindestens eines Werkzeugzustands und eines Produktzustands.
  5. Verfahren nach Anspruch 2, ferner mit folgenden Schritten: Identifizieren eines zusätzlichen beobachteten Zustands, der dem Herstellsystem (10) zugeordnet ist; Erzeugen einer Anfangszustandsschätzung für den zusätzlichen beobachteten Zustand; Verbinden der Anfangszustandsschätzung mit dem Zustandsschätzungsvektor; Erzeugen einer Anfangs-Kovarianz-Schätzung für den zusätzlichen beobachteten Zustand; und Verbinden der Anfangs-Kovarianz-Schätzung mit der Kovarianzmatrix.
  6. Verfahren nach Anspruch 1, ferner mit folgenden Schritten: Identifizieren eines Satzes von Anfangszustandsschätzungen zu einem ersten Zeitpunkt; Aufrechterhalten einer Warteschlange von Ereignissen, die dem Herstellsystem (10) zugeordnet sind und nach dem ersten Zeitpunkt eintreten, wobei die Ereignisse Bearbeitungs-Ereignisse und Mess-Ereignisse umfassen; Empfangen eines ersten Mess-Ereignisses; Identifizieren eines der Bearbeitungs-Ereignisse, die dem ersten Mess-Ereignis zugeordnet sind; Selektieren von Ereignissen, die nach dem identifizierten Bearbeitungs-Ereignis eintreten; und iteratives Aktualisieren der Anfangszustandsschätzungen anhand des ersten Mess-Ereignisses und des selektierten Satzes von Ereignissen.
  7. Verfahren nach Anspruch 1, ferner mit folgenden Schritten: Erzeugen einer ersten Ausgangs-Abbildung anhand der Messdaten; Aktualisieren der Zustandsschätzungen anhand der ersten Ausgangs-Abbildung, der Messdaten und der zugeordneten Unsicherheitswerte; Empfangen einer zweiten Messung, die einem nach dem ersten Bearbeitungs-Ereignis eintretenden zweiten Bearbeitungs-Ereignis zugeordnet ist; Erzeugen einer zweiten Ausgangs-Abbildung anhand der zweiten Messung; und Aktualisieren der Zustandsschätzungen anhand der zweiten Ausgangs-Abbildung, der zweiten Messung und der dazugehörigen Unsicherheitswerte.
  8. Verfahren nach Anspruch 1, bei dem das Erzeugen der mehreren Kandidaten-Pläne ferner folgende Schritte umfasst: Einplanen mehrerer Bearbeitungsaktivitäten; und Einplanen mehrerer Messaktivitäten, die einem Teilsatz der Bearbeitungsaktivitäten zugeordnet sind, wobei jeder Kandidaten-Plan einen unterschiedlichen Teilsatz der Bearbeitungsaktivitäten aufweist.
  9. Verfahren nach Anspruch 1, bei dem das Erzeugen der mehreren Kandidaten-Pläne ferner das Einplanen mehrerer Bearbeitungsaktivitäten umfasst, wobei jeder Kandidaten-Plan eine unterschiedliche Reihenfolge für die Bearbeitungsaktivitäten aufweist.
  10. Verfahren nach Anspruch 1, bei dem das Erzeugen der mehreren Kandidaten-Pläne ferner folgende Schritte umfasst: Identifizieren mehrerer Bearbeitungsaktivitäten; Identifizieren mehrerer Bearbeitungswerkzeuge, die in der Lage sind, die Bearbeitungsaktivitäten durchzuführen; und Erzeugen jedes Kandidaten-Plans mit unterschiedlichen Bearbeitungswerkzeugen, die zum Durchführen der Bearbeitungsaktivitäten selektiert worden sind.
  11. Verfahren nach Anspruch 1, ferner mit folgenden Schritten: Erzeugen einer Unsicherheits-Metrik, die jedem Kandidaten-Plan zugeordnet ist, anhand der vorhergesagten Änderungen der Unsicherheitswerte; und Selektieren des Kandidaten-Plans mit der niedrigsten Unsicherheits-Metrik.
  12. Verfahren nach Anspruch 1, bei dem jeder Kandidaten-Plan eine vorrangige Bearbeitungsaktivität aufweist und das Selektieren eines Kandidaten-Plans anhand der vorhergesagten Änderungen der Unsicherheitswerte ferner das Selektieren des Kandidaten-Plans mit der geringsten Unsicherheit bei der Durchführung der vorrangigen Bearbeitungsaktivität umfasst.
  13. System zum Überwachen eines Herstellsystems (10), mit: einem Controller (130) zum Festlegen mehrerer beobachteter Zustände, die dem Herstellsystem (10) zugeordnet sind, Erzeugen von Zu standsschätzungen für die beobachteten Zustände, Erzeugen eines Unsicherheitswerts für jede Zustandsschätzung, Empfangen von Messdaten, die einer Entität in dem Herstellsystem (10) zugeordnet sind, und Aktualisieren der Zustandsschätzungen anhand der Messdaten und der Unsicherheitswerte, die den Zustandsschätzungen zugeordnet sind, wobei das System ferner aufweist: einen Planungs-Controller (320) zum Identifizieren mehrerer Kandidaten-Pläne zum Durchführen von Aktivitäten in dem Herstellsystem (10), Vorhersagen von Änderungen der Unsicherheitswerte anhand der Kandidaten-Pläne und Selektieren eines Kandidaten-Plans anhand der vorhergesagten Änderungen der Unsicherheitswerte.
  14. System nach Anspruch 13, bei dem der Controller (130) ferner zum Erzeugen eines Zustandsschätzvektors vorgesehen ist, der Zustandsschätzungen und eine Kovarianzmatrix enthält, welche dem Zustandsschätzvektor zugeordnet ist und Diagonal-Termen, die die Unsicherheitswerte definieren, und Nicht-Diagonal-Termen, die Abhängigkeitsbeziehungen zwischen den Zuständen definieren, aufweist.
DE60207588T 2001-09-13 2002-09-12 Zustandsschätzung und einteilung für ein herstellungssystem Expired - Lifetime DE60207588T2 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US31879201P 2001-09-13 2001-09-13
US318792P 2001-09-13
US210753 2002-07-31
US10/210,753 US6738682B1 (en) 2001-09-13 2002-07-31 Method and apparatus for scheduling based on state estimation uncertainties
PCT/US2002/028872 WO2003023538A2 (en) 2001-09-13 2002-09-12 State estimation and scheduling for a manufacturing system

Publications (2)

Publication Number Publication Date
DE60207588D1 DE60207588D1 (de) 2005-12-29
DE60207588T2 true DE60207588T2 (de) 2006-11-30

Family

ID=26905483

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60207588T Expired - Lifetime DE60207588T2 (de) 2001-09-13 2002-09-12 Zustandsschätzung und einteilung für ein herstellungssystem

Country Status (9)

Country Link
US (1) US6738682B1 (de)
EP (1) EP1425642B1 (de)
JP (1) JP2005502947A (de)
KR (1) KR100931708B1 (de)
CN (1) CN100380261C (de)
AT (1) ATE310984T1 (de)
DE (1) DE60207588T2 (de)
TW (1) TWI223761B (de)
WO (1) WO2003023538A2 (de)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8515567B2 (en) 2005-12-21 2013-08-20 Globalfoundries Inc. Enhanced state estimation based upon information credibility
DE102016007837A1 (de) * 2016-05-25 2017-11-30 Schneider Gmbh & Co. Kg Verfahren und System zur Bearbeitung optischer Linsen
DE102017111926A1 (de) * 2017-05-31 2018-12-06 Infineon Technologies Ag Prozesssteuerschaltung und Verfahren zum Steuern einer Bearbeitungsanordnung
DE102019100636A1 (de) * 2019-01-11 2020-07-16 Osram Opto Semiconductors Gmbh Verfahren zur kapazitätsgrenzenermittlung, vorrichtung zur datenverarbeitung und computerprogramm

Families Citing this family (98)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002123530A (ja) * 2000-10-12 2002-04-26 Hitachi Ltd 多次元データの可視化方法及び装置
EP1444631A2 (de) * 2001-11-07 2004-08-11 SAP Aktiengesellschaft Mehrzweck-konfigurationsmodell
US7031787B2 (en) * 2002-03-21 2006-04-18 Sap Aktiengesellschaft Change management
EP1523716A2 (de) * 2002-03-21 2005-04-20 Sap Ag Synchronisieren von benutzern auf gemeinsamen daten mit sperren
US20030182167A1 (en) * 2002-03-21 2003-09-25 Wolfgang Kalthoff Goal management
US7133878B2 (en) 2002-03-21 2006-11-07 Sap Aktiengesellschaft External evaluation processes
US20040230404A1 (en) * 2002-08-19 2004-11-18 Messmer Richard Paul System and method for optimizing simulation of a discrete event process using business system data
US7533008B2 (en) * 2002-08-19 2009-05-12 General Electric Capital Corporation System and method for simulating a discrete event process using business system data
US8185230B2 (en) * 2002-08-22 2012-05-22 Advanced Micro Devices, Inc. Method and apparatus for predicting device electrical parameters during fabrication
US7509326B2 (en) * 2002-09-03 2009-03-24 Sap Ag Central master data management
US7236973B2 (en) * 2002-11-27 2007-06-26 Sap Aktiengesellschaft Collaborative master data management system for identifying similar objects including identical and non-identical attributes
US8438238B2 (en) 2002-10-16 2013-05-07 Sap Ag Master data access
US20050021384A1 (en) * 2002-12-02 2005-01-27 Pershing Investments, Llc Capacity planning method and system with approved accuracy and confidence indication
US6912433B1 (en) * 2002-12-18 2005-06-28 Advanced Mirco Devices, Inc. Determining a next tool state based on fault detection information
US7653515B2 (en) * 2002-12-20 2010-01-26 Lam Research Corporation Expert knowledge methods and systems for data analysis
US9691053B1 (en) 2003-02-13 2017-06-27 Sap Se System and method of master data management
US7194320B2 (en) 2003-06-05 2007-03-20 Neuco, Inc. Method for implementing indirect controller
US6985825B1 (en) * 2003-07-15 2006-01-10 Advanced Micro Devices, Inc. Method and apparatus for adaptive sampling based on process covariance
US8639489B2 (en) * 2003-11-10 2014-01-28 Brooks Automation, Inc. Methods and systems for controlling a semiconductor fabrication process
US20070282480A1 (en) * 2003-11-10 2007-12-06 Pannese Patrick D Methods and systems for controlling a semiconductor fabrication process
US10086511B2 (en) 2003-11-10 2018-10-02 Brooks Automation, Inc. Semiconductor manufacturing systems
US8639365B2 (en) * 2003-11-10 2014-01-28 Brooks Automation, Inc. Methods and systems for controlling a semiconductor fabrication process
US20050130329A1 (en) * 2003-12-16 2005-06-16 Yushan Liao Method for the prediction of the source of semiconductor part deviations
US7930149B2 (en) * 2003-12-19 2011-04-19 Sap Aktiengesellschaft Versioning of elements in a configuration model
US20050149474A1 (en) * 2003-12-30 2005-07-07 Wolfgang Kalthoff Master data entry
US7272776B2 (en) * 2003-12-30 2007-09-18 Sap Aktiengesellschaft Master data quality
US6898471B1 (en) * 2003-12-31 2005-05-24 Taiwan Semiconductor Manufacturing Company Multivariate RBR tool aging adjuster
US7107112B2 (en) * 2004-05-17 2006-09-12 Brown Peter G Method and system for simulating and modeling a batch manufacturing facility
US7502715B1 (en) * 2004-09-21 2009-03-10 Asml Netherlands B.V Observability in metrology measurements
US7519447B1 (en) * 2004-10-05 2009-04-14 Advanced Micro Devices, Inc. Method and apparatus for integrating multiple sample plans
JP2006108474A (ja) * 2004-10-07 2006-04-20 Canon Inc 露光装置及びそれを用いたデバイス製造方法
US20060111858A1 (en) * 2004-11-22 2006-05-25 Yucai Zhu Computer method and apparatus for online process identification
US8180664B2 (en) * 2004-12-01 2012-05-15 Hewlett-Packard Development Company, L.P. Methods and systems for forecasting with model-based PDF estimates
GB2437894B (en) * 2005-02-28 2011-04-13 Advanced Micro Devices Inc Automated Throughput Control System And Method Of Operating The Same
WO2007001252A1 (en) * 2005-06-13 2007-01-04 Carnegie Mellon University Apparatuses, systems, and methods utilizing adaptive control
DE102005030586A1 (de) * 2005-06-30 2007-01-11 Advanced Micro Devices, Inc., Sunnyvale Verfahren und System für eine fortschrittliche Prozesssteuerung unter Anwendung der Messunsicherheit als Steuerungseingang
JP4772401B2 (ja) * 2005-07-06 2011-09-14 株式会社東芝 最適化方法、最適化システム、及び、装置を製造する方法
DE102005046972A1 (de) * 2005-09-30 2007-04-05 Advanced Micro Devices, Inc., Sunnyvale Verfahren und System für eine fortschrittliche Prozesssteuerung unter Anwendung einer Kombination aus gewichteten relativen Voreinstellungswerten
US7840287B2 (en) 2006-04-13 2010-11-23 Fisher-Rosemount Systems, Inc. Robust process model identification in model based control techniques
US20080059290A1 (en) * 2006-06-12 2008-03-06 Mcfaul William J Method and system for selecting a candidate for a position
GB0613955D0 (en) * 2006-07-13 2007-01-10 Bae Systems Plc Controller
ATE552543T1 (de) * 2006-07-14 2012-04-15 Siemens Ag Anordnung und verfahren zum speichern von messwerten, insbesondere zur überwachung von energieübertragungssystemen
AU2007282234B8 (en) * 2006-08-09 2011-11-24 Auckland Uniservices Limited Process control of an industrial plant
US20080065447A1 (en) * 2006-08-29 2008-03-13 International Business Machines Corporation Interactive and Incremental Event Scheduling
US7769080B2 (en) * 2006-09-07 2010-08-03 Telefonaktiebolaget Lm Ericsson (Publ) Method for covariance matrix update
US7738984B2 (en) * 2006-09-12 2010-06-15 International Business Machines Corporation System for and method of interpolation for supply chain planning
US7738986B2 (en) * 2006-10-09 2010-06-15 GlobalFoundries, Inc. Method and apparatus for compensating metrology data for site bias prior to filtering
DE102006051495B4 (de) * 2006-10-31 2017-11-02 Globalfoundries Inc. Verfahren und System zur zufälligen Verteilung von Scheiben in einer komplexen Prozesslinie
US7912746B2 (en) * 2006-11-14 2011-03-22 Raytheon Company Method and system for analyzing schedule trends
EP2019367A1 (de) * 2007-06-28 2009-01-28 Siemens Aktiengesellschaft Verfahren zum Verbessern der Leistung eines verteilten Schedulers
US7761179B2 (en) * 2007-09-24 2010-07-20 Intel Corporation Method for consistent updates to automated process control (APC) models with partitioning along multiple components
US8364404B2 (en) * 2008-02-06 2013-01-29 Schlumberger Technology Corporation System and method for displaying data associated with subsurface reservoirs
US8055470B2 (en) * 2008-02-14 2011-11-08 Yahoo!, Inc. Simulated bucket testing
US20100076898A1 (en) * 2008-07-03 2010-03-25 Aspect Software Inc. Method of Scheduling a Workforce Constrained By Work Rules and Labor Laws
EP2161637B1 (de) * 2008-09-04 2015-05-20 Siemens Aktiengesellschaft Verfahren zur Aktualisierung der Fertigungsplanungsdaten für einen Fertigungsprozess
US8090456B2 (en) 2008-11-03 2012-01-03 United Technologies Corporation System and method for design and control of engineering systems utilizing component-level dynamic mathematical model
US8131384B2 (en) * 2008-11-03 2012-03-06 United Technologies Corporation Design and control of engineering systems utilizing component-level dynamic mathematical model with multiple-input multiple-output estimator
NL2003919A (en) * 2008-12-24 2010-06-28 Asml Netherlands Bv An optimization method and a lithographic cell.
US9768082B2 (en) * 2009-02-13 2017-09-19 Hermes Microvision Inc. Method and machine for examining wafers
US20100211202A1 (en) * 2009-02-13 2010-08-19 Hermes Microvision, Inc. Method and machine for examining wafers
US8315741B2 (en) 2009-09-02 2012-11-20 United Technologies Corporation High fidelity integrated heat transfer and clearance in component-level dynamic turbine system control
US8668434B2 (en) 2009-09-02 2014-03-11 United Technologies Corporation Robust flow parameter model for component-level dynamic turbine system control
EP2365410B1 (de) * 2010-03-09 2018-06-27 Siemens Aktiengesellschaft Steuerung eines Herstellungsverfahrens
JP6044977B2 (ja) * 2011-06-30 2016-12-14 国立大学法人 筑波大学 最適指標生成装置、最適指標生成方法、最適指標生成プログラム及び最適指標生成サーバ
US9677493B2 (en) 2011-09-19 2017-06-13 Honeywell Spol, S.R.O. Coordinated engine and emissions control system
US20130111905A1 (en) 2011-11-04 2013-05-09 Honeywell Spol. S.R.O. Integrated optimization and control of an engine and aftertreatment system
US9650934B2 (en) 2011-11-04 2017-05-16 Honeywell spol.s.r.o. Engine and aftertreatment optimization system
DE202012011690U1 (de) 2012-03-09 2013-03-13 Schneider Gmbh & Co. Kg Anlage zum Bearbeiten optischer Linsen
US10161313B2 (en) 2013-03-15 2018-12-25 United Technologies Corporation Compact aero-thermo model based engine material temperature control
JP5977207B2 (ja) * 2013-07-04 2016-08-24 株式会社神戸製鋼所 状態推定装置、該方法及び該プログラム
US9897984B2 (en) * 2014-08-05 2018-02-20 Mitsubishi Electric Research Laboratories, Inc. Model predictive control with uncertainties
US10074142B1 (en) * 2014-08-18 2018-09-11 Algonyx LLC Computational architecture and method for a time-varying control system
EP3051367B1 (de) 2015-01-28 2020-11-25 Honeywell spol s.r.o. Ansatz und system zur handhabung von einschränkungen für gemessene störungen mit unsicherer vorschau
EP3056706A1 (de) 2015-02-16 2016-08-17 Honeywell International Inc. Ansatz zur nachbehandlungssystemmodellierung und modellidentifizierung
EP3091212A1 (de) 2015-05-06 2016-11-09 Honeywell International Inc. Identifikationsansatz für verbrennungsmotor-mittelwertmodelle
EP3734375B1 (de) 2015-07-31 2023-04-05 Garrett Transportation I Inc. Quadratischer programmlöser für mpc mit variabler anordnung
US10272779B2 (en) 2015-08-05 2019-04-30 Garrett Transportation I Inc. System and approach for dynamic vehicle speed optimization
DE102015015040A1 (de) 2015-11-12 2017-05-18 Schneider Gmbh & Co. Kg Verfahren, Anlage und System zur Bearbeitung optischer Linsen
US10394973B2 (en) * 2015-12-18 2019-08-27 Fisher-Rosemount Systems, Inc. Methods and apparatus for using analytical/statistical modeling for continued process verification (CPV)
US10415492B2 (en) 2016-01-29 2019-09-17 Garrett Transportation I Inc. Engine system with inferential sensor
JP6350554B2 (ja) * 2016-02-03 2018-07-04 横河電機株式会社 設備診断装置、設備診断方法及び設備診断プログラム
US10124750B2 (en) 2016-04-26 2018-11-13 Honeywell International Inc. Vehicle security module system
US10036338B2 (en) 2016-04-26 2018-07-31 Honeywell International Inc. Condition-based powertrain control system
JP6383384B2 (ja) * 2016-06-24 2018-08-29 ウィンボンド エレクトロニクス コーポレーション 半導体装置、半導体装置の製造方法および固有情報の生成方法
US11263545B2 (en) * 2016-06-30 2022-03-01 Microsoft Technology Licensing, Llc Control of cyber-physical systems under uncertainty
US10372114B2 (en) * 2016-10-21 2019-08-06 Kla-Tencor Corporation Quantifying and reducing total measurement uncertainty
US11199120B2 (en) 2016-11-29 2021-12-14 Garrett Transportation I, Inc. Inferential flow sensor
DE102016123699A1 (de) * 2016-12-07 2018-06-07 Endress+Hauser Conducta Gmbh+Co. Kg Verfahren zur Bestimmung einer Messunsicherheit eines Messwerts eines Feldgeräts
CN107291061B (zh) * 2017-02-22 2018-03-27 贵州北盘江电力股份有限公司董箐发电厂 一种基于量化评估的水电机组健康状态评估方法
US20180341876A1 (en) * 2017-05-25 2018-11-29 Hitachi, Ltd. Deep learning network architecture optimization for uncertainty estimation in regression
TWI639925B (zh) * 2017-08-28 2018-11-01 Powerchip Technology Corporation 統計多維變數而推算生產力的方法、統計多維變數而排程優先順序的方法與統計多維變數進行最佳化配置的方法
US11057213B2 (en) 2017-10-13 2021-07-06 Garrett Transportation I, Inc. Authentication system for electronic control unit on a bus
US11042148B2 (en) 2017-11-23 2021-06-22 Taiwan Semiconductor Manufacturing Company, Ltd. System and method for scheduling semiconductor lot to fabrication tool
US11501193B2 (en) 2017-12-18 2022-11-15 Mitsubishi Electric Research Laboratories, Inc. Model-based control under uncertainty
CN108268730B (zh) * 2018-01-23 2021-06-04 北京航空航天大学 一种面向产品可靠性退化的tbe控制图系统优化设计方法
CN110794788B (zh) * 2019-11-18 2021-06-08 国机工业互联网研究院(河南)有限公司 一种生产排程装置、方法、设备及计算机可读存储介质
WO2022033740A1 (en) * 2020-08-13 2022-02-17 Universitat Politecnica De Catalunya Automatically evolving a process model
KR102543488B1 (ko) * 2021-04-19 2023-06-13 재단법인대구경북과학기술원 시스템 상태 추정 장치 및 방법

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5115391A (en) 1990-01-26 1992-05-19 At&T Bell Laboratories Kalman filter-based optimizer and method and optimizing
US5687077A (en) * 1991-07-31 1997-11-11 Universal Dynamics Limited Method and apparatus for adaptive control
FI922031A0 (fi) 1991-10-23 1992-05-05 Antti Aarne Ilmari Lange Foerfarande foer kalman-filter i stora system.
US5918200A (en) 1992-08-31 1999-06-29 Yamatake-Honeywell Co., Ltd. State estimating apparatus
US5682309A (en) 1995-04-28 1997-10-28 Exxon Chemical Patents Inc. Feedback method for controlling non-linear processes
US5953229A (en) * 1996-09-24 1999-09-14 Environmental Research Institute Of Michigan Density-based emergent scheduling system
JPH10207939A (ja) * 1997-01-17 1998-08-07 Nec Corp ワークフローシステム
US5865665A (en) 1997-02-14 1999-02-02 Yueh; William In-situ endpoint control apparatus for semiconductor wafer polishing process
US6092033A (en) 1997-04-16 2000-07-18 Uhlmann; Jeffrey K. Method and apparatus for fusing mean and covariance estimates
US6163730A (en) 1997-08-11 2000-12-19 Motorola, Inc. Method and control system for changing the state of a plant
US5991525A (en) 1997-08-22 1999-11-23 Voyan Technology Method for real-time nonlinear system state estimation and control
US6633782B1 (en) * 1999-02-22 2003-10-14 Fisher-Rosemount Systems, Inc. Diagnostic expert in a process control system
EP1052558B1 (de) 1999-05-14 2002-08-07 Abb Research Ltd. Verfahren und Einrichtung zur Zustandsschätzung
US6745089B2 (en) * 2000-02-01 2004-06-01 California Institute Of Technology Adaptable state based control system
US6584369B2 (en) * 2000-02-02 2003-06-24 Texas Instruments Incorporated Method and system for dispatching semiconductor lots to manufacturing equipment for fabrication
US6519498B1 (en) * 2000-03-10 2003-02-11 Applied Materials, Inc. Method and apparatus for managing scheduling in a multiple cluster tool

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8515567B2 (en) 2005-12-21 2013-08-20 Globalfoundries Inc. Enhanced state estimation based upon information credibility
DE102016007837A1 (de) * 2016-05-25 2017-11-30 Schneider Gmbh & Co. Kg Verfahren und System zur Bearbeitung optischer Linsen
WO2017202502A1 (de) 2016-05-25 2017-11-30 Schneider Gmbh & Co. Kg Verfahren und system zur bearbeitung optischer linsen
DE102017111926A1 (de) * 2017-05-31 2018-12-06 Infineon Technologies Ag Prozesssteuerschaltung und Verfahren zum Steuern einer Bearbeitungsanordnung
US10963449B2 (en) 2017-05-31 2021-03-30 Infineon Technologies Ag Process control circuit and method for controlling a processing arrangement
US11640386B2 (en) 2017-05-31 2023-05-02 Infineon Technologies Ag Process control circuit and method for controlling a processing arrangement
DE102019100636A1 (de) * 2019-01-11 2020-07-16 Osram Opto Semiconductors Gmbh Verfahren zur kapazitätsgrenzenermittlung, vorrichtung zur datenverarbeitung und computerprogramm

Also Published As

Publication number Publication date
ATE310984T1 (de) 2005-12-15
WO2003023538A3 (en) 2003-10-23
EP1425642B1 (de) 2005-11-23
US6738682B1 (en) 2004-05-18
WO2003023538A2 (en) 2003-03-20
CN100380261C (zh) 2008-04-09
DE60207588D1 (de) 2005-12-29
EP1425642A2 (de) 2004-06-09
CN1552006A (zh) 2004-12-01
KR20040033315A (ko) 2004-04-21
KR100931708B1 (ko) 2009-12-14
TWI223761B (en) 2004-11-11
JP2005502947A (ja) 2005-01-27

Similar Documents

Publication Publication Date Title
DE60207588T2 (de) Zustandsschätzung und einteilung für ein herstellungssystem
DE60104705T2 (de) Verbesserte regelung mit adaptives abtastverfahren zur halbleiterherstellung
DE60307310T2 (de) Wahrscheinlichkeitsbeschränkte optimierung zur steuerung einer produktionslinie
DE102009006887B3 (de) Verfahren und System zur Halbleiterprozesssteuerung und Überwachung unter Anwendung eines Datenqualitätsmaßes
US6757579B1 (en) Kalman filter state estimation for a manufacturing system
DE60023395T2 (de) Verfahren zur Bearbeitung von Halbleitern
DE10341764B4 (de) Integrierte Modell-Vorhersagesteuerung und -Optimierung innerhalb eines Prozesssteuerungssystems
DE112005002474B4 (de) Verfahren zum dynamischen Einstellen der Messdatennahme auf der Grundlage der verfügbaren Messkapazität
DE112005003076B4 (de) Verfahren zur Steuerung einer industriellen Automationsvorrichtung oder eines Prozesses
DE102007063915B4 (de) Prozesssteuerungs- und Optimierungstechnik unter Verwendung immunologischer Konzepte
DE102006004413A1 (de) Verfahren und System zum Disponieren eines Produktstromes in einer Fertigungsumgebung durch Anwendung eines Simulationsprozesses
DE112015003733T5 (de) Modellprädiktive Regelung unter Verwendung drahtloser Prozesssignale
DE112009000224T5 (de) Robuster andaptiver modellprädiktiver Regler mit Abstimmung zum Ausgleich einer Modellfehlanpassung
DE102017111926A1 (de) Prozesssteuerschaltung und Verfahren zum Steuern einer Bearbeitungsanordnung
DE102006001257A1 (de) Automatisiertes Zustandabschätzungssystem für Cluster-Anlagen und Verfahren zum Betreiben des Systems
DE102011012710A1 (de) Schnelle Identifikation und Erzeugung von Prozessmodellen
DE102006009248B4 (de) Verfahren und System zur Modellierung eines Produktstromes in einer Fertigungsumgebung durch Prozess- und Anlagenkategorisierung
DE102005009022A1 (de) Automatisches Durchsatzsteuerungssystem und Verfahren zum Betreiben desselben
DE10393394T5 (de) Intelligentes integriertes Lithographiesteuerungssystem auf der Grundlage des Produktaufbaus und Ausbeuterückkopplungssystem
DE102020203986A1 (de) Verfahren, systeme, fertigungsartikel und vorrichtung zur verwaltung von prozessauslenkungen
DE102008008357A1 (de) Verfahren und System zur Ermittlung von Zuverlässigkeitsparametern einer technischen Anlage
DE112007000868T5 (de) Zeitgerichteter gleitender Mittelwertfilter
EP1055180B1 (de) Verfahren und anordnung zum entwurf eines technischen systems
DE10297636B4 (de) Verfahren zum Steuern von Prozessanlagen in einer Halbleiterfertigungsfabrik ####
DE10252605A1 (de) Verfahren, Vorrichtung, computerlesbarer Speicher und Computerprogramm-Element zum rechnergestützten Überwachen und Regeln eines Herstellungsprozesses

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: GLOBALFOUNDRIES INC. MAPLES CORPORATE SERVICES, KY