Difference engine method and apparatus
AssigneeARC International
InventorsThomas J. Pennello, Patrick Michael Lashley
Life of this patent
Estimating the term…
Abstract
A method and apparatus for analyzing and formatting strings of data, such as data derived from software processes running on two data processors. In one embodiment, a plurality of different data strings are initialized building a symbol array, and finding differences within the data by analyzing various relationships within the data strings, such as the existence of unique strings. A computer program and apparatus for synthesizing logic implementing the aforementioned methodology are also disclosed.
Claims19
A method of formatting a plurality of strings of data derived from respective ones of a plurality of data processors, comprising:
- initializing the data in each of said strings;
- finding the differences between said strings;
- and
- providing said differences in a display to a user.
A method of analyzing a plurality of strings of data derived from at least one data processing device, comprising:
- initializing said data, said act of initializing including creating a symbol array;
- analyzing said strings of data based at least in part on said symbol array;
- and
- identifying at least one relationship between one or more of said data within one or more of said strings.
A method of identifying differences within a plurality of data inputs associated with at least one data processor, comprising:
- providing a plurality of data inputs having at least one data string associated therewith;
- processing those inputs of said plurality that do not share any of said at least one data strings with other of said inputs;
- determining whether an excluded set of data is empty;
- and
- if said excluded set of data is not empty, identifying said differences using respective members of an included set as said plurality of inputs.
A storage device, comprising:
- a computer readable medium;
- a computer program stored on said computer readable medium, said program being adapted for analyzing a plurality of strings of data derived from at least one data processing device according to the method comprising:
- initializing said data, said act of initializing including creating a symbol array;
- analyzing said strings of data based at least in part on said symbol array;
- and
- identifying at least one relationship between one or more of said data within one or more of said strings.
A data processing device, comprising:
- a processor adapted to process digital data and execute a computer program;
- a storage device in data communication with said processor, said storage device comprising:
- a computer readable medium;
- and
- a computer program stored on said computer readable medium, said program being adapted for analyzing a plurality of strings of data derived from at least one data processing device according to the method comprising:
- initializing said data, said act of initializing including creating a symbol array;
- analyzing said strings of data based at least in part on said symbol array;
- and
- identifying at least one relationship between one or more of said data within one or more of said strings.
A method of designing a processing device adapted to run at least one software process thereon, comprising:
- generating a design for said processing device;
- running at least a portion of said at least one software process a first time;
- obtaining a first output from said at least one process;
- modifying said design;
- running said at least portion of said at least one software process a second time;
- obtaining a second output from said at least one process;
- and
- identifying differences within said first and second output.
A method of evaluating the operation of a plurality of software processes running on respective ones of a plurality of digital processors, comprising:
- generating a first data string using a first of said plurality of software processes;
- generating a second data string using a second of said plurality of software processes;
- inputting said first and second data strings into a debug software process;
- analyzing said first and second data strings using said debug process;
- and
- evaluating the operation of said processes based at least in part on said act of analyzing.
A multi-processor integrated circuit device, comprising:
- a first processor core adapted to run a first software process, said first software process adapted to generate a first string of data;
- a second processor core adapted to run a second software process said second software process adapted to generate a second string of data;
- at least one data interface, wherein said first and second processors respectively transfer data comprising said first and second strings to an external debug process adapted to identify similarities and differences between the operation of said first and second softare processes on said first and second processors, via said at least one interface.
Dependencies are inferred from the claim text.