Embodiments relate to the field of semiconductor manufacturing and, in particular, apparatuses and methods for simulating fluid flow systems and/or thermal systems to enable zone control optimization.
In semiconductor fabrication environments, the control of the flow of fluids (e.g., gasses) is an important factor in order to provide process uniformity on the surface of the wafer. Typically, the flow of gasses into a chamber is implemented through a showerhead that includes a plurality of holes. The holes can be grouped into zones for easier control. However, the determination of which holes to provide in each zone is not a simple task. This is due, at least in part, to cross-talk between the gas that flows through each hole in the showerhead. That is, changing the gas flow in one hole can also impact process uniformity directly below the hole and in areas that are adjacent to the hole. In addition to controlling the flow of fluids, thermal control can also be grouped into zones. These thermal zones also include cross-talk concerns that makes delineation of thermal zones difficult.
Existing solutions to flow control systems require physical models and extensive design of experiment (DoE) and other testing. This is an expensive and time consuming process, especially when the physical models are needed for many different processing tools within a semiconductor fabrication facility.
Embodiments disclosed herein include a method for optimizing zones in a fluid flow system. In an embodiment, the method comprises running a baseline simulation for the fluid flow system, and running a plurality of sensitivity simulations, where each sensitivity simulation perturbs a flowrate through one of a plurality of pitch circles in the fluid flow system by an offset percentage. In an embodiment, the method further comprises generating a sensitivity matrix from the plurality of sensitivity simulations, and optimizing an objective function to enable grouping of the plurality of pitch circles into a plurality of zones.
Embodiments disclosed herein include a method for optimizing zones in a thermal control plate. In an embodiment, the method comprises running a baseline simulation for the thermal control plate, and running a plurality of sensitivity simulations, where each sensitivity simulation perturbs an energy input for one of a plurality of heating elements in the thermal control plate by an offset percentage. In an embodiment, the method may further comprise generating a sensitivity matrix from the plurality of sensitivity simulations, and optimizing an objective function to enable grouping of the heating elements into a plurality of zones.
Embodiments may also comprise a method for optimizing zone grouping in a system with a plurality of inputs. In an embodiment, the method comprises running a baseline simulation for the system, where the baseline simulation comprises applying a uniform stimulus to each of the inputs. In an embodiment, the method further comprises running a plurality of sensitivity simulations, where each sensitivity simulation perturbs a stimulus to one of the plurality of inputs in the system by an offset percentage. In an embodiment, the method may further comprise generating a sensitivity matrix from the plurality of sensitivity simulations, and optimizing an objective function to enable grouping of the plurality of inputs into a plurality of zones.
Systems described herein include systems and methods for simulating fluid flow systems and/or thermal systems to enable zone control optimization. In the following description, numerous specific details are set forth in order to provide a thorough understanding of embodiments. It will be apparent to one skilled in the art that embodiments may be practiced without these specific details. In other instances, well-known aspects are not described in detail in order to not unnecessarily obscure embodiments. Furthermore, it is to be understood that the various embodiments shown in the accompanying drawings are illustrative representations and are not necessarily drawn to scale.
Various embodiments or aspects of the disclosure are described herein. In some implementations, the different embodiments are practiced separately. However, embodiments are not limited to embodiments being practiced in isolation. For example, two or more different embodiments can be combined together in order to be practiced as a single device, process, structure, or the like. The entirety of various embodiments can be combined together in some instances. In other instances, portions of a first embodiment can be combined with portions of one or more different embodiments. For example, a portion of a first embodiment can be combined with a portion of a second embodiment, or a portion of a first embodiment can be combined with a portion of a second embodiment and a portion of a third embodiment.
The embodiments illustrated and discussed in relation to the figures included herein are provided for the purpose of explaining some of the basic principles of the disclosure. However, the scope of this disclosure covers all related, potential, and/or possible, embodiments, even those differing from the idealized and/or illustrative examples presented. This disclosure covers even those embodiments which incorporate and/or utilize modern, future, and/or as of the time of this writing unknown, components, devices, systems, etc., as replacements for the functionally equivalent, analogous, and/or similar, components, devices, systems, etc., used in the embodiments illustrated and/or discussed herein for the purpose of explanation, illustration, and example.
As noted above, cross-talk between zones in a fluid or thermal system makes process uniformity difficult to control. For example, changing the gas flow in one zone of a showerhead can also impact process uniformity in other adjacent zones. That is to say, improperly grouping together inputs to the system may result in a system that is more difficult to tune in order to achieve the desired process uniformity.
Accordingly, embodiments disclosed herein may be directed to a model based approach for zone optimization in a system with multiple inputs that suffer from cross-talk. The use of a model based approach has significant advantages over existing solutions. One advantage is that there is no need to fabricate a physical model. This can be a time saving and expense saving benefit of embodiments disclosed herein. Another advantage is that the model can be run without extensive experimentation on real processing tools. This reduces research and development costs and frees up tools for revenue generating tasks. The model based optimization approach described herein is also applicable to many types of tools, chambers, and/or environments. As such, the benefits of embodiments disclosed herein can be applied throughout a semiconductor fabrication facility (or any other manufacturing environment).
In the case of a showerhead, each pitch circle may be an input that comprises a plurality of holes. Since the diameter of the pitch circles are non-uniform, the number of holes in each pitch circle may be non-uniform as well. For example, outer pitch circles will have more holes than inner pitch circles. In the case of a heating plate, each input may be a resistive heater. The resistive heater may be a conductive trace that has a ring shaped path, though other resistive heater layouts may also be used. The diameter of each resistive heaters may be non-uniform as well.
The process modeling in accordance with embodiments of the present disclosure begins with the generation of a model. The model may be a digital representation of the physical structure of the system (e.g., showerhead, heating plate, etc.) that is compatible with simulation software in order to predict processing outcomes (e.g., material deposition rates, etch rates, elemental concentrations, temperatures, etc.) on a substrate (such as a wafer). The model is used to generate a baseline simulation.
In the case of a showerhead, the baseline simulation may include flowing a gas through the holes of the showerhead with a uniform flowrate through each of the holes. After the baseline simulation, a plurality of sensitivity simulations are run on the model. Each sensitivity simulation perturbs the gas flow rate of one pitch circle of the showerhead at a time in order to determine a sensitivity of the system. A sensitivity matrix is generated from the sensitivity simulation data. The sensitivity matrix can be integrated into an objective function that is optimized in order to properly group the pitch circles into a plurality of zones.
In the case of a heating plate, the baseline simulation may include applying a uniform energy input to each resistive heater. After the baseline simulation, a plurality of sensitivity simulations are run on the model. Each sensitivity simulation perturbs the energy input to one of the resistive heaters at a time in order to determine a sensitivity of the system. A sensitivity matrix is generated from the sensitivity simulation data. The sensitivity matrix can be integrated into an objective function that is optimized in order to properly group the resistive heaters into a plurality of zones.
While embodiments disclosed here explicitly describe a showerhead embodiment and a heating plate embodiments, other embodiments are not limited. It is to be appreciated that modeling processes such as those described in greater detail herein can be applicable to many different systems that include the flow of fluids, heat transfer, or any other similarly behaving property that suffers from cross-talk between inputs.
Referring now to
While shown as a single monolithic substrate 122, other embodiments may include a showerhead 120 with multiple sub-components that are coupled together to form a larger substrate 122. The substrate 122 may comprise any suitable material or materials. For example, the substrate 122 may comprise aluminum, titanium, ceramics, or the like. In other embodiments, a substrate 122 may have an exterior coating to protect the showerhead 120 from a plasma environment on the bottom side of the showerhead 120.
In an embodiment, the holes 125 may be substantially uniform to each other. That is, each of the holes 125 may have substantially the same diameter. Though, in other embodiments non-uniform diameter holes 125 may also be used. In an embodiment, the holes 125 may be arranged in a plurality of groups. For example, each group in
The diameters of the pitch circles may increase in a regular pattern (i.e., at a regular pitch). For example, for a 300 mm substrate a suitable pitch between the pitch circles may be approximately 10 mm or greater. In other embodiments, the spacing between pitch circles may not be uniform. For example, the spacing between pitch circles towards a center of the showerhead 120 may be smaller than a spacing between pitch circles towards an outer edge of the showerhead 120.
In an embodiment, a first spacing between adjacent holes 125 in a first pitch circle may be substantially similar to a second spacing between adjacent holes 125 in a second pitch circle that is larger than the first pitch circle. Since the second pitch circle has a larger circumference, there may be more holes 125 in the larger second pitch circle compared to the first pitch circle. Accordingly, when each pitch circle is provided a uniform flow of gas, the flowrate through individual holes may be non-uniform. In the case of the first pitch circle and the second pitch circle described above, the holes 125 in the first pitch circle may have a higher flowrate than the holes 125 in the second pitch circle since there are more holes 125 in the second pitch circle.
In some embodiments, the showerhead 120 is configured to allow for uniform gas flow to each of the pitch circles. In other embodiments, the showerhead 120 is configured to allow for non-uniform gas flow to each of the pitch circles. The ability to provide non-uniform gas flows enables greater control of process uniformity. Additionally, non-uniform gas flows can be leveraged in order to initiate sensitivity modeling that can be used for zone grouping optimization, as will be described in greater detail below.
Referring now to
The gas may be confined around an upper side of the showerhead 220 by an enclosure 217 or the like. The enclosure 217 may include baffles, or other flow obstructing components in order to direct and/or control gas flow directed to one or more of the pitch circles. A gas inlet 218 may feed gas 219 into the enclosure 217. The gas 219 may flow through the showerhead 220 into an interior of the chamber 210. In an embodiment, the gas within the chamber 210 may be ionized or the like in order to form a plasma within the chamber 210. Bias electrodes (not shown) may be used to initiate and maintain the plasma in some embodiments.
In an embodiment, a pedestal 212 may be provided below the showerhead 220. The pedestal 212 may comprise an electrostatic chuck (ESC) or other structure to secure a substrate 215 to the pedestal 212. The substrate 215 may be a wafer, such as a silicon wafer, or any other substrate suitable for processing in the chamber 210. The substrate 215 may have any form factor, such as a 300 mm wafer, a 450 mm wafer, or a wafer with a smaller or larger diameter.
In an embodiment, the control of gas flow through the showerhead 220 can be used to improve process result uniformity across the surface of the substrate 215. Process uniformity can refer to the ability to have a measureable outcome that is substantially the same across the surface of the substrate. For example, a measurement of a parameter at a center of the substrate 215 may be similar to a measurement of the same parameter proximate to an edge of the substrate 215. Process uniformity may apply to many different parameters. For example, it may be desirable to control etch rate, deposition rate, elemental composition and/or concentration, layer thickness, etch profile uniformity, temperatures, and/or the like with high process uniformity across the substrate 215.
In some embodiments, the pitch circles of the showerhead are grouped into a plurality of zones. That is, two or more adjacent pitch circles may be controlled together as a single zone. This allows for easier control (since it reduces the number of controllers that are need) and can simplify the design of the gas distribution assembly (e.g., within the enclosure 217) since every pitch circle does not need to be independently controlled.
However, due to cross-talk between different pitch circles, optimizing the zone grouping is not straight forward. For example, even though the smallest diameter pitch circle is proximate to the center of the substrate 215, the flow rate through the smallest pitch circle will still have an effect on the processing conditions and outcome proximate to the edge of the substrate 215. Examples of these interrelated effects are shown in
Referring now to
As illustrated in the graphs in
Referring now to
In an embodiment, the process 460 may begin with operation 461, which comprises running a baseline simulation for a fluid flow system. The baseline simulation is implemented by developing a model. The model may be a digital representation of the physical structure of the system (e.g., showerhead) that is compatible with simulation software in order to predict processing outcomes (e.g., material deposition rates, etch rates, elemental concentrations, temperatures, etc.) on a substrate. In an embodiment, the model includes a plurality of holes through which the fluid (e.g., gas) flows. The holes may be arranged in a plurality of pitch circles in some embodiments. There may be between five and thirty pitch circles in some embodiments. Though, a lower number or a greater number of pitch circles may also be used in some instances.
After the model has been developed, the baseline simulation is implemented. The baseline simulation may include simulating a process where the flow through each hole in the system is uniform in accordance with Equation 1, where Qhole is the flow rate through each hole, {dot over (m)}total is the total flow through the system, and nholes total is the total number of holes in the system. The baseline simulation also is used to generate a baseline flow through each pitch circle using Equation 2, where QPC is the flow rate through a given pitch circle and nholesPC is the number of holes in the given pitch circle (PC).
The results on the substrate are then calculated and represented by a baseline matrix ysubstrate BL. The baseline matrix may be a single column (since there is only one baseline result), and there may be any number of rows (depending on how granular the desired data needs to be). For example, in a 300 mm wafer substrate, the 150 mm from center to edge may be expressed as 150 rows (i.e., one row for each millimeter from center to edge). Using such a construction, the baseline matrix may be a (150×1) matrix.
In an embodiment, the process 460 may continue with operation 462, which comprises running a plurality of sensitivity simulations. In an embodiment, each sensitivity simulation perturbs a flowrate through one of the plurality of pitch circles by an offset percentage. For example, if there are twelve pitch circles, there will be twelve sensitivity simulations. In each sensitivity simulation, the flowrate in one of the pitch circles will be perturbed, and the remaining pitch circles will maintain the baseline flow rate. The offset percentage may be any desired offset amount (either positive or negative). For example, the offset percentage may be up to 1%, up to 5%, up to 10%, or up to 20% (all of which may be either a positive or negative percentage). In an embodiment, the flowrate through the perturbed pitch circle QPC may be defined by Equation 3, where P is the offset percentage. The results on the substrate are then calculated and represented by a perturbation matrix ysubstrate PC. The perturbation matrix may have a form of (150×C) where C is the number of pitch circles in the system.
In an embodiment, the process 460 may continue with operation 463, which comprises generating a sensitivity matrix S from the plurality of sensitivity simulations. The sensitivity matrix S may be generated through the use of Equation 4. S may have the same form (e.g., (150×C)) as the perturbation matrix ysubstrate PC.
In an embodiment, the process 460 may continue with operation 464, which comprises optimizing an objective function to enable grouping of the plurality of pitch circles into a plurality of zones. The objective function ysubstrate OPT is represented in Equation 5. The objective function is minimized by solving for dF for each column of the objective function matrix (i.e., for each pitch circle). In an embodiment, ysubstrate OPT may refer to a mean value or a value based on experimental analysis if the model has been calibrated with experimental data.
The solved dF values for each pitch circle can then be used in order to optimize the zone assignment for the pitch circles. For example, pitch circles with comparable dF values can be grouped into a zone together. In one embodiment, a clustering algorithm can be used in order to group the pitch circles into any desired number of zones based on the calculated dF values. Suitable clustering algorithms may include, but are not limited to centroid based or partition clustering, hierarchical based clustering, distribution based clustering, or density based clustering. Depending on the results of the optimization, each zone may include different numbers of pitch circles.
Referring now to
In addition to being applicable to fluid flow systems (e.g., flow of gasses and liquids), embodiments disclosed herein may also be applicable to heat transfer application. For example, a heating plate for a chuck or a lamp array for a thermal annealing system may benefit from optimized zone groupings. An example of a heating plate configuration is shown in
Referring now to
Referring now to
The gas may be confined around an upper side of the showerhead 720 by an enclosure 717 or the like. The enclosure 717 may include baffles, or other flow obstructing components in order to direct and/or control gas flow directed to one or more of the pitch circles. A gas inlet 718 may feed gas 719 into the enclosure 717. The gas 719 may flow through the showerhead 720 into an interior of the chamber 710. In an embodiment, the gas within the chamber 710 may be ionized or the like in order to form a plasma within the chamber 710. Bias electrodes (not shown) may be used to initiate and maintain the plasma in some embodiments.
In an embodiment, a pedestal 712 may be provided below the showerhead 720. The pedestal 712 may comprise an ESC or other structure to secure a substrate 715 to the pedestal 712. In an embodiment, a heating plate 740 may be provided on the pedestal 712. While shown as distinct components, other embodiments may include a pedestal 712 with an integrated heating plate 740. The heating plate 740 may be similar to the heating plate 640 described in greater detail above. For example, the heating plate 740 may comprise a substrate 741 with a plurality of embedded heating elements 745. The substrate 715 may be a wafer, such as a silicon wafer, or any other substrate suitable for processing in the chamber 710. The substrate 715 may have any form factor, such as a 300 mm wafer, a 450 mm wafer, or a wafer with a smaller or larger diameter.
In an embodiment, the control of heat transfer across the surface of the substrate 715 by the heating plate 740 may improve process result uniformity across the surface of the substrate 715. Process uniformity can refer to the ability to have a measureable outcome that is substantially the same across the surface of the substrate. For example, a measurement of a parameter at a center of the substrate 715 may be similar to a measurement of the same parameter proximate to an edge of the substrate 715. Process uniformity may apply to many different parameters. For example, it may be desirable to control etch rate, deposition rate, elemental composition and/or concentration, layer thickness, etch profile uniformity, temperatures, and/or the like with high process uniformity across the substrate 715.
In some embodiments, the heating elements 745 of the heating plate 740 are grouped into a plurality of zones. That is, two or more adjacent heating elements 745 may be controlled together as a single zone. This allows for easier control (since it reduces the number of variables that need to be controlled) and can simplify the design of the heating plate 740 since every heating element 745 does not need to be independently controlled.
However, due to cross-talk between different heating elements 745, optimizing the zone grouping is not straight forward. For example, even though the smallest diameter heating element 745 is proximate to the center of the substrate 715, the flow rate through the smallest heating element will still have an effect on the processing conditions and outcome proximate to the edge of the substrate 715. Examples of these interrelated effects are similar to those shown in
Accordingly, embodiments disclosed herein utilize a form of matrix based computation in order to account for the various effects of each heating element 745 across the surface of the substrate 715 in order to optimize the proper zone grouping of the heating elements 745.
Referring now to
In an embodiment, the process 870 may begin with operation 871, which comprises running a baseline simulation for a thermal control plate. The baseline simulation is implemented by developing a model. The model may be a digital representation of the physical structure of the system (e.g., thermal control plate) that is compatible with simulation software in order to predict processing outcomes (e.g., material deposition rates, etch rates, elemental concentrations, temperatures, etc.) on a substrate. In an embodiment, the model includes a plurality of heating elements. The heating elements may be arranged in a plurality of concentric rings in some embodiments. There may be between five and thirty rings in some embodiments. Though, a lower number or a greater number of rings may also be used in some instances.
After the model has been developed, the baseline simulation is implemented. The baseline simulation may include simulating a process where the energy input per unit length of the trace for each heating element in the system is uniform. Accordingly, a larger heating element will produce more total heat than a smaller heating element since more energy will be inputted into the larger heating element to account for the larger circumference of the heating element compared to the smaller heating element.
The results on the substrate are then calculated and represented by a baseline matrix ysubstrate BL. The baseline matrix may be a single column (since there is only one baseline result), and there may be any number of rows (depending on how granular the desired data needs to be). For example, in a 300 mm wafer substrate, the 150 mm from center to edge may be expressed as 150 rows (i.e., one row for each millimeter from center to edge). Using such a construction, the baseline matrix may be a (150×1) matrix.
In an embodiment, the process 870 may continue with operation 872, which comprises running a plurality of sensitivity simulations. In an embodiment, each sensitivity simulation perturbs an energy input for one of the plurality of heating elements by an offset percentage. For example, if there are twelve heating elements, there will be twelve sensitivity simulations. In each sensitivity simulation, the energy input to one of the heating elements will be perturbed, and the remaining heating elements will maintain the baseline energy input. The offset percentage may be any desired offset amount (either positive or negative). For example, the offset percentage may be up to 1%, up to 5%, up to 10%, or up to 20% (all of which may be either a positive or negative percentage). The results on the substrate are then calculated and represented by a perturbation matrix ysubstrate HE. The perturbation matrix will have a form of (150×C) where C is the number of pitch circles in the system.
In an embodiment, the process 870 may continue with operation 873, which comprises generating a sensitivity matrix S from the plurality of sensitivity simulations. The sensitivity matrix S may be generated using processes and equations similar to Equation 4. S may have the same form (e.g., (150×C)) as the perturbation matrix ysubstrate PC described above.
In an embodiment, the process 870 may continue with operation 874, which comprises optimizing an objective function to enable grouping of the plurality of heating elements into a plurality of zones. The objective function ysubstrate OPT is represented in Equation 6. The objective function is minimized by solving for dF for each column of the objective function matrix (i.e., for each heating element).
The solved dF values for each heating element can then be used in order to optimize the zone assignment for the heating elements. For example, heating elements with comparable dF values can be grouped into a zone together. In one embodiment, a clustering algorithm can be used in order to group the heating elements into any desired number of zones based on the calculated dF values. Suitable clustering algorithms may include, but are not limited to centroid based or partition clustering, hierarchical based clustering, distribution based clustering, or density based clustering. Depending on the results of the optimization, each zone may include different numbers of heating elements.
In the embodiments described in greater detail above, a fluid flow system and a thermal system are optimized. However, it is to be appreciated that any system with a plurality of inputs that have cross-communication between the inputs may benefit from embodiments disclosed herein.
Referring now to
In an embodiment, the process 980 may begin with operation 981, which comprises running a baseline simulation for the system. The baseline simulation is implemented by developing a model. The model that is generated may be a digital model with functionality similar to other models disclosed herein. There may be between five and thirty inputs in some embodiments. Though, a lower number or a greater number of inputs may also be used in some instances.
After the model has been developed, the baseline simulation is implemented. The baseline simulation may include simulating a process where a stimulus to each input is uniform across the system. For example, the stimulus may refer to a flow rate of a fluid, an electrical power, a coolant pulse duration, or the like. The results on the substrate are then calculated and represented by a baseline matrix ysubstrate BL. The baseline matrix may be similar to other baseline matrices described in greater detail herein.
In an embodiment, the process 980 may continue with operation 982, which comprises running a plurality of sensitivity simulations. In an embodiment, each sensitivity simulation perturbs a stimulus to one of the inputs by an offset percentage. For example, if there are twelve inputs, there will be twelve sensitivity simulations. In each sensitivity simulation, the stimulus to one of the inputs will be perturbed, and the remaining inputs will maintain the baseline stimulus. The offset percentage may be any desired offset amount (either positive or negative). For example, the offset percentage may be up to 1%, up to 5%, up to 10%, or up to 20% (all of which may be either a positive or negative percentage). The results on the substrate are then calculated and represented by a perturbation matrix. The perturbation matrix may be similar to other perturbation matrices described in greater detail herein.
In an embodiment, the process 980 may continue with operation 983, which comprises generating a sensitivity matrix from the plurality of sensitivity simulations. The sensitivity matrix may be generated and/or calculated through equations and/or processes similar to any of the other sensitivity matrices described in greater detail herein.
In an embodiment, the process 980 may continue with operation 984, which comprises optimizing an objective function to enable grouping of the plurality of inputs into a plurality of zones. The objective function is minimized by solving for dF for each column of the objective function matrix (i.e., for each input). The objective function may be similar to any of the objective functions described in greater detail herein.
The solved dF values for each input can then be used in order to optimize the zone assignment for the heating elements. For example, inputs with comparable dF values can be grouped into a zone together with a clustering algorithm or the like. Depending on the results of the optimization, each zone may include different numbers of inputs.
Referring now to
Computer system 1000 may include a computer program product, or software 1022, having a non-transitory machine-readable medium having stored thereon instructions, which may be used to program computer system 1000 (or other electronic devices) to perform a process according to embodiments. A machine-readable medium includes any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computer). For example, a machine-readable (e.g., computer-readable) medium includes a machine (e.g., a computer) readable storage medium (e.g., read only memory (“ROM”), random access memory (“RAM”), magnetic disk storage media, optical storage media, flash memory devices, etc.), a machine (e.g., computer) readable transmission medium (electrical, optical, acoustical or other form of propagated signals (e.g., infrared signals, digital signals, etc.)), etc.
In an embodiment, computer system 1000 includes a system processor 1002, a main memory 1004 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous DRAM (SDRAM) or Rambus DRAM (RDRAM), etc.), a static memory 1006 (e.g., flash memory, static random access memory (SRAM), etc.), and a secondary memory 1018 (e.g., a data storage device), which communicate with each other via a bus 1030.
System processor 1002 represents one or more general-purpose processing devices such as a microsystem processor, central processing unit, or the like. More particularly, the system processor may be a complex instruction set computing (CISC) microsystem processor, reduced instruction set computing (RISC) microsystem processor, very long instruction word (VLIW) microsystem processor, a system processor implementing other instruction sets, or system processors implementing a combination of instruction sets. System processor 1002 may also be one or more special-purpose processing devices such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal system processor (DSP), network system processor, or the like. System processor 1002 is configured to execute the processing logic 1026 for performing the operations described herein.
The computer system 1000 may further include a system network interface device 1008 for communicating with other devices or machines. The computer system 1000 may also include a video display unit 1010 (e.g., a liquid crystal display (LCD), a light emitting diode display (LED), or a cathode ray tube (CRT)), an alphanumeric input device 1012 (e.g., a keyboard), a cursor control device 1014 (e.g., a mouse), and a signal generation device 1016 (e.g., a speaker).
The secondary memory 1018 may include a machine-accessible storage medium 1031 (or more specifically a computer-readable storage medium) on which is stored one or more sets of instructions (e.g., software 1022) embodying any one or more of the methodologies or functions described herein. The software 1022 may also reside, completely or at least partially, within the main memory 1004 and/or within the system processor 1002 during execution thereof by the computer system 1000, the main memory 1004 and the system processor 1002 also constituting machine-readable storage media. The software 1022 may further be transmitted or received over a network 1061 via the system network interface device 1008. In an embodiment, the network interface device 1008 may operate using RF coupling, optical coupling, acoustic coupling, or inductive coupling.
While the machine-accessible storage medium 1031 is shown in an exemplary embodiment to be a single medium, the term “machine-readable storage medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions. The term “machine-readable storage medium” shall also be taken to include any medium that is capable of storing or encoding a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methodologies. The term “machine-readable storage medium” shall accordingly be taken to include, but not be limited to, solid-state memories, and optical and magnetic media.
In the foregoing specification, specific exemplary embodiments have been described. It will be evident that various modifications may be made thereto without departing from the scope of the following claims. The specification and drawings are, accordingly, to be regarded in an illustrative sense rather than a restrictive sense.