The present invention relates to reconfigurable multidimensional logic fields and their operation.
Reconfigurable elements are designed differently depending on the application to be executed and are designed to be consistent with the application. A reconfigurable architecture is understood in the present case to refer to modules or units (VPUs) having a configurable function and/or interconnection, in particular integrated modules having a plurality of arithmetic and/or logic and/or analog and/or memory and/or internally/externally interconnected modules arranged in one or more dimensions and interconnected directly or via a bus system.
The generic type represented by these modules includes in particular systolic arrays, neural networks, multiprocessor systems, processors having multiple arithmetic units and/or logic cells and/or communicative/peripheral cells (IO), interconnection and network modules, e.g., crossbar switches as well as known modules of the FPGA, DPGA, Chameleon, VPUTER, etc. types. Reference is made in particular in this connection to the following patents and applications by the present applicant: DE 44 16 881 A1, DE 197 81 412 A1, DE 197 81 483 A1, DE 196 54 846 A1, DE 196 54 593 A1, DE 197 04 044.6 A1, DE 198 80 129 A1, DE 198 61 088 A1, DE 199 80 312 A1, PCT/DE 00/01869, DE 100 36 627 A1, DE 100 28 397 A1, DE 101 10 530 A1, DE 101 11 014 A1, PCT/EP 00/10516, EP 01 102 674 A1, DE 198 80 128 A1, DE 101 39 170 A1, DE 198 09 640 A1, DE 199 26 538.0 A1, DE 100 50 442 A1, as well as PCT/EP 02/02398, DE 102 40 000, DE 102 02 044, DE 102 02 175, DE 101 29 237, DE 101 42 904, DE 101 35 210, EP 01 129 923, PCT/EP 02/10084, DE 102 12 622, DE 102 36 271, DE 102 12 621, EP 02 009 868, DE 102 36 272, DE 102 41 812, DE 102 36 269, DE 102 43 322, EP 02 022 692, PACT40. Reference is made to the documents below by using the applicant's internal reference notation. These are herewith incorporated to the full extent for disclosure purposes.
The aforementioned architecture is used as an example for illustration and is referred to below as a VPU. This architecture is composed of any arithmetic or logic cells (including memories) and/or memory cells and/or interconnection cells and/or communicative/peripheral (IO) cells (PAEs) which may be arranged to form a one-dimensional or multidimensional matrix (PA), which may have different cells of any design. Bus systems are also understood to be cells here. The matrix as a whole or parts thereof are assigned a configuration unit (CT, load logic) which configures the interconnection and function of the PA. The CT may be designed as a dedicated unit according to PACT05, PACT10, PACT17, for example, or as a host microprocessor according to P 44 16 881.0-53, DE 101 06 856.9; it may be assigned to the PA and/or implemented with or through such a unit.
The present invention relates to a processor model for reconfigurable architectures based on the model of a traditional processor in some essential points. For better understanding, the traditional model will be first considered in greater detail. Resources external to the processor (e.g., main memory for programs and data, etc.) are not considered here.
A processor executes a program in a process. The program includes a finite quantity of instructions (this quantity may include multiple instances of elements) as well as information regarding the order in which the instructions may follow one another. This order is determined primarily by the linear arrangement of the instructions in the program memory and the targets of jump instructions.
Instructions are usually identified by their address. As an example,
A program may also be interpreted as oriented graphs, where the instructions form the nodes and their order is modeled as edges of the graph. This graph is shown in
The linear arrangement of the instructions in the memory results in more dependences than absolutely necessary; e.g., in the example shown here, instructions DECL and MULL2 are mutually independent. This is not indicated by the graph in
Processors today implement such possibilities of parallel execution in hardware to some extent and distribute the operations among various arithmetic logic units. The model from
These resources are used to convey information between the individual program instructions. The task of the operating system is to ensure that the resources needed for execution of a process are available to it and are released again when the process is terminated. Processors today usually have only one set of registers, so that only one process may run on the processor at a time. It is possible for the instructions of two different processes to be executable in any order as long as both processes use disjunct resources (e.g., if process 1 is using registers 0-3 and process 2 is using registers 4-7).
Instructions of a processor usually have the following properties:
An object of the present invention is to provide a novel approach for commercial use.
a shows a program written in VAX assembler.
b shows the program interpreted as a graph.
c shows an expanded model.
a shows the position of a power at the beginning of a CIW.
b shows how the pointer position of a register may appear at the end of a CIW.
a shows a register before a write access.
b shows that existing data may be deleted in such a was that a write access begins with an empty vector.
c shows the write data may be appended to the existing content.
d and 5e show the state of the register after successful write operations.
a-6e show read/write accesses.
a shows the free list as completely full.
b shows memory parts affected.
a shows a state prior to deletion.
b shows a state after deletion.
2. Transfer of the Model to the VPU Architecture
An exemplary VPU architecture is a reconfigurable processor architecture as described in, for example, PACT01, 02, 03, 04, 05, 07, 08, 09, 10, 13, 17, 22, 23, 24, 31. As mentioned above, the full content of these documents is herewith incorporated for disclosure purposes. Reference is also made to PACT11, 20 and 27, which describe corresponding high-level language compilers, as well as a PACT21 which describes a corresponding debugger. The full content of these documents is also included here for disclosure purposes.
The traditional instruction is replaced by a configuration in the known sense. For example, the aforementioned DE 101 39 170, which is incorporated herein by reference, describes that, for such configurations, a partitioning may be calculated with the aim to process as many data packets without changing the configured commands. For example, for an algorithm and/or a series of statements, a breakdown of the algorithm and/or series of statements may be chosen so that as many data packets can be processed without changing the configuration. The configuration is referred to in the following discussion as a complex instruction word (CIW). The edges of graphs in
It was recognized first how a correspondence of registers of traditional processors could be implemented on the VPU architecture. It was discovered that an essential prerequisite for register implementation is based on the following:
It is explained how this may be achieved in a processor and the use of suitably modified RAM PAEs is also proposed according to the present invention. These should first be used as registers.
A detailed description of the register PAEs preferably by expanded and/or modified RAM PAEs is given in section 4 below. A configuration (CIW) is removed from the array at the moment when it requests the next CIW from the CT via a trigger. The reconfig trigger (see PACT08) may be generated either via the reconfig port of an ALU PAE or implicitly by the CT. In optimally designed versions, this should fundamentally take place from the CT.
Just as instructions on a traditional processor are not interrupted, a CIW preferably also runs on the VPU without interruption until it requests the next CIW via a trigger to the CT. It is not terminated prematurely. To be able to nevertheless ensure a regular change of instructions (which will be needed later for multitasking), the maximum execution time of a CIW has an upper limit. The second property of an instruction is thus required. It is preferably the function of the compiler to ensure that each CIW generated meets this condition. A CIW that violates this condition is an invalid instruction. It may be recognized by the hardware during execution, e.g., via a watchdog timer, which generates a trigger more or less as a warning signal after a certain amount of time has elapsed.
The warning signal is preferably managed as a TRAP by the hardware and/or the operating system. The signal is also preferably sent to the CT. An invalid CIW is preferably terminated via a reconfig trigger, which causes a reset-like deletion of all configurations in the PA and/or an exception is also preferably sent to the operating system.
Since CIWs are very long, the instruction fetch time (time between the reconfiguration trigger of the PAEs to the CT (see PACT08) and configuration is loaded in the FILMO cache) and instruction decode time (distribution of the configuration data from the FILMO cache (see PACT10) into the configuration registers of the PAEs) are also very long. Therefore, utilization of the execution units (i.e., the PA in the VPU processor model) by a process is not very high. How this problem may be solved with multiple processors is described in section 6 below.
3. Subprograms
A subprogram in the graphic representation is a partial graph of a program having uniquely defined input nodes. The edge of the subprogram call within the graph is thus statically known. The continuing edge at the output node of the subprogram, however, is not statically known. This is shown in
In traditional processors, this is usually accomplished by storing the address of the instruction following the subprogram (this is precisely the missing edge) in a call stack when the subprogram is called (call, 0203, 0204). The address may be called from there by a return.
A stack PAE is thus needed when this principle is applied to the VPU. Like register PAEs, this is a process resource and is managed as such. The CIW, which causes the subprogram call when terminated, configures the return edge on the stack PAE. Through a trigger, the last CIW of the subprogram causes the stack PAE to remove the top entry from the stack and send it as a reconfiguration call to the CT.
In implementing a stack, one of the following methods may be used, for example:
4. The Register PAE
A traditional processor register contains a data word at each point in time. An instruction is able to read, write or modify the contents of the register (read-modify-write).
A VPU register will have the same properties, but instead of a single value, according to the present invention it will contain a value vector or parts thereof. It is possible and usually preferable for a VPU register to be organized as a type of FIFO. In certain cases, however, random access may also be necessary. The three types of register access mentioned above are explained in detail below. Random access is not discussed here.
Read access. At the start of a CIW, the register contains a data vector of unknown length. The individual elements of the vector are removed sequentially. With the last element of the vector, a trigger is generated, indicating that the register is now empty and the CIW may terminate. The status of the register may be characterized using three pointers which point to the first entry (0403) in the data vector, the last entry (0401) and the current entry (0402). The position of the pointer at the beginning of a CIW is shown as an example in
Consequently, a decision must be made regarding what happens with the register contents. There are preferably the following options:
The third option is of interest in particular when a CIW is unable to completely process the data vector because of the maximum execution time for a CIW. See also section 7.
Write access. Data here is written sequentially into the register. A trigger is generated when the filling status of the register has reached a certain level. Depending on the CIW, this may be one of the following preferred possibilities:
A CIW which attempts to write into a completely full register is invalid and is terminated with an exception (illegal opcode). At the start of the CIW, the status of the register should be determined.
Simultaneous read/write access. The restriction to pure read access or write access requires a greater number of registers than necessary. When data is removed from a register by read access, this yields locations which may be occupied by write data. It is only necessary to ensure that write data cannot be read again by the same CIW, i.e., there is a clear separation between the read data of a CIW and the write data of the CIW. For this purpose a virtual dividing line (0601) is introduced into the FIFO. The register has been read completely when this dividing line reaches the output of the FIFO. Suitable means may be implemented for defining this virtual dividing line.
If a write access for a data word is not executable because the register is still blocked by unread read data, the CIW is terminated and an illegal opcode exception is generated. The behavior of the register is otherwise exactly the same as that described for read and write access. In addition, one should specify what is to happen with the virtual dividing line between the read data and write data. This dividing line may remain at the location it is in at the moment. This is beneficial if a CIW must be terminated because of the time restriction. As an alternative, the dividing line may be set at the end of all data.
Combined read/write accesses are problematical, however, if the CIW has been terminated with an exception. In this case, it is no longer readily possible to reset the registers to their values at the start of the CIW. Debugging may then be hindered at the least (see also the following discussion in section 8).
A process, i.e., a program which shares resources with other programs in a multitasking operation in particular, must allocate each required register before it may be used. This is preferably accomplished by an additional configuration register within the RAM PAE and/or the register PAE, an entry also being made indicating to which process the register now belongs. This configuration is retained over reconfigurations. The register must be explicitly enabled by the CT. This happens on termination of a process, for example. With the configuration of each CIW, the registers must be notified of which process the CIW belongs to. This makes it possible to switch between multiple register sets. This process is described in greater detail in section 6 below.
5. Interrupts
A distinction is made between two different types of interrupts. First there are hardware interrupts, where the processor must respond to an external event. These are usually processed by the operating system and are not visible for the ongoing processes. They are not discussed further here. The second type is the software interrupts which are frequently used to implement asynchronous interactions between the process and the operating system. For example, it is possible under VMS to send a read request to the operating system without waiting for the actual data. As soon as the data is present, the operating system interrupts the running program and calls a procedure of the program asynchronously. This method is known as an asynchronous system trap (AST).
This method may also be used in the same way on the VPU. To do so, support may be provided in the CT. The CT knows whether an asynchronous routine must be called up for a process. In this case, the next request coming from the array is not processed directly but instead is stored.
Instead, a sequence of CIWs is inserted, which first saves the processor status (the register contents), which executes the asynchronous routine and which then restores the register content. The original request may be subsequently processed.
6. Multitasking
As described above in section 2, the VPU architecture may, under some circumstances, not be optimally utilized with only one process because very long loading and decoding times occur, e.g., due to the length of the CIWs. This problem may be solved by simultaneous execution of multiple processes. According to the present invention, several register sets are provided on the VPU for this purpose, making it possible to simply switch between register sets when changing context without requiring any complex register clearance and loading operations. This also makes it possible to increase the processing speed.
During execution of CIWs of the processes, enough time is available to retrieve the instructions of the current process and distribute them via the FILMO to the PAEs and/or to load them from the configuration cache into the PAEs (see PACT31). The optimum number of register sets may be determined as a function of the average execution time of a CIW and the average loading and decoding times of the CIWs.
The latency time may be compensated by a larger number of register sets. It is important for the functioning of the method that the average CIW running time is greater than the amount of time effectively needed for loading and/or decoding the CIW in each case.
The corresponding registers of the different register sets are then at the same PAE address for the programmer. In other words, at any point in time, only the registers of one register set may be used. The change in context between the register sets may be implemented by transmitting the corresponding context to the PAEs before each CIW. The context switch may take place automatically as depicted in detail by the PUSH/POP operations according to PACT11 and/or by a special RAM/register PAE hardware, as depicted in PACT13
In general, more processes will be present on a system than there are register sets in the processor. This means that a process must occasionally be removed from the processor. To do so, as in the case of the software interrupt, an edge of the program graph is divided by the CT. The register contents of the process are saved and the processor resources i (registers, stack PAEs, etc.) allocated by the process are freed again. The resources thereby freed are then allocated by another process. The register contents stored for this process are then written back again and the process is continued on this divided edge. The register contents may then be saved and reloaded via CIWs.
7. CIW and Loops
On the basis of the property required above, namely that a CIW must terminate after a certain maximum number of cycles at the latest, general loops may not be translated directly into a CIW. It is always possible to translate the loop body into a CIW and to execute the loop control via reconfiguration. However, this often means a considerable sacrifice in terms of performance. This section shows how a loop may be reshaped to minimize the number of reconfigurations.
The following program fragment is assumed below:
the running time of “condition” should be determined as “something” or it should be possible to make an upper estimate. The loop may then be reformulated as follows:
The body of the loop may now be iterated as often as allowed by the maximum running time of the CIW. A new variable z is introduced for this purpose; this variable does not occur either in “condition” or in “something.” The program now looks as follows:
The “for” loop has a maximum running time which may be determined by the compiler. It may therefore be mapped onto a CIW. MAX is determined by the compiler as a function of the maximum running time and the individual running times of the instructions.
The resulting CIW has two output edges. The output via goto leads to the next CIW; the output via the regular end of “for” forms an edge on itself. The endless loop is implemented via this edge.
8. Debugging
In the traditional processor, debugging is performed on an instruction basis, i.e., the sequence of a program may be interrupted at any time between two instructions. At these interruption points, the programmer has access to the registers, may look at them and modify them. Interruption points may be implemented in various ways. First the program may be modified, i.e., the instruction before which the interruption is to occur, is replaced by other instructions which call the debugger. In the graphic model, this corresponds to replacing one node with another node or with a partial graph. Another method is based on additional hardware support, where the processor is notified of which instruction the program is to be interrupted at. The corresponding instruction is usually identified by its address.
Both possibilities may be applied to the VPU according to the present invention. One CIW may be replaced by another CIW, by action of the debugger, for example. This CIW may then, for example, copy the register contents into the main memory, where they may either be analyzed using a debugger external to the VPU or alternatively the debugger may also run on the VPU.
In addition, hardware support, which identifies CIWs on the basis of their ID when requested and then calls up the debugger, may also be provided in the CT. In addition, an interruption may also be fixedly attached to an edge of the graph because interruptions are present explicitly in contrast with traditional program code.
The type of debugging described above is completely adequate for traditional processors because the instructions are usually very simple. There is a sufficiently fine resolution of the observable points. In addition, the programmer may rely on the individual instructions being correct (usually ensured by the processor manufacturer).
On the VPU, however, it is possible for the programmer to define the CIWs which form a type of “processor instructions.” Accordingly, instructions defined in themselves in this way may be defective. Debugging of the individual instructions is thus preferably designed in the manner referred to below as microcode debugging. Microcode debugging is designed in such a way that the programmer gains access to all internal registers and data paths of the processor. It has been recognized that the complexity necessary for this is readily justified by the increased functionality.
Hardware support for this is possible but very complex and is not appropriate for pure debugging purposes. Therefore, as an alternative, the status of the processor before the instruction in question is saved and the actual instruction is executed on a software simulator. This is the preferred method of debugging VPUs according to PACT11. The data and states are preferably transferred to the debugger via a bus interface, memory and/or preferably via a debugging interface such as JTAG. A debugger according to PACT21 is preferably used, preferably containing a mixed-mode debugger having an integrated simulator for processing the micro debugging.
In a suitable programming model, the debugger may also be called when an exception occurs within an instruction. It is appropriate here that the registers may be reset back to the state before the start of the instruction and that no other side effects have occurred. Then the instruction in question may be started in the software simulator and simulated until up to the occurrence of the exception.
Particularly preferred debugging mechanisms are described in detail in PACT21.
Microcode debugging may preferably be implemented by configuring a debugging CIW before or after processing a CIW. This debugging CIW first receives all the states (e.g., in the PAES) and then writes them into an external memory through a suitable configuration of the interconnection resources. The PUSH/POP methods described in PACT11 may be used here particularly preferably. This may preferably take place via an industry standard interface such as JTAG. Then a debugger may receive the data from the memory or via the JTAG interface and, if necessary, simulate it further incrementally in conjunction with a simulator (see PACT21), thus permitting microcode debugging.
9. Distributed Configuration Cache
On the basis of the central configuration cache in FILMO, it takes a relatively long time when using such a cache, which is not obligatory, until a configuration is distributed to the individual PAEs of a PAC. This section will now describe a preferred method for shortening this period of time. A similar alternative or additional method is also already described in PACT31, the full content of which is herewith incorporated for disclosure purposes.
For this purpose, each PAE has its own local cache which stores the configuration data of various configurations for precisely this PAE. The fact that a PAE has not received any data from a configuration is also stored. For each configuration requested, the cache may thus make one of the following statements:
The last two statements may be combined here. With both statements, the code or the fact that no code is needed must be requested. An order for a configuration is sent by the FILMO as a broadcast on the test bus to all PAEs. If all PAEs have the configuration in their local cache, it may be started via broadcast on the config bus. In the ideal case, the start of the configuration thus requires the transmission of only a single configuration word.
If a PAE does not have the configuration data, this fact is reported back to the FILMO. In the simplest case, this is done via a reject on the existing line. The FILMO then knows on the basis of this signal that at least one PAE of the PAC does not have the configuration data. It may then transmit the complete data. As an alternative, each PAE may trigger separately a request for the data. In this case a suitable compromise must be made between the number of requests and the quantity of configuration data to be transmitted. Small PAC sizes are advantageous here because of the lower latency on the configuration bus.
Design of the Cache
A cache is generally always composed of two parts. One part contains the actual data (here the configuration words, 0902) while the other part contains management information (here the configuration numbers contained as well as their age, 0901).
First the management part is described.
It is desirable for the configuration which has not been used for the longest period of time to be removed from the cache if this is necessary. As long as only new configurations are requested, the entries in the FIFO are sorted correctly. If a configuration is requested for which there is already an entry in the FIFO, this entry must be removed from the FIFO. It is then reinserted again at the end.
In addition to the lists for the actual configurations, a free list is carried, listing all the entries which are not being used. This must be initialized first after a reset.
A new configuration is written into the free list in the data memory. In doing so the pointer information of the data memory is not modified. Only for the last data word of a configuration is the pointer information altered to indicate that the list is now being modified here. The pointer to the free list points at the next entry.
It may happen that the space in the free list is not sufficient to completely accommodate the incoming configuration data. In this case, a decision must be made as to whether an old configuration is to be removed from the data memory or whether the current configuration is not to be included in the cache. In the latter case, the subsequent configuration words are discarded. Since no pointer has been modified, the free list remains the same as before and only a few unused data words have a different value. The decision as to which configuration should no longer be in the cache (the oldest or the current) may be made on the basis of the number of configuration words already written. There is little point in removing several cached configurations to make room for a long RAM initialization, for example.
If the oldest configuration is to be removed, it is removed from the FIFO. The pointer for the last entry in the free list is set at the value taken from the FIFO. After this address, configuration may be continued in the accustomed manner.
This is illustrated in
10. Optimization of Bus Allocation
The buses are currently defined explicitly by the router. This may result in two configurations overlapping on a bus and therefore not being able to run simultaneously although on the whole enough buses would be available.
It has been recognized that it does not matter in terms of the algorithm which bus carries a connection. Therefore, it is proposed that bus allocation be performed dynamically by the hardware and the hardware be provided with a suitable dynamic bus allocator. A configuration specifies only that it needs a connection from point A to point B within a row. An arbiter in the hardware which is able to work per row either via proximity relationships in a distributed manner or at a central location for the row then selects which of the available buses is in fact used. In addition, buses may be dynamically rearranged. Two short non-overlapping buses which have been configured to different bus numbers on the basis of a previous allocation may be rearranged to the same bus number when resources become available. This creates space for longer connections in the future.
Number | Date | Country | Kind |
---|---|---|---|
102 02 044 | Jan 2002 | DE | national |
102 02 175 | Jan 2002 | DE | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/DE03/00152 | 1/20/2003 | WO | 00 | 8/26/2005 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO03/060747 | 7/24/2003 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
2067477 | Cooper | Jan 1937 | A |
3242998 | Gubbins | Mar 1966 | A |
3564506 | Bee et al. | Feb 1971 | A |
3681578 | Stevens | Aug 1972 | A |
3753008 | Guarnaschelli | Aug 1973 | A |
3754211 | Rocher et al. | Aug 1973 | A |
3757608 | Willner | Sep 1973 | A |
3855577 | Vandierendonck | Dec 1974 | A |
3956589 | Weathers et al. | May 1976 | A |
4041462 | Davis et al. | Aug 1977 | A |
4151611 | Sugawara et al. | Apr 1979 | A |
4233667 | Devine et al. | Nov 1980 | A |
4414547 | Knapp et al. | Nov 1983 | A |
4498134 | Hansen et al. | Feb 1985 | A |
4498172 | Bhavsar | Feb 1985 | A |
4566102 | Hefner | Jan 1986 | A |
4571736 | Agrawal et al. | Feb 1986 | A |
4590583 | Miller | May 1986 | A |
4591979 | Iwashita | May 1986 | A |
4594682 | Drimak | Jun 1986 | A |
4646300 | Goodman et al. | Feb 1987 | A |
4663706 | Allen et al. | May 1987 | A |
4667190 | Fant et al. | May 1987 | A |
4682284 | Schrofer | Jul 1987 | A |
4686386 | Tadao | Aug 1987 | A |
4706216 | Carter | Nov 1987 | A |
4720780 | Dolecek | Jan 1988 | A |
4739474 | Holsztynski | Apr 1988 | A |
4760525 | Webb | Jul 1988 | A |
4761755 | Ardini et al. | Aug 1988 | A |
4791603 | Henry | Dec 1988 | A |
4811214 | Nosenchuck et al. | Mar 1989 | A |
4852043 | Guest | Jul 1989 | A |
4852048 | Morton | Jul 1989 | A |
4860201 | Miranker et al. | Aug 1989 | A |
4870302 | Freeman | Sep 1989 | A |
4873666 | Lefebvre et al. | Oct 1989 | A |
4882687 | Gordon | Nov 1989 | A |
4884231 | Mor et al. | Nov 1989 | A |
4891810 | de Corlieu et al. | Jan 1990 | A |
4901268 | Judd | Feb 1990 | A |
4910665 | Mattheyses et al. | Mar 1990 | A |
4918440 | Furtek et al. | Apr 1990 | A |
4939641 | Schwartz et al. | Jul 1990 | A |
4959781 | Rubinstein et al. | Sep 1990 | A |
4967340 | Dawes | Oct 1990 | A |
4972314 | Getzinger et al. | Nov 1990 | A |
4992933 | Taylor | Feb 1991 | A |
5010401 | Murakami et al. | Apr 1991 | A |
5014193 | Garner et al. | May 1991 | A |
5015884 | Agrawal et al. | May 1991 | A |
5021947 | Campbell et al. | Jun 1991 | A |
5023775 | Poret | Jun 1991 | A |
5031179 | Yoshida et al. | Jul 1991 | A |
5034914 | Osterlund | Jul 1991 | A |
5036473 | Butts et al. | Jul 1991 | A |
5036493 | Nielsen | Jul 1991 | A |
5041924 | Blackborow et al. | Aug 1991 | A |
5043978 | Nagler et al. | Aug 1991 | A |
5047924 | Matsubara et al. | Sep 1991 | A |
5055997 | Sluijter et al. | Oct 1991 | A |
5065308 | Evans | Nov 1991 | A |
5072178 | Matsumoto | Dec 1991 | A |
5081375 | Pickett et al. | Jan 1992 | A |
5099447 | Myszewski | Mar 1992 | A |
5103311 | Sluijter et al. | Apr 1992 | A |
5109503 | Cruickshank et al. | Apr 1992 | A |
5113498 | Evan et al. | May 1992 | A |
5115510 | Okamoto et al. | May 1992 | A |
5119290 | Loo et al. | Jun 1992 | A |
5123109 | Hillis | Jun 1992 | A |
5125801 | Nabity et al. | Jun 1992 | A |
5128559 | Steele | Jul 1992 | A |
5142469 | Weisenborn | Aug 1992 | A |
5144166 | Camarota et al. | Sep 1992 | A |
5193202 | Lee et al. | Mar 1993 | A |
5203005 | Horst | Apr 1993 | A |
5204935 | Mihara et al. | Apr 1993 | A |
5208491 | Ebeling et al. | May 1993 | A |
5212716 | Ferraiolo et al. | May 1993 | A |
5212777 | Gove et al. | May 1993 | A |
5218302 | Loewe et al. | Jun 1993 | A |
5226122 | Thayer et al. | Jul 1993 | A |
RE34363 | Freeman | Aug 1993 | E |
5233539 | Agrawal et al. | Aug 1993 | A |
5237686 | Asano et al. | Aug 1993 | A |
5243238 | Kean | Sep 1993 | A |
5245616 | Olson | Sep 1993 | A |
5247689 | Ewert | Sep 1993 | A |
RE34444 | Kaplinsky | Nov 1993 | E |
5274593 | Proebsting | Dec 1993 | A |
5276836 | Fukumaru et al. | Jan 1994 | A |
5287472 | Horst | Feb 1994 | A |
5287511 | Robinson et al. | Feb 1994 | A |
5287532 | Hunt | Feb 1994 | A |
5294119 | Vincent et al. | Mar 1994 | A |
5301284 | Estes et al. | Apr 1994 | A |
5301344 | Kolchinsky | Apr 1994 | A |
5303172 | Magar et al. | Apr 1994 | A |
5311079 | Ditlow et al. | May 1994 | A |
5327125 | Iwase et al. | Jul 1994 | A |
5336950 | Popli et al. | Aug 1994 | A |
5343406 | Freeman et al. | Aug 1994 | A |
5347639 | Rechtschaffen et al. | Sep 1994 | A |
5349193 | Mott et al. | Sep 1994 | A |
5353432 | Richek et al. | Oct 1994 | A |
5355508 | Kan | Oct 1994 | A |
5361373 | Gilson | Nov 1994 | A |
5365125 | Goetting et al. | Nov 1994 | A |
5379444 | Mumme | Jan 1995 | A |
5386154 | Goetting et al. | Jan 1995 | A |
5386518 | Reagle et al. | Jan 1995 | A |
5392437 | Matter et al. | Feb 1995 | A |
5408643 | Katayose | Apr 1995 | A |
5410723 | Schmidt et al. | Apr 1995 | A |
5412795 | Larson | May 1995 | A |
5418952 | Morley et al. | May 1995 | A |
5418953 | Hunt et al. | May 1995 | A |
5421019 | Holsztynski et al. | May 1995 | A |
5422823 | Agrawal et al. | Jun 1995 | A |
5425036 | Liu et al. | Jun 1995 | A |
5426378 | Ong | Jun 1995 | A |
5428526 | Flood et al. | Jun 1995 | A |
5430687 | Hung et al. | Jul 1995 | A |
5435000 | Boothroyd et al. | Jul 1995 | A |
5440245 | Galbraith et al. | Aug 1995 | A |
5440538 | Olsen | Aug 1995 | A |
5442790 | Nosenchuck | Aug 1995 | A |
5444394 | Watson et al. | Aug 1995 | A |
5448186 | Kawata | Sep 1995 | A |
5450022 | New | Sep 1995 | A |
5455525 | Ho et al. | Oct 1995 | A |
5457644 | McCollum | Oct 1995 | A |
5465375 | Thepaut et al. | Nov 1995 | A |
5469003 | Kean | Nov 1995 | A |
5473266 | Ahanin et al. | Dec 1995 | A |
5473267 | Stansfield | Dec 1995 | A |
5475583 | Bock et al. | Dec 1995 | A |
5475803 | Stearns et al. | Dec 1995 | A |
5475856 | Kogge | Dec 1995 | A |
5477525 | Okabe | Dec 1995 | A |
5483620 | Pechanek et al. | Jan 1996 | A |
5485103 | Pedersen et al. | Jan 1996 | A |
5485104 | Agrawal et al. | Jan 1996 | A |
5489857 | Agrawal et al. | Feb 1996 | A |
5491353 | Kean | Feb 1996 | A |
5493239 | Zlotnick | Feb 1996 | A |
5493663 | Parikh | Feb 1996 | A |
5497498 | Taylor | Mar 1996 | A |
5502838 | Kikinis | Mar 1996 | A |
5504439 | Tavana | Apr 1996 | A |
5506998 | Kato et al. | Apr 1996 | A |
5510730 | El Gamal et al. | Apr 1996 | A |
5511173 | Yamaura et al. | Apr 1996 | A |
5513366 | Agarwal et al. | Apr 1996 | A |
5521837 | Frankle et al. | May 1996 | A |
5522083 | Gove et al. | May 1996 | A |
5525971 | Flynn | Jun 1996 | A |
5530873 | Takano | Jun 1996 | A |
5530946 | Bouvier et al. | Jun 1996 | A |
5532693 | Winters et al. | Jul 1996 | A |
5532957 | Malhi | Jul 1996 | A |
5535406 | Kolchinsky | Jul 1996 | A |
5537057 | Leong et al. | Jul 1996 | A |
5537580 | Giomi et al. | Jul 1996 | A |
5537601 | Kimura et al. | Jul 1996 | A |
5541530 | Cliff et al. | Jul 1996 | A |
5544336 | Kato et al. | Aug 1996 | A |
5548773 | Kemeny et al. | Aug 1996 | A |
5550782 | Cliff et al. | Aug 1996 | A |
5555434 | Carlstedt | Sep 1996 | A |
5559450 | Ngai et al. | Sep 1996 | A |
5561738 | Kinerk et al. | Oct 1996 | A |
5568624 | Sites et al. | Oct 1996 | A |
5570040 | Lytle et al. | Oct 1996 | A |
5574927 | Scantlin | Nov 1996 | A |
5574930 | Halverson, Jr. et al. | Nov 1996 | A |
5581731 | King et al. | Dec 1996 | A |
5581734 | DiBrino et al. | Dec 1996 | A |
5583450 | Trimberger et al. | Dec 1996 | A |
5584013 | Cheong et al. | Dec 1996 | A |
5586044 | Agrawal et al. | Dec 1996 | A |
5587921 | Agrawal et al. | Dec 1996 | A |
5588152 | Dapp et al. | Dec 1996 | A |
5590345 | Barker et al. | Dec 1996 | A |
5590348 | Phillips et al. | Dec 1996 | A |
5596742 | Agarwal et al. | Jan 1997 | A |
5600265 | El Gamal et al. | Feb 1997 | A |
5600597 | Kean et al. | Feb 1997 | A |
5600845 | Gilson | Feb 1997 | A |
5602999 | Hyatt | Feb 1997 | A |
5603005 | Bauman et al. | Feb 1997 | A |
5608342 | Trimberger | Mar 1997 | A |
5611049 | Pitts | Mar 1997 | A |
5617547 | Feeney et al. | Apr 1997 | A |
5617577 | Barker et al. | Apr 1997 | A |
5619720 | Garde et al. | Apr 1997 | A |
5625806 | Kromer | Apr 1997 | A |
5625836 | Barker et al. | Apr 1997 | A |
5634131 | Matter et al. | May 1997 | A |
5635851 | Tavana | Jun 1997 | A |
5642058 | Trimberger et al. | Jun 1997 | A |
5646544 | Iadanza | Jul 1997 | A |
5646545 | Trimberger et al. | Jul 1997 | A |
5649176 | Selvidge et al. | Jul 1997 | A |
5649179 | Steenstra et al. | Jul 1997 | A |
5652529 | Gould et al. | Jul 1997 | A |
5652894 | Hu et al. | Jul 1997 | A |
5655069 | Ogawara et al. | Aug 1997 | A |
5655124 | Lin | Aug 1997 | A |
5656950 | Duong et al. | Aug 1997 | A |
5657330 | Matsumoto | Aug 1997 | A |
5659785 | Pechanek et al. | Aug 1997 | A |
5659797 | Zandveld et al. | Aug 1997 | A |
5675262 | Duong et al. | Oct 1997 | A |
5675743 | Mavity | Oct 1997 | A |
5675757 | Davidson et al. | Oct 1997 | A |
5675777 | Glickman | Oct 1997 | A |
5677909 | Heide | Oct 1997 | A |
5680583 | Kuijsten | Oct 1997 | A |
5682491 | Pechanek et al. | Oct 1997 | A |
5682544 | Pechanek et al. | Oct 1997 | A |
5687325 | Chang | Nov 1997 | A |
5694602 | Smith | Dec 1997 | A |
5696976 | Nizar et al. | Dec 1997 | A |
5701091 | Kean | Dec 1997 | A |
5705158 | Hansen et al. | Jan 1998 | A |
5705938 | Kean | Jan 1998 | A |
5706482 | Matsushima et al. | Jan 1998 | A |
5713037 | Wilkinson et al. | Jan 1998 | A |
5717890 | Ichida et al. | Feb 1998 | A |
5717943 | Barker et al. | Feb 1998 | A |
5727229 | Kan et al. | Mar 1998 | A |
5732209 | Vigil et al. | Mar 1998 | A |
5734869 | Chen | Mar 1998 | A |
5734921 | Dapp et al. | Mar 1998 | A |
5737516 | Circello et al. | Apr 1998 | A |
5737565 | Mayfield | Apr 1998 | A |
5742180 | Detton et al. | Apr 1998 | A |
5745734 | Craft et al. | Apr 1998 | A |
5748872 | Norman | May 1998 | A |
5748979 | Trimberger | May 1998 | A |
5752035 | Trimberger | May 1998 | A |
5754459 | Telikepalli | May 1998 | A |
5754820 | Yamagami | May 1998 | A |
5754827 | Barbier et al. | May 1998 | A |
5754871 | Wilkinson et al. | May 1998 | A |
5754876 | Tamaki et al. | May 1998 | A |
5760602 | Tan | Jun 1998 | A |
5761484 | Agarwal et al. | Jun 1998 | A |
5768629 | Wise et al. | Jun 1998 | A |
5773994 | Jones | Jun 1998 | A |
5778237 | Yamamoto et al. | Jul 1998 | A |
5778439 | Timberger et al. | Jul 1998 | A |
5781756 | Hung | Jul 1998 | A |
5784313 | Trimberger et al. | Jul 1998 | A |
5784630 | Saito et al. | Jul 1998 | A |
5784636 | Rupp | Jul 1998 | A |
5794059 | Barker et al. | Aug 1998 | A |
5794062 | Baxter | Aug 1998 | A |
5801547 | Kean | Sep 1998 | A |
5801715 | Norman | Sep 1998 | A |
5801958 | Dangelo et al. | Sep 1998 | A |
5802290 | Casselman | Sep 1998 | A |
5815004 | Trimberger et al. | Sep 1998 | A |
5815715 | Kayhan | Sep 1998 | A |
5815726 | Cliff | Sep 1998 | A |
5828229 | Cliff et al. | Oct 1998 | A |
5828858 | Athanas et al. | Oct 1998 | A |
5831448 | Kean | Nov 1998 | A |
5832288 | Wong | Nov 1998 | A |
5834612 | Cooke et al. | Nov 1998 | A |
5838165 | Chatter | Nov 1998 | A |
5838988 | Panwar et al. | Nov 1998 | A |
5844422 | Trimberger et al. | Dec 1998 | A |
5844888 | Markkula, Jr. et al. | Dec 1998 | A |
5848238 | Shimomura et al. | Dec 1998 | A |
5854918 | Baxter | Dec 1998 | A |
5857097 | Henzinger et al. | Jan 1999 | A |
5857109 | Taylor | Jan 1999 | A |
5859544 | Norman | Jan 1999 | A |
5860119 | Dockser | Jan 1999 | A |
5862403 | Kanai et al. | Jan 1999 | A |
5865239 | Carr | Feb 1999 | A |
5867691 | Shiraishi | Feb 1999 | A |
5867723 | Peters et al. | Feb 1999 | A |
5870620 | Kadosumi et al. | Feb 1999 | A |
5884075 | Hester et al. | Mar 1999 | A |
5887162 | Williams et al. | Mar 1999 | A |
5887165 | Martel et al. | Mar 1999 | A |
5889533 | Lee | Mar 1999 | A |
5889982 | Rodgers et al. | Mar 1999 | A |
5892370 | Eaton et al. | Apr 1999 | A |
5892961 | Trimberger | Apr 1999 | A |
5892962 | Cloutier | Apr 1999 | A |
5894565 | Furtek et al. | Apr 1999 | A |
5895487 | Boyd et al. | Apr 1999 | A |
5898602 | Rothman et al. | Apr 1999 | A |
5901279 | Davis, III | May 1999 | A |
5915099 | Takata et al. | Jun 1999 | A |
5915123 | Mirsky et al. | Jun 1999 | A |
5924119 | Sindhu et al. | Jul 1999 | A |
5926638 | Inoue | Jul 1999 | A |
5927423 | Wada et al. | Jul 1999 | A |
5933023 | Young | Aug 1999 | A |
5933642 | Baxter et al. | Aug 1999 | A |
5936424 | Young et al. | Aug 1999 | A |
5941977 | Panwar et al. | Aug 1999 | A |
5943242 | Vorbach et al. | Aug 1999 | A |
5956518 | DeHon et al. | Sep 1999 | A |
5960193 | Guttag et al. | Sep 1999 | A |
5960200 | Eager et al. | Sep 1999 | A |
5966143 | Breternitz, Jr. | Oct 1999 | A |
5966534 | Cooke et al. | Oct 1999 | A |
5970254 | Cooke et al. | Oct 1999 | A |
5978260 | Trimberger et al. | Nov 1999 | A |
5978583 | Ekanadham et al. | Nov 1999 | A |
5996048 | Cherabuddi et al. | Nov 1999 | A |
5996083 | Gupta et al. | Nov 1999 | A |
5999990 | Sharrit et al. | Dec 1999 | A |
6003143 | Kim et al. | Dec 1999 | A |
6011407 | New | Jan 2000 | A |
6014509 | Furtek et al. | Jan 2000 | A |
6020758 | Patel et al. | Feb 2000 | A |
6020760 | Sample et al. | Feb 2000 | A |
6021490 | Vorbach et al. | Feb 2000 | A |
6023564 | Trimberger | Feb 2000 | A |
6023742 | Ebeling et al. | Feb 2000 | A |
6026478 | Dowling | Feb 2000 | A |
6026481 | New et al. | Feb 2000 | A |
6034538 | Abramovici | Mar 2000 | A |
6035371 | Magloire | Mar 2000 | A |
6038650 | Vorbach et al. | Mar 2000 | A |
6038656 | Cummings et al. | Mar 2000 | A |
6044030 | Zheng et al. | Mar 2000 | A |
6045585 | Blainey | Apr 2000 | A |
6047115 | Mohan et al. | Apr 2000 | A |
6049222 | Lawman | Apr 2000 | A |
6052524 | Pauna | Apr 2000 | A |
6052773 | DeHon et al. | Apr 2000 | A |
6054873 | Laramie | Apr 2000 | A |
6055619 | North et al. | Apr 2000 | A |
6058266 | Megiddo et al. | May 2000 | A |
6058469 | Baxter | May 2000 | A |
6064819 | Franssen et al. | May 2000 | A |
6072348 | New et al. | Jun 2000 | A |
6076157 | Borkenhagen et al. | Jun 2000 | A |
6077315 | Greenbaum et al. | Jun 2000 | A |
6078736 | Guccione | Jun 2000 | A |
6081903 | Vorbach et al. | Jun 2000 | A |
6084429 | Trimberger | Jul 2000 | A |
6085317 | Smith | Jul 2000 | A |
6086628 | Dave et al. | Jul 2000 | A |
6088795 | Vorbach et al. | Jul 2000 | A |
6092174 | Roussakov | Jul 2000 | A |
RE36839 | Simmons et al. | Aug 2000 | E |
6096091 | Hartmann | Aug 2000 | A |
6105105 | Trimberger et al. | Aug 2000 | A |
6105106 | Manning | Aug 2000 | A |
6108760 | Mirsky et al. | Aug 2000 | A |
6118724 | Higginbottom | Sep 2000 | A |
6119181 | Vorbach et al. | Sep 2000 | A |
6122719 | Mirsky et al. | Sep 2000 | A |
6125072 | Wu | Sep 2000 | A |
6125408 | McGee et al. | Sep 2000 | A |
6127908 | Bozler et al. | Oct 2000 | A |
6128720 | Pechanek et al. | Oct 2000 | A |
6134166 | Lytle et al. | Oct 2000 | A |
6137307 | Iwanczuk et al. | Oct 2000 | A |
6145072 | Shams et al. | Nov 2000 | A |
6150837 | Beal et al. | Nov 2000 | A |
6150839 | New et al. | Nov 2000 | A |
6154048 | Iwanczuk et al. | Nov 2000 | A |
6154049 | New | Nov 2000 | A |
6154826 | Wulf et al. | Nov 2000 | A |
6157214 | Marshall | Dec 2000 | A |
6170051 | Dowling | Jan 2001 | B1 |
6172520 | Lawman et al. | Jan 2001 | B1 |
6173419 | Barnett | Jan 2001 | B1 |
6173434 | Wirthlin et al. | Jan 2001 | B1 |
6178494 | Casselman | Jan 2001 | B1 |
6185256 | Saito et al. | Feb 2001 | B1 |
6185731 | Maeda et al. | Feb 2001 | B1 |
6188240 | Nakaya | Feb 2001 | B1 |
6188650 | Hamada et al. | Feb 2001 | B1 |
6198304 | Sasaki | Mar 2001 | B1 |
6201406 | Iwanczuk et al. | Mar 2001 | B1 |
6202163 | Gabzdyl et al. | Mar 2001 | B1 |
6202182 | Abramovici et al. | Mar 2001 | B1 |
6204687 | Schultz et al. | Mar 2001 | B1 |
6211697 | Lien et al. | Apr 2001 | B1 |
6212544 | Borkenhagen et al. | Apr 2001 | B1 |
6212650 | Guccione | Apr 2001 | B1 |
6215326 | Jefferson et al. | Apr 2001 | B1 |
6216223 | Revilla et al. | Apr 2001 | B1 |
6219833 | Solomon et al. | Apr 2001 | B1 |
RE37195 | Kean | May 2001 | E |
6230307 | Davis et al. | May 2001 | B1 |
6240502 | Panwar et al. | May 2001 | B1 |
6243808 | Wang | Jun 2001 | B1 |
6247147 | Beenstra et al. | Jun 2001 | B1 |
6249756 | Bunton et al. | Jun 2001 | B1 |
6252792 | Marshall et al. | Jun 2001 | B1 |
6256724 | Hocevar et al. | Jul 2001 | B1 |
6260114 | Schug | Jul 2001 | B1 |
6260179 | Ohsawa et al. | Jul 2001 | B1 |
6262908 | Marshall et al. | Jul 2001 | B1 |
6263430 | Trimberger et al. | Jul 2001 | B1 |
6266760 | DeHon et al. | Jul 2001 | B1 |
6279077 | Nasserbakht et al. | Aug 2001 | B1 |
6282627 | Wong et al. | Aug 2001 | B1 |
6282701 | Wygodny et al. | Aug 2001 | B1 |
6285624 | Chen | Sep 2001 | B1 |
6286134 | Click, Jr. et al. | Sep 2001 | B1 |
6288566 | Hanrahan et al. | Sep 2001 | B1 |
6289440 | Casselman | Sep 2001 | B1 |
6298043 | Mauger et al. | Oct 2001 | B1 |
6298472 | Phillips et al. | Oct 2001 | B1 |
6301706 | Maslennikov et al. | Oct 2001 | B1 |
6311200 | Hanrahan et al. | Oct 2001 | B1 |
6311265 | Beckerle et al. | Oct 2001 | B1 |
6321298 | Hubis | Nov 2001 | B1 |
6321366 | Tseng et al. | Nov 2001 | B1 |
6321373 | Ekanadham et al. | Nov 2001 | B1 |
6338106 | Vorbach et al. | Jan 2002 | B1 |
6339424 | Ishikawa et al. | Jan 2002 | B1 |
6339840 | Kothari et al. | Jan 2002 | B1 |
6341318 | Dakhil | Jan 2002 | B1 |
6347346 | Taylor | Feb 2002 | B1 |
6349346 | Hanrahan et al. | Feb 2002 | B1 |
6353841 | Marshall et al. | Mar 2002 | B1 |
6362650 | New et al. | Mar 2002 | B1 |
6370596 | Dakhil | Apr 2002 | B1 |
6373779 | Pang et al. | Apr 2002 | B1 |
6374286 | Gee et al. | Apr 2002 | B1 |
6378068 | Foster et al. | Apr 2002 | B1 |
6381624 | Colon-Bonet et al. | Apr 2002 | B1 |
6389379 | Lin et al. | May 2002 | B1 |
6389579 | Phillips et al. | May 2002 | B1 |
6392912 | Hanrahan et al. | May 2002 | B1 |
6398383 | Huang | Jun 2002 | B1 |
6400601 | Sudo et al. | Jun 2002 | B1 |
6404224 | Azegami et al. | Jun 2002 | B1 |
6405185 | Pechanek et al. | Jun 2002 | B1 |
6405299 | Vorbach et al. | Jun 2002 | B1 |
6421808 | McGeer | Jul 2002 | B1 |
6421809 | Wuytack et al. | Jul 2002 | B1 |
6421817 | Mohan | Jul 2002 | B1 |
6425054 | Nguyen | Jul 2002 | B1 |
6425068 | Vorbach et al. | Jul 2002 | B1 |
6426649 | Fu et al. | Jul 2002 | B1 |
6427156 | Chapman et al. | Jul 2002 | B1 |
6430309 | Pressman et al. | Aug 2002 | B1 |
6434642 | Camilleri et al. | Aug 2002 | B1 |
6434695 | Esfahani et al. | Aug 2002 | B1 |
6434699 | Jones et al. | Aug 2002 | B1 |
6435054 | Nguyen | Aug 2002 | B1 |
6437441 | Yamamoto | Aug 2002 | B1 |
6438747 | Schreiber et al. | Aug 2002 | B1 |
6449283 | Chao et al. | Sep 2002 | B1 |
6456628 | Greim et al. | Sep 2002 | B1 |
6457116 | Mirsky et al. | Sep 2002 | B1 |
6476634 | Bilski | Nov 2002 | B1 |
6477643 | Vorbach et al. | Nov 2002 | B1 |
6480937 | Vorbach et al. | Nov 2002 | B1 |
6480954 | Trimberger et al. | Nov 2002 | B2 |
6483343 | Faith et al. | Nov 2002 | B1 |
6487709 | Keller et al. | Nov 2002 | B1 |
6490695 | Zagorski et al. | Dec 2002 | B1 |
6496740 | Robertson et al. | Dec 2002 | B1 |
6496902 | Faanes et al. | Dec 2002 | B1 |
6496971 | Lesea et al. | Dec 2002 | B1 |
6504398 | Lien et al. | Jan 2003 | B1 |
6507898 | Gibson et al. | Jan 2003 | B1 |
6507947 | Schreiber et al. | Jan 2003 | B1 |
6513077 | Vorbach et al. | Jan 2003 | B2 |
6516382 | Manning | Feb 2003 | B2 |
6518787 | Allegrucci et al. | Feb 2003 | B1 |
6519674 | Lam et al. | Feb 2003 | B1 |
6523107 | Stansfield et al. | Feb 2003 | B1 |
6525678 | Veenstra et al. | Feb 2003 | B1 |
6526520 | Vorbach et al. | Feb 2003 | B1 |
6538468 | Moore | Mar 2003 | B1 |
6538470 | Langhammer et al. | Mar 2003 | B1 |
6539415 | Mercs | Mar 2003 | B1 |
6539438 | Ledzius et al. | Mar 2003 | B1 |
6539477 | Seawright | Mar 2003 | B1 |
6542394 | Marshall et al. | Apr 2003 | B2 |
6542844 | Hanna | Apr 2003 | B1 |
6542998 | Vorbach et al. | Apr 2003 | B1 |
6553395 | Marshall et al. | Apr 2003 | B2 |
6567834 | Marshall et al. | May 2003 | B1 |
6571381 | Vorbach et al. | May 2003 | B1 |
6587939 | Takano | Jul 2003 | B1 |
6606704 | Adiletta et al. | Aug 2003 | B1 |
6624819 | Lewis | Sep 2003 | B1 |
6625631 | Ruehle | Sep 2003 | B2 |
6631487 | Abramovici et al. | Oct 2003 | B1 |
6633181 | Rupp | Oct 2003 | B1 |
6657457 | Hanrahan et al. | Dec 2003 | B1 |
6658564 | Smith et al. | Dec 2003 | B1 |
6665758 | Frazier et al. | Dec 2003 | B1 |
6668237 | Guccione et al. | Dec 2003 | B1 |
6681388 | Sato et al. | Jan 2004 | B1 |
6687788 | Vorbach et al. | Feb 2004 | B2 |
6697979 | Vorbach et al. | Feb 2004 | B1 |
6704816 | Burke | Mar 2004 | B1 |
6708223 | Wang et al. | Mar 2004 | B1 |
6708325 | Cooke et al. | Mar 2004 | B2 |
6717436 | Kress et al. | Apr 2004 | B2 |
6721830 | Vorbach et al. | Apr 2004 | B2 |
6725334 | Barroso et al. | Apr 2004 | B2 |
6728871 | Vorbach et al. | Apr 2004 | B1 |
6748440 | Lisitsa et al. | Jun 2004 | B1 |
6754805 | Juan | Jun 2004 | B1 |
6757847 | Farkash et al. | Jun 2004 | B1 |
6757892 | Gokhale et al. | Jun 2004 | B1 |
6782445 | Olgiati et al. | Aug 2004 | B1 |
6785826 | Durham et al. | Aug 2004 | B1 |
6802026 | Patterson et al. | Oct 2004 | B1 |
6803787 | Wicker, Jr. | Oct 2004 | B1 |
6820188 | Stansfield et al. | Nov 2004 | B2 |
6829697 | Davis et al. | Dec 2004 | B1 |
6836842 | Guccione et al. | Dec 2004 | B1 |
6847370 | Baldwin et al. | Jan 2005 | B2 |
6859869 | Vorbach | Feb 2005 | B1 |
6868476 | Rosenbluth et al. | Mar 2005 | B2 |
6871341 | Shyr | Mar 2005 | B1 |
6874108 | Abramovici et al. | Mar 2005 | B1 |
6886092 | Douglass et al. | Apr 2005 | B1 |
6901502 | Yano et al. | May 2005 | B2 |
6928523 | Yamada | Aug 2005 | B2 |
6957306 | So et al. | Oct 2005 | B2 |
6961924 | Bates et al. | Nov 2005 | B2 |
6977649 | Baldwin et al. | Dec 2005 | B1 |
7000161 | Allen et al. | Feb 2006 | B1 |
7007096 | Lisitsa et al. | Feb 2006 | B1 |
7010687 | Ichimura | Mar 2006 | B2 |
7028107 | Vorbach et al. | Apr 2006 | B2 |
7036114 | McWilliams et al. | Apr 2006 | B2 |
7038952 | Zack et al. | May 2006 | B1 |
7043416 | Lin | May 2006 | B1 |
7144152 | Rusu et al. | Dec 2006 | B2 |
7155708 | Hammes et al. | Dec 2006 | B2 |
7164422 | Wholey et al. | Jan 2007 | B1 |
7210129 | May et al. | Apr 2007 | B2 |
7216204 | Rosenbluth et al. | May 2007 | B2 |
7237087 | Vorbach et al. | Jun 2007 | B2 |
7249351 | Songer et al. | Jul 2007 | B1 |
7254649 | Subramanian et al. | Aug 2007 | B2 |
7340596 | Crosland et al. | Mar 2008 | B1 |
7346644 | Langhammer et al. | Mar 2008 | B1 |
7350178 | Crosland et al. | Mar 2008 | B1 |
7455450 | Liu et al. | Nov 2008 | B2 |
7595659 | Vorbach et al. | Sep 2009 | B2 |
7657877 | Vorbach et al. | Feb 2010 | B2 |
7759968 | Hussein et al. | Jul 2010 | B1 |
7873811 | Wolinski et al. | Jan 2011 | B1 |
7971051 | Paul et al. | Jun 2011 | B2 |
20010001860 | Beiu | May 2001 | A1 |
20010010074 | Nishihara et al. | Jul 2001 | A1 |
20010018733 | Fujii et al. | Aug 2001 | A1 |
20010032305 | Barry | Oct 2001 | A1 |
20020010853 | Trimberger et al. | Jan 2002 | A1 |
20020013861 | Adiletta et al. | Jan 2002 | A1 |
20020038414 | Taylor et al. | Mar 2002 | A1 |
20020045952 | Blemel | Apr 2002 | A1 |
20020051482 | Lomp | May 2002 | A1 |
20020073282 | Chauvel et al. | Jun 2002 | A1 |
20020083308 | Pereira et al. | Jun 2002 | A1 |
20020099759 | Gootherts | Jul 2002 | A1 |
20020103839 | Ozawa | Aug 2002 | A1 |
20020124238 | Metzgen | Sep 2002 | A1 |
20020138716 | Master et al. | Sep 2002 | A1 |
20020143505 | Drusinsky | Oct 2002 | A1 |
20020144229 | Hanrahan | Oct 2002 | A1 |
20020147932 | Brock et al. | Oct 2002 | A1 |
20020152060 | Tseng | Oct 2002 | A1 |
20020162097 | Meribout | Oct 2002 | A1 |
20020165886 | Lam | Nov 2002 | A1 |
20030001615 | Sueyoshi et al. | Jan 2003 | A1 |
20030014743 | Cooke | Jan 2003 | A1 |
20030046607 | Vorbach | Mar 2003 | A1 |
20030052711 | Taylor et al. | Mar 2003 | A1 |
20030055861 | Lai et al. | Mar 2003 | A1 |
20030056062 | Prabhu | Mar 2003 | A1 |
20030056085 | Vorbach | Mar 2003 | A1 |
20030056091 | Greenberg | Mar 2003 | A1 |
20030056202 | Vorbach | Mar 2003 | A1 |
20030061542 | Bates et al. | Mar 2003 | A1 |
20030062922 | Douglass et al. | Apr 2003 | A1 |
20030070059 | Dally et al. | Apr 2003 | A1 |
20030086300 | Noyes et al. | May 2003 | A1 |
20030093662 | Vorbach et al. | May 2003 | A1 |
20030097513 | Vorbach et al. | May 2003 | A1 |
20030123579 | Safavi et al. | Jul 2003 | A1 |
20030135686 | Vorbach et al. | Jul 2003 | A1 |
20030154349 | Berg et al. | Aug 2003 | A1 |
20030192032 | Andrade et al. | Oct 2003 | A1 |
20030226056 | Yip et al. | Dec 2003 | A1 |
20040015899 | May et al. | Jan 2004 | A1 |
20040025005 | Vorbach et al. | Feb 2004 | A1 |
20040078548 | Claydon et al. | Apr 2004 | A1 |
20040088689 | Hammes | May 2004 | A1 |
20040088691 | Hammes et al. | May 2004 | A1 |
20040168099 | Vorbach et al. | Aug 2004 | A1 |
20040199688 | Vorbach et al. | Oct 2004 | A1 |
20050066213 | Vorbach et al. | Mar 2005 | A1 |
20050091468 | Morita et al. | Apr 2005 | A1 |
20050144210 | Simkins et al. | Jun 2005 | A1 |
20050144212 | Simkins et al. | Jun 2005 | A1 |
20050144215 | Simkins et al. | Jun 2005 | A1 |
20060036988 | Allen et al. | Feb 2006 | A1 |
20060230094 | Simkins et al. | Oct 2006 | A1 |
20060230096 | Thendean et al. | Oct 2006 | A1 |
20070050603 | Vorbach et al. | Mar 2007 | A1 |
20070083730 | Vorbach et al. | Apr 2007 | A1 |
20080313383 | Morita et al. | Dec 2008 | A1 |
20090085603 | Paul et al. | Apr 2009 | A1 |
20090193384 | Sima et al. | Jul 2009 | A1 |
20100306602 | Kamiya et al. | Dec 2010 | A1 |
Number | Date | Country |
---|---|---|
42 21 278 | Jan 1994 | DE |
44 16 881 | Nov 1994 | DE |
38 55 673 | Nov 1996 | DE |
196 51 075 | Jun 1998 | DE |
196 54 593 | Jul 1998 | DE |
196 54 595 | Jul 1998 | DE |
196 54 846 | Jul 1998 | DE |
197 04 044 | Aug 1998 | DE |
197 04 728 | Aug 1998 | DE |
197 04 742 | Sep 1998 | DE |
198 22 776 | Mar 1999 | DE |
198 07 872 | Aug 1999 | DE |
198 61 088 | Feb 2000 | DE |
199 26 538 | Dec 2000 | DE |
100 28 397 | Dec 2001 | DE |
100 36 627 | Feb 2002 | DE |
101 29 237 | Apr 2002 | DE |
102 04 044 | Aug 2003 | DE |
0 208 457 | Jan 1987 | EP |
0 221 360 | May 1987 | EP |
0 398 552 | Nov 1990 | EP |
0 428 327 | May 1991 | EP |
0 463 721 | Jan 1992 | EP |
0 477 809 | Apr 1992 | EP |
0 485 690 | May 1992 | EP |
0 497 029 | Aug 1992 | EP |
0 539 595 | May 1993 | EP |
0 638 867 | Aug 1994 | EP |
0 628 917 | Dec 1994 | EP |
0 678 985 | Oct 1995 | EP |
0 686 915 | Dec 1995 | EP |
0 707 269 | Apr 1996 | EP |
0 735 685 | Oct 1996 | EP |
0 835 685 | Oct 1996 | EP |
0 746 106 | Dec 1996 | EP |
0 748 051 | Dec 1996 | EP |
0 726 532 | Jul 1998 | EP |
0 926 594 | Jun 1999 | EP |
1 102 674 | Jul 1999 | EP |
1 061 439 | Dec 2000 | EP |
1 115 204 | Jul 2001 | EP |
1 146 432 | Oct 2001 | EP |
0 696 001 | Dec 2001 | EP |
1 669 885 | Jun 2006 | EP |
2 752 466 | Feb 1998 | FR |
2 304 438 | Mar 1997 | GB |
58-58672 | Apr 1983 | JP |
1044571 | Feb 1989 | JP |
01-229378 | Sep 1989 | JP |
2-130023 | May 1990 | JP |
2-226423 | Sep 1990 | JP |
5-276007 | Oct 1993 | JP |
5-509184 | Dec 1993 | JP |
06-266605 | Sep 1994 | JP |
07-086921 | Mar 1995 | JP |
7-154242 | Jun 1995 | JP |
7-182160 | Jul 1995 | JP |
7-182167 | Jul 1995 | JP |
8-44581 | Feb 1996 | JP |
8-069447 | Mar 1996 | JP |
08-101761 | Apr 1996 | JP |
08-102492 | Apr 1996 | JP |
8-106443 | Apr 1996 | JP |
08-148989 | Jun 1996 | JP |
08-221164 | Aug 1996 | JP |
8-250685 | Sep 1996 | JP |
9-27745 | Jan 1997 | JP |
9-237284 | Sep 1997 | JP |
09-294069 | Nov 1997 | JP |
11-046187 | Feb 1999 | JP |
11-307725 | Nov 1999 | JP |
2000-076066 | Mar 2000 | JP |
2000-181566 | Jun 2000 | JP |
2000-311156 | Nov 2000 | JP |
2001-500682 | Jan 2001 | JP |
2001-510650 | Jul 2001 | JP |
2001-236221 | Aug 2001 | JP |
2002-0033457 | Jan 2002 | JP |
WO9004835 | May 1990 | WO |
WO9011648 | Oct 1990 | WO |
WO9201987 | Feb 1992 | WO |
WO9311503 | Jun 1993 | WO |
WO9406077 | Mar 1994 | WO |
WO9408399 | Apr 1994 | WO |
WO9500161 | Jan 1995 | WO |
WO9526001 | Sep 1995 | WO |
WO9810517 | Mar 1998 | WO |
WO9826356 | Jun 1998 | WO |
WO9828697 | Jul 1998 | WO |
WO9829952 | Jul 1998 | WO |
WO9831102 | Jul 1998 | WO |
WO9835294 | Aug 1998 | WO |
WO9835299 | Aug 1998 | WO |
WO9900731 | Jan 1999 | WO |
WO9900739 | Jan 1999 | WO |
WO9912111 | Mar 1999 | WO |
WO9932975 | Jul 1999 | WO |
WO 9940522 | Aug 1999 | WO |
WO9944120 | Sep 1999 | WO |
WO9944147 | Sep 1999 | WO |
WO0017771 | Mar 2000 | WO |
WO0038087 | Jun 2000 | WO |
0045282 | Aug 2000 | WO |
WO0049496 | Aug 2000 | WO |
WO0077652 | Dec 2000 | WO |
WO0155917 | Aug 2001 | WO |
WO0213000 | Feb 2002 | WO |
WO0221010 | Mar 2002 | WO |
WO0229600 | Apr 2002 | WO |
WO0250665 | Jun 2002 | WO |
WO02071196 | Sep 2002 | WO |
WO02071248 | Sep 2002 | WO |
WO02071249 | Sep 2002 | WO |
WO02103532 | Dec 2002 | WO |
WO03017095 | Feb 2003 | WO |
WO03023616 | Mar 2003 | WO |
WO03025781 | Mar 2003 | WO |
WO03032975 | Apr 2003 | WO |
WO03036507 | May 2003 | WO |
03091875 | Nov 2003 | WO |
WO2004053718 | Jun 2004 | WO |
WO2004114128 | Dec 2004 | WO |
WO2005045692 | May 2005 | WO |
WO 2007030395 | Mar 2007 | WO |
Number | Date | Country | |
---|---|---|---|
20060090062 A1 | Apr 2006 | US |