Patent ID: 7102956

Claim:
A method of constructing a memory structure for storing addresses, said method comprising: a) setting a value N equal to a number M of addresses to store in said memory structure; b) determining a value L where L is zero or a positive integer and the largest power of 2 that N can be divided by, and where 2 L+1 is less than or equal to N; c) determining a value K equal to the number of times N can be divided by 2 L , where K is a positive integer; d) partially constructing said memory structure comprising K address banks that share L least significant bits; e) subtracting K from N and setting the result equal to N; f) repeating c) through e) if K is greater than 2 L+1 ; g) setting L equal to L−1 if K is not greater than 2 L+1 and repeating c) through e) if L is not equal to zero; and h) repeating c) through g) until L equals zero.