Abstract:
Errors in code words transmitted over a communication path are detected and corrected by optimum apparatus at transmitting and receiving ends of the path. Illustratively, a 72 bit parallel code word, comprising a 64 bit information portion and an eight bit check portion is communicated between a transmitter and a receiver. A check bit generator at the transmitter generates eight check bits as a function of the 64 information bits, each check bit being associated with a number of information bits (a check bit and its associated information bits forming a ''''code group''''). The information bits and check bits are communicated to the receiver where an error detector compares check bits generated from the received information bits with the received check bits and an error locator analyzes any mismatch to determine the location of an error. An error corrector then corrects any information or check bit which is identified as incorrect by the error locator. The check bit generator at the transmitter supplies signals, at outputs corresponding to the check bits, by Exclusive ORing the information bits in its code group, in accordance with a single error correction and double error detection (SEC/DED) code. The error detector examines each code group separately by Exclusive ORing both its information and check bits in accordance with the same code and supplies syndrome signals manifesting the result of the examination. Error detection and correction are possible because, upon transmission, each code group contains an even number of bits (even parity), only one of which is a check bit, and each bit of each code word is a member of an odd number of code groups. At the receiver, a single correctable error is assumed to have occurred if an odd number of received code groups contains an odd number of bits (odd parity) and an uncorrectable double error is assumed to have occurred if an even number of code groups have odd parity. Single errors are then located and corrected as an AND function of the odd parity code groups. The check bit generator, error detector and error locator are designed in accordance with a technique for using a minimum number of components and a uniform number of components in each parallel signal path. Among the design goals are: each unique code group should substantially contain the same number of bits, each information bit must be a member of an odd number of code groups greater than one, and each check bit must be a member of a different code group. The number of code groups to which each information bit is assigned is determined by first exhausting the lowest odd number of code group combinations available before going to the next odd number of combinations.
Abstract:
In a storage array wherein several locations are simultaneously accessed, each location includes a circuit settable to one of two conditions by signals on lines defining its position. Defining the storage position by three lines, ''''horizontal,'''' ''''vertical'''' and ''''diagonal,'''' each circuit may be selected by activating its diagonal line and either the horizontal or vertical line for that circuit. The storage cell is a solid-stage flip-flop with two cross-coupled active devices and additional active device for each of the three driving lines. Connections to each circuit through selected ones of the vertical and horizontal lines communicate information on the inactivated line.
Abstract:
A storage cell especially suited for use in an array of cells wherein cells may be simultaneously accessed by a plurality of different addressing systems for reading and writing of information via independent sensing and bit driving devices. A latch, constructed from field effect transistors (FET) in a known manner, is selected for accessing by driver lines, retaining and indicating information in accordance with signals supplied on a sense bit driver line pair. The number of drivers required to select the cell and the number of sense bit driver line pairs are increased by providing additional FET devices to gate, in accordance with selected driver signals, information between the latch and sense bit driver line pairs selected in accordance with the relative locations of information simultaneously accessed in the array.
Abstract:
In a data-processing system, a central processing unit and a group of input/output units simultaneously read information from, and write information into, several locations of a single storage unit. The storage is provided with two storage address registers and two data registers. Each storage address register specifies a location in storage with which information in the associated data register is communicated. The storage is an array of storage elements each of which is selected by driving two out of three wires associated with that storage element. Characterizing the three wires as X, Y and Z, each location is accessed by driving the Z-wire for that location and one of the X- or Y-wires. A magnetic core, capable of assuming one of two states in accordance with half select information on two of three wires threaded through it, is disclosed as an example of a storage element. Sense amplifiers, connected to the X- and Y-wires, receive stored information from the undriven wire.
Abstract:
This invention provides coding circuits for storing words in a memory in an error correction code and for operating with an associated system in which data is provided with error detecting parity check bits. The coding circuits include means for locating an incorrect bit of a memory word and for updating the error correction bits to correspond to the corrected word.