Patent Document ID: 7483824
Application ID: 11308039

Base Claim:
1. A self-checking test generation system comprising: a computer with one or more processors and a memory storing a program of instructions executable by the one or more processors, the program of instructions comprising a self-checking test generator comprising: a device-under-test (DUT) model of a target device, the DUT model having interconnected models for modeling interconnected blocks of the target device; a plurality of fuzzy models, each fuzzy model being a model of operation of one of the interconnected models in the DUT model; a plurality of unknown models in the DUT model, each unknown model outputting one or more model outputs in an unknown logic state; wherein a fuzzy model that receives a model output from an unknown model propagates the unknown logic state for at least some combinations of model inputs to the fuzzy model; a state storage that receives model outputs from the plurality of fuzzy models, the state storage storing state signals; an instruction writer that writes a selected instruction, operand or pointer values, and a self-check instruction to a self-check test program, the self-check test program for executing on the target device for testing the target device, whereby the self-check test program is generated using the fuzzy models.

---

Claim 2:
2. The self-checking test generator of claim 1 further comprising: an instruction selector for selecting the selected instruction from a plurality of instructions intended for executing on the target device; a resource manager that determines when an operation determined by the selected instruction is capable of being executed by the plurality of fuzzy models wherein resources required by the selected instruction are not contained in the plurality of unknown models; a value generator that generates operand or pointer values for use by the selected instruction; and a self-check instruction generator that generates the self-check instruction to verify a result generated by the selected instruction; wherein the instruction selector selects a different instruction from the plurality of instructions when the resource manager determines that the operation determined by the selected instruction requires an unknown model in the plurality of unknown models, the instruction writer not writing selected instructions to the self-check test program for selected instructions that require unknown models, whereby instructions that perform operations that require unknown models are not added to the self-check test program.