This specification describes an associative memory decoder for a memory system in which the units in the memory system are reconfigurable both in size and in number. The decoder is designed to take an address for that memory system and address memory space in the memory system irrespective of the amount of storage in the system so that the decoder has to change as memory capacity is added or subtracted from the memory system.
An automatically variable memory interleaving system which provides different interleaving factors for particular groups of memory modules dependent upon the number of operable modules present in the system. In a particular preferred embodiment, the interleaving factor is determined for the module containing the address corresponding to the applied memory address, and this interleaving factor is then used to select particular bits of the applied memory address for determining the module to be enabled and the module address.
An improved associative memory employs plural separately addressable memories, e.g., random access memories (RAMs), which may be written into, or read from in conventional fashion. In a recognition mode, information is sequentially read from differing memory locations, and compared with an operand supplied on a data bus by a central processing unit (CPU), comparator apparatus being common for an array of storage locations. The comparison results, determined in accordance with a CPU-specified criterion, are then communicated back to the processor.
An improved associative memory employs plural separately addressable memories, e.g., random access memories (RAMs), which may be written into, or read from in conventional fashion. In a recognition mode, information is read from differing memory locations, and compared with an operand supplied on a data bus by a central processing unit (CPU), comparator apparatus being common for an array of storage locations. The comparison results, determined in accordance with a CPU-specified criterion, are then communicated back to the processor.
A storage configuration table (BCA) has a plurality of register entries which are loaded with signals that assign absolute addresses to the physical locations in a computer system's main storage, which may have plural basic storage modules (BSMs). Each BCA entry contains plural fields which relate a range of absolute addresses to a BSM section, including (1) a port select field which assigns a BSM port, (2) a BSM select field which assigns one of plural BSMs connected to the port, (3) a BSM section modified field to change the BSM section assigned to the range of absolute addresses, and (4) a restricted system area (SA) range select field that can assign a SA to a respective BSM section, and specify the SA size. Each processor may restrict SA accesses to microprogram controlled storage operations under control of an authorization field in a storage request. The SA can flexibly be located in any one or more BSMs. A processor storage request provides selected fields to a BCA indexing circuit to locate the BCA entry which will indicate the assignment of physical storage to the absolute address of the request. The BCA indexing circuit includes an interleavemode trigger which selects among plural fields in the request address in order to control BSM switching in a continuous absolute address sequence of requests. The two trigger settings control interleaved switching of BSM sections whenever requests address a different one megabyte BSM section, or a different two kilobyte storage block.
Because correct configuration data is essential to the operation of any RAID system, and because multiple copies of the configuration data are kept, not only in the RAID controller itself, but also in each disk drive unit in the configuration, it is imperative that the various copies of the configuration data do not become "out of synchronization", which means that one or more copies of the configuration data are different from one or more other copies of the configuration data. To maintain synchronization of all copies of the configuration data, the current invention compares the configuration data stored in the RAID controllers' NVRAM to that of the current system, and records any new, non-responding, repositioned or unidentified storage devices in a change list. The identities and the attachment points of any storage devices in the change list are then displayed to the user, and various options for correcting the lack of synchronization are provided by enabling one or more function keys that may be selected by the user. One such function key, an "accept change" key, causes the configuration data to be modified by changing the current operational state of any non-responding storage device. A "configuration adjustment" key, when selected by the user, causes the configuration data to be modified to reflect any changes in the attachments points of any repositioned storage deices. An "import configuration" key causes the configuration data to be changed to correspond to that of an unidentified storage device. And a "retry" key gives the user an opportunity to rearrange the system and then re-compares the configuration data in the controller to the current system configuration. When the system is operating in un-attended mode, means are disclosed to automatically perform the "accept change", "configuration adjustment" and "import configuration" functions in priority order so long as the "retry" key has not been enabled. The retry key implies attended operation.