Claims
- 1. Apparatus for writing a set of N data values into memory and then reading the data values out of the memory so as to reorder the data values into N/N.sub.i groups, each group consisting of N.sub.i data values, where N is the product of a set of prime factors N.sub.1, N.sub.2, . . . N.sub.L, and N.sub.i is one of said prime factors, comprising:
- a memory having N storage locations for storing N data values, the storage locations being designated by addresses respectively numbered from 1 to N;
- an address register for providing to the memory the address of a storage location to be accessed; and
- an address selector circuit, for storing successive values of the address in the address register, comprising
- a first register for storing a first increment, a second register for storing a second increment, a third register for storing a first quantity equal to the first increment minus N, a fourth register for storing a second quantity equal to the second increment minus N,
- first adder means for adding the address in said address register to said first increment for N.sub.i -1 values in each group of N.sub.i data values and for adding the address in said address register to said second increment on the remaining one of the N.sub.i values in each group,
- second adder means for adding the address in said address register to the first quantity for N.sub.1 -1 values in each group and for adding the address in said address register to the second quantity for the remaining one of the N.sub.i values in each group,
- means for selecting a starting address as the first address for said address register, and
- means for storing in said address register as the next successive address the sum from either the second adder or the first adder, according to whether the sum from the second adder is positive or negative, respectively.
- 2. The apparatus of claim 1, wherein, when the apparatus is reading data out of memory, said second register stores said second increment as equal to 1 and said first register stores said first increment as the value R.sub.i, where the value of R.sub.i satisfies the following equation for each value of m=1, 2, . . . L: ##EQU18##
- 3. The apparatus of claim 2 wherein, when the apparatus is writing data into the memory, said first register stores said first increment equal to N/N.sub.i and said second register stores said second increment equal to N+1-R.sub.i +N/N.sub.i.
- 4. The apparatus of claim 1, wherein, when the apparatus is writing data into memory, said second register stores said second increment as equal to 1 and said first register stores said first increment as the value R.sub.i, where the value of R.sub.i satisfies the following equation for each value of m=1, 2, . . . L: ##EQU19##
- 5. The apparatus of claim 4 wherein, when the apparatus is reading data out of memory, said first register stores said first increment equal to N/N.sub.i and said register stores said second increment equal to N+1-R.sub.i +N/N.sub.i.
Parent Case Info
This is a division of application Ser. No. 706,222, filed Feb. 27, 1985, which is a continuation-in-part of application Ser. No. 310,469, filed Oct. 13, 1981, now abandoned.
US Referenced Citations (5)
Divisions (1)
|
Number |
Date |
Country |
Parent |
706222 |
Feb 1985 |
|
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
310469 |
Oct 1981 |
|