Abstract:
A method for encoding information in a codeword which may be subjected to no more than a predetermined degree of corruption, and then, without fully decoding a corrupted version of the codeword, determining from the corrupted codeword whether the information was used in encoding the codeword; the information is encoded as a first preliminary code sequence in accordance with a first code; the codeword is formed by combining the first preliminary code sequence with a second preliminary code sequence generated in accordance with a second code; the first preliminary code sequence is stripped from the corrupted version of the code word to derive a test sequence comprising a corrupted version of possibly the second preliminary code sequence; the test sequence is decoded in accordance with the second code; and a determination is made, based on the decoding, whether the information was used in encoding the codeword. In another aspect, bad sector, servo correction, and sector address values are encoded for storage in a header associated with a sector of storage on a storage medium by encoding the address value with leading zero symbols in accordance with a code having a first rate, encoding the bad sector and servo correction values in a systematic code having a second rate, and combining the first and second preliminary code sequences to generate a codeword of the first code such that the bad sector and servo correction values appear explicitly in the codeword but the sector address value does not appear explicitly in the codeword.
Abstract:
A method and apparatus optimize the performance of a multiple cache system computer (Fig. 1) having separate caches for data (60) and instructions (50) in which all writes to the data cache are monitored. If an address tag of the item being written matches one of a list of tags (110) representing valid instructions currently stored in the instruction cache (50), a flag (120) called I-FLUSH-ON-REI is set. Until this flag (120) is set, REI (Return from Exception or Interrupt) instruction will not flush the instruction cache (50). When the flag (120) is set, an REI command will also flush or clear the instruction cache (50). Thus, the instruction cache (50) is only flushed when an address referenced by an instruction is modified, so as to reduce the number of times the cache is flushed and optimize the computer's speed of operation.
Abstract:
A bipolar random access memory (30) having no write recovery time. During a data write operation, while the memory state of the memory cell (36) is being shifted, a data bypass circuit (38) sets a sense latch (72) in the sense amplifier (32) to store the new state to which the memory cell (36) is being set. To prevent the sense latch (72) from being shifted by transient write recovery currents charging bit line parasitic capacitances (86 and 87) following the data write operation, a read/write transmission circuit (34) isolates the sense amplifier (32) from the bit lines (41 and 42), diverts current from the sense amplifier (32) to a source of high voltage to charge the parasitic capacitance (86 and 87), and then realigns the sense amplifier (32) to the bit lines (41 and 42).
Abstract:
The magnetic medium includes a soft magnetic layer separated from the hard magnetic recording layer by a nonmagnetic buffer layer. Virtual magnetic images induced in the soft magnetic layer reduce off-track magnetization seen by the recording head. Thus, interference caused by tracks adjacent to the track being read is reduced.
Abstract:
A vector register file (35) includes a plurality of read ports (51-55) and write ports (41-43). A control logic (60) is coupled to the vector register file (35) for simultaneously writing through at least two write ports and simultaneously reading from at least two read ports. In addition, a barber pole technique for storing words from a logical vector register circuit accessed as a first number of register subarrays (99) into a second number of memory banks (500-515) is provided to minimize the vector register access conflicts.
Abstract:
A bus adapter connecting a high-speed pended bus (25) to a slower speed non-pended bus (45) includes a first module (69) functioning as a node of the pended bus and a second module (61) functioning as a node of the non-pended bus. An interconnect bus (611) extends between the two modules. Control signals on the interconnect bus generated by the first module comprise status signals having an indefinite assertion duration, and are deasserted only in response to control signals on the interconnect bus generated by the second module, which have a finite duration. Control signals on the interconnect bus generated by the first module are synchronized by a dual-rank synchronizer controlled by two phases of a multiphase clock signal derived from the clock signal of the non-pended bus. Control signals on the interconnect bus generated by the second module are synchronized by a dual-rank synchronizer controlled by two phases of a multiphase clock signal derived from the pended bus clock signal.
Abstract:
An apparatus and method for drilling holes in printed wiring boards formed of a plurality materials wherein two or more laser beams are combined along a common path and preferably focussed on the desired drilling site. The wavelengths of the lasers are selected such that they are each rapidly absorbed and therefor vaporized at least one of said materials. The laser beams are preferably focussed by a beam combining mirror. The lasers can be controlled to provide simultaneous or sequential emission of the laser beams.
Abstract:
Error locations and error values are simultaneously found by inserting a first value of x, xa1 (22) into the expressions delta even(x) (24c) and delta odd(x) (24b) and also into an error value polynomial PHI (x) (24a). Next, while the error locator equation is evaluated at the calculated values of delta even(xa1) and delta odd(xa1) to determine if xa1 is a solution (26b), the now known values of the error evaluator polynomial PHI (xa1) and the expression delta odd(xa1) are substituted into an error value formula (26a). Thus as soon as an error location is found, the error can then be quickly corrected (30). Next, the values are calculated for another value of x, xa2 (34b). The newly evaluated expressions are then substituted into the error locator equation and the error value equation formula to determine if xa2 is a solution. If xa2 is a solution, the error value va2 which was simultaneously calculated for xa2 is used to correct the error (20). If xa2 is not a solution, the calculated error value is ignored (28). Then, the expressions are similarly evaluated at the other values of x.
Abstract:
An encoder (10) encodes a sector of data to produce ECC symbols (28) using a GF(28) code by first appending one or more pseudo data bytes to the sector data bytes. The data string of sector data bytes and pseudo data bytes are then encoded (10) to produce a desired number of 10-bit ECC symbols (28). Two selected bits from each ECC symbol are compared (30) to a known bit pattern (39). If the selected bits match the pattern, the bits are truncated and the remaining 8-bit symbols are concatenated with the data string to form a codeword (36). The codeword bytes can later be decoded, and any error correction performed, by appending the bit pattern as necessary. If the selected bits do not match the pattern, the pseudo data bytes are modified (34) such that encoding the data bytes and the modified pseudo data bytes produce 10-bit ECC symbols with the selected bits matching the bit pattern. The selected bits are then truncated and the remaining 8-bit symbols are concatenated with the data string to form the codeword.
Abstract:
Bus interface apparatus is provided to drive a high speed bus (67) with two nonoverlapping clock signals (C34/C61). The apparatus takes advantage of the inherent bus capacitance which will temporarily hold data signals placed on the bus by using bus interface circuitry having high input and output impedances. That circuitry can thus be activated by coincident signals (C34, C61).