IL46475A

Memory having non-fixed relationships between addresses and storage locations

Abstract

This record has no abstract on file.

IL46475A, drawing sheet 1
Sheet 1 of 16

Term

No projected expiry on record.

  1. Priority
  2. Filed
  3. Published
  4. Today

76 claims: 76 independent, 0 dependent

  1. 1
    A multi-mode memory comprising a first plurality of storage locations each having a respective access address, a second plurality of storage locations each having a respective access address and at least some of which are used for containing the access addresses of some of said storage locations in said first plurality, a plurality of data lines, means for transferring data between said data lines and either a selected one of the storage locations in said second plurality or a selected one of the storage locations in said first plurality having a derived access address, a plurality of address lines for receiving thereon memory addresses having a plurality of bits therein, means for verifying that a received memory address on said address lines is contained within one of several predetermined groups of memory addresses, and means responsive to the operation of said verifying means for deriving the access address of a selected storage location in either said first or said second plurality for use by said data transferring means, said deriving means including means for identifying from a received memory address a storage location in said second plurality and for deriving the access address of a selected storage location in said first plurality by performing a predetermined operation on the access address contained in the identified storage location in accordance with the values of at least some of the bits in the received memory address responsive to the received memory address being contained in at least one of said predetermined groups, said deriving means operating in one of several different modes in accordance with which predetermined group of memory addresses contains the received memory address.
  2. 2
    A memory in accordance with claim 1 wherein said deriving means performs a different predetermined operation on an access address in accordance with which respective predetermined group of memory addresses contains the received memory address.
  3. 3
    A memory in accordance with claim 1 wherein one of־.the modes of operation is a direct mode in which said deriving means derives the access address of a selected storage location in said first plurality by translating each received memory address within one of said predetermined groups by a preselected amount.
  4. 4
    A memory in accordance with claim 3 further including means for adjusting the preselected amount by which each received memory address is translated to derive the access address of a storage location in said first plurality when said deriving means operates in said direct mode.
  5. 5
    A memory in accordance with claim 3 further including means for establishing a set of contiguous memory addresses each of which when received results in said deriving means operating in said direct mode.
  6. 6
    A memory in accordance with claim 1 wherein one of the modes of operation is a mapping mode in which said deriving means derives the access address of a selected storage location in said first plurality when the received memory address is contained within a predetermined mapping group, said mapping group including several memory address pages with each of said memory address pages being associated with a respective one of the storage locations in said second plurality, each of said respective storage locations in said second plurality containing the starting access address of a corresponding page of storage locations in said first plurality, said deriving means operating in the mapping mode to arithmetically combine the access address in that one of said storage locations in said second plurality which is associated with the memory address page which contains the received memory address with at least some of the bits in the received memory address to derive the access address of a selected storage location in said first plurality. ר . A memory in accordance with claim 6 wherein said at least some of the bits in the received memory address represent the difference between the received memory address and the starting memory address of the memory address page which contains the received memory address.
  7. 7
    8. A memory in accordance with claim 6 further ineluding means for controlling the storage of a new page starting access address which appears on said data lines in a storage location in said second plurality when the received memory address is contained within a special predetermined group, said deriving means including means for deriving the access address of a selected storage location in said second plurality from less than all of the bits in a received memory address which is contained within said special predetermined group.
  8. 8
    9. A memory in accordance with claim 6 further in- t eluding means for setting a number of contiguous memory address pages in said mapping group, a memory address in each of which when received results in said deriving means operating in said mapping mode.
  9. 9
    10. A memory in accordance with claim 1 wherein one of the modes of operation is a special mode in which said deriving means derives the access address of a selected storage location ׳>in said second plurality when the received memory address is contained within a special predetermined group, said deriving means including means for deriving the access address of a selected storage location in said second plurality from at least semeof the bits in a received memory address which is contained within said special‘predetermined group. . ο
  10. 10
    11. A memory in accordance with claim 10 further including means for setting a number of contiguous memory addresses which are contained in said special predetermined group.
  11. 11
    12. A memory in accordance with claim 1 wherein one of the modes of operation is a stacking mode in which said deriving means derives the access address of a storage location in said first plurality when the received memory address is contained within a predetermined stacking group, said stacking group including a plurality of sub-groups the memory addresses in each of which are all associated with a respective one of the storage locations in said second plurality, each of said respective storage locations in said second plurality containing the respective access address of a storage location in a respective buffer area in said first plurality, said deriving means operating in the stacking mode to derive the access address of a storage location in said first plurality by performing a predetermined operation on the access address contained in the respective storage location in said second plurality which is associated with the received memory address in accordance with the values of less than all of the bits in the received memory address.
  12. 12
    13. A memory in accordance with claim 12 wherein responsive to the receipt of at least one of the memory addresses in each of said sub-groups said deriving means modifies the access address contained in the associated storage location in said second plurality by a predetermined amount to derive the access address of a storage location in said first plurality.
  13. 13
    14. A memory in accordance with claim 13 further ineluding means for storing the modified access address in its ־ ο previous storage location in said second plurality.
  14. 14
    15. A memory in accordance with claim 13 wherein v responsive to the receipt of at least one of the memory addresses in each of said sub-groups said deriving means decrements the access address contained in the associated storage location in said second plurality by 1.
  15. 15
    16. A memory in accordance with claim 13 wherein responsive to the receipt of at least one of the memory addresses in each of said sub-groups said deriving means decrements the access address contained in the associated storage location in said second plurality by 2.
  16. 16
    17. A memory in accorance with claim 12 wherein responsive to the receipt of at least one of the memory addresses in each of said sub-groups said deriving means retrieves the access address contained in the associated storage location in said second plurality to derive the access address of a storage location in said first plurality and'thereafter modifies the retrieved access address by a predetermined amount and stores the modified retrieved access address in its previous storage location in said second plurality.
  17. 17
    18. A memory in accordance with claim 17 wherein the derived access address is made equal to the retrieved access address.
  18. 18
    19. A memory in accordance with claim 17 wherein responsive to the receipt of at least one of the memory addresses in each of said sub-groups the retrieved access address contained in the associated storage location in said second plurality is modified by incrementing it by 1.
  19. 19
    20. A memory in accordance with claim 17 wherein responsive to the receipt of at least one of the memory addresses in each of said sub-groups the retrieved access address contained in the associated storage location in said second plurality is modified by incrementing it by 2.
  20. 20
    21. A memory in accordance with claim 13 wherein responsive to the receipt of at least one of the memory addresses in each of said sub-groups the access address which is modified is used by said data transferring means and is left unchanged in its respective storage location in said second plurality.
  21. 21
    22. A memory in accordance with claim 21 wherein responsive to the receipt of at least one of the memory addresses in each of said sub-groups the access address which is modified and used by said data transferring means is decremented by 1.
  22. 22
    23. A memory in accordance with claim 21 wherein responsive to the receipt of at least one of the memory addresses in each of said sub-groups the access address which is modified and used by said data transferring means is decremented by 2.
  23. 23
    24. A memory in accordance with claim 12 further including means for controlling the storage of new access addresses which appear on said data lines in particular storage locations in said second plurality which are associated with received memory addresses contained in a special predetermined group, and means for identifying such a particular storage location in said second plurality from at least some of the bits in a received memory address which is contained within said special predetermined group.
  24. 24
    25. A memory in accordance with claim 12 further ineluding means for setting the successive memory addresses in said stacking group, a memory address in each of which when received results in said deriving means operating in said stacking mode.
  25. 25
    26. A memory in accordance with claim 1 further including a plurality of storage means, and means responsive to the receipt of a predetermined memory address on said address lines for controlling the transfer of data from said data lines to said plurality of storage means.
  26. 26
    27. A memory in accordance with claim 26 further including means responsive to data stored in said plurality of storage means for selectively enabling and disabling the operation of said deriving means in some of said several modes.
  27. 27
    28. A memory in accordance with claim 1 further including means for selectively changing said predetermined operation performed by said deriving means responsive to a received memory address being contained in said at least one predetermined group.
  28. 28
    29. A memory in accordance with claim 1 wherein at least two of said predetermined groups of memory addresses are adjustable and can overlap, and further including means for controlling a priority sequence with respect to the mode in which said deriving means is operated in the event a received memory address is contained in at least two different ones of said predetermined groups.
  29. 29
    30. A memory in accordance with claim 1 wherein memory addresses and data are received on said plurality of address and data lines from two sources, and further including means for delaying a data transfer operation in accordance with the memory address and data received from one source until after the completion of a data transfer operation which is in progress in accordance with the memory address and data received from the other source.
  30. 30
    31. A memory for operating in a mapping mode comprising a first plurality of storage locations each having a respective access address, a second plurality of storage locations each having a respective access address, a plurality of data lines, means for transferring data between said data lines and either a selected one of the storage locations in said second plurality or a selected one of the storage locations in said first plurality having a derived access address, a plurality of address lines for receiving thereon memory addresses having a plurality of bits therein, some of said memory addresses being contained in a set of pages with all of the memory addresses in each of said pages being associated with the same respective one of the storage locations in said second plurality, others of said memory addresses being contained in a special group with each memory address therein being associated with a respective one of the storage 10cations in said second plurality,at least some of the storage locations in said second plurality containing the starting access addresses of pages of storage locations in said first plurality which correspond to the respective pages of memory addresses associated with said at least some storage locations in said second plurality, first means -for deriving from a received memory address which is contained in said special group the access address of a selected storage location in said second plurality for use by said data transferring means, and second means for deriving from a received memory address which is contained in one of said pages the access address of a selected storage location in said first plurality for use by said data transferring means by combining the page starting access address contained in the associated storage location in said second plurality with at least some of the bits in the received memory address.
  31. 31
    32. A memory in accordance with claim 31 wherein said second deriving means arithmetically combines said page starting access address with at least some of the bits in the received memory address to derive the access address of said selected storage location in said first plurality.
  32. 32
    33. A memory in accordance with claim 32 wherein said at least some of the bits in the received memory address represent the difference between the received memory address and the starting memory address of the memory address page which contains the received memory address.
  33. 33
    34. A memory in accordance with claim 33 wherein said first deriving means derives the access address of a selected storage location in said second plurality from at least some of the bits in a received memory address which is contained within said special group.
  34. 34
    35. A memory in accordance with claim 34 further including means for setting the number of pages which contain memory addresses which when received result in the operation of said second deriving means.
  35. 35
    36. A memory in accordance with claim 31 wherein said first deriving means derives the access address of a selected storage location in said second plurality from { at least some of the bits in a received memory address which is contained within said special group.
  36. 36
    37. A memory in accordance with claim 36 further ineluding means for setting the number of pages which, contain memory addresses which when received result in the operation of said second deriving means.
  37. 37
    38. A memory in accordance with claim 31 further including means for setting the number of pages which contain memory addresses which when received result in the operation of said second deriving means.
  38. 38
    39. A memory in accordance with claim 31 wherein memory addresses and data are received on said plurality of address and data lines from two sources, and further including means for delaying a data transfer operation in accordance with the memory address and data received from one source until after the completion of a data transfer operation which is in progress in accordance with the memory address and data received from the other source.
  39. 39
    40. A memory for operating in a stacking mode comprising a first plurality of storage locations each having a respective access address, a second plurality of storage .locations each having a respective access address, a plurality of data lines, means for transferring data between said data lines and either a selected one of the storage locations in said second plurality or a selected one of the storage locations in said first plurality having a derived access address, a plurality of address lines for receiving thereon memory addresses having a plurality of bits therein, some of said memory addresses being contained in respective groups with all of the memory addresses in each of said groups being associated with the same respective one of the storage locations in said second plurality, others of said memory addresses being contained in a special set with each memory address therein being associated with a respective one of the locations in said second plurality,at least some of the storage locations in said second plurality containing the access addresses of storage locationsin said first plurality, first means for deriving from a received memory address which is contained in said special set the access address of a selected storage location in said second plurality for use by said data transferring means, and second means for deriving from a received memory address which is contained in one of said groups the access address of a selected storage location in said first plurality for use by said data transferring means by performing a predetermined operation on the access address contained in the associated storage location in said second plurality in accordance with the values ofat least some of the bits in the received memory address.
  40. 40
    41. A memory in accordance with claim 40 wherein responsive to the receipt of at least one of the memory addresses in each of said groups said second deriving means uses the access address contained in the associated storage location in said second plurality as the access address of a storage location in said first plurality.
  41. 41
    42. A memory in accordance with claim 41 further ineluding means for modifying by a predetermined amount the access address used by said data transferring means and for storin^~ the modified access address in its previous storage location in said second plurality.
  42. 42
    43. A memory in accordance with claim 42 wherein responsive to the receipt of at least one of the memory addresses in each of said groups said second deriving means increments the access address contained in the associated storage location in said second plurality by 1.
  43. 43
    44. A memory in accordance with claim 42 wherein responsive to the receipt of at least one of the memory addresses in each of said groups said second deriving means increments the access address contained in the associated storage location in said second plurality by 2.
  44. 44
    45. A memory in accordance with claim 40 wherein responsive to the receipt of at least one of the memory addresses in each of said groups said second deriving means increments the access address contained in the associated storage location in said second plurality by 1.
  45. 45
    46. x A memory in accordance with claim 40 wherein responsive to the receipt of at least one of the memory addresses in each of said groups said second deriving means increments the access address contained in the associated storage location in said second plurality by 2.
  46. 46
    47. A memory in accordance with claim 40 wherein responsive to the receipt of at least one of the memory addresses in each of said groups said second deriving means retrieves the access address contained in the associated storage location in said second plurality and modifies the retrieved access address by a predetermined amount to derive an access address of a storage location in said first plurality.
  47. 47
    48. A memory in accordance with claim 47 wherein( the access address which is modified is thereafter used by said data transferring means, and further including means for storing the modified address in its previous storage location in said second plurality.
  48. 48
    49. A memory in accordance with claim 48 wherein responsive to the receipt of at least one of the memory addresses in each of said groups the retrieved access address contained in the associated storage location in said second plurality is modified by decrementing it by 1.
  49. 49
    50. A memory in accordance with claim 48 wherein responsive to the receipt of at least one of the memory addresses in each of said groups the retrieved access address contained in the associated storage location in said second plurality is modified by decrementing it by 2.
  50. 50
    51. A memory in accordance with claim 40 wherein responsive to the receipt of at least one of the memory addresses.in each of said groups said second deriving means retrieves the access address from the associated storage location in said second plurality and modifies it by a predetermined amount to derive the access address of a storage location in said first plurality, the access address in said associated storage location in said second plurality being left unchanged.
  51. 51
    52. A memory in accordance with claim 51 wherein responsive to the receipt of at least one of the memory addresses in each of said groups the access address which is retrieved and modified is decremented by 1.
  52. 52
    53. A memory in accordance with claim 51 wherein responsive to the receipt of at least one of the memory addresses in each of said groups the access address which is retrieved and modified is decremented by 2.
  53. 53
    54. A memory in accordance with claim 40 wherein responsive to the receipt of at least one of the memory addresses in each of said groups said second deriving means decrements the access address contained in the associated storage location in said second plurality by 1.
  54. 54
    55. A memory in accorance with claim 40 wherein responsive to the receipt of at least one of the memory addresses in each of said groups said second deriving means decrements the access address contained in the associated storage location in said second plurality by 2.
  55. 55
    56. A memory in accordance with claim 40 further including means for setting the memory addresses contained in said respective groups.
  56. 56
    57. A memory in accordance with claim 40 wherein memory addresses and data are received on said plurality of address and data lines from two sources, and further ineluding means for delaying a data transfer operation in accordance with the memory address and data received from one source until after the completion of a data transfer operation which is in progress in accordance with the memory address and data received from the other source.
  57. 57
    58. A memory for operating in a stacking mode comprising a plurality of storage locations each having a respective access address, a plurality of data lines, means for transferring data between said data lines and a selected one of said storage locations having a derived access address. a plurality of address lines for receiving thereon memory addresses having a plurality of bits therein, a plurality of pointer means each for representing the access address of a storage location, means for storing access addresses in said plurality of pointer means, a group of memory addresses being associated with each of said pointer means, and means for deriving from a received memory address the access address of a selected storage location for use by said data transferring means by performing a predetermined operation on the access address represented by the associated pointer means in accordance with the values of at least some of the bits in the received memory address.
  58. 58
    59. A memory in accordance with claim 58 wherein responsive to the receipt of at least one of the memory addresses in each of the groups said deriving means uses the access address represented by the associated pointer means as the access address of a storage location.
  59. 59
    60. A memory in accordance with Claim 59 further including means for modifying by a predetermined amount the access address used by said data transferring means and storing the modified access address in its previous pointer means.
  60. 60
    61. A memory in accordance with claim 60 wherein responsive to the receipt of at least one of the memory ad— dresses in each of said groups said deriving means increments the access address represented by the associated pointer means by 1.
  61. 61
    62. A memory in accordance with claim 60 wherein responsive to the receipt of at least one of the memory addresses in each of said groups said deriving means increments the access address represented by the associated ־166pointer means by 2,
  62. 62
    63. A memory in accordance with claim 58 wherein responsive to the receipt of at least one of the memory addresses in each of the groups said deriving means increments the access address represented by the associated pointer means by 1.
  63. 63
    64. A memory in accordance with claim 58 wherein responsive to the receipt of at least one of the memory addresses in each of the groups said deriving means increments the access address represented by the associated pointer means by 2.
  64. 64
    65. A memory in accordance with claim. 58 wherein responsive to the receipt of at least one of the memory addresses in each of the groups said deriving means modifies by a predetermined amount the access address represented by the associated pointer means to derive an access address of a storage location.
  65. 65
    66. A memory in accordance with claim 65 wherein the access address which is modified is used by said data transferring means, and further including means for storing the modified access address in its previous pointer means.
  66. 66
    67. A memory in accordance with claim 66 wherein responsive to the receipt of at least one of the memory addresses in each of said groups the access address which is modified is decremented by 1.
  67. 67
    68. A memory in accordance with claim 66 wherein responsive to the receipt of at least one of the memory addresses in each of said groups the access address which is modified is decremented by 2.
  68. 68
    69. A memory in accordance with claim 65 wherein responsive to the receipt of at least one of the memory addresses in each of said groups the access address which is modified and used by said data transferring means is left unchanged in its pointer means.
  69. 69
    70. A memory in accordance with claim 69 wherein responsive to the receipt of at least one of the memory addresses in each of said groups the access address which is modified and used by said data transferring means is decremented by 1.
  70. 70
    71. A memory in accordance with claim 69 wherein responsive to the receipt of at least one of the memory addresses in each of said groups the access address which is modified and used by said data transferring means is decremented by 2.
  71. 71
    72. A memory in accordance with claim 58 wherein responsive to the receipt of at least one of the memory addresses in each of the groups said deriving means de- I crements the access address represented by the associated pointer means by 1.
  72. 72
    73. A memory in accordance with claim 58 wherein responsive to the receipt of at least one of the memory addresses in each of the groups said deriving means decrements the access address represented by the associated pointer means by 2.
  73. 73
    74. A memory in accordance with claim 58 further including means for setting the memory addresses contained in the groups associated with said pointer means. Λ s
  74. 74
    75. A memory in accordance with, claim 58 wherein memory addresses and data are received on said pluralty of address and data lines from two sources, and further including means for delaying a data transfer operation in accordance with the memory address and data received from one source until after the completion of a data transfer operation which is in progress in accordance with the memory address and data received from the other t source.
  75. 75
    76. A memory in accordance with claim 58 further including a plurality of storage means, and means responsive to the receipt of a predetermined memory address on said address lines for controlling the transfer of data from said data lines to said plurality of storage means. ., *. . 77. A memory in accordance with claim 76 further including means responsive to data stored in said plurality of storage means for selectively enabling and disabling the operation of said deriving means. / 7§. A memory in accordance with claim 76 further including means responsive to data stored in said plurality of storage means for selecting the memory addresses which are contained in at least one of said groups.
  76. 76
    79. A memory in accordance with claim 58 further including means for selectively changing said predetermined operation performed by said deriving means responsive to a received memory address being contained in at least one of said groups.
Independent claims76