throbber
Case 4:20-cv-00991 Document 1-4 Filed 12/31/20 Page 1 of 24 PageID #: 127
`Case 4:20-cv-00991 Document 1-4 Filed 12/31/20 Page 1 of 24 PageID #: 127
`
`EXHIBIT D
`
`EXHIBIT D
`
`

`

`USOO6968248B1
`
`(12) United States Patent
`Mata et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 6,968,248 B1
`Nov. 22, 2005
`
`(54) AGENT REACTIVE SCHEDULING IN AN
`AUTOMATED MANUFACTURING
`ENVIRONMENT
`(75) Inventors: Gustavo Mata, Austin, TX (US);
`Steven C. Nettles, Johnson City, TX
`(US); Larry D. Barto, Austin, TX
`(US); Yiwei Li, Austin, TX (US)
`(73) Assignee: Advanced Micro Devices, Inc., Austin,
`TX (US)
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`(21) Appl. No.: 11/151,098
`
`(*) Notice:
`
`5,696.689 A * 12/1997 Okumura et al. ........... 700/121
`5,943,652 A * 8/1999 Sisley et al. ................... 705/9
`OTHER PUBLICATIONS
`“A Dynamic Reactive Scheduling Mechanism for Respond
`ing to Changes of Production Orders and Manufacturing
`Resources', 2001, Elsevier Science.
`* cited by examiner
`
`Primary Examiner Jayprakash N. Gandhi
`(74) Attorney, Agent, or Firm-Williams, Morgan &
`AmerSon, P.C.
`
`(57)
`
`ABSTRACT
`
`(22) Filed:
`
`Jun. 13, 2005
`Related U.S. Application Data
`(63) Continuation of application No. 10/135,145, filed on
`Apr. 30, 2002, now Pat. No. 6,907.305.
`s
`s
`s - Y
`s
`(51) Int. Cl. ............................................... G06F 1900
`(52) U.S. Cl. ........................ 700.99,700/100,700,121
`s
`70sls
`(58) Field of Search .......................... 700/99, 100, 101,
`700/117, 121; 705/8
`References Cited
`
`(56)
`
`U.S. PATENT DOCUMENTS
`4,994,980 A
`2/1991 Lee et al. ................... 700/173
`
`110 -
`205
`
`
`
`
`
`Case 4:20-cv-00991 Document 1-4 Filed 12/31/20 Page 2 of 24 PageID #: 128
`
`
`
`A method and apparatus for Scheduling in an automated
`manufacturing environment, comprising are disclosed. The
`method includes detecting an occurrence of a predetermined
`event in a proceSS flow; notifying a Software Scheduling
`agent of the occurrence, and reactively Scheduling an action
`from the Software scheduling agent responsive to the detec
`tion of the predetermined event. The apparatus is automated
`manufacturing environment including a process flow and a
`computing System. The computing System further includes a
`plurality of Software Scheduling agents residing thereon, the
`Software Scheduling agents being capable of reactively
`Scheduling appointments for activities in the process flow
`responsive to a plurality of predetermined events.
`
`22 Claims, 6 Drawing Sheets
`
`
`
`OPERATING SYSTEM
`
`SOFTWARE AGENT
`
`210
`
`200
`265
`
`270
`
`
`
`
`
`w &
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`a-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`255
`
`MES
`USER INTERFACE
`SOFTWARE
`
`a w
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`. w a
`
`280
`
`w w
`
`w w
`
`w a
`
`is a
`
`AMHS SOFTWARE
`COMPONENT(S)
`
`

`

`U.S. Patent
`
`Nov. 22, 2005
`
`Sheet 1 of 6
`
`US 6,968,248 B1
`
`100 - a
`
`110 - A st
`
`105-A
`
`120
`
`130
`
`PROCES
`STOOL
`
`115
`
`130
`
`140
`
`135
`145
`
`FIG.
`
`
`
`PROCES
`S TOOL
`
`130
`
`115
`
`210
`
`200
`265
`
`270
`
`255
`
`280
`
`OPERATING SYSTEM
`
`SOFTWARE AGENT
`
`
`
`S
`
`AMHS SOFTWARE
`COMPONENT(S)
`
`Case 4:20-cv-00991 Document 1-4 Filed 12/31/20 Page 3 of 24 PageID #: 129
`
`

`

`U.S. Patent
`
`Nov. 22, 2005
`
`Sheet 2 of 6
`
`US 6,968,248 B1
`
`9 || ||
`
`ENIHOV/W
`
`NITTICIEHOS
`
`0
`Z
`9
`
`EO?-][\OSER–|
`
`_LNESOV/
`
`SONITTICE HOS
`
`SON|T{\CEHOS
`
`
`
`LNE SOV/
`
`
`
`
`
`
`
`
`
`
`
`Case 4:20-cv-00991 Document 1-4 Filed 12/31/20 Page 4 of 24 PageID #: 130
`
`

`

`U.S. Patent
`
`Nov. 22, 2005
`
`Sheet 3 of 6
`
`US 6,968,248 B1
`
`
`
`Case 4:20-cv-00991 Document 1-4 Filed 12/31/20 Page 5 of 24 PageID #: 131
`
`5
`
`N
`H
`O
`-
`
`cy
`H-
`O
`-
`
`V
`H
`O
`-
`
`

`

`U.S. Patent
`
`US 6,968,248 B1
`
`
`
`
`
`Case 4:20-cv-00991 Document 1-4 Filed 12/31/20 Page 6 of 24 PageID #: 132
`
`

`

`U.S. Patent
`
`Nov. 22, 2005
`
`Sheet 5 of 6
`
`US 6,968,248 B1
`
`LOT
`AFTER
`SET APF
`
`APP,
`
`PPl - APP
`APP,
`3
`
`
`
`BEFOR
`E SHIFT
`
`LOT
`LOT
`
`APP
`
`- SHIFT
`
`- -
`
`Case 4:20-cv-00991 Document 1-4 Filed 12/31/20 Page 7 of 24 PageID #: 133
`
`LOT
`AER
`
`t C
`
`FIG. 6B
`
`

`

`U.S. Patent
`
`Nov. 22, 2005
`
`US 6,968,248 B1
`
`
`
`8EIZ "SOI-||
`
`V//, * 5DI -I
`
`
`
`
`
`
`
`Case 4:20-cv-00991 Document 1-4 Filed 12/31/20 Page 8 of 24 PageID #: 134
`
`

`

`US 6,968,248 B1
`
`1
`AGENT REACTIVE SCHEDULING IN AN
`AUTOMATED MANUFACTURING
`ENVIRONMENT
`
`This is a continuation of application Ser. No. 10/135,145
`filed Apr. 30, 2002, issued Jun. 14, 2005, as U.S. Pat. No.
`6,907,305.
`The United States Government has a paid-up license in
`this invention and the right in limited circumstances to
`require the patent owner to license others on reasonable
`terms as provided for by the terms of Award No.
`70NANB7H3041 awarded by the United States Department
`of Commerce, National Institute of Standards and Technol
`ogy (“NIST).
`
`BACKGROUND OF THE INVENTION
`
`1. Field of the Invention
`This invention pertains to automated manufacturing envi
`ronments, and, more particularly, to Scheduling in an auto
`mated manufacturing environment.
`2. Description of the Related Art
`Growing technological requirements and the Worldwide
`acceptance of Sophisticated electronic devices have created
`an unprecedented demand for large-scale, complex, inte
`grated circuits. Competition in the Semiconductor industry
`requires that products be designed, manufactured, and mar
`keted in the most efficient manner possible. This requires
`improvements in fabrication technology to keep pace with
`the rapid improvements in the electronics industry. Meeting
`these demands Spawns many technological advances in
`materials and processing equipment and Significantly
`increases the number of integrated circuit designs. These
`improvements also require effective utilization of computing
`resources and other highly Sophisticated equipment to aid,
`not only design and fabrication, but also the Scheduling,
`control, and automation of the manufacturing process.
`Turning first to fabrication, integrated circuits, or micro
`chips, are manufactured from modern Semiconductor
`devices containing numerous Structures or features, typically
`the size of a few micrometers. The fabrication proceSS
`generally involves processing a number of wafers through a
`Series of fabrication tools. Layers of materials are added to,
`removed from, and/or treated on a Semiconducting Substrate
`during fabrication to create the integrated circuits. The
`fabrication essentially comprises the following four basic
`operations:
`layering, or adding thin layers of various materials to a
`wafer from which a Semiconductor is produced;
`patterning, or removing Selected portions of added layers,
`doping, or placing Specific amounts of dopants in Selected
`portions of the wafer through openings in the added
`layers, and
`heat treating, or heating and cooling the materials to
`produce desired effects in the processed wafer.
`Although there are only four basic operations, they can be
`combined in hundreds of different ways, depending upon the
`particular fabrication process. See, e.g., Peter Van Zant,
`Microchip Fabrication A Practical Guide to Semiconductor
`Processing (3d Ed. 1997 McGraw-Hill Companies, Inc.)
`(ISBN 0-07-067250-4). Each fabrication tool performs one
`or more of four basic operations. The four basic operations
`are performed in accordance with an overall process to
`finally produce the finished Semiconductor devices.
`Controlling a Semiconductor factory fabricating Such inte
`grated circuits, however, is a challenging task. A Semicon
`ductor factory (“fab') is a complex environment where
`
`Case 4:20-cv-00991 Document 1-4 Filed 12/31/20 Page 9 of 24 PageID #: 135
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`numerous parts, typically 40,000 waferS or more, and
`numerous part types, typically 100 part types or more, are
`Simultaneously being manufactured. AS each wafer moves
`through the Semiconductor factory (or, “fab'), it may
`undergo more than 300 processing Steps, many of which use
`the Same machines. A large factory may contain approxi
`mately 500 computer-controlled machines to perform this
`wafer processing. Routing, Scheduling, and tracking mate
`rial through the fab is a difficult and complicated task, even
`with the assistance of a computerized factory control Sys
`tem.
`Efficient management of a facility for manufacturing
`products Such as Semiconductor chips requires monitoring
`various aspects of the manufacturing process. For example,
`it is typically desirable to track the amount of raw materials
`on hand, the Status of work-in-proceSS and the Status and
`availability of machines and tools at every Step in the
`process. One of the most important decisions is Selecting
`which lot should run on each machine at any given time.
`Additionally, most machines used in the manufacturing
`process require Scheduling of routine preventative mainte
`nance (“PM”) and equipment qualification (“Qual”) proce
`dures, as well as other diagnostic and reconditioning pro
`cedures that must be performed on a regular basis. These
`procedures should be performed Such that they do not
`impede the manufacturing process itself.
`One approach to this issue implements an automated
`“Manufacturing Execution System” (“MES”). An auto
`mated MES enables a user to view and manipulate, to a
`limited extent, the Status of machines and tools, or “entities,”
`in a manufacturing environment. In addition, an MES per
`mits dispatching and tracking of lots or work-in-process
`through the manufacturing process to enable resources to be
`managed in the most efficient manner. Specifically, in
`response to MES prompts, a user inputs requested informa
`tion regarding work-in-proceSS and entity Status. For
`example, when a user performs a PM on a particular entity,
`the operator logs the performance of the PM (an “event”)
`into an MES screen to update the information stored in the
`MES database with respect to the status of that entity.
`Alternatively, if an entity is to be put down for repair or
`maintenance, the operator will log this information into the
`MES database, which then prevents use of the entity until it
`is Subsequently logged back up.
`Although MES systems are sufficient for tracking lots and
`machines, Such Systems Suffer Several deficiencies, the most
`obvious of which are their passive nature, lack of advance
`Scheduling and inability to Support highly automated factory
`operations. Current MES Systems largely depend on manu
`facturing perSonnel for monitoring factory State and initiat
`ing activities at the correct time. For example, a lot does not
`begin processing until a wafer fab technician (“WFT)
`issues the appropriate MES command. And, prior to pro
`cessing, a WFT must issue an MES command to retrieve the
`lot from the automated material handling system (“AMHS)
`with Sufficient advance planning that the lot is available at
`the machine when the machine becomes available. If the
`WFT does not retrieve the lot soon enough, or neglects to
`initiate processing at the earliest available time, the machine
`becomes idle and production is adversely impacted.
`These types of deficiencies in the typical automated MES
`emphasize the importance of the WFT in the efficient
`operation of the manufacturing process. WFTS perform
`many vital functions. For instance, WFTs initiate dispatch
`ing, transport, and processing as their attention and time
`permits. They make Scheduling decisions Such as whether to
`run an incomplete batch, as opposed to waiting for addi
`
`

`

`US 6,968,248 B1
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`Case 4:20-cv-00991 Document 1-4 Filed 12/31/20 Page 10 of 24 PageID #: 136
`
`3
`tional approaching lots, or performing PM or qualification
`procedures instead of processing lots. WFTS perform non
`value added MES transactions and utilize conventional
`factory control Systems that are passive. In this context, the
`term "passive” means activities in the control System must
`be initiated by the WFT, as opposed to being self-starting or
`Self-initiating.
`However, the presence of WFTs also inevitably intro
`duces Some inefficiencies. There typically is a large differ
`ence between the performance of the best WFT and the
`performance of the worst WFT. A WFT typically simulta
`neously monitors the processing of multiple tools and lots,
`making it difficult to focus on an individual lot or tool.
`Furthermore, the size and complexity of the modern fabri
`cation process flows makes it exceedingly difficult for a
`WFT to foresee and prevent downstream bottlenecks or
`Shortages arising from upstream activities. Shift changes,
`rest breaks, and days off for the WFT also create inefficien
`cies or machine idle time that adversely impact the manu
`facturing process flow. Just as the importance of the WFT is
`magnified by the deficiencies of the automated MES, so are
`the inefficiencies of the WFT magnified by his importance.
`Thus, factory control Systems utilized in today's wafer
`tabs are passive and do not enable a high degree of auto
`mation. These systems are very dependent on WFTs and
`other factory staff to monitor the state of the factory, to
`continuously react to change, to make rapid logistical deci
`Sions, and to initiate and coordinate factory control activity
`in a timely manner. These WFTS are agents, providing the
`active element that is lacking in factory control Systems. AS
`a result, factory effectiveneSS in the highly competitive
`semiconductor industry is quite dependent on the availabil
`ity, productivity, skill level, and consistency of these human
`agents. WFTs must monitor and operate a number of tools
`located in various bays in a fab. They are forced to multiplex
`acroSS tools, bays, material handling Systems and a variety
`of factory control Systems. As a fab's production ramps and
`more complex processes are introduced, it becomes more
`difficult to meet the increased complexity and volume with
`out increasing staff or system capabilities. WFTs visibility of
`upstream and downstream operations, tool State, work-in
`proceSS and resource availability is limited.
`However, key logistical decisions are frequently based on
`this limited and dated information, which is only partially
`provided by factory control systems. WFTS spend a signifi
`cant amount of time interacting with Systems, monitoring
`factory events and State changes, and performing other
`non-value added functions, Such as MES logging. Shift
`changes disrupt the operation of the fab as the technicians
`are temporarily unable to provide required monitoring and
`coordination. Despite the best efforts of the technicians,
`utilization of tools Suffer, adversely impacting other key
`factory metrics including cycle time, inventory levels, fac
`tory output and mix. With the need for intrabay material
`handling to transport 12-inch wafers in new 300 mm wafer
`55
`fabs, Significant additional complexity is introduced. Con
`ventional factory control Systems are not capable of provid
`ing this level of detailed Scheduling and execution control.
`The present invention is directed to resolving, or at least
`reducing, one or all of the problems mentioned above.
`
`60
`
`SUMMARY OF THE INVENTION
`
`The invention, in its various aspects and embodiments, is
`a method and apparatus for Scheduling in an automated
`manufacturing environment. In one embodiment, a method
`comprises detecting an occurrence of a predetermined event
`
`65
`
`4
`in a proceSS flow; notifying a Software Scheduling agent of
`the occurrence, and reactively Scheduling an action from the
`Software Scheduling agent responsive to the detection of the
`predetermined event. Alternative embodiments include a
`computing System programmed to perform this method and
`a computer-readable program Storage medium encoded with
`instructions to implement this method. In Still another
`embodiment, the invention includes automated manufactur
`ing environment, comprising a process flow and a comput
`ing System. The computing System further includes a plu
`rality of Software Scheduling agents residing thereon, the
`Software Scheduling agents being capable of reactively
`Scheduling appointments for activities in the process flow
`responsive to a plurality of predetermined events.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The invention may be understood by reference to the
`following description taken in conjunction with the accom
`panying drawings, in which like reference numerals identify
`like elements, and in which:
`FIG. 1 conceptually depicts a portion of one particular
`embodiment of a proceSS flow constructed and operated in
`accordance with the present invention;
`FIG. 2 conceptually depicts, in a partial block diagram,
`Selected portions of the hardware and Software architectures,
`respectively, of the computing devices in FIG. 1;
`FIG. 3 conceptually depicts one particular implementa
`tion of the apparatus of FIG. 1, i.e., in a portion of a process
`flow from a Semiconductor fabrication facility, and the
`manner in which it Schedules appointments for the consump
`tion of resources,
`FIG. 4 conceptually depicts a calendar of booked appoint
`ments,
`FIG. 5 conceptually illustrates three related calendars of
`booked appointments,
`FIG. 6A and FIG. 6B conceptually illustrates the changing
`of booked appointments to take advantage of early Start
`times, and
`FIG. 7A and FIG. 7B conceptually illustrate two circum
`stances in which booked appointments are changed to
`accommodate unexpectedly long durations for preceding
`booked appointments.
`While the invention is susceptible to various modifica
`tions and alternative forms, specific embodiments thereof
`have been shown by way of example in the drawings and are
`herein described in detail. It should be understood, however,
`that the description herein of Specific embodiments is not
`intended to limit the invention to the particular forms
`disclosed, but on the contrary, the intention is to cover all
`modifications, equivalents, and alternatives falling within
`the Spirit and Scope of the invention as defined by the
`appended claims.
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`Illustrative embodiments of the invention are described
`below. In the interest of clarity, not all features of an actual
`implementation are described in this specification. It will of
`course be appreciated that in the development of any Such
`actual embodiment, numerous implementation-specific
`decisions must be made to achieve the developerS Specific
`goals, Such as compliance with System-related and busineSS
`related constraints, which will vary from one implementa
`tion to another. Moreover, it will be appreciated that Such a
`development effort, even if complex and time-consuming,
`
`

`

`6
`desktop computer, a mini-computer, a mainframe computer,
`or a Supercomputer. The computing device 110 may even be,
`in Some alternative embodiments, a processor or controller
`embedded in the process tool 115. The invention also is not
`limited to UNIX-based operating systems. Alternative oper
`ating systems (e.g., WindowsTM-, LinuxTM-, or disk operat
`ing system (“DOS”)-based) may also be employed. The
`invention is not limited by the particular implementation of
`Such features in the computing device 110.
`The computing device 110 also includes a processor 205
`communicating with storage 210 over a bus system 215. The
`Storage 210 typically includes at least a hard disk (not
`shown) and random access memory (“RAM”) (also not
`shown). The computing device 110 may also, in Some
`embodiments, include removable Storage Such as an optical
`disk 230, or a floppy electromagnetic disk 235, or some
`other form, Such as a magnetic tape (not shown) or a Zip disk
`(not shown). The computing device 110 includes a monitor
`240, keyboard 245, and a mouse 250, which together, along
`with their associated user interface software 255 comprise a
`user interface 260. The user interface 260 in the illustrated
`embodiment is a graphical user interface (“GUI”), although
`this is not necessary to the practice of the invention.
`Each computing device 110 includes, in the illustrated
`embodiment, a Software agent 265 residing in the Storage
`210. Note that the software agents 265 may reside in the
`process flow 100 in places other than the computing devices
`110. The situs of the software agent 265 is not material to the
`practice of the invention. Note also that, Since the Situs of the
`Software agents 265 is not material, Some computing devices
`110 may have multiple software agents 265 residing thereon
`while other computing devices 110 may not have any. Thus,
`there need not be a one-to-one correspondence between the
`computing devices 100 and the process tools 115. Software
`component(s) 270, 280 of an automated MES, such as
`WORKSTREAMTM, and of an AMHS, respectively, also
`reside on at least one computing device 110. AS with the
`software agent(s) 265, the software components 270, 280
`may reside anywhere within the process flow 100.
`Referring now to FIG. 1 and FIG. 2, the software agents
`265 each represent Some "manufacturing domain entity,”
`e.g., a lot 130, a process tool 115, a resource, a PM, or a
`Qual. A process tool 115 may be a fabrication tool used to
`fabricate Some portion of the waferS 135, i.e., layer, pattern,
`dope, or heat treat the wafers 135. Or, the process tool 115
`may be a metrology tool used to evaluate the performance of
`various parts of the process flow 100. The software agents
`265, collectively, are responsible for efficiently scheduling
`and controlling the lots 130 of wafers 135 through the
`fabrication process. In furtherance of these objectives, the
`Software agents 265 interface with the software components
`270, 280 of the MES and AMHS, respectively, and are
`integrated with other existing factory control Systems (not
`shown). The Software agents 265, where appropriate, also
`interface with the process tools 115 and other equipment
`through a Software implemented “equipment interface”
`(“EI”) (not shown). As will be apparent to those skilled in
`the art having the benefit of this disclosure, the manner in
`which this interface and integration occurs is implementa
`tion specific, depending upon the makeup and configuration
`of the MES, the AMHS, and the other factory control
`Systems.
`Of particular interest to the present invention, the Software
`agents 265 reactively Schedule, initiate, and execute activi
`ties on behalf of their respective manufacturing domain
`entities. In the illustrated embodiment, the Software agents
`265 also proactively schedule activities. Collectively, the
`
`Case 4:20-cv-00991 Document 1-4 Filed 12/31/20 Page 11 of 24 PageID #: 137
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 6,968,248 B1
`
`15
`
`25
`
`35
`
`40
`
`S
`would be a routine undertaking for those of ordinary skill in
`the art having the benefit of this disclosure.
`FIG. 1 conceptually illustrates a portion of one particular
`embodiment of a process flow 100 constructed and operated
`in accordance with the present invention. The process flow
`100 fabricates semiconductor devices. However, the inven
`tion may be applied to other types of manufacturing pro
`cesses. Thus, in the process flow 100 discussed above, the
`lots 130 of wafers 135 may be more generically referred to
`as “work pieces.” The process tools 115 and any process
`operations performed thereon need not necessarily be related
`to the manufacture of Semiconductor devices in all embodi
`ments. However, for the sake of clarity and to further an
`understanding of the invention, the terminology pertaining
`to Semiconductor fabrication is retained in disclosing the
`invention in the context of the illustrated embodiments.
`The illustrated portion of the process flow 100 includes
`two stations 105, each station 105 including a computing
`device 110 communicating with a process tool 115. The
`stations 105 communicate with one another over commu
`nications links 120. In the illustrated embodiment, the
`computing devices 110 and the communications links 120
`comprise a portion of a larger computing System, e.g., a
`network 125. The process tools 115 in FIG. 1 are processing
`lots 130 of wafers 135 that will eventually become inte
`grated circuit devices. The process flow 100 also includes
`portions of a MES and an automated materials handling
`system (“AMHS”), neither of which is shown for the sake of
`clarity, and other integrated factory controls. The AMHS
`“handles” the lots 130 and facilitates their transport from
`one station 105 to another, as well as other locations in the
`process flow 100.
`AS mentioned above, the computing devices 110 may be
`part of a larger computing System 125 by a connection over
`the communications linkS 120. Exemplary computing Sys
`tems in Such an implementation would include local area
`networks (“LANs”), wide area networks (“WANs”), system
`area networks ("SANs”), intranets, or even the Internet. The
`computing System 125 employs a networked client/server
`architecture, but alternative embodiments may employ a
`peer-to-peer architecture. Thus, in Some alternative embodi
`ments, the computing devices 110 may communicate
`directly with one another. The communications links 120
`may be wireless, coaxial cable, optical fiber, or twisted wire
`pair links, for example. The computing System 125, in
`embodiments employing one, and the communications links
`120 will be implementation specific and may be imple
`mented in any Suitable manner known to the art. The
`computing System 125 may employ any Suitable communi
`cations protocol known to the art, e.g., Transmission Control
`Protocol/Internet Protocol (“TCP/IP”).
`FIG. 2 depicts selected portions of the hardware and
`Software architectures of the computing devices 110. Some
`aspects of the hardware and Software architecture (e.g., the
`individual cards, the basic input/output system (“BIOS"),
`input/output drivers, etc.) are not shown. These aspects are
`omitted for the Sake of clarity, and So as not to obscure the
`present invention. AS will be appreciated by those of ordi
`nary skill in the art having the benefit of this disclosure,
`however, the Software and hardware architectures of the
`computing devices 110 will include many Such routine
`features.
`In the illustrated embodiment, the computing device 110
`is a WorkStation, employing a UNIX-based operating System
`200, but the invention is not so limited. The computing
`device 110 may be implemented in virtually any type of
`electronic computing device Such as a notebook computer, a
`
`

`

`7
`Software agents 265, among other things, Schedule ahead for
`each lot 130 one or more operations on a Specific qualified
`process tool 115, including transports and required
`resources, as discussed further below. This includes making
`optimizing decisions Such as running an incomplete batch,
`as opposed to waiting for an approaching lot 130, and
`scheduling opportunistic preventive maintenance (“PM”)
`procedures or qualification tests ("Quals”) to meet specifi
`cations. The software agents 265 schedule and initiate
`activities Such as lot transport and processing, perform MES
`transactions, monitor processing and transport; and react to
`unscheduled activities or deviations from Scheduled activi
`ties. Furthermore, in the illustrated embodiment, the Soft
`ware agents 265 are configurable in a manner that allows a
`user to influence their behavior in order to tune the perfor
`mance of the process flow 100.
`In the illustrated embodiment, the scheduling agents 265
`are typed by the manufacturing domain entities they repre
`Sent. There may be many different types of Scheduling
`agents 265, depending on the implementations. The prin
`ciple types of Scheduling agents 265 in the illustrated
`embodiment, shown in FIG. 3, include:
`a Lot Scheduling Agent (“LSA') 305 that schedules
`activities on behalf of lots 130 of wafers 135;
`a Machine Scheduling Agent (“MSA”) 310 that schedules
`activities on behalf of process tools 115;
`a PM Scheduling Agent (“PMSA”) 315 that schedules
`activities on behalf of PMs and Quals (not shown); and
`a Resource Scheduling Agent (“RSA')320 that schedules
`activities on behalf of resources (not shown).
`However, other types may be employed in addition to, or in
`lieu of, those shown. The roles and functions of each of these
`of scheduling agents 265 in the illustrated embodiment will
`be more fully discussed below.
`Some of these activities are Scheduled reactively, i.e., in
`response to events occurring in, e.g., the process flow 100,
`in accordance with the present invention. In one particular
`embodiment, this includes:
`detecting an occurrence of a predetermined event in a
`process flow, e.g., the process flow 100;
`notifying a Subscribing Software Scheduling agent, e.g.,
`the LSA305, the MSA310, the PMSA315, or the RSA
`320, of the occurrence; and
`reactively Scheduling an action responsive to the detection
`of the predetermined event.
`The predetermined event and the reactively Scheduled action
`will be implementation Specific. Several exemplary events
`and reactively Scheduled actions are discussed further
`below.
`Note that this type of reactive Scheduling implies a
`knowledge that Such events are occurring within the proceSS
`flow 100. To this end, the software agents 265 respond to
`additional Software components, not shown, known as “pub
`lishers” (or, “notifiers”) and “subscribers.” Agents create
`listeners which Subscribe to one or more notifiers. Notifiers
`“publish' events to their subscribing listeners when changes
`occur within the factory. Listeners, in turn, call their Sub
`scribing software agent 265. For example, when a MSA is
`created, the agent will create a machine listener that Sub
`scribes to specific machine events. The MSA is interested in
`receiving any changes that occur to a particular machine. For
`example, if the availability of the machine changes, the
`publisher will publish the event to all of its listeners. The
`machine listener will then notify the subscribing MSA about
`the event. The subscribing MSA will then react appropri
`ately.
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Case 4:20-cv-00991 Document 1-4 Filed 12/31/20 Page 12 of 24 PageID #: 138
`
`US 6,968,248 B1
`
`8
`More particularly, when the software agents 265 are
`created, they create listenerS and Subscribe to published
`events by adding the listeners to the event publisher. Lis
`teners enable the software agents 265 to react to events in the
`process flow 100 in an appropriate manner. Table 1, below,
`lists the relevant software agents 265 employed in the
`illustrated embodiment, the listeners they create, and a
`description of their function. Note that the use of publishers
`and Subscribers via listenerS and notifiers in this manner is
`known to the art, and any Suitable technique may be
`employed.
`
`TABLE 1.
`
`Machine Listener
`
`Process Operation
`Listener
`
`Process Listener
`
`Alarm Listener
`
`Appointment State
`Change Listener
`
`LSA
`
`Alarm Listener
`
`Software Agents and Associated Listeners
`Software Agent Associated Listeners Reason for Subscribing
`RSA (e.g., a
`Equipment Event
`Listens to events from the Equip
`resource load-
`Listener
`ment Interface. Events may include
`ing agent)
`loading started, charging started,
`loading completed, charging
`completed, etc.
`Listens to MES events that occur
`on the machine. For example, it
`listens when a machine is not
`available and reacts appropriately.
`Listens to changes within a process
`operation since it might change the
`processing capability of a machine.
`Listens to changes within a process
`since it might change the process
`ing capability of a machine.
`Listens to alarms that have been set
`at start or end times for scheduled
`activities.
`Schedule Advertise- Listens to "advertised time slots
`ment Listener
`for scheduled appointments that
`have not started.
`Listens to any corresponding
`appointments on scheduling
`calendars of other agents that
`might affect its calendar.
`Listens to alarms that have been
`set at start or end times for
`scheduled activities.
`Listens to MES events that occur
`on the lot, such as product change,
`priority change, wafer count, and
`SO O.
`Listens to changes in the location
`of the lot of represented by the
`LSA.
`Listens to any corresponding
`appointments on scheduling
`calendars of other agents that
`might affect its calendar.
`Listens to alarms that have been set
`at start or end times for scheduled
`activities.
`Listens to changes within a process
`operation since it might change the
`processing capabil

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket