title: Guided random numbers
body: <p>I want to make code for a game called 'Dual N-Back'. The game works by showing squares moving on a 3x3 grid and when a square is on the same position as it was N times ago, the user has to press a button. The problem I am experiencing right now is that I want to have the squares appear on random locations on the grid, but I also want to force the game to have exactly 10 match opportunities out of 20 iterations of the game. How do I force this while still having the randomness of the square location built into the game?</p>
  
  <p>The function has to be implemented in hardware using the VHDL language, so I can't afford using expensive mathematical functions.</p>