Claims
- 1. An system for verifying a superscalar computer architecture, comprising:
a test program; an opcode biasing service comprising:
a bias table; a classification information structure; and a program opcode list; a configuration file describing said superscalar computer architecture, said configuration file stored in a memory location accessible to said test program; and an opcode biasing service application programming interface (API) operable for facilitating communication between said test program and said opcode biasing service.
- 2. The system of claim 1, wherein said configuration file stores an opcode classification section including opcodes grouped into classes based upon inherent rules of said superscalar computer architecture.
- 3. The system of claim 1, wherein said configuration file stores a bias definition section operable for assigning weights to opcode classes.
- 4. The system of claim 1, wherein said bias table stores bias information extracted from said configuration file for use by said opcode biasing service.
- 5. The system of claim 1, wherein said classification information structure stores classification information extracted from said configuration file, said classification information structure used to look up classification data for opcodes provided in said configuration file.
- 6. The system of claim 1, wherein said program opcode list stores opcode information relevant to said test program.
- 7. The system of claim 1, wherein said bias table, said classification information structure, and said program opcode list are used concurrently by said opcode biasing service and said API for customizing selection of a resulting opcode stream.
- 8. The system of claim 1, wherein said opcode biasing service API includes instructions for:
informing said test program where said configuration file is located; combining program structures related to said test program with service structures related to said opcode biasing service, said program structures pointing to a program selected opcode pool; and allowing said test program to query said opcode biasing service for an opcode.
- 9. The system of claim 1, wherein said opcode biasing service includes a means for generating a random number for selecting an opcode.
- 10. A method for verifying a superscalar computer architecture via a test program, comprising:
initiating said test program; receiving a request to access an opcode biasing service API by said test program; initializing an opcode biasing service; locating a configuration file associated with said superscalar computer architecture; retrieving description information from said configuration file; transmitting said description information to said opcode biasing service; receiving an opcode list from said test program; receiving a request for an opcode from said test program; generating a random number; using said description information, applying a weighted bias algorithm to said random number resulting in a pseudo-random generated opcode; and returning said pseudo-random generated opcode to said test program.
- 11. The method of claim 10, wherein said description information includes opcode classifications and bias definitions for opcodes.
- 12. A storage medium encoded with machine-readable computer program code for verifying a superscalar computer architecture via a test program executing on a computer, said storage medium including instructions for causing said computer to implement a method, comprising:
initiating said test program; receiving a request to access an opcode biasing service API by said test program; initializing an opcode biasing service; locating a configuration file associated with said superscalar computer architecture; retrieving description information from said configuration file; transmitting said description information to said opcode biasing service; receiving an opcode list from said test program; receiving a request for an opcode from said test program; generating a random number; using said description information, applying a weighted bias algorithm to said random number resulting in a pseudo-random generated opcode; and returning said pseudo-random generated opcode to said test program.
- 13. The storage medium of claim 12, wherein said description information includes opcode classifications and bias definitions for opcodes.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is related to co-pending applications entitled, “System and Method for Facilitating Programmable Coverage Domains for a Testcase Generator”, (Attorney Docket No. POU920020002US 1), and “System and Method for Facilitating Coverage Feedback Testcase Generation Reproducibility”, (Attorney Docket No. POU920020001US1) which were both filed on Mar. 28, 2002, and are incorporated herein by reference in their entireties