Embedded Random Number Generators
We sell solutions for embedded applications, where a customer wish to include a random number generator. The best approach is often to write a specification on your requirements, and we simply adopt a solution we used before to meet your demands. Please contact us directly to obtain detailed information on how we can help you.
Using Pre-Fabricated Random Number Modules
For a short production run, a pre-fabricated random number module should be considered. We occasionally make such modules here, and you can forward your specification to us for our consideration. We can set up a batch of custom-made modules also.
Often, integration of a module into a project is a major cost; adoption of software, etc. Depending on your production volume, you should also consider a licensed solution, and see wich solution that best fits your needs.
Software Processing of Random Numbers
Source Code in Embedded Applications
A random number module is seldom the main focus in a customer's application. Even if some processors have capabilities that can be compared to an ordinary PC, that do not imply that these resources are available to the random number module. Most embedded processors are 8-bit with limited memory, for the random number module possibly down to some handful of bytes. The main focus for the software driver of a random number module, is to get the job done in a reliable fashion, using available limited resources.
A Hardware/Software Trade-Off
Hardware random number circuits often produce random bits at great speed. There are a number of trade-offs, that you can employ, if you have good information on how the random number module will be used in the actual application. One of them is adjustment of when random numbers are read from the hardware, compared to corresponding computational costs.
Quality of Random Numbers
Most applications require random numbers of a quality that can only be attained using rather massive computation, and much memory supporting it. The quality is possibly somewhat biased by this issue of which "tests" the numbers need to pass, where the "tests" often turn out to be frequency tests, and often the 0/1 bit balance is what the test actually measure, even if it have some fancy name. We note that the 0/1 bit balance of the output stream is not difficult to fix; but do such operations improve quality?
The Tesing of Random Numbers
The testing of random numbers have a number of hidden problems; one that came up was that one of our customer's had a requirement from the corresponding Game Authority, that the random number should pass a specific test. What was not considered was that, as this was one of the usual statistical frequency tests, that these tests occasionally fail by pure chance. This turned out to be problematic, as the customer intended to run, and pass, the test every time before an important selection was made. It was not until some server cluster run this application at full speed, that the problem of frequent test fails was discovered.