DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claim(s) 1-3, 10, 12-14, 21, 23 is/are rejected under 35 U.S.C. 102a1/a2 as being anticipated by US 6370656 to Olarig et al.
Referring to claim 1, Olarig discloses a processing system, comprising:
a plurality of processing circuitry blocks; critical domain management circuitry to assign a level of criticality to each of the processing circuitry blocks and to assign a respective timeout duration to tasks initiated by the processing circuitry blocks based at least in part on an assigned level of criticality (From column 6, line 59 (with emphasis), “In a preferred embodiment, various components within computer system 100 periodically send heartbeat messages to the heartbeat monitor 130 via the PCI bus 112. The heartbeat messages are stored within the heartbeat monitor 130 and indicate that the components transmitting the heartbeats (referred to as "heartbeat senders") are functioning properly. The heartbeat period, which is the length of time between each heartbeat, may be different for each heartbeat sender and can be adjusted for a given heartbeat sender depending on time or other system operating conditions as explained below. Initially, the heartbeat monitor 130 determines an appropriate heart rate for each heartbeat sender and preferably notifies a heartbeat sender when and by how much its associated heart rate needs to change. Accordingly, heartbeat senders periodically transmit heartbeats to the heartbeat monitor 130 at the intervals prescribed by the heartbeat monitor 130. Although any component within computer system 100 may transmit heartbeat messages to the heartbeat monitor, a preferably the heartbeats are transmitted by the CPUs 102 and 103, the bridge logic unit 104, and the network interface card (NIC) 121.” Wherein a heartbeat is a sender “task”. From line 65 of column 8, “Because longer heartbeat periods may be advantageous for some situations while shorter heartbeat periods may be better at other times, the heartbeat monitor 130 preferably is capable of dynamically optimizing the heart rate for each component. A frequent heartbeat, (characterized by a short heartbeat period) allows the system to detect and recover from failure more quickly. A frequent heartbeat generally minimizes average recovery time, because the heartbeat period represents the maximum time required for the heartbeat monitor 130 to detect that a component has failed to send a heartbeat since the last detected heartbeat. In addition to reducing average system recovery time, however, shortening the heartbeat period increases the amount of message traffic on the PCI bus 112, thereby reducing the total amount of PCI bus capacity available to other components. Hence, if the heartbeat period is shorter than necessary, then the message traffic created by the heartbeats may interfere with other important computer functions. In contrast, an infrequent heartbeat (characterized by a long heartbeat period) produces less PCI bus traffic. If the heartbeat is too infrequent, however, the heartbeat monitor 130 may not detect component failures quickly enough. Accordingly, it often is desirable to optimize the heartbeat period to be just short enough to facilitate expedient failure recovery but not short enough to bottleneck the PCI bus 112. Thus, the heartbeat of the preferred embodiment is adaptive.” Further, see figure 5 and its corresponding description in the specification, regarding interval determination.); and
error handling circuitry to monitor the processing circuitry blocks and to handle errors based at least in part on the assigned levels of criticality (See for example figure 4b, 448 “heartbeat detected?” and 452 “take corrective actions”.).
Referring to claim 2, Olarig discloses wherein the timeout duration assigned to at least one task is based at least in part on the assigned level of criticality associated with the processing circuitry block that initiated the at least one task (From column 6, line 59 (with emphasis), “In a preferred embodiment, various components within computer system 100 periodically send heartbeat messages to the heartbeat monitor 130 via the PCI bus 112. The heartbeat messages are stored within the heartbeat monitor 130 and indicate that the components transmitting the heartbeats (referred to as "heartbeat senders") are functioning properly. The heartbeat period, which is the length of time between each heartbeat, may be different for each heartbeat sender and can be adjusted for a given heartbeat sender depending on time or other system operating conditions as explained below. Initially, the heartbeat monitor 130 determines an appropriate heart rate for each heartbeat sender and preferably notifies a heartbeat sender when and by how much its associated heart rate needs to change. Accordingly, heartbeat senders periodically transmit heartbeats to the heartbeat monitor 130 at the intervals prescribed by the heartbeat monitor 130. Although any component within computer system 100 may transmit heartbeat messages to the heartbeat monitor, a preferably the heartbeats are transmitted by the CPUs 102 and 103, the bridge logic unit 104, and the network interface card (NIC) 121.”).
Referring to claim 3, Olarig discloses wherein the timeout duration assigned to at least one task is based at least in part on the assigned level of criticality associated with a processing circuitry block that is assigned to execute the at least one task (From column 6, line 59 (with emphasis), “In a preferred embodiment, various components within computer system 100 periodically send heartbeat messages to the heartbeat monitor 130 via the PCI bus 112. The heartbeat messages are stored within the heartbeat monitor 130 and indicate that the components transmitting the heartbeats (referred to as "heartbeat senders") are functioning properly. The heartbeat period, which is the length of time between each heartbeat, may be different for each heartbeat sender and can be adjusted for a given heartbeat sender depending on time or other system operating conditions as explained below. Initially, the heartbeat monitor 130 determines an appropriate heart rate for each heartbeat sender and preferably notifies a heartbeat sender when and by how much its associated heart rate needs to change. Accordingly, heartbeat senders periodically transmit heartbeats to the heartbeat monitor 130 at the intervals prescribed by the heartbeat monitor 130. Although any component within computer system 100 may transmit heartbeat messages to the heartbeat monitor, a preferably the heartbeats are transmitted by the CPUs 102 and 103, the bridge logic unit 104, and the network interface card (NIC) 121.”).
Referring to claim 10, Olarig discloses wherein the critical domain management circuitry is further to dynamically modify a level of criticality assigned to at least one processing circuitry block based on one or more changes to an operational state of the processing system (From column 9 line 43, “Still referring to FIG. 1, the heartbeat period preferably is longer for newer components and shorter for older components. In addition, the heartbeat period (or equivalently the heart rate) may be adjusted at any time by the heartbeat monitor 130. In the event that the heartbeat monitor 130 is not able to determine the manufacturing date of a component, the heartbeat period preferably is set to a predetermined default value. The default value preferably is equal to the maximum acceptable delay for determining component failure, although any desired default value may be used without departing from the principles of the invention. Similarly, the heartbeat monitor 130 may also raise or lower the heart rate of any heartbeat sender according to warning signals or environmental conditions within the computer. In a preferred embodiment, heartbeat monitor 130 includes a temperature sensor which determines when the temperature of the computer 100 rises above an acceptable threshold. Because excessive temperatures can increase the likelihood of component failures, the heartbeat monitor 130 preferably increases the heart rates of selected components so that these components can be monitored more often if the temperature exceeds a threshold. If the temperature drops below the temperature threshold, then the heart rates are lowered to the previous level. In addition, the heartbeat monitor 130 is capable of receiving error signals or warning signals from some components to indicate possible impending failures or other dangerous conditions. The heartbeat monitor 130 then respond by increasing the heart rate for that device. In a preferred embodiment, the bridge logic 104 is capable of detecting errors in read and write cycles to main memory 106. If memory transaction errors begin to occur frequently, then the bridge logic 104 preferably notifies the heartbeat monitor 130 of the error condition by transmitting a message over the PCI bus 112. Alternatively, the bridge logic 104 may assert a special interrupt signal or other sideband signal to the heartbeat monitor 130 to indicate excessive memory errors. In response, the heartbeat monitor 130 preferably increases the heart rate of the bridge logic 104 in order to monitor the memory device 106 more often. The heartbeat monitor 130 can decrease the heart rate of the bridge logic 104 if the bridge logic 104 indicates via a PCI message or other signal that the memory errors have subsided. The heartbeat intervals may be decreased in response to some other conditions, as well. For example, the PCI bus 112 may transmit a signal indicating that it has reached a predetermined traffic threshold. Similarly, the bridge logic 104 may transmit a message indicating a large number of pending requests for main memory 106. Because these messages indicate that some resources in the system are undergoing heavy use (i.e., the PCI bus 112 and the memory device 106), the heartbeat monitor 130 preferably responds by increasing the associated heartbeat intervals to allow these devices to operate as efficiently as possible.”).
Referring to claims 12-14, 21, 23 see rejection of claims 1, 10 above.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 11, 22 is/are rejected under 35 U.S.C. 103 as being unpatentable over Olarig as applied to claim 1, 12 above, and further in view of Official notice (DSPs).
Referring to claim 11, Olarig discloses the plurality of processing circuitry blocks, and wherein at least one blocks is assigned a higher level of criticality than one or more other of the blocks (see above).
Although Olarig does not specifically disclose these blocks may comprise multiple digital signal processors (DSPs), this is very well known in the art. In a related field of computing, examiner takes official notice for DSPs. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have multiple DSPs because a DSP generally provides for the processing of analog signals, which and how many are going to be determined by the signals that need to be analyzed.
Referring to claim 22, see rejection of claim 11 above.
Allowable Subject Matter
Claims 4-9, 15-20 objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
Referring to claims 4-8, the prior art does not teach or fairly suggest wherein to handle errors comprises initiating, responsive to a timeout associated with a task expiring prior to completion of the associated task, a soft reset protocol for the task, in the scope and context of claim 1, further pending resolution of rejection of claims 4-8 above.
Referring to claim 9, the prior art does not teach or fairly suggest wherein the critical domain management circuitry is further to: assign a first task timer timeout value to a task initiated by a first processing circuitry block, the first processing circuitry block assigned a first level of criticality; and assign a second task timer timeout value to a second task initiated by a second processing circuitry block, the second processing circuitry block assigned a second level of criticality that is higher than the first level of criticality; wherein the second task timer timeout value is greater than the first task timer timeout value, in the scope and context of claim 1.
Referring to claims 15-20, see claims 4-9 above.
Response to Arguments
Applicant's arguments filed 24 November 2025 have been fully considered but they are not persuasive.
Regarding Applicant’s argument that Olarig does not disclose assigning a timeout duration to tasks initiated by processing circuitry blocks based on criticality, as mapped in the rejection above, various components within the system are determined to have a heartbeat period dependent upon a need to detect and recover from failures for those components, which is based upon, as Applicant has pointed out, age, temperature, or environmental conditions. This is what Olarig deems of “importance” to failure detection and recovery, and hence “critical”. Olarig is saying that as conditions warrant, these elements become more (or less) critical in monitoring for failure, hence increasing (or decreasing) their monitoring frequency. Further, note that the point of Olarig is to avoid downtime (column 3, line 4), i.e., the failure of these components would be a critical failure. Contrast this with Applicants claims which provides no such basis for determining criticality except that it is labeled so.
Regarding Applicant’s “threshold matter” (page 8) that Olarig’s heartbeats are not tasks, Applicant goes on to say that Olarig’s heartbeats cannot be “tasks” because they are “unrelated to the recited assigned task timeout durations” and “is fundamentally unrelated to assigning an execution time limit for a discrete computational operation”. Whether such heartbeat tasks are “related” to the “assigned task timeout durations” or a are “discrete computational operation” appears to rely on a presupposition that a task that Applicant does not want to be a task cannot be a task that Applicant would like to be a task. Generally, a task is simply a piece of work to be done. A heartbeat is such a thing. The heartbeat gets assigned an interval.
Regarding Applicant’s argument (page 9) that Olarig does not suggest that some components are more critical to system operations than others or that their heartbeats are modified accordingly, this is precisely what Olarig shows by specifically disclosing the importance of monitoring those components, in that way, in those conditions, with those adjustments. Applicant asserts that adjusting a monitoring frequency based on thermal conditions or a component’s age is “entirely distinct” from assigning based on “criticality”, but again, Applicant has failed to distinctly claim any such criticality except as a label.
Applicant should compare their claimed assigning of a level of criticality with their argued “nothing in the cited portions of Olarig appears to teach or suggest that some components are more critical to system operations than others”. First, these are components deemed to be critical to operation (see “downtime” above). Second, this language of “more critical to system operations than others” cannot be found in the claim language, but even if it were, Olarig’s varying levels of determined monitoring frequencies would speak to such relative criticality.
Applicant goes on to argue that Olarig fails to vary heartbeat intervals in accord with “assessment of the operational importance of a component”. First see above, both in the rejection and in these response to arguments. Secondly, Applicant does not claim any such assessment, merely the assignment of a level criticality. Third, on the one hand, Applicant further does not claim “operational importance of a component”; on the other hand, this too seems vague enough to be encompassed by the assessment that Olarig performs.
As above, Olarig performs an assessment of criticality to assign a heartbeat interval accordingly, including longer and shorter intervals (see for example line 55 of column 3). Contrast this with what was claimed, which is “a level of criticality”. Are there even a plurality of such levels? What is claimed to be “critical”? It appears to be left to the imagination; a mere label. It is hard for examiner to understand how a component that is under duress that can result in system downtime cannot be “critical”, particularly where an assessment is specifically being made for that level of duress and likelihood of failure (and an interval assigned accordingly).
Regarding Applicant’s argument (page 9) that Olarig does not handle errors based on component age, temperature, or monitoring frequency. First, how do the instant claims “handle”? This is not described. So what is it that Applicant expects such “handling” to entail? Perhaps this should be claimed to further distinguish.
Next, Applicant admits that Olarig proceeds with corrective action, but argues that Olarig does not “modify” the handling based on age/temperature/interval. Again, looking to the claims, there is no such requirement for modification. EVEN if it were to be assumed that there were MULTIPLE levels of criticality this still does not imply that the method of handling may be distinct in any way among those levels. The claim only requires that they be “based” on the level of criticality.
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to GABRIEL L CHU whose telephone number is (571)272-3656. The examiner can normally be reached weekdays 8 am to 5 pm.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Ashish Thomas can be reached at (571)272-0631. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/GABRIEL CHU/ Primary Examiner, Art Unit 2114