A binary DC balanced code and an encoder circuit for effecting same is described, which translates an 8 bit byte of information into 10 binary digits for transmission over electromagnetic or optical transmission lines subject to timing and low frequency constraints. The significance of this code is that it combines a low circuit count for implementation with excellent performance near the theoretical limits, when measured with the commonly accepted criteria. The 8B/10B coder is partitioned into a 5B/6B plus a 3B/4B coder. The input code points are assigned to the output code points so the number of bit changes required for translation is minimized and can be grouped into a few classes. |
Citations|
| US3577142 | Feb 28, 1969 | May 4, 1971 | | LOGIC I | | US3594560 | Jan 3, 1969 | Jul 20, 1971 | | SERIAL TO | | US3798635 | May 5, 1972 | Mar 19, 1974 | | CHANNEL MONITOR FOR COMPRESSED-CODE | | US4309694 | Mar 27, 1980 | Jan 5, 1982 | Bell Telephone Laboratories, Incorporated | Zero disparity coding system |
Referenced by|
| US4665517 | Dec 30, 1983 | May 12, 1987 | International Business Machines Corporation | Method of coding to minimize delay at a communication node | | US4760378 | Apr 3, 1985 | Jul 26, 1988 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for converting a run length limited code | | US4811361 | Oct 29, 1987 | Mar 7, 1989 | Bull, S.A. | Method and apparatus for transmission of digital data | | US4833470 | Jul 14, 1987 | May 23, 1989 | Matsushita Electric Industrial Co., Ltd. | Code conversion apparatus | | US4859815 | Dec 19, 1988 | Aug 22, 1989 | International Business Machines Corporation | Serial link transparent mode disparity control | | US4881076 | Dec 1, 1987 | Nov 14, 1989 | International Business Machines Corporation | Encoding for pit-per-transition optical data recording | | US4975916 | Jul 26, 1988 | Dec 4, 1990 | International Business Machines Corporation | Character snychronization | | US5025256 | Apr 17, 1990 | Jun 18, 1991 | International Computers Limited | Data transmission code | | US5048062 | Oct 30, 1989 | Sep 10, 1991 | International Business Machines Corp. | Transmitting commands over a serial link | | US5177482 | Jul 12, 1991 | Jan 5, 1993 | International Business Machines Incorporated | RLL encoder and decoder with pipelined plural byte processing | | US5245339 | Feb 19, 1992 | Sep 14, 1993 | International Business Machines Corporation | Flexible encoding method and architecture for high speed data transmission and storage | | US5301196 | Mar 16, 1992 | Apr 5, 1994 | International Business Machines Corporation | Half-speed clock recovery and demultiplexer circuit | | US5304996 | Feb 21, 1992 | Apr 19, 1994 | Advanced Micro Devices, Inc. | 8B/10B encoder providing one of pair of noncomplementary, opposite disparity codes responsive to running disparity and selected commands | | US5327127 | Apr 17, 1992 | Jul 5, 1994 | Inmos Limited | Message encoding which utilizes control codes and data codes | | US5333271 | Mar 30, 1993 | Jul 26, 1994 | International Business Machines Corporation | Methods and apparatus for performing data chaining in data streaming mode through a channel extender | | US5387911 | Feb 21, 1992 | Feb 7, 1995 | | Method and apparatus for transmitting and receiving both 8B/10B code and 10B/12B code in a switchable 8B/10B transmitter and receiver | | US5392168 | Aug 26, 1993 | Feb 21, 1995 | Matsushita Electric Industrial Co., Ltd. | Method of recording digital video and audio data | | US5420583 | May 27, 1994 | May 30, 1995 | Cray Research, Inc. | Fiber optic channel extender interface method and apparatus | | US5463762 | Dec 30, 1993 | Oct 31, 1995 | Unisys Corporation | I/O subsystem with header and error detection code generation and checking | | US5481555 | Mar 7, 1994 | Jan 2, 1996 | Digital Equipment Corporation | System and method for error detection and reducing simultaneous switching noise | | US5517519 | Jun 14, 1993 | May 14, 1996 | International Business Machines Corporation | Apparatus for repowering and monitoring serial links | | US5548623 | Jun 1, 1993 | Aug 20, 1996 | International Business Machines Corporation | Null words for pacing serial links to driver and receiver speeds | | US5553067 | Oct 7, 1994 | Sep 3, 1996 | SGS-Thomson Microelectronics S.r.l. | Generation of checking data | | US5553302 | Dec 30, 1993 | Sep 3, 1996 | Unisys Corporation | Serial I/O channel having independent and asynchronous facilities with sequence recognition, frame recognition, and frame receiving mechanism for receiving control and user defined data | | US5598442 | Jun 17, 1994 | Jan 28, 1997 | International Business Machines Corporation | Self-timed parallel inter-system data communication channel | | US5625644 | Dec 20, 1991 | Apr 29, 1997 | | DC balanced 4B/8B binary block code for digital data communications | | US5635933 | Jun 30, 1995 | Jun 3, 1997 | Quantum Corporation | Rate 16/17 (d=0,G=6/I=7) modulation code for a magnetic recording channel | | US5644569 | Feb 8, 1996 | Jul 1, 1997 | SGS-Thomson Microelectronics Limited | Transmission of messages | | US5648776 | Apr 30, 1993 | Jul 15, 1997 | International Business Machines Corporation | Serial-to-parallel converter using alternating latches and interleaving techniques | | US5651033 | Jun 7, 1995 | Jul 22, 1997 | International Business Machines Corporation | Inter-system data communication channel comprised of parallel electrical conductors that simulates the performance of a bit serial optical communications link | | US5663724 | Mar 28, 1996 | Sep 2, 1997 | Seagate Technology, Inc. | 16B/20B encoder | | US5692021 | Jul 25, 1996 | Nov 25, 1997 | SGS-Thomson Microelectronics Limited | Encoding digital data | | US5699062 | Feb 1, 1995 | Dec 16, 1997 | International Business Machines Corporation | Transmission code having local parity | | US5740186 | Jun 13, 1996 | Apr 14, 1998 | International Business Machines Corporation | Apparatus and method for error correction based on transmission code violations and parity | | US5757800 | Dec 26, 1995 | May 26, 1998 | NEC Corporation | Time division multiplexing transmitter and decoding circuit used for said transmitter and method for time division multiplexing transmission | | US5781038 | Feb 5, 1996 | Jul 14, 1998 | LSI Logic Corporation | High speed phase locked loop test method and means | | US5781544 | Jan 17, 1996 | Jul 14, 1998 | LSI Logic Corporation | Method for interleaving network traffic over serial lines | | US5784387 | Oct 31, 1994 | Jul 21, 1998 | International Business Machines Corporation | Method for detecting start-of-frame, end of frame and idle words in a data stream | | US5787114 | Jan 17, 1996 | Jul 28, 1998 | LSI Logic Corporation | Loop-back test system and method | | US5790563 | Jun 23, 1997 | Aug 4, 1998 | LSI Logic Corp. | Self test of core with unpredictable latency | | US5802080 | Mar 28, 1996 | Sep 1, 1998 | Seagate Technology, Inc. | CRC checking using a CRC generator in a multi-port design | | US5805087 | May 1, 1997 | Sep 8, 1998 | STMicroelectronics, Ltd. | Encoding scheme | | US5825824 | Mar 27, 1996 | Oct 20, 1998 | Silicon Image, Inc. | DC-balanced and transition-controlled encoding method and apparatus | | US5832310 | Feb 4, 1997 | Nov 3, 1998 | Unisys Corporation | Serial I/O channel having dependent and synchronous sources of control data and user defined data | | US5896426 | Feb 5, 1996 | Apr 20, 1999 | LSI Logic Corporation | Programmable synchronization character | | US5940018 | Sep 30, 1997 | Aug 17, 1999 | Electonics and Telecommunications Research Institute Korea Telecommunication Authority | nB2P coding/decoding device | | US5956370 | Jan 17, 1996 | Sep 21, 1999 | LSI Logic Corporation | Wrap-back test system and method | | US5970100 | Mar 25, 1998 | Oct 19, 1999 | Conexant Systems, Inc. | System for controlling and shaping the spectrum and redundancy of signal-point limited transmission | | US5974464 | Sep 30, 1996 | Oct 26, 1999 | Silicon Image, Inc. | System for high speed serial video signal transmission using DC-balanced coding | | US5999571 | Oct 5, 1995 | Dec 7, 1999 | Silicon Image, Inc. | Transition-controlled digital encoding and signal transmission system | | US6016330 | Oct 18, 1996 | Jan 18, 2000 | International Business Machines Corporation | Encoding and detection of balanced codes | | US6046691 | Apr 13, 1998 | Apr 4, 2000 | Lucent Technologies Inc. | Rate 16/17 (0,5) modulation code apparatus and method for partial response magnetic recording channels | | US6052390 | Nov 10, 1997 | Apr 18, 2000 | Hewlett-Packard Company | Data code block transmission using preselected control signals and delimiters | | US6054944 | Jul 22, 1998 | Apr 25, 2000 | Sony Corporation | Data transmission method and device using 8-10 bit conversion and successive plus and minus running disparity synchronous data words | | US6061360 | Feb 24, 1999 | May 9, 2000 | Seagate Technology, Inc. | Method and apparatus for preserving loop fairness with dynamic half-duplex | | US6111528 | Jun 7, 1995 | Aug 29, 2000 | EMC Corporation | Communications arrangements for network digital data processing system | | US6130629 | Dec 4, 1998 | Oct 10, 2000 | Lucent Technologies Inc. | Rate 24/25 (0,9) code method and system for PRML recording channels | | US6167077 | Dec 23, 1997 | Dec 26, 2000 | LSI Logic Corporation | Using multiple high speed serial lines to transmit high data rates while compensating for overall skew | | US6188337 | Jun 1, 1999 | Feb 13, 2001 | Lucent Technologies Inc. | Low disparity coding method for digital data | | US6192087 | Nov 15, 1996 | Feb 20, 2001 | Conexant Systems, Inc. | Method and apparatus for spectral shaping in signal-point limited transmission systems | | US6195764 | Jan 27, 1998 | Feb 27, 2001 | Fujitsu Network Communications, Inc. Fujitsu Limited | Data encoder/decoder for a high speed serial link | | US6198413 | Jul 1, 1999 | Mar 6, 2001 | International Business Machines Corporation | Partitioned DC balanced (0,6) 16B/18B transmission code with error correction | | US6204781 | Mar 18, 1999 | Mar 20, 2001 | Lucent Technologies Inc. | General rate N/(N+1) (0, G) code construction for data coding | | US6225924 | Dec 22, 1998 | May 1, 2001 | International Business Machines Corporation | Transmission coding method and device | | US6278744 | Nov 26, 1996 | Aug 21, 2001 | Conexant Systems, Inc. | System for controlling and shaping the spectrum and redundancy of signal-point limited transmission | | US6279057 | Nov 17, 1998 | Aug 21, 2001 | Seagate Technology, Inc. | Communications system having dedicated frame buffers located in a channel node connected to two ports of the channel node for receiving frames | | US6279097 | Nov 20, 1998 | Aug 21, 2001 | Allied Telesyn International Corporation | Method and apparatus for adaptive address lookup table generator for networking application | | US6295010 | Jul 1, 1999 | Sep 25, 2001 | Seagate Technology, LLC | 8B/10B encoder system and method | | US6317800 | Nov 17, 1998 | Nov 13, 2001 | Seagate Technology LLP | System for reducing arbitrated-loop overhead by maintaining control of a communications channel as long as a predetermined amount of data is available within control of channel node | | US6323787 | Apr 25, 2000 | Nov 27, 2001 | Sony Corporation | Data transmission method and device | | US6323789 | Aug 14, 2000 | Nov 27, 2001 | Georgia Tech Research Corporation | Method and apparatus for combining a plurality of 8B/10B encoded data streams | | US6330591 | Mar 9, 1998 | Dec 11, 2001 | LSI Logic Corporation | High speed serial line transceivers integrated into a cache controller to support coherent memory transactions in a loosely coupled network | | US6346895 | Jan 24, 2001 | Feb 12, 2002 | Electronics and Telecommunications Research Institute Korea Telecom | Apparatus and method for using nibble inversion code | | US6351501 | Jun 29, 1998 | Feb 26, 2002 | National Semiconductro Corporation | Apparatus and method for providing direct current balanced code | | US6362757 | Dec 29, 1999 | Mar 26, 2002 | Electronics and Telecommunications Research Institute | Method and apparatus for encoding MB810 line code with the characteristics of minimum bandwidth and DC-free | | US6366223 | Jul 9, 1999 | Apr 2, 2002 | Electronics and Telecommunications Research Institute Korea Telecommunications Authority | Methods for coding and decoding nibble inversion codes and block inversion codes and coding and decoding apparatus for the same | | US6388590 | Sep 24, 1999 | May 14, 2002 | Oak Technology, Inc. | Apparatus and method for transmitting data serially for use with an advanced technology attachment packet interface (atapi) | | US6388591 | Sep 24, 1999 | May 14, 2002 | Oak Technology, Inc. | Apparatus and method for receiving data serially for use with an advanced technology attachment packet interface (atapi) | | US6392570 | Sep 14, 2000 | May 21, 2002 | Crossroads Systems, Inc. | Method and system for decoding 8-bit/10-bit data using limited width decoders | | US6425107 | Oct 13, 2000 | Jul 23, 2002 | Fujitsu Network Communications, Inc. Fujitsu Limited | Data encoder/decoder for a high speed serial link | | US6438175 | Dec 16, 1999 | Aug 20, 2002 | Sony Corporation | Data transmission method and apparatus | | US6438728 | Dec 15, 1999 | Aug 20, 2002 | Intel Corporation | Error character generation | | US6457140 | Dec 11, 1998 | Sep 24, 2002 | Telefonaktiebolaget LM Ericsson | Methods and apparatus for dynamically isolating fault conditions in a fault tolerant multi-processing environment | | US6496540 | Jul 22, 1998 | Dec 17, 2002 | International Business Machines Corporation | Transformation of parallel interface into coded format with preservation of baud-rate | | US6498663 | Sep 24, 1999 | Dec 24, 2002 | Scientific-Atlanta, Inc. | Methods and systems for detecting optical link performance of an optical link in a hybrid fiber coaxial path | | US6501396 | Mar 30, 2001 | Dec 31, 2002 | Xilinx, Inc. | Scalable physical coding sublayer (PCS) and 8B/10B encoder | | US6502189 | Nov 17, 1998 | Dec 31, 2002 | Seagate Technology LLC | Method and dedicated frame buffer for loop initialization and responses | | US6538585 | Mar 20, 2001 | Mar 25, 2003 | Industrial Technology Research Institute | Distance-enhancing coding method | | US6556628 | Apr 29, 1999 | Apr 29, 2003 | The University of North Carolina at Chapel Hill | Methods and systems for transmitting and receiving differential signals over a plurality of conductors | | US6581114 | Jul 14, 2000 | Jun 17, 2003 | Texas Instruments Incorporated | Method and system for synchronizing serial data | | US6584101 | Dec 4, 1998 | Jun 24, 2003 | PMC-Sierra Ltd. | Communication method for packet switching systems | | US6606328 | Dec 15, 1999 | Aug 12, 2003 | Intel Corporation | Look ahead encoder/decoder architecture | | US6608829 | Oct 8, 1999 | Aug 19, 2003 | Xyratex Technology Limited | Closed-loop synchronization arrangement for data transmission system | | US6614369 | Mar 5, 2002 | Sep 2, 2003 | International Business Machines Corporation | DC balanced 7B/8B, 9B/10B, and partitioned DC balanced 12B/14B, 17B/20B, and 16B/18B transmission codes | | US6617984 | Sep 6, 2002 | Sep 9, 2003 | Xilinx, Inc. | 16B/20B encoder | | US6618281 | May 15, 2002 | Sep 9, 2003 | International Business Machines Corporation | Content addressable memory (CAM) with error checking and correction (ECC) capability | | US6618395 | May 27, 1999 | Sep 9, 2003 | 3Com Corporation | Physical coding sub-layer for transmission of data over multi-channel media | | US6624763 | Sep 17, 2002 | Sep 23, 2003 | Teknovus, Inc. | Multiplexing an additional bit stream with a primary bit stream | | US6624770 | Dec 13, 2001 | Sep 23, 2003 | Cisco Technology, Inc. | Block coding system and method of data aggregation | | US6642862 | Dec 5, 2001 | Nov 4, 2003 | Bull S.A. | Method for encoding/decoding digital data transmitted through a serial link, particularly of the 8B/10 type, and device for implementing same | | US6650140 | Mar 6, 2002 | Nov 18, 2003 | Altera Corporation | Programmable logic device with high speed serial interface circuitry | | US6662332 | Nov 1, 2000 | Dec 9, 2003 | 3Com Corporation | Interleaver for burst error correction | | US6687779 | Jul 14, 2000 | Feb 3, 2004 | Texas Instruments Incorporated | Method and apparatus for transmitting control information across a serialized bus interface | | US6691275 | Dec 14, 2000 | Feb 10, 2004 | LSI Logic Corporation | Encoder with vector-calculated disparity logic | | US6696990 | Dec 20, 2002 | Feb 24, 2004 | STMicroelectronics S.r.l. | Binary encoding circuit | | US6700510 | Nov 13, 2002 | Mar 2, 2004 | Xilinx, Inc. | Scalable physical coding sublayer (PCS) and 8B/10B encoder | | US6718139 | Sep 12, 2000 | Apr 6, 2004 | Ciena Corporation | Optical fiber ring communication system | | US6721086 | May 10, 2001 | Apr 13, 2004 | International Business Machines Corporation | Optical fiber emulator | | US6738935 | Jul 25, 2000 | May 18, 2004 | 3Com Corporation | Coding sublayer for multi-channel media with error correction | | US6747580 | Jun 12, 2003 | Jun 8, 2004 | Silicon Image, Inc. | Method and apparatus for encoding or decoding data in accordance with an NB/(N | | US6748567 | May 1, 2001 | Jun 8, 2004 | ZettaCom, Inc. | Method and system for error correction over serial link | | US6763477 | Jul 31, 2000 | Jul 13, 2004 | Hewlett-Packard Development Company, L.P. | Method and apparatus for transmitting and receiving data using a self clocking link protocol | | US6775300 | May 9, 2003 | Aug 10, 2004 | Teknovus, Inc. | Clock distribution in a communications network | | US6794895 | Jun 27, 2002 | Sep 21, 2004 | Intel Corporation | Power saving termination technique for differential signaling | | US6812870 | Sep 11, 2003 | Nov 2, 2004 | Xilinx, Inc. | Enhanced 8b/10b encoding/decoding and applications thereof | | US6820159 | May 3, 2001 | Nov 16, 2004 | PMC-Sierra, Ltd. | Bus interface for transfer of SONET/SDH data | | US6829315 | Jan 19, 2000 | Dec 7, 2004 | Mindspeed Technologies, Inc. | Alignment of parallel data channels using header detection signaling | | US6831480 | Jan 7, 2003 | Dec 14, 2004 | Altera Corporation | Programmable logic device multispeed I/O circuitry | | US6842126 | Jul 18, 2003 | Jan 11, 2005 | Cisco Technology, Inc. | Block coding system and method for data aggregation | | US6851086 | Mar 30, 2001 | Feb 1, 2005 | | Transmitter, receiver, and coding scheme to increase data rate and decrease bit error rate of an optical data link | | US6876315 | Mar 12, 2004 | Apr 5, 2005 | International Business Machines Corporation | DC-balanced 6B/8B transmission code with local parity | | US6888376 | Sep 24, 2003 | May 3, 2005 | Altera Corporation | Multiple data rates in programmable logic device serial interface | | US6898201 | Dec 31, 2001 | May 24, 2005 | Apple Computer, Inc. | Apparatus and method for inter-node communication | | US6909385 | Feb 27, 2002 | Jun 21, 2005 | Seagate Technology LLC | Method and apparatus for suppressing low frequency content in digital data | | US6911841 | Aug 18, 2003 | Jun 28, 2005 | Altera Corporation | Programmable logic device with high speed serial interface circuitry | | US6911921 | Sep 19, 2003 | Jun 28, 2005 | International Business Machines Corporation | 5B/6B-T, 3B/4B-T and partitioned 8B/10B-T and 10B/12B transmission codes, and their implementation for high operating rates | | US6914545 | Oct 13, 2004 | Jul 5, 2005 | Seiko Epson Corporation | Circuitry and methods for reducing run-length of encoded data | | US6940302 | Jan 7, 2003 | Sep 6, 2005 | Altera Corporation | Integrated circuit output driver circuitry with programmable preemphasis | | US6970020 | Dec 17, 2003 | Nov 29, 2005 | Altera Corporation | Half-rate linear quardrature phase detector for clock recovery | | US6978416 | Dec 19, 2002 | Dec 20, 2005 | International Business Machines Corporation | Error correction with low latency for bus structures | | US7002368 | May 12, 2005 | Feb 21, 2006 | Altera Corporation | Programmable logic device with high speed serial interface circuitry | | US7002492 | Jul 7, 2004 | Feb 21, 2006 | Seagate Technology LLC | High rate running digital sum-restricted code | | US7006016 | Sep 10, 2004 | Feb 28, 2006 | Marvell International Ltd. | DC-free line codes | | US7020211 | Apr 17, 2001 | Mar 28, 2006 | Nippon Telegraph and Telephone Corporaiton | Encoding method and apparatus for forward error correction | | US7020729 | May 16, 2002 | Mar 28, 2006 | Intel Corporation | Protocol independent data transmission interface | | US7035540 | Jan 5, 2004 | Apr 25, 2006 | CIENA Corporation | Optical fiber ring communication system | | US7038553 | Oct 3, 2002 | May 2, 2006 | International Business Machines Corporation | Scalable computer system having surface-mounted capacitive couplers for intercommunication | | US7046696 | Sep 21, 2001 | May 16, 2006 | International Business Machines Corporation | Multiplexing high priority, low bandwidth information on a traditional link protocol | | US7064683 | Jan 19, 2005 | Jun 20, 2006 | Seagate Technology LLC | Speed optimized encoder with running disparity constraint | | US7064685 | Oct 20, 2004 | Jun 20, 2006 | Altera Corporation | Data converter with reduced component count for padded-protocol interface | | US7064691 | Aug 7, 2002 | Jun 20, 2006 | Kabushiki Kaisha Toshiba | Noise suppression circuit, ASIC, navigation apparatus, communication circuit, and communication apparatus having the same | | US7065101 | Nov 15, 2001 | Jun 20, 2006 | International Business Machines Corporation | Modification of bus protocol packet for serial data synchronization | | US7075461 | Mar 8, 2004 | Jul 11, 2006 | Samsung Electronics Co., Ltd. | Method of generating pseudo 8B/10B code and apparatus for generating the same | | US7076724 | Jan 22, 2003 | Jul 11, 2006 | Lockheed Martin Corporation | System and method for forward error correction | | US7081838 | Dec 29, 2004 | Jul 25, 2006 | Enigma Semiconductor, Inc. | 16b/10s coding apparatus and method | | US7084789 | Nov 17, 2003 | Aug 1, 2006 | Seagate Technology LLC | DC-free code having limited error propagation and limited complexity | | US7088133 | Dec 13, 2005 | Aug 8, 2006 | Altera Corporation | Programmable logic device with high speed serial interface circuitry | | US7095340 | Mar 22, 2005 | Aug 22, 2006 | Altera Corporation | Run-length violation detection circuitry and methods for using the same | | US7103830 | Dec 18, 2002 | Sep 5, 2006 | Applied Micro Circuits Corporation | DC balanced error correction coding | | US7109743 | Jun 7, 2005 | Sep 19, 2006 | Altera Corporation | Integrated circuit output driver circuitry with programmable preemphasis | | US7111220 | Mar 1, 2002 | Sep 19, 2006 | Xilinx, Inc. | Network physical layer with embedded multi-standard CRC generator | | US7113550 | Dec 10, 2002 | Sep 26, 2006 | Rambus Inc. | Technique for improving the quality of digital signals in a multi-level signaling system | | US7123173 | Apr 8, 2004 | Oct 17, 2006 | Cypress Semiconductor Corporation | Method and system for a feed-forward encoder | | US7127653 | Jul 5, 2002 | Oct 24, 2006 | PMC-Sierra, Inc. | Apparatus and method for efficient data transport using transparent framing procedure | | US7131024 | Sep 24, 2003 | Oct 31, 2006 | Altera Corporation | Multiple transmit data rates in programmable logic device serial interface | | US7137056 | Sep 25, 2002 | Nov 14, 2006 | Infineon Technologies North America Corp. | Low error propagation rate 32/34 trellis code | | US7138930 | Sep 9, 2004 | Nov 21, 2006 | Cypress Semiconductor Corporation | Multiple byte data path encoding/decoding device and method | | US7142612 | Nov 16, 2001 | Nov 28, 2006 | Rambus, Inc. | Method and apparatus for multi-level signaling | | US7143312 | Dec 17, 2003 | Nov 28, 2006 | Altera Corporation | Alignment of recovered clock with data signal | | US7151470 | Oct 20, 2004 | Dec 19, 2006 | Altera Corporation | Data converter with multiple conversions for padded-protocol interface | | US7158057 | Sep 7, 2005 | Jan 2, 2007 | Seiko Epson Corporation | Circuitry and methods for high speed data encoding | | US7164505 | Dec 6, 2004 | Jan 16, 2007 | Silverbrook Research Pty Ltd | Edge delta runlength expander unit for bi-level graphics | | US7173943 | Feb 26, 2002 | Feb 6, 2007 | Computer Access Technology Corporation | Protocol analyzer and time precise method for capturing multi-directional packet traffic | | US7180957 | Sep 23, 2003 | Feb 20, 2007 | Rambus Inc. | Technique for utilizing spare bandwidth resulting from the use of a transition-limiting code in a multi-level signaling system | | US7180958 | May 20, 2004 | Feb 20, 2007 | Rambus Inc. | Technique for utilizing spare bandwidth resulting from the use of a transition-limiting code in a multi-level signaling system | | US7180959 | Jun 29, 2004 | Feb 20, 2007 | Rambus Inc. | Technique for utilizing spare bandwidth resulting from the use of a code in a multi-level signaling system | | US7181485 | Nov 26, 2001 | Feb 20, 2007 | Integrated Device Technology, Inc. | Variably delayable transmission of packets between independently clocked source, intermediate, and destination circuits while maintaining orderly and timely processing in one or both of the intermediate and destination circuits | | US7183797 | Oct 29, 2004 | Feb 27, 2007 | Altera Corporation | Next generation 8B10B architecture | | US7187307 | Jun 12, 2003 | Mar 6, 2007 | Silicon Image, Inc. | Method and system for encapsulation of multiple levels of communication protocol functionality within line codes | | US7199728 | Jan 21, 2005 | Apr 3, 2007 | Rambus, Inc. | Communication system with low power, DC-balanced serial link | | US7199732 | May 26, 2005 | Apr 3, 2007 | Altera Corporation | Data converter with reduced component count for padded-protocol interface | | US7205911 | Nov 21, 2003 | Apr 17, 2007 | Electronics and Telecommunications Research Institute | Apparatus and method for 8B/10B code-group validity check | | US7218256 | Apr 11, 2006 | May 15, 2007 | Seagate Technology LLC | DC-free code having limited error propagation and limited complexity | | US7224595 | Jul 30, 2004 | May 29, 2007 | International Business Machines Corporation | 276-Pin buffered memory module with enhanced fault tolerance | | US7230554 | Apr 26, 2006 | Jun 12, 2007 | Kabushiki Kaisha Toshiba | Noise suppression circuit, ASIC, navigation apparatus, communication circuit, and communication apparatus having the same | | US7240133 | Oct 12, 2004 | Jul 3, 2007 | Altera Corporation | Reduced-area architecture for padded-protocol interface | | US7256717 | Jul 13, 2005 | Aug 14, 2007 | Canon Kabushiki Kaisha | Method for the encoding and decoding of a sequence of words, corresponding signal, encoder, decoder, computer programs and storage means | | US7259699 | Nov 23, 2005 | Aug 21, 2007 | Altera Corporation | Circuitry for providing configurable running disparity enforcement in 8B/10B encoding and error detection | | US7265689 | Dec 20, 2004 | Sep 4, 2007 | Mediatek Inc. | Data transformation apparatus and method for transforming data block | | US7268706 | Jan 30, 2006 | Sep 11, 2007 | Rambus, Inc. | Low power, DC-balanced serial link transmitter | | US7272677 | Aug 8, 2003 | Sep 18, 2007 | Altera Corporation | Multi-channel synchronization for programmable logic device serial interface | | US7272679 | Feb 13, 2006 | Sep 18, 2007 | Intel Corporation | Protocol independent data transmission using a 10 Gigabit Attachment Unit interface | | US7277988 | Oct 29, 2004 | Oct 2, 2007 | International Business Machines Corporation | System, method and storage medium for providing data caching and data compression in a memory subsystem | | US7290202 | May 19, 2004 | Oct 30, 2007 | Electronics and Telecommunications Research Institute | MB810 encoder/decoder, dual mode encoder/decoder, and MB810 code generating method | | US7292161 | May 31, 2005 | Nov 6, 2007 | International Business Machines Corporation | NB/MB coding apparatus and method using both disparity independent and disparity dependent encoded vectors | | US7292608 | Jan 18, 2000 | Nov 6, 2007 | Cisco Technology, Inc. | Method and apparatus for transferring synchronous optical network/synchronous digital hierarchy(SONET/SDH) frames on parallel transmission links | | US7295554 | Mar 9, 2000 | Nov 13, 2007 | Lucent Technologies Inc. | Word Multiplexing of encoded signals into a higher bit rate serial data stream | | US7296129 | Jul 30, 2004 | Nov 13, 2007 | International Business Machines Corporation | System, method and storage medium for providing a serialized memory interface with a bus repeater | | US7296211 | Jan 22, 2003 | Nov 13, 2007 | Lockheed Martin Corporation | System and method for transferring data on a data link | | US7299313 | Oct 29, 2004 | Nov 20, 2007 | International Business Machines Corporation | System, method and storage medium for a memory subsystem command interface | | US7302631 | Jul 16, 2004 | Nov 27, 2007 | Rambus Inc. | Low overhead coding techniques | | US7304498 | May 10, 2006 | Dec 4, 2007 | Altera Corporation | Clock circuitry for programmable logic devices | | US7305574 | Oct 29, 2004 | Dec 4, 2007 | International Business Machines Corporation | System, method and storage medium for bus calibration in a memory subsystem | | US7306307 | Nov 20, 2006 | Dec 11, 2007 | Silverbrook Research Pty Ltd | Processing apparatus for an inkjet printer | | US7306307 | Nov 20, 2006 | Dec 11, 2007 | Silverbrook Research Pty Ltd | Processing apparatus for an inkjet printer | | US7307446 | Aug 24, 2006 | Dec 11, 2007 | Altera Corporation | Integrated circuit output driver circuitry with programmable preemphasis | | US7307446 | Aug 24, 2006 | Dec 11, 2007 | Altera Corporation | Integrated circuit output driver circuitry with programmable preemphasis | | US7307554 | Jun 1, 2005 | Dec 11, 2007 | Kawasaki Microelectronics, Inc. | Parallel data transmission method and parallel data transmission system | | US7307554 | Jun 1, 2005 | Dec 11, 2007 | Kawasaki Microelectronics, Inc. | Parallel data transmission method and parallel data transmission system | | US7313751 | Sep 20, 2005 | Dec 25, 2007 | Electronics and Telecommunications Research Institute | Dual mode decoder | | US7315262 | Jul 13, 2005 | Jan 1, 2008 | Canon Kabushiki Kaisha | Coding and decoding method for a sequence of elements, signal, coder, decoder, corresponding computer programs and storage means | | US7331010 | Oct 29, 2004 | Feb 12, 2008 | International Business Machines Corporation | System, method and storage medium for providing fault detection and correction in a memory subsystem | | US7339896 | Sep 10, 2002 | Mar 4, 2008 | International Business Machines Corporation | Available bandwidth detector for SAN switch ports | | US7355532 | Feb 24, 2005 | Apr 8, 2008 | Samsung Electronics Co., Ltd. | voltage level coding system and method | | US7356722 | Jan 29, 2007 | Apr 8, 2008 | Intergrated Device Technology, Inc. | Variably delayable transmission of packets between independently clocked source, intermediate, and destination circuits while maintaining orderly and timely processing in one or both of the intermediate and destination circuits | | US7356737 | Oct 29, 2004 | Apr 8, 2008 | International Business Machines Corporation | System, method and storage medium for testing a memory module | | US7385457 | Mar 27, 2006 | Jun 10, 2008 | International Business Machines Corporation | Flexible capacitive coupler assembly and method of manufacture | | US7389375 | Jul 30, 2004 | Jun 17, 2008 | International Business Machines Corporation | System, method and storage medium for a multi-mode memory buffer device | | US7392337 | Jul 20, 2007 | Jun 24, 2008 | International Business Machines Corporation | System, method and storage medium for a memory subsystem command interface | | US7395476 | Oct 29, 2004 | Jul 1, 2008 | International Business Machines Corporation | System, method and storage medium for providing a high speed test interface to a memory subsystem | | US7398450 | Dec 16, 2005 | Jul 8, 2008 | Mitsubishi Denki Kabushiki Kaisha | Parallel precoder circuit | | US7403409 | Apr 16, 2007 | Jul 22, 2008 | International Business Machines Corporation | 276-pin buffered memory module with enhanced fault tolerance | | US7404133 | Dec 15, 2004 | Jul 22, 2008 | Hewlett-Packard Development Company, L.P. | Error detection and correction employing modulation symbols satisfying predetermined criteria | | US7405679 | Jan 30, 2007 | Jul 29, 2008 | International Business Machines Corporation | Techniques for 9B10B and 7B8B coding and decoding | | US7428692 | Feb 8, 2006 | Sep 23, 2008 | Mitsubishi Denki Kabushiki Kaisha | Parallel precoder circuit | | US7436210 | Jan 18, 2007 | Oct 14, 2008 | Altera Corporation | Next generation 8B10B architecture | | US7441060 | Oct 29, 2004 | Oct 21, 2008 | International Business Machines Corporation | System, method and storage medium for providing a service interface to a memory system | | US7443922 | Nov 14, 2003 | Oct 28, 2008 | Altera Corporation | Circuitry for padded communication protocols | | US7451273 | Jul 19, 2007 | Nov 11, 2008 | International Business Machines Corporation | System, method and storage medium for providing data caching and data compression in a memory subsystem | | US7461192 | Dec 15, 2004 | Dec 2, 2008 | Rambus Inc. | Interface for bridging out-of-band information and preventing false presence detection of terminating devices | | US7475316 | Jan 9, 2008 | Jan 6, 2009 | International Business Machines Corporation | System, method and storage medium for providing a high speed test interface to a memory subsystem | | US7477522 | Oct 23, 2006 | Jan 13, 2009 | International Business Machines Corporation | High density high reliability memory module with a fault tolerant address and command bus | | US7478259 | Oct 31, 2005 | Jan 13, 2009 | International Business Machines Corporation | System, method and storage medium for deriving clocks in a memory system | | US7480759 | Jul 3, 2007 | Jan 20, 2009 | International Business Machines Corporation | System, method and storage medium for providing data caching and data compression in a memory subsystem | | US7480830 | Nov 9, 2007 | Jan 20, 2009 | International Business Machines Corporation | System, method and storage medium for testing a memory module | | US7484161 | Sep 7, 2007 | Jan 27, 2009 | International Business Machines Corporation | System, method and storage medium for providing fault detection and correction in a memory subsystem | | US7486752 | Dec 17, 2003 | Feb 3, 2009 | Altera Corporation | Alignment of clock signal with data signal | | US7487426 | Oct 17, 2005 | Feb 3, 2009 | Enigma Semiconductor, Inc. | 64b/66b coding apparatus and method | | US7490217 | May 23, 2008 | Feb 10, 2009 | International Business Machines Corporation | Design structure for selecting memory busses according to physical memory organization information stored in virtual address translation tables | | US7492288 | Mar 29, 2007 | Feb 17, 2009 | Samsung Electronics Co., Ltd. | Transmitting/receiving methods and systems for DC balance encoded data including simultaneous switching noise reducing preambles | | US7493439 | Aug 1, 2006 | Feb 17, 2009 | International Business Machines Corporation | Systems and methods for providing performance monitoring in a memory system | | US7496100 | Apr 17, 2001 | Feb 24, 2009 | Nippon Telegraph & Telephone Corporation | Method and apparatus for synchronous frame communication | | US7512762 | Oct 29, 2004 | Mar 31, 2009 | International Business Machines Corporation | System, method and storage medium for a memory subsystem with positional read data latency | | US7518534 | Jul 20, 2007 | Apr 14, 2009 | Cypress Semiconductor Corporation | 8-bit to 10-bit encoding method and apparatus | | US7529112 | Apr 3, 2007 | May 5, 2009 | International Business Machines Corporation | 276-Pin buffered memory module with enhanced fault tolerance and a performance-optimized pin assignment | | US7539800 | Jul 30, 2004 | May 26, 2009 | International Business Machines Corporation | System, method and storage medium for providing segment level sparing | | US7539810 | Feb 12, 2008 | May 26, 2009 | International Business Machines Corporation | System, method and storage medium for a multi-mode memory buffer device | | US7539842 | Aug 15, 2006 | May 26, 2009 | International Business Machines Corporation | Computer memory system for selecting memory buses according to physical memory organization information stored in virtual address translation tables | | US7551468 | Apr 2, 2008 | Jun 23, 2009 | International Business Machines Corporation | 276-pin buffered memory module with enhanced fault tolerance | | US7581073 | Aug 9, 2006 | Aug 25, 2009 | International Business Machines Corporation | Systems and methods for providing distributed autonomous power management in a memory system | | US7584336 | Jun 8, 2006 | Sep 1, 2009 | International Business Machines Corporation | Systems and methods for providing data modification operations in memory subsystems | | US7587559 | Aug 10, 2006 | Sep 8, 2009 | International Business Machines Corporation | Systems and methods for memory module power management | | US7590882 | Jul 20, 2007 | Sep 15, 2009 | International Business Machines Corporation | System, method and storage medium for bus calibration in a memory subsystem | | US7592933 | Jun 20, 2008 | Sep 22, 2009 | International Business Machines Corporation | Techniques for 9B10B and 7B8B coding and decoding | | US7594055 | May 24, 2006 | Sep 22, 2009 | International Business Machines Corporation | Systems and methods for providing distributed technology independent memory controllers | | US7598767 | Feb 6, 2006 | Oct 6, 2009 | Altera Corporation | Multi-standard data communication interface circuitry for programmable logic devices | | US7602318 | Aug 7, 2006 | Oct 13, 2009 | Integrated Device Technology, Inc. | Method and apparatus for improved efficiency in protocols using character coding | | US7603526 | Jan 29, 2007 | Oct 13, 2009 | International Business Machines Corporation | Systems and methods for providing dynamic memory pre-fetch | | US7606988 | Jan 29, 2007 | Oct 20, 2009 | International Business Machines Corporation | Systems and methods for providing a dynamic memory bank page policy | | US7610423 | Aug 26, 2008 | Oct 27, 2009 | International Business Machines Corporation | Service interface to a memory system | | US7636813 | May 22, 2006 | Dec 22, 2009 | International Business Machines Corporation | Systems and methods for providing remote pre-fetch buffers | | US7636833 | Jan 6, 2009 | Dec 22, 2009 | International Business Machines Corporation | Method for selecting memory busses according to physical memory organization information associated with virtual address translation tables | | US7639397 | Dec 4, 2007 | Dec 29, 2009 | Silverbrook Research Pty Ltd | Page expansion and printing method incorporating halftoning and compositing | | US7640386 | May 24, 2006 | Dec 29, 2009 | International Business Machines Corporation | Systems and methods for providing memory modules with multiple hub devices | | US7656321 | Jun 2, 2005 | Feb 2, 2010 | Rambus Inc. | Signaling system | | US7664015 | Oct 20, 2004 | Feb 16, 2010 | L-3 Communications Security & Detection Systems | Inspection system with data acquisition system interconnect protocol | | US7664553 | Apr 27, 2005 | Feb 16, 2010 | Cardiac Pacemakers, Inc. | System and method for enabling communications with implantable medical devices | | US7669086 | Aug 2, 2006 | Feb 23, 2010 | International Business Machines Corporation | Systems and methods for providing collision detection in a memory system | | US7676725 | Feb 27, 2006 | Mar 9, 2010 | The United States of America as represented by the Director, National Security Agency | Method of code generation that minimizes error propagation | | US7685392 | Nov 28, 2005 | Mar 23, 2010 | International Business Machines Corporation | Providing indeterminate read data latency in a memory system | | US7694059 | Nov 19, 2008 | Apr 6, 2010 | Rambus Inc. | Interface for bridging out-of-band information from a downstream communication link to an upstream communication link | | US7706524 | Nov 16, 2001 | Apr 27, 2010 | Rambus Inc. | Signal line routing to reduce crosstalk effects | | US7707475 | Jan 5, 2009 | Apr 27, 2010 | Forestay Research, LLC | 64b/66b coding apparatus and method | | US7721140 | Jan 2, 2007 | May 18, 2010 | International Business Machines Corporation | Systems and methods for improving serviceability of a memory system | | US7722147 | Oct 15, 2004 | May 25, 2010 | FUJIFILM Dimatix, Inc. | Printing system architecture | | US7729153 | Apr 2, 2008 | Jun 1, 2010 | International Business Machines Corporation | 276-pin buffered memory module with enhanced fault tolerance | | US7765368 | Jul 5, 2007 | Jul 27, 2010 | International Business Machines Corporation | System, method and storage medium for providing a serialized memory interface with a bus repeater | | US7768429 | Feb 6, 2009 | Aug 3, 2010 | Samsung Electronics Co., Ltd. | Transmitting/receiving methods and systems for data with simultaneous switching noise reducing preambles | | US7777652 | Oct 29, 2008 | Aug 17, 2010 | Silicon Image, Inc. | Coding system for memory systems employing high-speed serial links | | US7787526 | Jul 12, 2005 | Aug 31, 2010 | | Circuits and methods for a multi-differential embedded-clock channel | | US7792137 | Jul 5, 2006 | Sep 7, 2010 | Abidanet, LLC | Self-organized and self-managed ad hoc communications network | | US7812659 | May 10, 2006 | Oct 12, 2010 | Altera Corporation | Clock signal circuitry for multi-channel data signaling | | US7844771 | Mar 31, 2008 | Nov 30, 2010 | International Business Machines Corporation | System, method and storage medium for a memory subsystem command interface | | US7852238 | Oct 7, 2004 | Dec 14, 2010 | Koninklijke Philips Electronics N.V. | Balanced disparity frame sync | | US7852242 | May 15, 2008 | Dec 14, 2010 | Taiwan Semiconductor Manufacturing Company, Ltd. | Increasing 8B/10B coding speed using a disparity look-ahead table | | US7860126 | Jul 12, 2006 | Dec 28, 2010 | Siemens Aktiengesellschaft | Method and device for data transmission between two components moving relative to one another | | US7869343 | Jun 5, 2006 | Jan 11, 2011 | Altera Corporation | Field programmable gate array architectures and methods for supporting forward error correction | | US7870459 | Oct 23, 2006 | Jan 11, 2011 | International Business Machines Corporation | High density high reliability memory module with power gating and a fault tolerant address and command bus | | US7876900 | May 23, 2005 | Jan 25, 2011 | Force 10 Networks, Inc. | Hybrid scrambled transmission coding | | US7907298 | Oct 15, 2004 | Mar 15, 2011 | FUJIFILM Dimatix, Inc. | Data pump for printing | | US7911625 | Oct 15, 2004 | Mar 22, 2011 | FUJIFILM Dimatrix, Inc. | Printing system software architecture | | US7928866 | Aug 7, 2009 | Apr 19, 2011 | Alcatel-Lucent USA Inc. | Apparatus for enhancing packet communication | | US7928884 | Mar 23, 2009 | Apr 19, 2011 | SiFlare, Inc. | Analog-to-digital converter with a balanced output | | US7934115 | Dec 11, 2008 | Apr 26, 2011 | International Business Machines Corporation | Deriving clocks in a memory system | | US7944586 | Nov 29, 2009 | May 17, 2011 | Silverbrook Research Pty Ltd | Page expansion and printing method | | US7949789 | Mar 25, 2008 | May 24, 2011 | International Business Machines Corporation | Distance extender for serial attached SCSI and serial ATA | | US7953162 | Nov 17, 2006 | May 31, 2011 | Intersil Americas Inc. | Use of differential pair as single-ended data paths to transport low speed data | | US7961121 | Jun 26, 2010 | Jun 14, 2011 | Samsung Electronics Co., Ltd. | Transmitting/receiving methods and systems with simultaneous switching noise reducing preambles | | US7961520 | Aug 18, 2009 | Jun 14, 2011 | Seagate Technology LLC | Encoding and decoding to reduce switching of flash memory transistors | | US7978099 | Jul 30, 2010 | Jul 12, 2011 | Silicon Image, Inc. | 17B/20B coding system | | US7984369 | Jan 19, 2007 | Jul 19, 2011 | Silicon Image, Inc. | Concurrent code checker and hardware efficient high-speed I/O having built-in self-test and debug features | | US8005130 | Jul 13, 2007 | Aug 23, 2011 | Hitachi, Ltd. | Transmitter and receiver using forward clock overlaying link information | | US8019434 | May 5, 2009 | Sep 13, 2011 | Cardiac Pacemakers, Inc. | Automatic power control for a radio frequency transceiver of an implantable device | | US8031609 | Oct 19, 2009 | Oct 4, 2011 | Broadcom Corporation | Apparatus and method for communicating arbitrarily encoded data over a 1-gigabit ethernet | | US8036128 | Sep 28, 2007 | Oct 11, 2011 | Alcatel Lucent | Method for communicating backpressure messages in a data communications system | | US8041432 | Nov 19, 2010 | Oct 18, 2011 | Cardiac Pacemakers, Inc. | Implantable medical device with two or more telemetry systems | | US8046080 | Feb 26, 2010 | Oct 25, 2011 | Cardiac Pacemakers, Inc. | Telemetry duty cycle management system for an implantable medical device | | US8055350 | Jan 21, 2010 | Nov 8, 2011 | Cardiac Pacemakers, Inc. | System and method for enabling communications with implantable medical devices | | US8060672 | Jun 12, 2007 | Nov 15, 2011 | Siemens Aktiengesellschaft | Event signaling between peripheral modules and a processing unit | | US8068245 | Oct 15, 2004 | Nov 29, 2011 | FUJIFILM Dimatix, Inc. | Printing device communication protocol | | US8081705 | Jun 27, 2008 | Dec 20, 2011 | Crestron Electronics Inc. | Digital video physical layer using a multi-level data code | | US8085428 | Oct 15, 2004 | Dec 27, 2011 | Fujifilm Dimatix, Inc. | Print systems and techniques | | US8085836 | Jun 6, 2006 | Dec 27, 2011 | Eastman Kodak Company | Robustness improvement for bandwidth limited communication system | | US8090269 | Jan 16, 2008 | Jan 3, 2012 | Hitachi, Ltd. | Data transmission system and transmission code generating method for the same | | US8140942 | Sep 7, 2007 | Mar 20, 2012 | International Business Machines Corporation | System, method and storage medium for providing fault detection and correction in a memory subsystem | | US8145868 | Aug 22, 2007 | Mar 27, 2012 | International Business Machines Corporation | Method and system for providing frame start indication in a memory system having indeterminate read data latency | | US8151042 | Aug 22, 2007 | Apr 3, 2012 | International Business Machines Corporation | Method and system for providing identification tags in a memory system having indeterminate data response times | | US8175141 | Aug 20, 2007 | May 8, 2012 | Computer Access Technology Corporation | Method and apparatus for calibrating equalizers without knowledge of the data pattern being received | | US8175173 | Apr 20, 2011 | May 8, 2012 | Intersil Americas Inc. | Methods and systems for transmitting signals differentially and single-endedly across a pair of wires | | US8199342 | Oct 29, 2004 | Jun 12, 2012 | FUJIFILM Dimatix, Inc. | Tailoring image data packets to properties of print heads | | US8201071 | Nov 15, 2006 | Jun 12, 2012 | Qimonda AG | Information transmission and reception | | US8219846 | May 20, 2008 | Jul 10, 2012 | Xilinx, Inc. | Circuit for and method of receiving video data | | US8223041 | Nov 3, 2010 | Jul 17, 2012 | Sony Corporation | Information processing apparatus, and signal processing method | | USRE40034 | Nov 13, 2003 | Jan 22, 2008 | Seagate Technology LLC | Method and apparatus to reduce serial communications path connection overhead |
Claims1. A method for producing a DC balanced (0,4) run length limited rate 8B/10B code from an unconstrained input data stream comprising a multiplicity of 8 bit data blocks, said method including partitioning the 8 bit block into two sub-blocks consisting of 5 and 3 contiguous bits, examining each sub-block to determine if any of the individual bits require alteration and altering predetermined bits based on said determination to produce an alternate code pattern, determining the disparity (D0) of the current output sub-block being coded, ascertaining the disparity (D-1) of the last non-zero sub-block coded and selecting a first code pattern as the current output sub-block for certain of the output sub-blocks if the last non-zero disparity in the output code pattern was of a first polarity, assigning the complement of said first code pattern if the last non-zero disparity was of the opposite polarity. 2. A coding method as set forth in claim 1, wherein the encoding of the 5 bit input data sub-block and the 3 bit input data sub-block is performed substantially concurrently. 3. A coding method as set forth in claim 2 including automatically adding an extra bit of a predetermined value to each input sub-block to form each output sub-block, said predetermined value being subject to change if it is determined that a predetermined code pattern in said current input sub-block requires changing said extra bit. 4. A coding method as set forth in claim 3 wherein said alternate code pattern is generated by controlling the complementation of individual bits of said input sub-block and said extra bit in accordance with the logical content thereof to alter same when necessary. 5. A coding method as set forth in claim 4 wherein the selection of the particular input bits to be complemented is accomplished by logically combining individual predetermined bits of said input data sub-block. 6. A coding method as set forth in claim 5 wherein the step of computing the disparity of a current sub-block includes the steps of performing a logic analysis of the input bits of said current sub-block and the output of the bit encoding step to determine the disparity of the current sub-block. 7. A coding method as set forth in claim 6 including the step of notifying the coding system when a specific input 8 bit block is to be representative of a special character outside of the domain of the normal 256 characters representable by the 8 bit code pattern and producing specially encoded output sub-blocks whenever such special character indication accompanies a given 8 bit input sub-block. 8. A coding method as set forth in claim 7 including factoring said special character indication (K bit) into said bit encoding and disparity determining steps for the 3 bit input sub-block, whereby all of the 4 bit encoded sub-blocks for the special characters have an alternate form which is assigned based solely on a determination of the last non-zero disparity (D-1) sub-block. 9. A coding method as set forth in claim 8 wherein the step of encoding said special character sub-blocks distinctly from encoded data sub-blocks, includes determining if a predetermined run length and disparity is present in the immediately preceding output sub-block and providing a first output sub-block for such special character if said predetermined run length is present and a second output sub-block if said predetermined run length is not present. 10. A coding method as set forth in claim 9 wherein the step of providing said second output sub-block comprises complementing said first output sub-block in accordance with both a run length and disparity determination. 11. A binary data encoding apparatus for producing a DC balanced (0,4) run length limited rate 8B/10B code from an unconstrained input data stream including means for supplying consecutive 8 bit data blocks to said apparatus, means for partitioning the 8 bit input block into two sub-blocks consisting of 5 and 3 contiguous bits, means for testing each input sub-block to determine if any of the individual bits require alteration during encoding and altering predetermined bits based on said determination to produce an alternate code pattern from said input bit pattern, means for determining the disparity (D0) of the current output sub-block being coded, means for determining the disparity (D-1) of the last non-zero sub-block coded and generating a first code pattern as the current output sub-block for certain of the output sub-blocks if the last non-zero disparity sub-block in the output code stream was of a first polarity, means for generating the complement of said first code pattern if the last non-zero disparity sub-block was of the opposite polarity. 12. A data encoding apparatus as set forth in claim 11 wherein said means for partitioning includes means for gating the 3 bit and 5 bit input data sub-blocks into the encoding apparatus for substantially concurrent encoding. 13. A data encoding apparatus as set forth in claim 12 including means for concatenating an extra bit of a predetermined value at the end of each input data sub-block to form each encoded output sub-block, and means for changing the predetermined value of said extra bit if it is found that a predetermined bit pattern is present in said current data input sub-block. 14. A data encoding apparatus as set forth in claim 13 wherein the means for generating the complement of said first code pattern comprises means for combining the output of said testing means and in said disparity determining means do produce a complementation signal which causes the complement of said first code pattern generated by the system to be gated to the output thereof as the encoded output sub-block. 15. A data encoding apparatus as set forth in claim 14 wherein said means for complementing includes means for evaluating all of the input data bits of both sub-blocks and also the polarity (negative or positive) of the last non-zero encoded sub-block. 16. A data encoding apparatus as set forth in claim 15 wherein the means for determining the disparity (D0) of the current sub-block includes means for logically combining the input bits of said current sub-block with the output of the testing means to determine if the disparity of the current sub-block (D0) is zero, positive or negative. 17. A data encoding apparatus as set forth in claim 16 including means for indicating that a particular 8 bit input block is a special character outside of the domain of the 256 characters normally representable by the 8 bit input data block and means actuable in response to said indication for producing a specially encoded 4 bit output sub-block from said input 8 bit block whenever such special character indication accompanies a given 8 bit input block. 18. A data encoding apparatus as set forth in claim 17 wherein the means for encoding said special character 3 bit sub-block distinctly from a 3 bit data character input sub-block includes means for determining if a predetermined run length is present in the immediately preceding encoded 6 bit output sub-block for the associated 5 bit data input block and for providing a first 4 bit encoded output sub-block for such special character if said predetermined run length is present and a different 4 bit coded output sub-block if said predetermined run length is not present. 19. A data encoding apparatus as set forth in claim 18 wherein the means for providing said different 4 bit coded sub-block includes means for complementing said first encoded 4 bit output sub-block. 20. A binary data encoding apparatus for producing a DC balanced (0,4) run length limited rate 8B/10B code from an unconstrained input data stream including means for supplying consecutive 8 bit data blocks to said apparatus, means for partitioning the 8 bit input block into two sub-blocks consisting of 5 and 3 contiguous bits, said partitioning means including means for gating the 3 bit and 5 bit input data sub-blocks into the encoding apparatus for substantially concurrent encoding in separate circuitry provided for each sub-block, means for concatenating an extra bit of a predetermined value at the end of each input data sub-block to form the additional bit of each encoded output sub-block, means for testing each input sub-block to determine if any of the individual bits or the extra bit require alteration during encoding and altering predetermined bits based on said determination to produce an alternate code pattern from said input bit pattern, means for determining the disparity (D0) of the current output sub-block being coded including means for logically combining the input bits of said current input sub-block with the output of the testing and altering means to determine if the disparity of the current sub-block (D0) is zero, positive or negative, means for determining the disparity (D-1) of the last non-zero sub-block coded and generating a first code pattern as the current output sub-block for certain of the input sub-blocks if the last non-zero disparity sub-block in the output code stream was of a first polarity, means for generating the complement of said first code pattern if the last non-zero disparity sub-block was of the opposite polarity, said complementing means including means for evaluating all of the input data bits of both sub-blocks and also the polarity (negative or positive) of the last non-zero encoded sub-block. |