US2013132453A1PendingUtilityA1

Generating unique random numbers for multiple instantiations

33
Assignee: PLX TECHNOLOGY INCPriority: Mar 12, 2010Filed: Jan 14, 2013Published: May 23, 2013
Est. expiryMar 12, 2030(~3.7 yrs left)· nominal 20-yr term from priority
Inventors:Swapnajit Mitra
G06F 30/30G06F 7/58G06F 30/20
33
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

In a first embodiment of the present invention, a method for generating a random number for an instance of a hardware description language definition is provided, the method comprising: generating a unique signature for the instance; applying a message digest generation process on the unique signature to arrive at a message digest having a fixed length; and applying a random number generation process on the message digest.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method for generating a random number for an instance of a hardware description language definition, the method comprising:
 generating a unique signature for each instance of the hardware description language definition;   applying a message digest generation process on the unique signature to arrive at a message digest having a fixed length for each unique signature; and   applying a random number generation process on the message digests;
 wherein each calling of a hardware description language simulation module description results in the generation of a random number without interaction with any other instance of the hardware description language definition. 
   
     
     
         2 . The method of  claim 1 , wherein the generating includes:
 determining a path for the instance; and   converting the path to a unique signature.   
     
     
         3 . The method of  claim 2 , wherein the converting the path includes
 converting a path name corresponding to each node in the path to a numerical code; and   concatenating the numerical codes corresponding to each node in the path together to form a unique signature.   
     
     
         4 . The method of  claim 3 , wherein the numerical code is extended American Standard Code for Information Interchange (ASCII) code. 
     
     
         5 . The method of  claim 1 , further comprising:
 generating a composite unique signature based upon the generated unique signature and the current time.   
     
     
         6 . The method of  claim 5 , wherein the generated composite unique signature is also based upon a user-specified seed. 
     
     
         7 . The method of  claim 6 , wherein the generating a composite unique signature includes concatenating the generated unique signature and the user-specified seed, and exclusive-ORing the result with the current time. 
     
     
         8 . The method of  claim 5 , wherein the applying a message digest generation process utilizes the composite unique signature. 
     
     
         9 . The method of  claim 1 , wherein the message digest generation process is a Message Digest Algorithm, 5 (MD5) process. 
     
     
         10 . The method of  claim 1 , further comprising reducing the length of the message digest prior to applying a random number generation process on the message digest. 
     
     
         11 . The method of  claim 10 , wherein the reducing the length includes performing an XOR operation between the lower and the upper 32 bits of the message digest and using the result as a reduced message digest. 
     
     
         12 . The method of  claim 10 , wherein the reducing the length includes:
 (a) exclusive ORing the lowest 32 bits and the upper 32 bits of the message digest;   (b) NOT XORing the next highest 32 bits of the message digest with the result from (a); and   (c) exclusive ORing the highest 32 bits of the message digest with the result from (b).   
     
     
         13 . A method for generating a random number for an instance of a hardware description language definition, the method comprising:
 generating a unique signature for the instance;   generating a composite unique signature based upon the generated unique signature and the current time;   applying a message digest generation process on the composite unique signature to arrive at a message digest having a fixed length; and   applying a random number generation process on the message digest.   
     
     
         14 . The method of  claim 13 , wherein the generating of the unique signature includes:
 determining a path for the instance; and   converting the path to a unique signature.   
     
     
         15 . The method of  claim 13 , wherein the generated composite unique signature is also based upon a user-specified seed. 
     
     
         16 . The method of  claim 13 , wherein the generating a composite unique signature includes concatenating the generated unique signature and the user-specified seed, and exclusive-ORing the result with the current time. 
     
     
         17 . The method of  claim 13 , wherein the applying a message digest generation process utilizes the composite unique signature. 
     
     
         18 . The method of  claim 13 , wherein the message digest generation process is a Message Digest Algorithm, 5 (MD5) process. 
     
     
         19 . The method of  claim 13 , further comprising reducing the length of the message digest prior to applying a random number generation process on the message digest. 
     
     
         20 . The method of  claim 19 , wherein the reducing the length includes performing an XOR operation between the lower and the upper 32 bits of the message digest and using the result as a reduced message digest. 
     
     
         21 . The method of  claim 19 , wherein the reducing the length includes:
 (a) exclusive ORing the lowest 32 bits and the upper 32 bits of the message digest;   (b) NOT XORing the next highest 32 bits of the message digest with the result from (a); and   (c) exclusive ORing the highest 32 bits of the message digest with the result from (b).   
     
     
         22 . A hardware description language simulation module comprising:
 a unique signature generator configured to generate a unique signature for an instance of a hardware description language definition;   a message digest generator configured to apply a message digest generation process on the unique signature to arrive at a message digest having a fixed length; and   a random number generator configured to apply a random number generation process on the message digest;
 wherein each calling of the hardware description language simulation module results in the generation of a random number without interaction with any other instance of the hardware description language definition. 
   
     
     
         23 . The hardware description language simulation module of  claim 22 , wherein the hardware description language simulation module is called from within the instance of the hardware description language definition. 
     
     
         24 . The hardware description language simulation module of  claim 22 , wherein the unique signature is based on a path of the instance in a hierarchy of hardware description language definition paths. 
     
     
         25 . The hardware description language simulation module of  claim 22 , further comprising a composite signature generator generating a composite unique signature based upon the generated unique signature and the current time, wherein the message digest generator applies the message digest generation process on the composite signature to arrive at the message digest.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.