A portion of the disclosure of this patent document contains material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever. The following notice applies to the software and data as described below and in the drawings that form a part of this document: Copyright 2003, Cardiac Pacemakers Inc., All Rights Reserved.
This document relates generally to medical systems, devices, and methods, and particularly, but not by way of limitation, to cardiac rhythm management systems and methods for constraint-illustrative parameter entry.
When functioning properly, the human heart maintains its own intrinsic rhythm. Its sinoatrial node generates intrinsic electrical cardiac signals that depolarize the atria, causing atrial heart contractions. Its atrioventricular node then passes the intrinsic cardiac signal to depolarize the ventricles, causing ventricular heart contractions. These intrinsic cardiac signals can be sensed on a surface electrocardiogram (i.e., a “surface ECG signal”) obtained from electrodes placed on the patient's skin, or from electrodes implanted within the patient's body (i.e., an “electrogram signal”). The surface ECG and electrogram waveforms, for example, include artifacts associated with atrial depolarizations (“P-waves”) and those associated with ventricular depolarizations (“QRS complexes”).
A normal heart is capable of pumping adequate blood throughout the body's circulatory system. However, some people have irregular cardiac rhythms, referred to as cardiac arrhythmias. Moreover, some patients have poor spatial coordination of heart contractions. In either case, diminished blood circulation may result. For such patients, a cardiac rhythm management system may be used to improve the rhythm and/or spatial coordination of heart contractions. Such systems often include a cardiac rhythm management device that is implanted in the patient to deliver therapy to the heart.
Cardiac rhythm management systems include, among other things, pacemakers, also referred to as pacers. Pacers deliver timed sequences of low energy electrical stimuli, called pace pulses, to the heart, such as via an intravascular lead wire or catheter (referred to as a “lead”) having one or more electrodes disposed in or about the heart. Heart contractions are initiated in response to such pace pulses (this is referred to as “capturing” the heart). By properly timing the delivery of pace pulses, the heart can be induced to contract in proper rhythm, greatly improving its efficiency as a pump. Pacers are often used to treat patients with bradyarrhythmias, that is, hearts that beat too slowly, or irregularly. Such pacers may also coordinate atrial and ventricular contractions to improve pumping efficiency.
Cardiac rhythm management systems also include cardiac resynchronization therapy (CRT) devices for coordinating the spatial nature of heart depolarizations for improving pumping efficiency. For example, a CRT device may deliver appropriately timed pace pulses to different locations of the same heart chamber to better coordinate the contraction of that heart chamber, or the CRT device may deliver appropriately timed pace pulses to different heart chambers to improve the manner in which these different heart chambers contract together.
Cardiac rhythm management systems also include defibrillators that are capable of delivering higher energy electrical stimuli to the heart. Such defibrillators include cardioverters, which typically synchronize the delivery of such stimuli to sensed intrinsic heart activity signals. Defibrillators are often used to treat patients with tachyarrhythmias, that is, hearts that beat too quickly. Such too-fast heart rhythms also cause diminished blood circulation because the heart isn't allowed sufficient time to fill with blood before contracting to expel the blood. Such pumping by the heart is inefficient. A defibrillator is capable of delivering a high energy electrical stimulus that is sometimes referred to as a defibrillation countershock, also referred to simply as a “shock.” The shock interrupts the tachyarrhythmia, allowing the heart to reestablish a normal rhythm for the efficient pumping of blood. In addition to pacers, CRT devices, and defibrillators, cardiac rhythm management systems also include devices that combine these functions, as well as monitors, drug delivery devices, and any other implantable or external systems or devices for diagnosing or treating the heart. Cardiac rhythm management systems often include external local or remote user interfaces (sometimes referred to as “programmers” or “patient management systems”) for programming parameters (constraints) of an implantable cardiac rhythm management device or receiving data telemetered from the implantable cardiac rhythm management device.
One problem faced by cardiac rhythm management systems and other Personal Programmable Medical Devices (“PPMD”) is in using an external user interface to program its parameters, such as to tailor the therapy delivered to the needs of the particular subject being treated by that device. For example, programmable implantable cardiac rhythm management devices often make use of a plethora of programmable parameters. Moreover, such programmable parameters may interact with each other. For example, programming a first parameter to a particular value may limit the range of particular values to which a second parameter may be programmed. Because of this interaction between different programmable parameters, a complex set of constraints typically governs how the set of parameters may be programmed. Consequently, a physician faces a daunting task in programming the whole set of parameters to self-consistent values. Moreover, as new therapies are developed (e.g., congestive heart failure therapies that treat both left and right sides of the heart), more parameters and more interactions between parameters are inevitable, further complicating the task of programming a complete set of parameters to allowable values. In addition, new implantable, programmable medical device systems for applications other than the heart itself are continuously developed, ever increasing the number of potential parameters and interactions between parameters. Often, programming one parameter or a set of parameters to a particular value results in invalid results when combined with other interdependent parameter values, causing a complex trial and error analysis for the user. One method of reducing the difficulty of programming parameter values is through establishing manufacturer's default values. This method, however, does not allow the flexibility needed by the physician to specifically tailor a treatment to a particular patient.
Tailoring treatment for a particular patient typically requires programming one or more parameters of the device away from the manufacturer's default values. The current method used to program a PPMD is very inefficient when a large number of parameter interdependencies exist. Often, complex parameter interaction constraints govern interdependencies between parameters. Such parameter interaction constraints are typically defined by the PPMD manufacturer.
To program one or more parameters away from the manufacturer defaults, a user-specified set of parameter values is obtained from the user, and automatically compared to the parameter interaction constraints to determine whether a constraint violation has occurred. If no constraint violation exists, the user-specified parameters are accepted into the PPMD. However, if a constraint violation does exist, the user may be advised of one or more of the violation's existence, the reason for the violation, or a description of the nature of the constraint rule. However, it is then typically left entirely up to the user to modify the existing set of parameter values to try to remove the violation without inadvertently triggering another violation. In fact, this can be a complex and daunting task.
While it may sometimes be possible for the user to achieve a violation-free second set of parameters in a short number of iterations and an acceptable amount of time, the existence of more parameters will typically increase the number of iterations needed and the difficulty of achieving any acceptable set of violation-free parameter values. This decreases the productivity of the user (in most cases a physician), and increases the possibility of errors.
In the drawings, which are not necessarily drawn to scale, like numerals describe substantially similar components throughout the several views. Like numerals having different letter suffixes represent different instances of substantially similar components. The drawings illustrate generally, by way of example, but not by way of limitation, various embodiments discussed in the present document.
a illustrates an example of candidate values of a parameter X.
b illustrates an example of candidate values of a parameter Y.
The following detailed description includes references to the accompanying drawings, which form a part of the detailed description. The drawings show, by way of illustration, specific embodiments in which the invention may be practiced. These embodiments, which are also referred to herein as “examples,” are described in enough detail to enable those skilled in the art to practice the invention. The embodiments may be combined, other embodiments may be utilized, or structural, logical and electrical changes may be made without departing from the scope of the present invention. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is defined by the appended claims and their equivalents.
In this document, the terms “a” or “an” are used, as is common in patent documents, to include one or more than one. In this document, the term “or” is used to refer to a nonexclusive or, unless otherwise indicated. Furthermore, all publications, patents, and patent documents referred to in this document are incorporated by reference herein in their entirety, as though individually incorporated by reference. In the event of inconsistent usages between this document and those documents so incorporated by reference, the usage in the incorporated reference(s) should be considered supplementary to that of this document; for irreconcilable inconsistencies, the usage in this document controls.
The present inventors have recognized a need for improved techniques for assisting a physician, caregiver, or other user in programming parameter values by automatically determining, from a user-specified input set of parameter values, if possible, a second set of parameter values for a PPMD such as an implantable cardiac rhythm management device. This document discusses, among other things, systems, devices, and methods that will be described in applications involving implantable or external Personal Programmable Medical Devices (PPMDs). Examples of PPMDs include, among other things, implantable medical devices including, but not limited to, implantable cardiac rhythm management systems such as pacemakers, cardioverter/defibrillators, pacer/defibrillators, biventricular or other multi-site resynchronization or coordination devices, and drug delivery systems. However, these systems, devices, and methods may be employed in unimplanted devices, including, but not limited to, external pacemakers, cardioverter/defibrillators, pacer/defibrillators, biventricular or other multi-site resynchronization or coordination devices, monitors, programmers and recorders, whether such devices are used for providing a diagnostic, a therapy, or both a diagnostic and a therapy.
In the illustrative example of
The automatic comparison of the first set of parameter values 210 to the parameter interaction constraints 220 may result in a first set of one or more constraint violations 230. In certain examples, a constraint violation categorization module 235 categorizes a particular constraint violation, such as by severity into two or more categories (e.g., “unacceptable”, “undesirable but acceptable”, etc.). In certain examples, a constraint violation that would result in the PPMD functioning incorrectly is typically categorized as a “warning,” while a constraint violation that may result in unconventional—but permissible—prescription is typically categorized as an “attention.”
In the example of
If no facially acceptable second set of parameter values 280 can be automatically determined by the interaction resolution engine 240, then the user is notified that no acceptable second set of parameter values could be found.
At 315, the first set of parameter values 210 is compared to the parameter interaction constraints 220. A first set of parameter interaction constraint violations (if any) is created by comparing the first set of parameter values 210 to the parameter interaction constraints 220. At 320, in this example, the user is informed of the constraint violations 230. The message at 320 may also include one or more explanations about the constraint violations, such as a textual or graphical explanation of the underlying rule being violated. If one or more constraint violations 230 exist, then at 325 the user can either manually remedy the constraint violation, or alternatively request that the constraint violation be automatically remedied. In certain examples, to request automatic remediation of the constraint violation, the user uses the prioritizing selector 290 to select one or more parameters from the parameters associated with the first set of parameter values 210 that the user wants held constant in value during the automatic violation remediation. At 325, the interaction resolution engine 240, holding constant the one or more parameters specified by the user, attempts to automatically determine a second set of parameter values 280, while holding various parameter values as close as possible to the first set of parameter values. At 335, if the interaction resolution engine is able to automatically determine an acceptable second set of parameter values, then at 340 the second set of parameter values is displayed to the user for approval. At 350, the user reviews the second set of parameter values 280. If the user approves the automatically-generated second set of parameter values 280, then at 360 the user may then program the PPMD with the second set of parameter values 280. If the user does not approve of the second set of parameter values 280, then at 355 the user may redefine the first set of parameter values 210, and may again request automatic determination of an acceptable set of parameter values, such as based on the redefined first set of parameter values 210.
At 335, if the interaction resolution engine 240 is unable to find an acceptable second set of parameter values 280, then the user is informed that no acceptable solution could be found. The message may also explain why no solution could be found. At 335 the user may redefine the first set of parameter values 210, and may again request automatic determination of an acceptable set of parameter values, such as based on the redefined first set of parameter values 210.
The method of
In one example, a particular set of parameter values is deemed to include less egregious violations than another set of parameter values if fewer “warnings” are associated with the particular set of parameter values.
In another example, a particular set of parameter values is deemed to include less egregious violations than another set of parameter values if both sets of parameter values include an equal number of associated “warnings,” but fewer “attentions” are associated with the particular set of parameter values.
During the automatic parameter value determination process, the current set of parameter values 504 is a placeholder (e.g., for best known parameter values so far) that may change in value during the course of the automatic parameter determination analysis performed by the interaction resolution engine 240. The current set of parameter values 504 holds the then-current set of parameter values with less egregious constraint violations compared with all other sets of parameter values so far analyzed by the interaction resolution engine 240. The current set of constraint violations 505 are the one or more constraint violations (if any) associated with the then-current set of parameter values 504.
During the automatic parameter value determination process, a next set of parameter values 506 is a placeholder that changes in value during the course of the automatic interaction resolution engine analysis. The next set of parameter values 506 includes a potential second set of parameter values. A next set of constraint violations 507 are the one or more constraint violations 230 (if any) associated with a next set of parameter values 506. In certain examples, the solution determination module 509 organizes candidate second parameter sets according to a computed relative weight of change with respect to the first set of parameter values.
One or more exit criteria 510 determine when the interaction resolution engine 240 should complete its automatic parameter interaction resolution analysis. In one example, the interaction resolution engine 240 exits upon automatically finding a set of parameter values with no associated constraint violations (“attentions”, “warnings”). In another example, the interaction resolution engine 240 exits upon reaching a defined maximum number of tests of various combinations of parameter values. In one example, the interaction resolution engine 240 exits upon exhausting all possible combinations of parameter values. In certain examples, a solution determination module 509 determines whether a solution has been found. In certain examples, a weight of change analyzer 511 determines an order in which potential second sets of parameter values become considered as the next parameter set 507. The weight of change analyzer 511 may order the potential second parameter sets so that those sets of potential second parameter values that are closest in value to the first set of parameter values 502 are considered before potential second parameter sets that are further in value from the first set of parameter values 502.
At 640, the interaction resolution engine 240 determines whether any exit criteria 510 are satisfied. If so, then at 630 the solution determination device 509 determines whether a solution has been found. At 635, if the current set of parameter values 504 is different than the first set of parameter values 502 supplied by the user, the solution determination module 509 provides the current parameter set to the user as the proposed second parameter set. In one example, the interaction resolution engine 240 may also require that original constraint violation, which prompted the user to select a parameter to remain constant, be resolved before providing a second parameter set to the user. At 625, if the current set of parameter values 504 is identical to the first set of parameter values 502 supplied by the user, then no solution has been found, in which case, at 625 a message is displayed to the user explaining that no solution could be found.
If, at 640, no exit criteria are met, then at 645 the current set of parameter values' constraint violations 505 are compared to the next set of parameter values' constraint violations calculated at 620. If the current set of parameter values' constraint violations 505 are less egregious or equal to the next set of parameter values' constraint violations 507, then at 650 the next set of parameter values is discarded. At 610, the current set of parameter values is maintained with no change in value, and at 615 a new next set of parameter values is obtained.
If, at 645, the current set of parameter values' constraint violations 505 are less egregious than the next set of parameter values' constraint violations 507, then at 610 the next set of parameter values replaces the current set of parameter values 655. At 615, a new next set of parameter values is established. The method illustrated in
In certain examples, the interaction resolution engine 240 uses the weight of change analyzer to determine the order of potential/candidate second parameter sets by the weight of change compared to the first set parameter values. Analyzing a set of parameter values with a lesser weight of change from the first set of parameter values 502 before those with a greater weight of change from the first set of parameter values may be advantageous, as opposed to an analysis where the next set of parameter values are computed randomly or by some other method. The weight of change analysis can be used to ensure that if two sets of parameter values are associated with equally egregious constraint violations, that set of parameter values with the least weight of change value, compared to the first set of parameter values, becomes the resultant second set of parameter values 280. Using the weight of change method to order the candidate sets of parameter values for consideration also may reduce the number of computational iterations needed to find a second set of parameter values 280. The weight of change analysis can also be used to ensure that if a second set of parameter values is found with no constraint violations, satisfying exit criteria 510, the second set of parameter values is the closest violation-free set of parameter values to the first set of parameter values 502. In certain examples, the weight of change of all potential sets of parameter values is calculated, and stored in an array, each array element ordered by the weight of change from the first set of parameter values 502. The array can be used to select each successive next set of parameter values in correspondence with the sequence of the elements in the array.
Wv(p)=[(s(p))2+s(p)]/2
As an illustrative example, assume that the value of both parameters X and Y in the first set of parameter values is 50. In the example of
In the example of
Using the ((s(p))2+s(p)) function helps maintain values close to the starting point. Its result, Wv(p), increases exponentially with the number of steps away from a starting point value. Such a weighting ensures that potential next set of parameter values 506 are ordered by how close they are in value to the first set of parameter values 502.
For the example of
At 802, a normalization value n(p) is determined using only one of either: (a) the total number of steps 704 or 714 for a particular parameter p, or (b) the total number of candidate values for the particular parameter p. Where normalizing by the total number of steps, for the example of
At 803, a normalized weight of change for a parameter p, W(p), is determined. W(p) is equal to the weight value, Wv(p) of a parameter p, divided by the normalization value n(p) of the parameter p.
n(p)=total number of candidate values for parameter p
W(p)=Wv(p)/n(p)
In the above equation, the normalization divides by the total number of candidate values for parameter p, rather than by the alternative of dividing by the total number of steps for the candidate p.
In the example of
At 804, this method is applied to each parameter in the set of parameter values. At 805, when a weight of change W(pi) has been determined for each parameter in the set of parameter values, a total weight of change Wt for the entire set of parameter values is determined by summing the individual weight of change W(p1) of each parameter in the set of parameter values.
The two-dimensional nature of the Tables 1301A-B and 1302A-B is not required. For example, the candidate values of Parameter A could be conceptualized as extending linearly from the starting point in two directions. In such an arrangement, a first direction would include choices #1a, #2a, #3a, #4a, #5a, #6a, #7a, #8a, #9a, #10a, #11a, and #12a. The second direction would include choices #1b, #2b, #3b, #4b, #5b, #6b, #7b, #8b, #9b, #10b, #11b, and #12b. Similarly, the candidate values of Parameter B could be conceptualized as extending linearly from the starting point in two directions. In such an arrangement, a first direction would include choices #1a, #2a, and #3a. The second direction would include choices #1b, and #2b.
In each box of Tables 1301B and 1302B, the non-normalized weight is indicated (e.g., W=1 for choice #1a in Table 1301B), along with a parenthetical indicating the corresponding normalized weight value (e.g., 0.4 for choice #1a in Table 1301B).
In certain examples, after the children 1304 are determined by the interaction resolution engine 240, they are inserted into a linear Weighted Possible Setting Array 1308 of
Because the combinations A+B and A−B have smaller normalized weights of change than the combinations AB− and AB+, the former are placed to the left of the latter in the array 1308. To select the next set of parameter values 506 for comparison to the current set of parameter values 504, as described previously with respect to
In this example, this means that the combination A+B is established as the next set of parameter values at 615 of
Operation of the interaction resolution engine 240 is not limited to the above examples. In another example, a user selects one or more particular constraint violations from a list, and is then presented with a list of parameters on which the one or more constraint violations depend. The user may then select one or more parameters to remain constant. In one example, a constraint violation exists, and the user is presented with all parameters for a given medical device. The user then selects one or more parameters from the list to remain constant.
In another example, the user is presented with a “Fix This One” or “Fix These Ones” button. The user selects one or more parameters that may be modified. In this example all non-selected parameters are held constant while the interaction resolution engine 240 attempts to determine a solution based on modification of the selected parameters.
In another example, a “Fix This Rule” button is presented to the user. In this example, the user selects one or more parameter interaction constraints with associated constraint violations. The interaction resolution engine 240 attempts to determine a solution based on modifying those parameters that affect the selected one or more parameter interaction constraints, while holding constant all parameters that do not affect the selected one or more constraints. In another example, a “Fix All Rules” button is presented to the user. In this example, the user need not select any particular parameter to be held constant; all parameters can be used in forming candidate combinations of parameter values for determining a possible solution.
In various examples, determining the most advantageous solution to resolve parameter violations is not limited to the above examples. In an example, as opposed to organizing candidate solution sets of parameter values by weight of change, the candidate set of parameter values are organized in any other suitable fashion. In another example, the candidate set of parameter values are organized by a specified ranking of their importance in desired operation of the medical device. In other examples, candidate solution set of parameter values are organized by other criteria.
In various examples, particular parameter values are precluded from user selection to remain constant. In various examples, particular parameter values are not included in the analysis of candidate acceptable set of parameter values. In various examples, set of parameter values with a limited number of candidate values, such as an on/off value, are not included in the analysis of potential acceptable set of parameter values. In an example, due to certain conditions, if it can be determined that modification of a first set of parameter values will not yield a second set of parameter values prior to analyzing that first set of parameter values, a user is notified that analysis is not possible.
It is to be understood that the above description is intended to be illustrative, and not restrictive. For example, the above-described embodiments (and/or aspects thereof) may be used in combination with each other. Many other embodiments will be apparent to those of skill in the art upon reviewing the above description. The scope of the invention should, therefore, be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled. In the appended claims, the terms “including” and “in which” are used as the plain-English equivalents of the respective terms “comprising” and “wherein.” Also, in the following claims, the terms “including” and “comprising” are open-ended, that is, a system, device, article, or process that includes elements in addition to those listed after such a term in a claim are still deemed to fall within the scope of that claim. Moreover, in the following claims, the terms “first,” “second,” and “third,” etc. are used merely as labels, and are not intended to impose numerical requirements on their objects.
The Abstract is provided to comply with 37 C.F.R. §1.72(b), which requires that it allow the reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. Also, in the above Detailed Description, various features may be grouped together to streamline the disclosure. This should not be interpreted as intending that an unclaimed disclosed feature is essential to any claim. Rather, inventive subject matter may lie in less than all features of a particular disclosed embodiment. Thus, the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate embodiment.
This application is a continuation of U.S. application Ser. No. 13/178,085, filed Jul. 7, 2011, now issued as U.S. Pat. No. 8,321,366, which is a continuation of U.S. application Ser. No. 12/566,212, filed Sep. 24, 2009, now issued as U.S. Pat. No. 7,979,378, which is a continuation of U.S. application Ser. No. 11/380,570, filed Apr. 27, 2006, now issued as U.S. Pat. No. 7,613,672, which are hereby incorporated by reference in their entirety.
Number | Name | Date | Kind |
---|---|---|---|
4006737 | Cherry | Feb 1977 | A |
4090505 | Mortara | May 1978 | A |
4166470 | Neumann | Sep 1979 | A |
4172459 | Hepp | Oct 1979 | A |
4187854 | Hepp et al. | Feb 1980 | A |
4197850 | Schulman et al. | Apr 1980 | A |
4208008 | Smith | Jun 1980 | A |
4232679 | Schulman | Nov 1980 | A |
4236524 | Powell et al. | Dec 1980 | A |
4316249 | Gallant et al. | Feb 1982 | A |
4323074 | Nelms | Apr 1982 | A |
4336810 | Anderson et al. | Jun 1982 | A |
4407288 | Langer et al. | Oct 1983 | A |
4432360 | Mumford et al. | Feb 1984 | A |
4509530 | Curtis et al. | Apr 1985 | A |
4529401 | Leslie et al. | Jul 1985 | A |
4549552 | Groch et al. | Oct 1985 | A |
4680708 | Ambos et al. | Jul 1987 | A |
4726380 | Vollmann et al. | Feb 1988 | A |
4809697 | Causey, III et al. | Mar 1989 | A |
4825869 | Sasmor et al. | May 1989 | A |
4947857 | Albert et al. | Aug 1990 | A |
4958632 | Duggan | Sep 1990 | A |
4969460 | Callaghan et al. | Nov 1990 | A |
4974598 | John | Dec 1990 | A |
4979506 | Silvian | Dec 1990 | A |
4989610 | Patton et al. | Feb 1991 | A |
5000189 | Throne et al. | Mar 1991 | A |
5012814 | Mills et al. | May 1991 | A |
5027824 | Dougherty et al. | Jul 1991 | A |
5046504 | Albert et al. | Sep 1991 | A |
5047930 | Martens et al. | Sep 1991 | A |
5050612 | Matsumura | Sep 1991 | A |
5052395 | Burton et al. | Oct 1991 | A |
5107850 | Olive | Apr 1992 | A |
5113869 | Nappholz et al. | May 1992 | A |
5159926 | Ljungstroem | Nov 1992 | A |
5184614 | Collins et al. | Feb 1993 | A |
5193550 | Duffin | Mar 1993 | A |
5215083 | Drane et al. | Jun 1993 | A |
5224475 | Berg et al. | Jul 1993 | A |
5267346 | Maruyama et al. | Nov 1993 | A |
5273049 | Steinhaus et al. | Dec 1993 | A |
5292341 | Snell | Mar 1994 | A |
5299118 | Martens et al. | Mar 1994 | A |
5309919 | Snell et al. | May 1994 | A |
5311873 | Savard et al. | May 1994 | A |
5311874 | Baumann et al. | May 1994 | A |
5312448 | Hognelid et al. | May 1994 | A |
5315512 | Roth | May 1994 | A |
5341811 | Cano | Aug 1994 | A |
5342402 | Olson et al. | Aug 1994 | A |
5344430 | Berg et al. | Sep 1994 | A |
5360437 | Thompson | Nov 1994 | A |
5371851 | Pieper et al. | Dec 1994 | A |
5379776 | Murphy et al. | Jan 1995 | A |
5404877 | Nolan et al. | Apr 1995 | A |
5411528 | Miller et al. | May 1995 | A |
5421830 | Epstein et al. | Jun 1995 | A |
5423871 | Hoegnelid et al. | Jun 1995 | A |
5431691 | Snell et al. | Jul 1995 | A |
5433198 | Desai | Jul 1995 | A |
5447164 | Shaya et al. | Sep 1995 | A |
5458623 | Lu et al. | Oct 1995 | A |
5464433 | White et al. | Nov 1995 | A |
5480422 | Ben-Haim | Jan 1996 | A |
5487754 | Snell et al. | Jan 1996 | A |
5487755 | Snell et al. | Jan 1996 | A |
5496351 | Plicchi et al. | Mar 1996 | A |
5507786 | Morgan et al. | Apr 1996 | A |
5513645 | Jacobson et al. | May 1996 | A |
5523942 | Tyler et al. | Jun 1996 | A |
5535753 | Petrucelli et al. | Jul 1996 | A |
5549646 | Katz et al. | Aug 1996 | A |
5549654 | Powell | Aug 1996 | A |
5555888 | Brewer et al. | Sep 1996 | A |
5578063 | Bocek et al. | Nov 1996 | A |
5584298 | Kabal | Dec 1996 | A |
5603331 | Heemels et al. | Feb 1997 | A |
5607460 | Kroll et al. | Mar 1997 | A |
5609612 | Plicchi et al. | Mar 1997 | A |
5613495 | Mills et al. | Mar 1997 | A |
5620471 | Duncan | Apr 1997 | A |
5620472 | Rahbari | Apr 1997 | A |
5620474 | Koopman | Apr 1997 | A |
5626620 | Kieval et al. | May 1997 | A |
5626623 | Kieval et al. | May 1997 | A |
5628321 | Scheib et al. | May 1997 | A |
5636328 | Kautz et al. | Jun 1997 | A |
5643255 | Organ | Jul 1997 | A |
5647369 | Petrucelli et al. | Jul 1997 | A |
5674249 | De Coriolis et al. | Oct 1997 | A |
5682489 | Harrow et al. | Oct 1997 | A |
5683431 | Wang | Nov 1997 | A |
5687737 | Branham et al. | Nov 1997 | A |
5693075 | Plicchi et al. | Dec 1997 | A |
5697959 | Poore | Dec 1997 | A |
5713366 | Armstrong et al. | Feb 1998 | A |
5713937 | Nappholz et al. | Feb 1998 | A |
5716382 | Snell | Feb 1998 | A |
5716383 | Kieval et al. | Feb 1998 | A |
5716384 | Snell | Feb 1998 | A |
5722999 | Snell | Mar 1998 | A |
5724985 | Snell et al. | Mar 1998 | A |
5725559 | Alt et al. | Mar 1998 | A |
5743268 | Kabal | Apr 1998 | A |
5749900 | Schroeppel et al. | May 1998 | A |
5749906 | Kieval et al. | May 1998 | A |
5749907 | Mann | May 1998 | A |
5755736 | Gillberg et al. | May 1998 | A |
5755742 | Schuelke et al. | May 1998 | A |
5759199 | Snell et al. | Jun 1998 | A |
5772604 | Langberg et al. | Jun 1998 | A |
5785660 | van Lake et al. | Jul 1998 | A |
5788640 | Peters | Aug 1998 | A |
5792203 | Schroeppel | Aug 1998 | A |
5792204 | Snell | Aug 1998 | A |
5803084 | Olson | Sep 1998 | A |
5810740 | Paisner | Sep 1998 | A |
5814088 | Paul et al. | Sep 1998 | A |
5817137 | Kaemmerer | Oct 1998 | A |
5833623 | Mann et al. | Nov 1998 | A |
5836989 | Shelton | Nov 1998 | A |
5839989 | Saito et al. | Nov 1998 | A |
5843138 | Evers et al. | Dec 1998 | A |
5876353 | Riff | Mar 1999 | A |
5891043 | Ericksen et al. | Apr 1999 | A |
5891178 | Mann et al. | Apr 1999 | A |
5891179 | Er et al. | Apr 1999 | A |
5897577 | Cinbis et al. | Apr 1999 | A |
5908392 | Wilson et al. | Jun 1999 | A |
5924989 | Polz | Jul 1999 | A |
5951484 | Hoium et al. | Sep 1999 | A |
5954664 | Seegobin | Sep 1999 | A |
5957856 | Weil et al. | Sep 1999 | A |
5957861 | Combs et al. | Sep 1999 | A |
5961467 | Shimazu et al. | Oct 1999 | A |
5974341 | Er et al. | Oct 1999 | A |
5978707 | Krig et al. | Nov 1999 | A |
6004020 | Bartur | Dec 1999 | A |
6004276 | Wright et al. | Dec 1999 | A |
6007493 | Ericksen et al. | Dec 1999 | A |
6014581 | Whayne et al. | Jan 2000 | A |
6016442 | Hsu et al. | Jan 2000 | A |
6016447 | Juran et al. | Jan 2000 | A |
6016448 | Busacker et al. | Jan 2000 | A |
6017307 | Raines | Jan 2000 | A |
6031984 | Walser | Feb 2000 | A |
6035233 | Schroeppel et al. | Mar 2000 | A |
6045513 | Stone et al. | Apr 2000 | A |
6073049 | Alt et al. | Jun 2000 | A |
6088618 | Kerver | Jul 2000 | A |
6091990 | Hsu et al. | Jul 2000 | A |
6101415 | Er et al. | Aug 2000 | A |
6101416 | Sloman | Aug 2000 | A |
6151524 | Krig et al. | Nov 2000 | A |
6240317 | Villaseca et al. | May 2001 | B1 |
6253102 | Hsu et al. | Jun 2001 | B1 |
6289244 | Conley et al. | Sep 2001 | B1 |
6289248 | Conley et al. | Sep 2001 | B1 |
6301503 | Hsu et al. | Oct 2001 | B1 |
6308100 | Er et al. | Oct 2001 | B1 |
6308102 | Sieracki et al. | Oct 2001 | B1 |
6321117 | Koshiol et al. | Nov 2001 | B1 |
6400981 | Govari | Jun 2002 | B1 |
6415175 | Conley et al. | Jul 2002 | B1 |
6418340 | Conley et al. | Jul 2002 | B1 |
6445952 | Manrodt et al. | Sep 2002 | B1 |
6449504 | Conley et al. | Sep 2002 | B1 |
6454726 | Catt et al. | Sep 2002 | B1 |
6690972 | Conley et al. | Feb 2004 | B2 |
6700097 | Hsu et al. | Mar 2004 | B1 |
6842644 | Anderson et al. | Jan 2005 | B2 |
7003349 | Andersson et al. | Feb 2006 | B1 |
7010349 | Conley et al. | Mar 2006 | B2 |
7089056 | Koshiol et al. | Aug 2006 | B2 |
7089221 | Fromherz et al. | Aug 2006 | B2 |
7117163 | Iyer et al. | Oct 2006 | B1 |
7191006 | Hu et al. | Mar 2007 | B2 |
7613672 | West et al. | Nov 2009 | B2 |
7979378 | West et al. | Jul 2011 | B2 |
8321366 | West et al. | Nov 2012 | B2 |
20020049481 | Conley et al. | Apr 2002 | A1 |
20020156389 | Kalgren et al. | Oct 2002 | A1 |
20030045908 | Condie et al. | Mar 2003 | A1 |
20030125776 | Turney et al. | Jul 2003 | A1 |
20040064169 | Briscoe et al. | Apr 2004 | A1 |
20040111131 | Hu et al. | Jun 2004 | A1 |
20040116982 | Conley et al. | Jun 2004 | A1 |
20050010258 | Peterson et al. | Jan 2005 | A1 |
20050010388 | Bagchi et al. | Jan 2005 | A1 |
20050033385 | Peterson et al. | Feb 2005 | A1 |
20050060198 | Bayne | Mar 2005 | A1 |
20060241822 | Yadappanavar et al. | Oct 2006 | A1 |
20060247709 | Gottesman et al. | Nov 2006 | A1 |
20060288046 | Gupta | Dec 2006 | A1 |
20080126968 | West et al. | May 2008 | A1 |
20100016996 | West et al. | Jan 2010 | A1 |
20110264616 | West et al. | Oct 2011 | A1 |
Number | Date | Country |
---|---|---|
0565084 | Oct 1993 | EP |
WO-9927992 | Jun 1999 | WO |
WO-2007127596 | Nov 2007 | WO |
Entry |
---|
US 7,010,348, 03/2006, Koshiol et al. (withdrawn) |
“U.S. Appl. No. 11/380,570, Non-Final Office Action mailed Dec. 22, 2008”, 14 pgs. |
“U.S. Appl. No. 11/380,570, Notice of Allowance mailed Jun. 24, 2009”, 11 pgs. |
“U.S. Appl. No. 11/380,570, Response filed Mar. 23, 2009 to Non Final Office Action mailed Dec. 22, 2008”, 22 pgs. |
“U.S. Appl. No. 12/566,212, Non-Final Office Action mailed Oct. 8, 2010”, 13 pgs. |
“U.S. Appl. No. 12/566,212, Notice of Allowance mailed Mar. 8, 2011”, 11 pgs. |
“U.S. Appl. No. 12/566,212, Response filed Jan. 10, 2011 to Non Final Office Action mailed Oct. 8, 2010”, 13 pgs. |
“U.S. Appl. No. 13/178,085, Response filed Dec. 29, 2011 to Non Final Office Action mailed Aug. 31, 2011”, 15 pgs. |
“U.S. Appl. No. 13/178,085, Final Office Action mailed May 11, 2012”, 18 pgs. |
“U.S. Appl. No. 13/178,085, Non Final Office Action mailed Aug. 31, 2011”, 17 pgs. |
“U.S. Appl. No. 13/178,085, Notice of Allowance mailed Jul. 23, 2012”, 7 pgs. |
“U.S. Appl. No. 13/178,085, Response filed Jul. 11, 2012 to Final Office Action mailed May 11, 2012”, 9 pgs. |
“International Application Serial No. PCT/US2007/066237, International Search Report mailed Oct. 4, 2007”, 3 pgs. |
“International Application Serial No. PCT/US2007/066237, Written Opinion mailed Oct. 4, 2007”, 5 pgs. |
“Japanese Application Serial No. 2009-507881, Office Action mailed Mar. 27, 2012”, With English Translation, 15 pgs. |
“Japanese Application Serial No. 2009-507881, Response filed Jun. 26, 2012 to Office Action mailed Mar. 27, 2012”, 15 pgs. |
Sakkout, H. E., et al., “Probe Backtrack Search for Minimal Perturbation in Dynamic Scheduling”, Kluwer Academic Publishers vol. 5, (2000), 359-388. |
Wielinga, B., et al., “Configuration-Design Problem Solving”, IEEE, (1997), 49-56. |
Number | Date | Country | |
---|---|---|---|
20130066401 A1 | Mar 2013 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13178085 | Jul 2011 | US |
Child | 13669783 | US | |
Parent | 12566212 | Sep 2009 | US |
Child | 13178085 | US | |
Parent | 11380570 | Apr 2006 | US |
Child | 12566212 | US |