Ex Parte TaylorDownload PDFBoard of Patent Appeals and InterferencesSep 10, 201210299395 (B.P.A.I. Sep. 10, 2012) Copy Citation UNITED STATES PATENT AND TRADEMARK OFFICE ____________ BEFORE THE BOARD OF PATENT APPEALS AND INTERFERENCES ____________ Ex parte RICHARD TAYLOR ____________ Appeal 2009-015304 Application 10/299,395 Technology Center 2100 ____________ Before JOSEPH F. RUGGIERO, BRADLEY W. BAUMEISTER, and DENISE M. POTHIER, Administrative Patent Judges. POTHIER, Administrative Patent Judge. DECISION ON APPEAL Appeal 2009-015304 Application 10/299,395 2 STATEMENT OF THE CASE Appellant appeals under 35 U.S.C. § 134(a) from the Examiner’s final rejection of claims 2-9 and 11-20. Claims 1 and 10 have been canceled. App. Br. 2. We have jurisdiction under 35 U.S.C. § 6(b). We affirm. Invention Appellant’s invention relates to a reconfigurable processor. See Abstract. Claim 13 is reproduced below with a key disputed limitation emphasized: 13. A data processing apparatus consisting of one or more non- reconfigurable devices connected thereto or incorporated therein, and a set of programmable devices which can be selectively configured and/or reconfigured by means of one or more software routines to execute one or more of a plurality of different instructions, the apparatus being configured to receive an instruction for execution, compare said instruction with contents of an instruction set or list to determine whether or not said instruction can be executed by any of said non-reconfigurable hardware devices and, if not, determine if a predefined configuration of said programmable devices exists to enable them to execute said instruction and, if not, determine if a software routine exists for reconfiguring said programmable devices to enable them to execute said instruction and, if said software routine exists, replace said instruction with one or more pointers to said software routine, the apparatus being further configured to update said data processing apparatus in the event that an instruction is received which is not executable in existing hardware, so as to include a programmable device configuration to handle such an instruction if it is received again. The Examiner relies on the following as evidence of unpatentability: Tredennick US 4,342,078 July 27, 1982 Zaidi US 6,581,154 B1 June 17, 2003 (filed Dec. 31, 1999) Patel US 6,826,749 B2 Nov. 30, 2004 (filed May 25, 2001) Appeal 2009-015304 Application 10/299,395 3 Jeffrey A. Jacob & Paul Chow, Memory Interfacing and Instruction Specification for Reconfigurable Processors, Proc. of the 1999 ACM/SIGDA 7th Int’l Sym. on Field Programmable Gate Arrays 145-154 (1999) (“Jacob”). M. Morris Mano & Charles R. Kime, Logic and computing design fundamentals 111-116 (2000) (“Mano”). The Rejections 1. The Examiner rejected claims 13-16 under 35 U.S.C. § 112, second paragraph as being indefinite. Ans. 3.1 2. The Examiner rejected claims 11, 12, and 18 under 35 U.S.C. § 103(a) as unpatentable over Jacob and Patel. Ans. 4-6. 3. The Examiner rejected claims 19 and 20 under 35 U.S.C. § 103(a) as unpatentable over Jacob, Patel, and Tredennick. Ans. 6-7. 4. The Examiner rejected claims 13-16 under 35 U.S.C. § 103(a) as unpatentable over Jacob, Mano, and Zaidi. Ans. 7-11. 5. The Examiner rejected claims 2-9 and 17 under 35 U.S.C. § 103(a) as unpatentable over Jacob, Zaidi, and Tredennick. Ans. 11-18. THE INDEFINITNESS REJECTION Regarding independent claim 13, the Examiner finds that the phrase, “determine if a software routine exists for reconfiguring said programmable devices to enable them to execute said instruction and, if said software routine exists, replace said instruction with one or more pointers to said software routine,” is unclear. Ans. 3, 20. In particular, the Examiner finds a 1 Throughout this opinion, we refer to: (1) the Appeal Brief filed March 19, 2009; (2) the Examiner’s Answer mailed June 19, 2009; and (3) the Reply Brief filed August 19, 2009. Appeal 2009-015304 Application 10/299,395 4 disparity between the first recitation, which states the software routine is used to reconfigure the programmable devices, and the second recitation, which states the software routine through a pointer is used to replace an instruction. Ans. 3, 19. The Examiner further explains that this claim “states that the same software routine is used to replace an instruction and to reconfigure the programmable devices[,]” as opposed to claim 17, which properly recites different routines for these functions. Ans. 19. Appellant argues claim 13 recites that the instruction is replaced with a pointer to a software routine and does not recite a software routine is used to replace the instruction. App. Br. 9; Reply Br. 2. ISSUE Under § 112, second paragraph, has the Examiner erred in rejecting claim 13 by finding that phrase, “determine if a software routine exists for reconfiguring said programmable devices to enable them to execute said instruction and, if said software routine exists, replace said instruction with one or more pointers to said software routine,” is indefinite? ANALYSIS We find Appellant’s contentions persuasive. We agree with Appellant (see App. Br. 9) that claim 13 recites replacing the instruction for execution with one or more pointers to the software routine and not the software routine is used to replace an instruction to be executed, as the Examiner contends. Thus, much of the Examiner’s indefiniteness rejection is not commensurate in scope with claim 13. Appeal 2009-015304 Application 10/299,395 5 Additionally, even assuming that “the claimed limitation [in claim 13] states that the same software routine is used to replace an instruction and to reconfigure the programmable devices” (Ans. 19), we fail to see why a software routine that performs more than one function is indefinite. See Ans. 19. That is, we find that a skilled artisan would recognized a routine can include subroutines to multiple functions, including both reconfiguring the programmable devices and replacing an instruction depending on the condition of the data processing apparatus. Also, when reading the disputed recitation in light of the disclosure, Appellant states that “if such a software routine exists, replacing said instruction in said instruction set or stream with [a] software routine or one or more pointers thereto . . .” (Spec. 6:1-3) and if a suitable configuration has not been previously defined and stored, the apparatus is arranged to either replace the instruction with an error handling routine (as in prior art systems when an instruction cannot be executed), or go to a software routine (if one is available) which reconfigures the programmable devices to enable them to execute the instruction. This process is carried out dynamically while the instruction set or stream is being executed. Spec. 6:21-26. We therefore find that those skilled in the art would understand what is claimed when read in light of the Specification. See Orthokinetics, Inc. v. Safety Travel Chairs, Inc., 806 F.2d 1565, 1576 (Fed. Cir. 1986) (citations omitted). For the foregoing reasons, Appellant has persuaded us of error in the rejection of (1) independent claim 13 and (2) independent claims 14-16 which recite commensurate limitations. Appeal 2009-015304 Application 10/299,395 6 THE OBVIOUSNESS REJECTION OVER JACOB, MANO, AND ZAIDI Regarding representative claim 13, the Examiner finds that Jacob teaches a set of programmable devices selectively configurable and/or reconfigurable by means of a software routine to execute different instructions. Ans. 8. However, the Examiner finds that Jacob does not teach determining if a software routine exists for reconfiguring the programmable devices to enable them to execute the instruction and, if the routine exists, replace the instruction with one or more pointer as recited and relies on Zaidi to cure this deficiency (Ans. 9-10). Appellant argues Jacob does not teach a software routine is used to execute an instruction. App. Br. 11. Appellant also asserts that Zaidi only converts macro instructions into micro instructions and does not disclose programmable devices reconfigurable in the manner claimed. App. Br. 12; Reply Br. 3. Appellant adds that Zaidi’s conversion does not teach a routine to replace an instruction with a pointer to a software routine that executes the instruction. Reply Br. 3. ISSUE Under § 103, has the Examiner erred in rejecting claim 13 by finding that Jacob, Mano, and Zaidi collectively would have taught or suggested an apparatus configured to, “determine if a software routine exists for reconfiguring said programmable devices to enable them to execute said instruction and, if said software routine exists, replace said instruction with one or more pointers to said software routine?” Appeal 2009-015304 Application 10/299,395 7 ANALYSIS Based on the record before us, we find no error in the Examiner’s rejection of claim 13, which calls for, in pertinent part, an apparatus to be configured to determine if a software routine exists for reconfiguring the programmable devices to enable them to execute an instruction. As the Examiner notes (Ans. 8), Jacob teaches Table 1 is used to keep track of the field programmable gate array (FPGA) configuration, which are described both as configuration and reconfiguration bits at specific addresses in memory. Jacob 147-148; Fig. 1. Jacob’s Table 1 shows five functions or routines (e.g., FPGA function 0000, 0001, 0010, 0011, 0100) that execute different instructions and that these functions can be dynamically loaded. Jacob 147-148. Contrary to Appellant’s assertion (App. Br. 11), Jacob suggests programmable devices that can be selectively configured and/or reconfigured by means of a routine (e.g., loaded configuration) to execute different pending instructions. Additionally, we agree with the Examiner (Ans. 21-22) that Appellants are attacking the cited references individually (see App. Br. 11- 12) and that such an approach does not show nonobviousness where the rejection, as is here, is based on the combination of Jacob, Mano, and Zaidi. See In re Merck & Co., Inc., 800 F.2d 1091, 1097 (Fed. Cir. 1986). Nonetheless, the Examiner admits that Jacob alone does not teach the recitation of an apparatus configured to determine if a software routine exists for reconfiguring said programmable devices to enable them to execute said instruction and relies on Zaidi in combination with Jacob to cure the deficiencies. See Ans. 9-10, 21-23. Appeal 2009-015304 Application 10/299,395 8 Zaidi teaches a micro-instruction sequencer (MIS) logic 203 that transforms macro-instructions into one or more micro-operations (uops) and/or Super-uop (Suops) by referencing the micro code ROM (UROM), where the uops and Suops are stored. Col. 3, ll. 57-61; Fig. 2. Zaidi’s logic suggests that software or programming is used to configure or reconfigure the device. Zaidi further describes using the expander 210 to perform scalar or packed operations. Col. 4, ll. 3-7; Fig. 2. When combined with Jacob’s programmable devices, these teachings in Zaidi demonstrate that software routines exist for reconfiguring the programmable device (e.g., routines that transform a macro-instruction configuration to micro-instruction configurations) to enable them to execute the instruction. Thus, as broadly as recited in claim 13, we disagree with Appellant and conclude that Jacob and Zaidi collectively teach programmable devices that are reconfigured “in the manner claimed” (App. Br. 12). Also, merely pointing out what claim 13 recites and then asserting without any further argument that the cited references fail to teach “if said software routine exists, replace said instruction with one or more pointers to said software routine” (see App. Br. 10-12) is not considered a separate argument for patentability. See In re Lovin, 652 F.3d 1349, 1357 (Fed. Cir. 2011). For the first time in the Reply Brief (Reply Br. 3), Appellant elaborates slightly by contending that converting macro-instructions into micro-instructions does not disclose replacing an instruction with one or more pointers to said software routine. Reply Br. 3. Yet, the Examiner cites to Zaidi in columns 3 and 4 (Ans. 9-10), where Zaidi discusses that, if Suops are generated, the MIS logic references the macro-instructions operations code (opcode) or any applicable associated information to determine Appeal 2009-015304 Application 10/299,395 9 whether the operation to be performed relative to each Suops is packed or scalar (col. 3, ll. 63- col. 4, l. 11). By referencing the macro-instructions opcode (see id.), Zaidi at least suggests replacing an instruction itself (e.g., the macro-instruction) with a pointer to a software routine (e.g., the reference to the opcode). And when combining this teaching with Jacob, the combination teaches or suggests replacing an instruction with one or more pointer to the software routine as recited. See also Ans. 10, 22-23. Independent claims 14-16 are commensurate in scope with the above disputed limitation and are separately argued. App. Br. 13-20. Appellant repeats the argument of claim 13 for claims 14-16. Compare App. Br. 10-12 with App. Br. 13-20. For example, Appellant argues that neither Jacob nor Zaidi teaches the limitation of an “apparatus being configured to . . . determine if a software routine exists for reconfiguring said programmable devices to enable them to execute said instruction and, if said software routine exists, replace said instruction with one or more pointers to said software routine . . .” in claim 14 or similar recitations in claims 15 and 16. App. Br. 13-20. We are not persuaded for the reasons discussed previously. For the foregoing reasons, Appellant has not persuaded us of error in the rejection of independent claims 13-16. THE OBVIOUSNESS REJECTION OVER JACOB, ZAIDI, AND TREDENNICK Appellant repeats the arguments presented when addressing claim 13 concerning Jacob and Zaidi when addressing representative claim 17.2 2 Notably, claim 17 recites “perform at least one of the following” steps (a)- (c) (emphasis added) and later recites “wherein the processor is configured Appeal 2009-015304 Application 10/299,395 10 Compare App. Br. 10-12 with 21-23. We are not persuaded for the reasons previously discussed. For the foregoing reasons, Appellant has not persuaded us of error in the rejection of independent claim 17 or dependent claims 2-9 not separately argued with particularity (App. Br. 21-23). THE REMAINING OBVIOUSNESS REJECTIONS Regarding representative claim 18, Appellant argues Jacob does not teach replacing the pending instruction with a pointer to one or more instruction of a software routine as recited. App. Br. 23-25. ISSUE Under § 103, has the Examiner erred in rejecting claim 18 by finding that Jacob and Patel collectively would have taught or suggested performing at least the step of “reconfiguring at least one of reconfigurable elements to enable said reconfigurable elements to execute said pending instruction”? ANALYSIS Based on the record before us, we find no error in the Examiner’s rejection of claim 18. Notably, claim 18 recites “performing . . . at least one of the following” (emphasis added) and thus requires that only one of the two recited steps be performed. That being so, demonstrating whether Jacob teaches the replacing step (a) is not necessary to meet the required limitations in claim 18. See App. Br. 23-25; Ans. 28. to perform each of the operations (a)-(c)” (emphasis added). If there is further prosecution, the Examiner should consider whether these recitations in claim 17 and, similarly in claim 18, are consistent. Appeal 2009-015304 Application 10/299,395 11 Concerning the “reconfiguring” step (b), Appellant merely points out what claim 18 recites and then asserts that Jacob and Patel fail to teach the “reconfiguring” step (b). See App. Br. 24-25. Merely asserting that the cited art fails to teach a feature is not considered a separate argument for patentability. See Lovin, 652 F.3d at 1357. Additionally, Appellant presents no additional argument or evidence to rebut the Examiner’s finding that Jacob teaches performing at least recited step (b). Ans. 4-5. Thus, the Examiner’s findings concerning the “reconfiguring” step remain unrebutted. For the foregoing reasons, Appellant has not persuaded us of error in the rejection of independent claim 18 or dependent claims 11, 12, 19, and 20 not separately argued with particularity (App. Br. 21-23). CONCLUSION The Examiner erred in rejecting claims 13-16 under § 112, second paragraph. The Examiner did not err in rejecting claims 2-9 and 11-20 under § 103. DECISION The Examiner’s decision rejecting claims 2-9 and 11-20 is affirmed. No time period for taking any subsequent action in connection with this appeal may be extended under 37 C.F.R. § 1.136(a)(1)(iv). AFFIRMED rwk Copy with citationCopy as parenthetical citation