Patent ID: 8245164

Claim:
A method of testing an address translation mechanism, comprising: receiving, by a test generator implemented by a processor, a specification of at least one address translation table, including information indicating a format of a translation table entry, a projector implementing a match rule and a projector implementing a translation rule; receiving, by the test generator, a user input including a user requirement on at least one attribute from a group including: whether the test should result in a match, an output address of the test, a table entry used by the test, a size of a translation region used by the test, and a content of the table entry used in the test; providing previously generated table entries resulting from previously generated test cases; generating a constraint-satisfaction-problem for the at least one address translation table, the user requirement and the previously generated table entries; repeatedly applying a plurality of different projectors to the constraint-satisfaction-problem in alternation, so as to reduce the number of possible solutions of the constraint-satisfaction-problem, until the projectors do not change the extent of possible solutions of the constraint-satisfaction-problem; and selecting a solution for the constraint-satisfaction-problem from the possible solutions remaining after the applying of the plurality of different projectors projector so as to generate a test case for testing the address translation mechanism.