Detailed Office 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 .
Status of the Claims
Claims 1-6, 8-17, and 19-21 are rejected under 35 U.S.C. 103.
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.
Claims 1-6, 8, 13, 15-17, 19, and 21 are rejected under 35 U.S.C. 103 as being unpatentable over Grymel et al. (U.S. Publication No. 2022/0012164 A1), hereinafter referred to as Grymel, in view of Kfir et al. (U.S. Patent No. 9,946,624 B1), hereinafter referred to as Kfir.
Regarding Claim 1, Grymel teaches:
An integrated circuit (IC) device, comprising: functional circuitry comprising intellectual property blocks configured to execute functions of a computer program; ([0026])
and to initiate a trigger by asserting a predetermined value in an address field of a memory access request, wherein the predetermined value corresponds to an address of a data capture register; ([0039]; regarding, “the breakpoint(s) 126 may include… a breakpoint on a specific address or address range to which is written, a breakpoint on a specific data item being read into the accelerator circuitry 108, 110 from the memory 118, a breakpoint on a specific address or address range being read from the memory 118…”);
wherein the state of the functional circuitry corresponds to a point within the functions of the computer program. ([0161]; regarding, “state(s) of the first core 212 may be read out in in response to a query by the debug application 114 to identify erroneous configurations, calculations, memory read/write operations, etc.”).
Grymel fails to explicitly disclose but Kfir teaches:
a processor configured to provide data to the functional circuitry associated with the computer program over a first communication path based on the computer program (Col. 5, lines 58-63; Col. 6, lines 64-67; regarding, “the logic analyzer system is programmable to select a plurality of data signals to be sampled and probe selected data signals from the DUT 202. The selected data signals may be outputs from processors”);
and data capture circuitry configured to: store a state of the functional circuitry in a buffer; (Col. 5, lines 25-27; regarding, “The embedded logic analyzer may include a trace buffer to store the captured data signals from the IC.”);
and output contents of the buffer to an external device based on detecting the predetermined value of the trigger, (Col. 9-10, lines 67, 1-8; regarding, “Upon the generation of the trigger signal, the data transfer in the first segment of the plurality of segments of the trace buffer 210 is stopped and the segment counter 208 is incremented by one. This results in the next set of data samples being transferred to a next segment (for example, a second segment) of the plurality of segments of the trace buffer 210. This process continues and each time the new trigger signal is generated”).
Therefore, it would have been obvious before the effective filing date of the claimed invention to one of ordinary skill in the art to which said subject matter pertains to have modified Grymel with the teachings of Kfir. Doing so can allow for effectively analyzing electronic circuits and to take preemptive actions or to debug based on the analysis of data signals (Kfir, Col. 5, lines 10-12).
Regarding Claim 2, Grymel in view of Kfir teaches the device of claim 1 as referenced above. Grymel in view of Kfir further teaches:
wherein the processor is further configured to initiate the trigger at a selectable breakpoint of the computer program. (Kfir, Col. 8, lines 54-56; regarding, “The trigger detection circuit is programmed to generate the trigger signal when the circuit designer defined trigger condition has been met.”).
Regarding Claim 3, Grymel in view of Kfir teaches the device of claim 1 as referenced above. Grymel in view of Kfir further teaches:
wherein the processor is further configured to initiate the trigger based on data generated by the functional circuitry. (Kfir, Col. 8, lines 56-58; regarding, “The trigger condition may be defined by the circuit designer based on an event or series of events that occur…”).
Regarding Claim 4, Grymel in view of Kfir teaches the device of claim 3 as referenced above. Grymel in view of Kfir further teaches:
wherein the processor is further configured to evaluate the data generated by the functional circuitry for correctness, and to initiate the trigger based on the evaluation. (Kfir, Col. 8, lines 61-66; regarding, “if A, B, and C, are data signals… when the values of these three data signals match their expected values… the trigger detection circuit would produce the trigger signal indicating that the trigger condition has been met.”)
Regarding Claim 5, Grymel in view of Kfir teaches the device of claim 1 as referenced above. Grymel in view of Kfir further teaches:
wherein the processor is further configured to output states of variables managed by the processor to the external device when the processor initiates the trigger. (Kfir, Col. 6, lines 3-5; regarding, “The trace buffer 308 stores a record of changing states of signal inputs, signal outputs…”); (Col. 5, lines 29-32; regarding, “The data signals stored by the embedded logic analyzer in the trace buffer may be transferred to a processing unit of an external computing device for further analysis.”).
Regarding Claim 6, Grymel in view of Kfir teaches the device of claim 1 as referenced above. Grymel in view of Kfir further teaches:
wherein the processor is further configured to initiate the trigger by asserting a predetermined value on the first communication path; (Kfir, Col. 8, lines 59-60; regarding, “the trigger condition may be defined based on the values of a predetermined set of data signals…”); (Col. 12, lines 13-23; regarding, “hardware emulator may include… buses for communicating data between the processors, and data lanes connecting the components of a processor.”);
and the data capture circuitry is further configured to monitor the first communication path for the predetermined value. (Col. 8, lines 54-58; regarding, “The trigger detection circuit is programmed to generate the trigger signal when the circuit designer defined trigger condition has been met. The trigger condition may be defined by the circuit designer based on an event or series of events that occur…”).
Regarding Claim 8, Grymel in view of Kfir teaches the device of claim 6 as referenced above. Grymel in view of Kfir further teaches:
wherein the functional circuitry comprises the data capture register; (Grymel, [0070]; regarding, “the debug application 114 may transmit data to and/or store or write data in the debug register(s) 216 of the debug circuitry 208”);
and the predetermined value corresponds to an address of the register. (Grymel, [0039]; regarding, “the breakpoint(s) 126 may include… a breakpoint on a specific address or address range to which is written, a breakpoint on a specific data item being read into the accelerator circuitry 108, 110 from the memory 118, a breakpoint on a specific address or address range being read from the memory 118…”);
Claim 13 is rejected under 35 U.S.C. 103 under the same grounds of rejection as claim 1.
Regarding Claim 16, Grymel in view of Kfir teaches:
An integrated circuit (IC) device, comprising:
programmable logic, comprising functional circuitry and data capture circuitry configured to store a state of the functional circuitry in a buffer (Kfir, Col. 5, lines 25-27; regarding, “The embedded logic analyzer may include a trace buffer to store the captured data signals from the IC.”);
and to output contents of the buffer to an external device based on detecting a predetermined value of a trigger, (Kfir, Col. 5, lines 29-32; regarding, “The data signals stored by the embedded logic analyzer in the trace buffer may be transferred to a processing unit of an external computing device for further analysis.”).
wherein the functional circuitry comprises intellectual property blocks configured to execute functions of a computer program, (Jarrett, [0041]; regarding, “Integrated circuit 300 may include processor 305, hardware state data logger 310, and logical units 340 and 345. Integrated circuit 300 may also include various other components and logical units, depending on the embodiment. Processor 305 may include L1 cache 325, which may be utilized to store data utilized by processor 305. Processor 305 may also include other logic, including execution units, fetch units, and various other units of a processor pipeline.”);
wherein the state of the functional circuitry corresponds to a point within the functions of the computer program; (Grymel, [0161]; regarding, “state(s) of the first core 212 may be read out in in response to a query by the debug application 114 to identify erroneous configurations, calculations, memory read/write operations, etc.”).
and a processor configured to provide data to the functional circuitry associated with the computer program over a first communication path based on the computer program, and to initiate the trigger. (Col. 5, lines 58-63; Col. 6, lines 64-67; regarding, “the logic analyzer system is programmable to select a plurality of data signals to be sampled and probe selected data signals from the DUT 202. The selected data signals may be outputs from processors”; Col. 8, lines 54-55; regarding, “The trigger detection circuit is programmed to generate the trigger signal…”); Col. 11, lines 13-20; regarding, “in each clock cycle, the data samples captured from the DUT are first written into the segment #0 402 of the trace buffer 106 at a trace address generated by an intra-segment address counter. A trigger detection circuit detects a trigger pattern from the received data signals, and is programmable to generate a trigger signal when a trigger condition is met.”);
and wherein the trigger is initiated by asserting the predetermined value in an address field of a memory access request, wherein the predetermined value corresponds to an address of a data capture register. (Grymel, [0039]; regarding, “the breakpoint(s) 126 may include… a breakpoint on a specific address or address range to which is written, a breakpoint on a specific data item being read into the accelerator circuitry 108, 110 from the memory 118, a breakpoint on a specific address or address range being read from the memory 118…”);
Regarding Claim 17, Grymel in view of Kfir teaches the device of claim 16 as referenced above. Grymel in view of Kfir further teaches:
Wherein the processor is further configured to at least one of: initiate the trigger at selectable breakpoint of the computer program; and initiate the trigger based on data generated by the functional circuitry. (Kfir, Col. 8, lines 54-56; regarding, “The trigger detection circuit is programmed to generate the trigger signal when the circuit designer defined trigger condition has been met.”; Col. 8, lines 59-61; regarding, “the trigger condition may be defined based on the values of a predetermined set of data signals in the DUT 202.”).
Regarding Claim 21, Grymel in view of Kfir teaches the device of claim 1 as referenced above. Grymel in view of Kfir further teaches:
Wherein the data capture circuitry operates synchronously with the functional circuitry. (Kfir, Col. 11, lines 57-51; regarding, “the logic analyzer system captures data signals from an electronic circuit. In an embodiment, the electronic circuit may be a dynamic electronic circuit containing dynamic components such as dynamic RAM or an analog circuit.”).
Claims 15 and 19 are rejected under 35 U.S.C 103 under the same grounds of rejections as claim 6.
Claims 9-12, 14 and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Grymel et al. (U.S. Publication No. 2022/0012164 A1), hereinafter referred to as Grymel, in view of Kfir et al. (U.S. Patent No. 9,946,624 B1), hereinafter referred to as Kfir, in further view of Levy et al. (U.S. Patent No. 10,754,760 B1), hereinafter referred to as Levy.
Regarding Claim 9, Grymel in view of Kfir teaches the device of claim 1 as referenced above. Grymel in view of Kfir does not explicitly disclose but Levy teaches:
further comprising: a second communication path between the data capture circuitry and the processor; (Col. 9, lines 1-4; regarding, “The programmable IC 402 may include various circuits to interconnect the processor subsystem 410 with circuitry implemented within the programmable logic subsystem 430. In this example, the programmable IC 402 includes a core switch 426 that can route data signals between various data ports of the processor subsystem 410 and the programmable logic subsystem 430. The core switch 426 may also route data signals between either of the programmable logic or processing subsystems 410 and 430 and various other circuits of the programmable IC, such as an internal data bus.”);
wherein the processor is further configured to initiate the trigger over the second communication path. (Col. 4, lines 64-67; Col. 5, line 1; regarding, “The fabric trigger macrocell (FTM) 230 signals the sequencer circuit 232 in the programmable logic subsystem 104 that a triggering event for capturing trace data has occurred.”).
Therefore, it would have been obvious before the effective filing date of the claimed invention to one of ordinary skill in the art to which said subject matter pertains to have modified Grymel and Kfir with the teachings of Levy. Doing so can minimize errors resulting from common cause initiators (Levy, Col. 7, lines 18-20).
Regarding Claim 10, Grymel in view of Kfir in further view of Levy teaches the device of claim 9 as referenced above. Grymel in view of Kfir in further view of Levy teaches:
wherein the processor and the data capture circuitry comprise respective master and slave interface circuitry configured to communicate with one another over the second communication path. (Levy, Col. 9, lines 66-67; Col. 10, line 1; regarding, “One or more of interfaces 466 can be implemented in the form of a Serial Peripheral Interface (SPI) bus type of interface.”).
Regarding Claim 11, Grymel in view of Kfir in further view of Levy teaches the device of claim 9 as referenced above. Grymel in view of Kfir in further view of Levy teaches:
wherein the processor and the data capture circuitry comprise respective first and second drivers configured to permit the processor and the data capture circuitry to communicate with one another over the second communication path; (Levy, Col. 8, lines 16-18; regarding, “The processor subsystem 410 may include various circuits 412, 414, 416, and 418 for executing one or more software programs.”); (Col. 9, lines 1-4; regarding, “The core switch 426 may also route data signals between either of the programmable logic or processing subsystems 410 and 430 and various other circuits of the programmable IC, such as an internal data bus.”);
and the processor is further configured to monitor and control the data capture circuitry through an application programming interface (API) of the first driver. (Levy, Col. 4, lines 6-9; regarding, “The debug access port provides a data and control interface between the fault detection circuitry 112 in the programmable logic subsystem and the debug interface 116 in the processor subsystem 102.”).
Regarding Claim 12, Grymel in view of Kfir in further view of Levy teaches the device of claim 11 as referenced above. Grymel in view of Kfir in further view of Levy teaches:
wherein the processor is further configured to control the data capture circuitry by configuring the data capture circuitry to output the contents of the buffer based on a selectable state of the functional circuitry. (Kfir, Col. 6, lines 3-5; regarding, “The trace buffer 308 stores a record of changing states of signal inputs, signal outputs…”); (Col. 5, lines 29-32; regarding, “The data signals stored by the embedded logic analyzer in the trace buffer may be transferred to a processing unit...”).
Claim 14 and 20 are rejected under 35 U.S.C 103 under the same grounds of rejection as claim 9.
Response to Arguments
Applicant’s arguments filed 04/13/2026, with respect to the previous rejection under 35 U.S.C. 102 on independent Claim 1, and similarly Claims 13 and 16, have been considered and a new grounds of rejection has been provided addressing the newly claimed matter. See the above detailed rejection of the newly recited subject matter.
Newly cited reference Grymel teaches: to initiate a trigger by asserting a predetermined value in an address field of a memory access request, wherein the predetermined value corresponds to an address of a data capture register
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MATHEW GUSTAFSON whose telephone number is (571)272-5273. The examiner can normally be reached Monday-Friday 8:00-4:00.
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, Bryce Bonzo can be reached at (571) 272-3655. 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.
/M.D.G./Examiner, Art Unit 2113 /BRYCE P BONZO/Supervisory Patent Examiner, Art Unit 2113