Patents by Inventor Kinhing Paul Tsang

Kinhing Paul Tsang has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8352826
    Abstract: A system includes an error correction encoder that encodes data and produces parity bits, and a parity bit processor that disperses the parity bits across the data, placing respective i-bit parity sub-blocks between selected multiple-bit data sub-blocks. The system also modifies one or more of the bits in predetermined positions in respective data sub-blocks based on the bits of the parity sub-blocks that precede them, such that the precoding does not sign invert the data sub-blocks.
    Type: Grant
    Filed: August 5, 2008
    Date of Patent: January 8, 2013
    Assignee: Seagate Technology LLC
    Inventors: Cenk Argon, Kinhing Paul Tsang
  • Patent number: 7741980
    Abstract: A system includes a precoder-aware running digital sum (RDS) encoder that encodes user data as w-bit sub-blocks, to produce an encoded data block that meets block RDS constraints and consists of encoded data sub-blocks that meet sub-block RDS constraints. The sub-block constraints include the data sub-blocks having the same magnitude RDS before and after precoding. The encoder data block is further encoded using an error correction code to produce parity bits, and the parity bits are dispersed, as i-bit parity sub-blocks, between selected data sub-blocks to form a code word. The code word is then precoded to produce a precoded bit sequence for transmission over a channel. Sub-block run length limit (“RLL”) constraints may also be included, such that the encoded data block meets both RLL and RDS, with the encoded data sub-blocks meeting respective RLL and RDS sub-block constraints.
    Type: Grant
    Filed: September 3, 2008
    Date of Patent: June 22, 2010
    Assignee: Seagate Technology LLC
    Inventors: Kinhing Paul Tsang, Cenk Argon
  • Patent number: 7683810
    Abstract: In accordance with one or more embodiments data may be encoded into a code word that meets run length constraints and has a reduced running digital sum by encoding (N?y)?1 data bits and y flag bits into m first n-bit patterns that form a first N-bit code word, producing a second N-bit code word by encoding the (N?y)?1 data bits and the y flag bits into m second n-bit patterns in which corresponding first and second n-bit patterns combine to meet a first predetermined running digital sum threshold, and selecting the code word that satisfies selection criteria. The selection criteria may, for example, be the word with the fewest transitions, the word with the smallest running digital sum, and so forth.
    Type: Grant
    Filed: April 23, 2008
    Date of Patent: March 23, 2010
    Assignee: Seagate Technology LLC
    Inventor: Kinhing Paul Tsang
  • Publication number: 20100052953
    Abstract: A system includes a precoder-aware running digital sum (RDS) encoder that encodes user data as w-bit sub-blocks, to produce an encoded data block that meets block RDS constraints and consists of encoded data sub-blocks that meet sub-block RDS constraints. The sub-block constraints include the data sub-blocks having the same magnitude RDS before and after precoding. The encoder data block is further encoded using an error correction code to produce parity bits, and the parity bits are dispersed, as i-bit parity sub-blocks, between selected data sub-blocks to form a code word. The code word is then precoded to produce a precoded bit sequence for transmission over a channel. Sub-block run length limit (“RLL”) constraints may also be included, such that the encoded data block meets both RLL and RDS, with the encoded data sub-blocks meeting respective RLL and RDS sub-block constraints.
    Type: Application
    Filed: September 3, 2008
    Publication date: March 4, 2010
    Inventors: Kinhing Paul Tsang, Cenk Argon
  • Publication number: 20100037125
    Abstract: A system includes an error correction encoder that encodes data and produces parity bits, and a parity bit processor that disperses the parity bits across the data, placing respective i-bit parity sub-blocks between selected multiple-bit data sub-blocks. The system also modifies one or more of the bits in predetermined positions in respective data sub-blocks based on the bits of the parity sub-blocks that precede them, such that the precoding does not sign invert the data sub-blocks.
    Type: Application
    Filed: August 5, 2008
    Publication date: February 11, 2010
    Inventors: Cenk Argon, Kinhing Paul Tsang
  • Publication number: 20090267811
    Abstract: In accordance with one or more embodiments data may be encoded into a code word that meets run length constraints and has a reduced running digital sum by encoding (N-y)?1 data bits and y flag bits into m first n-bit patterns that form a first N-bit code word, producing a second N-bit code word by encoding the (N-y)?1 data bits and the y flag bits into m second n-bit patterns in which corresponding first and second n-bit patterns combine to meet a first predetermined running digital sum threshold, and selecting the code word that satisfies selection criteria. The selection criteria may, for example, be the word with the fewest transitions, the word with the smallest running digital sum, and so forth.
    Type: Application
    Filed: April 23, 2008
    Publication date: October 29, 2009
    Inventor: Kinhing Paul Tsang
  • Patent number: 7088268
    Abstract: A codeword for use in a communication channel is provided. A first segment of the codeword includes a plurality of bits having a running digital sum (RDS) and a second segment includes a plurality of bits based on the RDS of the first segment.
    Type: Grant
    Filed: November 1, 2004
    Date of Patent: August 8, 2006
    Assignee: Seagate Technology LLC
    Inventor: Kinhing Paul Tsang
  • Patent number: 6867713
    Abstract: A method of encoding digital information in a system is provided. The method includes receiving a sequence of user-bits and calculating a running digital sum (RDS) of the system. Also, a code word is generated based on the sequence of user bits and the RDS of the system to maintain the RDS of the system calculated with the code word to within a selected range. In one embodiment, the sequence of user bits is 19 bits and the code word is 20 bits.
    Type: Grant
    Filed: March 24, 2003
    Date of Patent: March 15, 2005
    Assignee: Seagate Technology LLC
    Inventor: Kinhing Paul Tsang
  • Patent number: 6839004
    Abstract: Methods of encoding and decoding, as well as an encoding system and a digital communications system are provided for encoding data words into code words and decoding code words into data words. The data words are encoded according to a run-length-limited (RLL) code of “k” constraint, the encoding producing u-bit non-zero code words. The “k” constraint can be increased to a higher value by extending the u-bit non-zero code words to generate q-bit non-zero code words.
    Type: Grant
    Filed: November 15, 2002
    Date of Patent: January 4, 2005
    Assignee: Seagate Technology LLC
    Inventor: Kinhing Paul Tsang
  • Publication number: 20040066318
    Abstract: A method of encoding digital information in a system is provided. The method includes receiving a sequence of user-bits and calculating a running digital sum (RDS) of the system. Also, a code word is generated based on the sequence of user bits and the RDS of the system to maintain the RDS of the system calculated with the code word to within a selected range. In one embodiment, the sequence of user bits is 19 bits and the code word is 20 bits.
    Type: Application
    Filed: March 24, 2003
    Publication date: April 8, 2004
    Inventor: Kinhing Paul Tsang
  • Publication number: 20030102990
    Abstract: Methods of encoding and decoding, as well as an encoding system and a digital communications system are provided for encoding data words into code words and decoding code words into data words. The data words are encoded according to a run-length-limited (RLL) code of “k” constraint, the encoding producing u-bit non-zero code words. The “k” constraint can be increased to a higher value by extending the u-bit non-zero code words to generate q-bit non-zero code words.
    Type: Application
    Filed: November 15, 2002
    Publication date: June 5, 2003
    Inventor: Kinhing Paul Tsang
  • Patent number: 6467060
    Abstract: Data integrity is increased on mass-storage devices through a scheme whereby, a frame-based cyclic redundancy code (CRC) for each sector is recorded. A frame-based CRC is generated from the CRCs of the frames that compose a sector of data. In recording data, a CRC is generated from each frame, later, a master CRC is generated from the frame CRCs, then sector and master CRC are recorded on the mass-storage device medium. In retrieving data, the sector composed of frames and a master CRC are read, a plurality of CRCs are generated from each of the frames, a second master CRC is generated from the frame CRCs, and the master CRCs are compared to determine data integrity. In another embodiment, an input/output error detection and correction checksum (IOEDC), an error correction code (ECC) and a CRC are generated from a sector of data, and the IOEDC, ECC and CRC are stored on disc with the data sector.
    Type: Grant
    Filed: June 25, 1999
    Date of Patent: October 15, 2002
    Assignee: Seagate Technology LLC
    Inventors: Krishna Rameshwara Malakapalli, Kinhing Paul Tsang
  • Patent number: 6198582
    Abstract: An encoder and a method of encoding successive data words into successive code words for transmission through a channel is provided. The encoder divides each successive data word into first and second portions. The first portion of each successive data word is mapped into a corresponding first code pattern and a corresponding state variable according to a selected code. A second portion of each successive data word is mapped into a corresponding second code pattern that is associated with the state variable, according to the selected code. The first and second code patterns are combined to form each of the successive code words. The successive code words are concatenated to form an encoded bit stream having a plurality of bit positions.
    Type: Grant
    Filed: June 10, 1999
    Date of Patent: March 6, 2001
    Assignee: Seagate Technology LLC
    Inventors: Kinhing Paul Tsang, Bernardo Rub
  • Patent number: 5781133
    Abstract: An apparatus encodes data blocks into code blocks, each code block containing more symbols than its respective data block. The apparatus includes a data block latch for receiving individual data blocks and for dividing each data block into two sub-blocks. An encoder receives one of the data sub-blocks and encodes the first data sub-block as a code sub-block. An interleaver, coupled to the encoder and the data block latch, combines the code sub-block with the second data sub-block to produce a code block, such that when the code blocks are concatenated with each other to produce a string of code symbols no more than five consecutive occurrences of a particular code symbol are present in the string of code symbols.
    Type: Grant
    Filed: January 30, 1997
    Date of Patent: July 14, 1998
    Assignee: Seagate Technology, Inc.
    Inventor: Kinhing Paul Tsang