US20060187968A1 - Method for data communication - Google Patents

Method for data communication Download PDF

Info

Publication number
US20060187968A1
US20060187968A1 US11/386,418 US38641806A US2006187968A1 US 20060187968 A1 US20060187968 A1 US 20060187968A1 US 38641806 A US38641806 A US 38641806A US 2006187968 A1 US2006187968 A1 US 2006187968A1
Authority
US
United States
Prior art keywords
words
serial
clock
sub
system clock
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US11/386,418
Inventor
Robert Spooner
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agere Systems LLC
Nokia of America Corp
Original Assignee
Agere Systems LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Agere Systems LLC filed Critical Agere Systems LLC
Priority to US11/386,418 priority Critical patent/US20060187968A1/en
Assigned to LUCENT TECHNOLOGIES, INC. reassignment LUCENT TECHNOLOGIES, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SPOONER, ROBERT JOHN
Publication of US20060187968A1 publication Critical patent/US20060187968A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4009Coupling between buses with data restructuring
    • G06F13/4018Coupling between buses with data restructuring with data-width conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/14Channel dividing arrangements, i.e. in which a single bit stream is divided between several baseband channels and reassembled at the receiver

Definitions

  • the present invention relates to a data communication link for high speed, high bandwidth applications.
  • very high data rates may be required, e.g., an average data rate of at least 4.8 Gigabits per second (Gbps).
  • the data link may be 64 bits wide.
  • the transfer rate may be multiplied N times.
  • a synchronous interface which has a resultant Transfer Clock, N*CK, of less than 200 MHz may be practical. Above 200 MHz, which would be necessary to achieve the desired transfer rate of 4.8 Gbps, each data bit would be valid for a maximum of 5 ns, reducing further when rise-fall times of the interconnect signals and input/output buffers are included.
  • the task of achieving a robust design, ensuring that all W bits are aligned such that the synchronising clock can always capture valid data bytes at the receiving ASIC, is far from trivial.
  • the invention provides a method for transmitting data, comprising the steps of: (a) responsive to a system clock, generating a transfer clock at a high rate relative to the system clock; (b) dividing an input word into a plurality of smaller words; and (c) transmitting the plurality of smaller words over corresponding serial sub-links in response to the transfer clock.
  • the invention further provides a method for receiving data, comprising the steps of: (a) converting received serial data words from a plurality of serial sub-links into parallel form; and (b) responsive to the received data, generating a low speed clock with a frequency nominally equal to a system clock.
  • the invention further provides a data transmitter having: a transfer clock generator, responsive to the system clock, generating a transfer clock at a high rate relative to the system clock; and a parallel to serial register, for dividing an input word into a plurality of smaller words and transmitting them over corresponding serial sub-links in response to the transfer clock.
  • the invention still further provides a receiver having: a plurality of serial to parallel registers coupled to corresponding serial sub-links, for converting received serial data words from the sub-links into parallel form; and a clock generator, responsive to the received data, for generating a low speed clock with a frequency nominally equal to the system clock.
  • FIG. 1 is a schematic view of the transmit interface of a first ASIC of the data communication link of the invention
  • FIG. 2 is a schematic block diagram of the receive interface of a second ASIC of the data communication link of the invention
  • FIG. 3 is a more detailed diagram of the control mechanism for aligning received words in each sub-link of the link of FIGS. 1 and 2 ;
  • FIG. 4 is a schematic block diagram of a Clock Data Recovery Module (CDRM) used in both the interfaces of FIGS. 1 and 2 .
  • CDRM Clock Data Recovery Module
  • a Link Interface between first and second ASICs 2 , 4 includes an interface 6 in ASIC 2 .
  • DW W*N Where;
  • N An integer value, greater than 1
  • Interface 6 in ASIC 2 has a register 8 for breaking down the wide input data words, DW, into N (in this embodiment 8) smaller sub-words W (each 8 bits long). Each sub-word W is treated independently, using a Clock Data Recovery Module 10 (CDRM) macrocell. CDRM 10 has a multiplier 12 for multiplying the clock CK, W (8) times and respective parallel to serial (PISO) converters 14 for operating on each of N, W bit words. Each serial word is transmitted over a respective sub-link 16 .
  • CDRM 10 Clock Data Recovery Module 10
  • the receive ASIC 4 has an interface 20 .
  • the serial links 16 are coupled to another CDRM macrocell 22 , in which a parallel W bit word and clock is recovered for each of the N serial links.
  • FIG. 4 shows in more detail a CDRM 10 , 22 .
  • the module 10 , 22 has two primary functions. In transmit, it takes Low Speed Parallel Data (LDTX) on line 40 and creates High Speed Serial Data (HDTX) on line 42 . In receive, it operates in reverse, taking High Speed Serial Data (HDRX) on line 44 and creating Low Speed Parallel Data (LDRX) on line 46 . In addition, the receive operation also recovers a Low Speed Clock (LDCK) on line 48 from the serial data, that is phase aligned with the LDRX data.
  • LDTX Low Speed Parallel Data
  • HDTX High Speed Serial Data
  • HDTX High Speed Serial Data
  • LDRX Low Speed Parallel Data
  • LDCK Low Speed Clock
  • a Reference System Clock (REFCK) on line 49 is applied to a Phase Locked Loop 50 which multiplies the clock rate by a factor of 8 to provide a High Speed Clock (HSCK) on line 52 .
  • HSCK is applied to a parallel to serial register 54 and to a serial to parallel register 56 .
  • HSCK is also applied to a divide by 8 unit 58 and a chain of three toggles 60 .
  • the outputs of toggles 60 are detected by an edge detector device 62 which provides an output to divider unit 58 .
  • the output of divider unit 58 comprises the Low Speed Clock (LDCK) on line 48 .
  • LDCK Low Speed Clock
  • LDTX Low Speed Data
  • REFCK Reference Clock
  • the Reference Clock will be multiplied in frequency eight times by Phase Locked Loop (PLL) 50 to create High Speed Clock (HSCK) on line 52 .
  • LDTX data on line 40 will be loaded into a Parallel Serial Output (PISO) register 54 at the REFCK rate, and clocked out serially at the HSCK rate to form HDTX data on line 42 .
  • PISO Parallel Serial Output
  • the High Speed Clock (HSCK) will be divided by eight at 58 to create a Low Speed Clock (LDCK) output.
  • the phase of this clock must be adjusted so that its associated Low Speed Data (LDRX) is stable at the time of the active edge of LDCK. This is done by edge detection and phase adjustment circuit 60 , 62 which monitors the High Speed Data (HDRX) on line 44 .
  • HDRX is also passed into a Serial Parallel Output (SIPO) register 56 to create the Low Speed Received Parallel Data (LDRX) on line 46 .
  • SIPO Serial Parallel Output
  • the number of transmit and sub-links are replicated 8 times in this example. However, there will generally only be a single PLL per CDRM macrocell.
  • the serial links are passed through CDRM macrocell 22 , and a W bit word and clock will be recovered for each of the N serial links.
  • the CDRM 22 has no knowledge of the boundary between one W bit word and the next within the serial data stream and it is therefore the first task of the Interface 20 to identify the correct bit alignment within each sub-link. Having recovered the W bit words for each sub-link, all N of the W bit words have to be aligned and synchronised to recreate the original DW width word.
  • the bit alignment is achieved by the transmit side sending consecutive initialisation words constructed by ASIC 2 .
  • a register 24 that is 2W words wide holds the previously received and Previous & Current Word Bit Alignment 10111000xxxxxxxx 0 x10111000xxxxxxx 1 xx10111000xxxxxx 2 xxx10111000xxxxx 3 xxxx10111000xxxx 4 xxxxx10111000xxx 5 xxxxxx10111000xx 6 xxxxxxx10111000x 7 currently received words of W bits as shown in the above table.
  • the initialisation word is sent at least twice followed by another synchronisation word (user defined) delimiter to indicate the start of transmission of true data.
  • the position of the word is located in the register by means of a state machine (not shown) and this information is relayed to subsequent stages.
  • each ASIC transmitting/receiving interface will respectively create/recreate a cyclic redundancy code (CRC) from the true data.
  • CRC cyclic redundancy code
  • the CRC words are inserted at a pre-determined interval, programmed to both transmit and receive sides. After this interval the transmitted CRC should equal the recreated CRC. If not, then either bit alignment has been lost or a corruption has occurred during the transmission of the data. This provides an Integrity Check individually on each of the serial links.
  • the parallel words are placed in a bit alignment register 24 in each sub-link for detecting bit alignment. This is effected by a state machine (not shown) locking onto the position of the initialisation word within the register, and passing the bit aligned word to the next stage. In the next stage, an Integrity Check is performed on the CRC word at 26 .
  • the bit alignment and the Integrity Check are performed in each sub-link using the recovered clock generated for that serial link.
  • the recovered clock generated for that serial link There is no guarantee of any phase relationship between any of the N recovered clock (RCK[n])s, and each of the recovered clocks may be jittering (except that the recovered clocks will be within one clock cycle of one another).
  • the average frequency of all recovered clocks and that of the Transfer Clock, CK, on the transmit side must be exactly the same, since the reference clock to both the transmit and receive ASICs will be driven from the same crystal oscillator.
  • a mechanism is therefore required to re-align the N recovered sub-words and resynchronise the wide data word back to the Transfer Clock, CK. This is done by using a short First In First Out (FIFO) 28 , 6 words long, at the end of each serial link.
  • FIFO First In First Out
  • the recovered sub-word plus a marker bit (W+1 bits) is written to the FIFO 28 by its associated recovered clock on line 48 .
  • the marker bit indicates whether that data word was Transmitted Synchronisation or Integrity Check Word.
  • the very first word to be written by each of the links will be a synchronisation word (marker bit set) and the second will be the first sub-word of true data.
  • the first write will occur at a slightly different time for each link, but by the time the second write occurs, all will have written at least once.
  • the addressing of the FIFOs may use Johnson coding, as more clearly seen in FIG. 3 .
  • An address generator 32 provides a Johnson scheme of addressing to the write read address 34 of the respective FIFO 28 .
  • the initial value of the address is 011 and the address scheme changes as indicated in FIG. 3 .
  • the most significant bit of the addresses of the sub-links are coupled by lines 36 to an OR gate 38 .
  • the output of the OR gate 38 is coupled by two metastability registers 70 to provide a trigger signal on line 72 to a state machine 74 .
  • State machine 74 provides an output on line 76 to control the reading out of the FIFO registers 28 .
  • the very first FIFO read will all be synchronised sub-words but the second will be the recovery of the first true wide data word.
  • the output of the FIFOs are applied to a Word Aligner register 78 which reconstitutes the original data word 80 ( FIG. 2 ).
  • Word Alignment is checked at the same programmed interval used by the bit alignment, because at this time, and only at this time, all of the marker bits in each of the N FIFO's will be set.
  • the scheme outlined provides a robust high speed, high bandwidth local link by using a number of serial asynchronous links in parallel.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Communication Control (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

In order to enable high speed, high bandwidth data transfer between two ASIC devices, for example in a backplane, a wide parallel input data word is divided into a smaller number of words, and each smaller word is converted to serial form and then transmitted over a respective sub-link at a high clock rate relative to the system clock. At the receiving side, the clock is recovered from the serial words, and the serial words are converted back to parallel form. An alignment process is then carried out, firstly involving detecting the positions of the bits of the words and then storing the words in a buffer FIFO register. The words are clocked out of the FIFO register in synchronism under control of the system clock once it is detected that valid words are received in the FIFO registers.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This application is a continuation of U.S. patent application Ser. No. 09/808,664 filed Mar. 15, 2001, which claims priority to Great Britain Application No. 0006291.9 filed Mar. 15, 2000, each of which is hereby incorporated by reference in its entirety.
  • BACKGROUND
  • 1. Field of the Invention
  • The present invention relates to a data communication link for high speed, high bandwidth applications.
  • 2. Description of the Related Art
  • In applications such as providing a data communication link between two Application Specific Integrated Circuits (ASICs) in a local backplane of a computing system, very high data rates may be required, e.g., an average data rate of at least 4.8 Gigabits per second (Gbps). The data link may be 64 bits wide.
  • Of the various possibilities for implementing such a link, it is possible to provide an interface that transfers data from the transmitting ASIC to the receiving ASIC as a single parallel word with a synchronising clock signal running at the system clock rate CK, say 78 MHz. However, for a data word of 64 bits to achieve a data transfer rate of 4.8 Gbps this would require 65 device pins, which for many applications would be either impractical or too costly to provide in the ASICs.
  • A synchronous interface could be used using a smaller number of pins, by multiplexing a 64 bit wide data word N times onto W bits (=64/N) and by providing a synchronising clock. However with a clock signal running at 78 MHz, the bandwidth would be reduced to W*CK=BW/N, which would give an unacceptably slow data transfer rate.
  • In order to achieve a bandwidth of 4.8 Gbps, the transfer rate may be multiplied N times. A synchronous interface which has a resultant Transfer Clock, N*CK, of less than 200 MHz may be practical. Above 200 MHz, which would be necessary to achieve the desired transfer rate of 4.8 Gbps, each data bit would be valid for a maximum of 5 ns, reducing further when rise-fall times of the interconnect signals and input/output buffers are included. The task of achieving a robust design, ensuring that all W bits are aligned such that the synchronising clock can always capture valid data bytes at the receiving ASIC, is far from trivial.
  • SUMMARY OF THE INVENTION
  • With a view to avoiding the above noted problems, the invention provides a method for transmitting data, comprising the steps of: (a) responsive to a system clock, generating a transfer clock at a high rate relative to the system clock; (b) dividing an input word into a plurality of smaller words; and (c) transmitting the plurality of smaller words over corresponding serial sub-links in response to the transfer clock.
  • In an alternative embodiment, the invention further provides a method for receiving data, comprising the steps of: (a) converting received serial data words from a plurality of serial sub-links into parallel form; and (b) responsive to the received data, generating a low speed clock with a frequency nominally equal to a system clock.
  • The invention further provides a data transmitter having: a transfer clock generator, responsive to the system clock, generating a transfer clock at a high rate relative to the system clock; and a parallel to serial register, for dividing an input word into a plurality of smaller words and transmitting them over corresponding serial sub-links in response to the transfer clock.
  • In an alternative embodiment, the invention still further provides a receiver having: a plurality of serial to parallel registers coupled to corresponding serial sub-links, for converting received serial data words from the sub-links into parallel form; and a clock generator, responsive to the received data, for generating a low speed clock with a frequency nominally equal to the system clock.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • A preferred embodiment of the invention will now be described with reference to the accompanying drawings wherein:
  • FIG. 1 is a schematic view of the transmit interface of a first ASIC of the data communication link of the invention;
  • FIG. 2 is a schematic block diagram of the receive interface of a second ASIC of the data communication link of the invention;
  • FIG. 3 is a more detailed diagram of the control mechanism for aligning received words in each sub-link of the link of FIGS. 1 and 2; and
  • FIG. 4 is a schematic block diagram of a Clock Data Recovery Module (CDRM) used in both the interfaces of FIGS. 1 and 2.
  • DETAILED DESCRIPTION
  • Referring to FIGS. 1 and 2 of the drawing, a Link Interface between first and second ASICs 2, 4 includes an interface 6 in ASIC 2. In one embodiment:
    DW=W*N
    Where;
  • DW=Bit width of wide data word
  • W=Bit width of sub-data word
  • N=An integer value, greater than 1
  • The data bandwidth across the link is given as;
    BW=DW*CK
    Where;
  • BW=Bandwidth in Mega bits per second (Mbps)
  • CK=Transfer Clock in Mega Hertz (MHz)
  • For example, W=8, N=8, DW=64. The Transfer Clock, CK, is 78 MHz giving a BW of 4992 Mbps. However the invention is not limited to these specific values.
  • Interface 6 in ASIC 2 has a register 8 for breaking down the wide input data words, DW, into N (in this embodiment 8) smaller sub-words W (each 8 bits long). Each sub-word W is treated independently, using a Clock Data Recovery Module 10 (CDRM) macrocell. CDRM 10 has a multiplier 12 for multiplying the clock CK, W (8) times and respective parallel to serial (PISO) converters 14 for operating on each of N, W bit words. Each serial word is transmitted over a respective sub-link 16.
  • Referring to FIG. 2, the receive ASIC 4 has an interface 20. The serial links 16 are coupled to another CDRM macrocell 22, in which a parallel W bit word and clock is recovered for each of the N serial links.
  • FIG. 4 shows in more detail a CDRM 10, 22. The module 10, 22 has two primary functions. In transmit, it takes Low Speed Parallel Data (LDTX) on line 40 and creates High Speed Serial Data (HDTX) on line 42. In receive, it operates in reverse, taking High Speed Serial Data (HDRX) on line 44 and creating Low Speed Parallel Data (LDRX) on line 46. In addition, the receive operation also recovers a Low Speed Clock (LDCK) on line 48 from the serial data, that is phase aligned with the LDRX data. A Reference System Clock (REFCK) on line 49 is applied to a Phase Locked Loop 50 which multiplies the clock rate by a factor of 8 to provide a High Speed Clock (HSCK) on line 52. HSCK is applied to a parallel to serial register 54 and to a serial to parallel register 56. HSCK is also applied to a divide by 8 unit 58 and a chain of three toggles 60. The outputs of toggles 60 are detected by an edge detector device 62 which provides an output to divider unit 58. The output of divider unit 58 comprises the Low Speed Clock (LDCK) on line 48. The operation of the circuit of FIG. 4 is as follows:
  • For Transmit, Low Speed Data (LDTX) on line 40 will be presented to the CDRM at the rate of the Reference Clock (REFCK). The Reference Clock will be multiplied in frequency eight times by Phase Locked Loop (PLL) 50 to create High Speed Clock (HSCK) on line 52. LDTX data on line 40 will be loaded into a Parallel Serial Output (PISO) register 54 at the REFCK rate, and clocked out serially at the HSCK rate to form HDTX data on line 42.
  • For Receive, the High Speed Clock (HSCK) will be divided by eight at 58 to create a Low Speed Clock (LDCK) output. However, the phase of this clock must be adjusted so that its associated Low Speed Data (LDRX) is stable at the time of the active edge of LDCK. This is done by edge detection and phase adjustment circuit 60, 62 which monitors the High Speed Data (HDRX) on line 44. HDRX is also passed into a Serial Parallel Output (SIPO) register 56 to create the Low Speed Received Parallel Data (LDRX) on line 46. The output from the SIPO 56 will be enabled on the opposite edge to the active edge of its associated clock LDCK.
  • The number of transmit and sub-links are replicated 8 times in this example. However, there will generally only be a single PLL per CDRM macrocell.
  • On the receive side, the serial links are passed through CDRM macrocell 22, and a W bit word and clock will be recovered for each of the N serial links. The CDRM 22 has no knowledge of the boundary between one W bit word and the next within the serial data stream and it is therefore the first task of the Interface 20 to identify the correct bit alignment within each sub-link. Having recovered the W bit words for each sub-link, all N of the W bit words have to be aligned and synchronised to recreate the original DW width word.
  • The bit alignment is achieved by the transmit side sending consecutive initialisation words constructed by ASIC 2. These initialisation words (of W bits) have the property that however many times the word is shifted right or left within another word that is 2W bits wide, there is a unique position that defines the bit alignment. For example consider an initialisation word, for W=8, of “10111000”. A register 24 that is 2W words wide holds the previously received and
    Previous & Current Word Bit Alignment
    10111000xxxxxxxx 0
    x10111000xxxxxxx 1
    xx10111000xxxxxx 2
    xxx10111000xxxxx 3
    xxxx10111000xxxx 4
    xxxxx10111000xxx 5
    xxxxxx10111000xx 6
    xxxxxxx10111000x 7

    currently received words of W bits as shown in the above table. The initialisation word is sent at least twice followed by another synchronisation word (user defined) delimiter to indicate the start of transmission of true data. The position of the word is located in the register by means of a state machine (not shown) and this information is relayed to subsequent stages.
  • During transmission, each ASIC transmitting/receiving interface will respectively create/recreate a cyclic redundancy code (CRC) from the true data. The CRC words are inserted at a pre-determined interval, programmed to both transmit and receive sides. After this interval the transmitted CRC should equal the recreated CRC. If not, then either bit alignment has been lost or a corruption has occurred during the transmission of the data. This provides an Integrity Check individually on each of the serial links.
  • Thus, as shown in FIG. 2, subsequent to parallel conversion in CDRM 22, the parallel words are placed in a bit alignment register 24 in each sub-link for detecting bit alignment. This is effected by a state machine (not shown) locking onto the position of the initialisation word within the register, and passing the bit aligned word to the next stage. In the next stage, an Integrity Check is performed on the CRC word at 26.
  • The bit alignment and the Integrity Check are performed in each sub-link using the recovered clock generated for that serial link. There is no guarantee of any phase relationship between any of the N recovered clock (RCK[n])s, and each of the recovered clocks may be jittering (except that the recovered clocks will be within one clock cycle of one another). However, the average frequency of all recovered clocks and that of the Transfer Clock, CK, on the transmit side must be exactly the same, since the reference clock to both the transmit and receive ASICs will be driven from the same crystal oscillator. A mechanism is therefore required to re-align the N recovered sub-words and resynchronise the wide data word back to the Transfer Clock, CK. This is done by using a short First In First Out (FIFO) 28, 6 words long, at the end of each serial link.
  • The recovered sub-word plus a marker bit (W+1 bits) is written to the FIFO 28 by its associated recovered clock on line 48. The marker bit indicates whether that data word was Transmitted Synchronisation or Integrity Check Word. The very first word to be written by each of the links, will be a synchronisation word (marker bit set) and the second will be the first sub-word of true data. The first write will occur at a slightly different time for each link, but by the time the second write occurs, all will have written at least once. The addressing of the FIFOs may use Johnson coding, as more clearly seen in FIG. 3. An address generator 32 provides a Johnson scheme of addressing to the write read address 34 of the respective FIFO 28.
  • The initial value of the address is 011 and the address scheme changes as indicated in FIG. 3. The most significant bit of the addresses of the sub-links are coupled by lines 36 to an OR gate 38. The output of the OR gate 38 is coupled by two metastability registers 70 to provide a trigger signal on line 72 to a state machine 74. State machine 74 provides an output on line 76 to control the reading out of the FIFO registers 28.
  • Thus, only a single address bit of FIFO's 28 changes per write and by ensuring that the top address bit is set on the second write, that address bit can be logically OR'd with the equivalent bit from all N links. This single bit signal, which goes high when the first word in a sub-link is received, is resynchronised via the metastability registers 70. By this time, since it is known all FIFO registers will be written to within a clock cycle of one another, all FIFO's will contain words, and the state machine 74 triggers the Word Aligner to read from all N FIFO's in parallel at the Transfer Clock rate, CK. This read should therefore occur when each of the FIFOs contain approximately four words. As the average frequency of the read and write clocks to the FIFO is the same each FIFO should always contain approximately four words. A FIFO that is at least six deep will isolate against jitter on the recovered clocks.
  • The very first FIFO read will all be synchronised sub-words but the second will be the recovery of the first true wide data word. The output of the FIFOs are applied to a Word Aligner register 78 which reconstitutes the original data word 80 (FIG. 2). Word Alignment is checked at the same programmed interval used by the bit alignment, because at this time, and only at this time, all of the marker bits in each of the N FIFO's will be set.
  • The scheme outlined provides a robust high speed, high bandwidth local link by using a number of serial asynchronous links in parallel.
  • Thus, it will now be understood that there has been disclosed a new method and apparatus for providing a data communication link. While the invention has been particularly illustrated and described with reference to preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form, details, and applications may be made therein. It is accordingly intended that the appended claims shall cover all such changes in form, details and applications which do not depart from the true spirit and scope of the invention.

Claims (10)

1. A method for transmitting data over a communication link between a first integrated circuit having a system clock and a second integrated circuit, comprising the steps of:
a. responsive to the system clock, generating a transfer clock at a high rate relative to the system clock;
b. sending one or more bit alignment code words to initialize the communication link;
c. dividing an input word into a plurality of smaller words; and
d. transmitting the plurality of smaller words over corresponding serial sub-links in response to the transfer clock.
2. The method of claim 1, further comprising the step of:
e. transmitting a CRC code word at predetermined intervals.
3. A method for receiving data transmitted over a communication link having a plurality of serial sub-links at an integrated circuit having a system clock, comprising the steps of:
a. receiving a plurality of serial data words over the plurality of serial sub-links;
b. responsive to the plurality of serial data words, generating a low speed clock with a frequency nominally equal to the system clock;
c. storing the received serial data words for each sub-link in a plurality of buffer memories corresponding respectively to each sub-link; and
d. reading the buffer memories in synchronism under control of the system clock in order to reconstitute each data word in parallel form.
4. The method according to claim 3, wherein the buffer memories are FIFO registers.
5. The method according to claim 4, wherein the step c. of storing received data words comprises the step of:
e. addressing the buffer memories by changing only one bit of the address for each incremental address.
6. The method according to claim 5, wherein the step d. of reading the buffer memories comprises the steps of:
f. comparing a predetermined bit of the address of each FIFO; and
g. generating a trigger signal to actuate a state machine to cause reading of the FIFO registers.
7. A method for receiving data transmitted over a communication link having a plurality of serial sub-links at an integrated circuit having a system clock, comprising the steps of:
a. receiving a plurality of serial data words over the plurality of serial sub-links;
b. storing the received serial data words for each sub-link in a plurality of serial-to-parallel registers corresponding to the serial sub-links;
c. responsive to the plurality of serial data words, generating a low speed clock with a frequency nominally equal to the system clock;
d. detecting one or more edges of the received serial data words;
e. based on the one or more detected edges, aligning the low speed clock with the plurality of serial data words; and
f. applying the low speed clock to the plurality of serial-to-parallel registers for clocking out parallel words from the plurality of serial-to-parallel registers.
8. The method according to claim 7, further comprising the step of:
g. storing the received bit alignment words in a bit alignment register in order to locate the position of the bits in the plurality of serial-to-parallel registers.
9. The method according to claim 8, further comprising the steps of:
h. generating a CRC code word in response to the received data; and
i. checking a received CRC code word against the generated CRC code word.
10. A method for communicating data over a communication link between a first integrated circuit having a first system clock and a second integrated circuit having a second system clock, comprising the steps of:
a. responsive to the first system clock, generating a transfer clock at a high rate relative to the first system clock;
b. sending one or more bit alignment code words from the first integrated circuit to the second integrated circuit to initialize the communication link;
c. dividing an input word into a plurality of smaller words;
d. transmitting the plurality of smaller words from the first integrated circuit to the second integrated circuit over a corresponding plurality of serial sub-links in response to the transfer clock;
e. receiving, at the second integrated circuit, the plurality of smaller words over the plurality of serial sub-links;
f. responsive to the plurality of serial data words, generating a low speed clock with a frequency nominally equal to the second system clock;
g. storing the received serial data words for each sub-link in a plurality of buffer memories corresponding respectively to each sub-link; and
h. reading the buffer memories in synchronism under control of the second system clock in order to reconstitute each data word in parallel form.
US11/386,418 2000-03-15 2006-03-22 Method for data communication Abandoned US20060187968A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/386,418 US20060187968A1 (en) 2000-03-15 2006-03-22 Method for data communication

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
GBGB0006291.9A GB0006291D0 (en) 2000-03-15 2000-03-15 Data communication link
GB0006291.9 2000-03-15
US09/808,664 US7031347B2 (en) 2000-03-15 2001-03-15 Data communication link
US11/386,418 US20060187968A1 (en) 2000-03-15 2006-03-22 Method for data communication

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US09/808,664 Continuation US7031347B2 (en) 2000-03-15 2001-03-15 Data communication link

Publications (1)

Publication Number Publication Date
US20060187968A1 true US20060187968A1 (en) 2006-08-24

Family

ID=9887706

Family Applications (2)

Application Number Title Priority Date Filing Date
US09/808,664 Expired - Fee Related US7031347B2 (en) 2000-03-15 2001-03-15 Data communication link
US11/386,418 Abandoned US20060187968A1 (en) 2000-03-15 2006-03-22 Method for data communication

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US09/808,664 Expired - Fee Related US7031347B2 (en) 2000-03-15 2001-03-15 Data communication link

Country Status (4)

Country Link
US (2) US7031347B2 (en)
EP (1) EP1134668B1 (en)
DE (1) DE60136025D1 (en)
GB (1) GB0006291D0 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050275674A1 (en) * 2004-05-26 2005-12-15 Hao-Feng Hung General serial interface system
US20080117994A1 (en) * 2006-11-17 2008-05-22 Intersil Americas Inc. Use of differential pair as single-ended data paths to transport low speed data
US20100262887A1 (en) * 2009-04-13 2010-10-14 Lockheed Martin Corporation High Integrity Data Network System and Method

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7137048B2 (en) 2001-02-02 2006-11-14 Rambus Inc. Method and apparatus for evaluating and optimizing a signaling system
US7490275B2 (en) 2001-02-02 2009-02-10 Rambus Inc. Method and apparatus for evaluating and optimizing a signaling system
US6873939B1 (en) 2001-02-02 2005-03-29 Rambus Inc. Method and apparatus for evaluating and calibrating a signaling system
US7231558B2 (en) 2002-03-18 2007-06-12 Finisar Corporation System and method for network error rate testing
US7032139B1 (en) * 2002-03-18 2006-04-18 Finisar Corporation Bit error rate tester
JP4407104B2 (en) * 2002-08-30 2010-02-03 富士ゼロックス株式会社 Signal transmission system
US7076377B2 (en) 2003-02-11 2006-07-11 Rambus Inc. Circuit, apparatus and method for capturing a representation of a waveform from a clock-data recovery (CDR) unit
US7336749B2 (en) 2004-05-18 2008-02-26 Rambus Inc. Statistical margin test methods and circuits
US7627029B2 (en) 2003-05-20 2009-12-01 Rambus Inc. Margin test methods and circuits
US8572289B1 (en) * 2003-12-19 2013-10-29 Nvidia Corporation System, method and computer program product for stateless offloading of upper level network protocol operations
US7434192B2 (en) * 2004-12-13 2008-10-07 Altera Corporation Techniques for optimizing design of a hard intellectual property block for data transmission
US7936793B2 (en) * 2005-04-01 2011-05-03 Freescale Semiconductor, Inc. Methods and apparatus for synchronizing data transferred across a multi-pin asynchronous serial interface
GB2442501B (en) * 2006-10-05 2011-04-13 Advanced Risc Mach Ltd Apparatus and method for data processing having an on-chip or off-chip interconnect between two or more devices
JP4336860B2 (en) * 2007-02-21 2009-09-30 日本電気株式会社 Serial interface circuit and serial receiver
US8627156B1 (en) * 2010-10-26 2014-01-07 Agilent Technologies, Inc. Method and system of testing bit error rate using signal with mixture of scrambled and unscrambled bits
JP7041125B6 (en) * 2016-09-02 2022-05-30 コーニンクレッカ フィリップス エヌ ヴェ Ultrasonic probe including low frequency low voltage digital microbeam former

Citations (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3811014A (en) * 1973-03-12 1974-05-14 Logicon Inc Adaptive pulse code modulation system
US5291488A (en) * 1990-04-16 1994-03-01 Motorola, Inc. Communication system configuration data management
US5420896A (en) * 1990-12-14 1995-05-30 Interdigital Technology Corporation Synchronous spread-spectrum communications system and method
US5426644A (en) * 1991-09-12 1995-06-20 Fujitsu Limited Parallel code transmission method and apparatus of the same
US5522088A (en) * 1994-06-17 1996-05-28 International Business Machines Corporation Shared channel subsystem has a self timed interface using a received clock signal to individually phase align bits received from a parallel bus
US5570356A (en) * 1995-06-07 1996-10-29 International Business Machines Corporation High bandwidth communications system having multiple serial links
US5751724A (en) * 1996-02-23 1998-05-12 Dsc Communications Corporation Demultiplexer for a multi-bitline bus
US6140926A (en) * 1999-07-21 2000-10-31 Hewlett-Packard Company Redundant status indicators for fault tolerance
US6150922A (en) * 1997-01-23 2000-11-21 Lucent Technologies Inc. Serial communication technique
US6167077A (en) * 1997-12-23 2000-12-26 Lsi Logic Corporation Using multiple high speed serial lines to transmit high data rates while compensating for overall skew
US6201829B1 (en) * 1998-04-03 2001-03-13 Adaptec, Inc. Serial/parallel GHZ transceiver with pseudo-random built in self test pattern generator
US6202108B1 (en) * 1997-03-13 2001-03-13 Bull S.A. Process and system for initializing a serial link between two integrated circuits comprising a parallel-serial port using two clocks with different frequencies
US20020044555A1 (en) * 1993-06-08 2002-04-18 Toshiyuki Kamo Variable length frame exchanging method by fixed length cell handling exchange, variable length frame exchanging interface apparatus and call acceptance determination system for fixed length cell handling exchange
US6377575B1 (en) * 1998-08-05 2002-04-23 Vitesse Semiconductor Corporation High speed cross point switch routing circuit with word-synchronous serial back plane
US6408341B1 (en) * 1996-10-22 2002-06-18 International Business Machines Corporation Multi-tasking adapter for parallel network applications
US6577649B1 (en) * 1999-11-12 2003-06-10 International Business Machines Corporation Multiplexer for asynchronous data
US6594275B1 (en) * 1998-04-03 2003-07-15 Texas Instruments Incorporated Fibre channel host bus adapter having multi-frequency clock buffer for reduced power consumption
US6618395B1 (en) * 1999-05-27 2003-09-09 3Com Corporation Physical coding sub-layer for transmission of data over multi-channel media
US6667993B1 (en) * 1998-10-22 2003-12-23 Texas Instruments Incorporated Communication channel
US6738935B1 (en) * 2000-02-07 2004-05-18 3Com Corporation Coding sublayer for multi-channel media with error correction
US6775328B1 (en) * 1999-08-11 2004-08-10 Rambus Inc. High-speed communication system with a feedback synchronization loop
US7317720B2 (en) * 2002-08-30 2008-01-08 Fuji Xerox Co., Ltd. Signal transmission system

Patent Citations (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3811014A (en) * 1973-03-12 1974-05-14 Logicon Inc Adaptive pulse code modulation system
US5291488A (en) * 1990-04-16 1994-03-01 Motorola, Inc. Communication system configuration data management
US5420896A (en) * 1990-12-14 1995-05-30 Interdigital Technology Corporation Synchronous spread-spectrum communications system and method
US5426644A (en) * 1991-09-12 1995-06-20 Fujitsu Limited Parallel code transmission method and apparatus of the same
US20020044555A1 (en) * 1993-06-08 2002-04-18 Toshiyuki Kamo Variable length frame exchanging method by fixed length cell handling exchange, variable length frame exchanging interface apparatus and call acceptance determination system for fixed length cell handling exchange
US5522088A (en) * 1994-06-17 1996-05-28 International Business Machines Corporation Shared channel subsystem has a self timed interface using a received clock signal to individually phase align bits received from a parallel bus
US5570356A (en) * 1995-06-07 1996-10-29 International Business Machines Corporation High bandwidth communications system having multiple serial links
US5751724A (en) * 1996-02-23 1998-05-12 Dsc Communications Corporation Demultiplexer for a multi-bitline bus
US6408341B1 (en) * 1996-10-22 2002-06-18 International Business Machines Corporation Multi-tasking adapter for parallel network applications
US6150922A (en) * 1997-01-23 2000-11-21 Lucent Technologies Inc. Serial communication technique
US6202108B1 (en) * 1997-03-13 2001-03-13 Bull S.A. Process and system for initializing a serial link between two integrated circuits comprising a parallel-serial port using two clocks with different frequencies
US6167077A (en) * 1997-12-23 2000-12-26 Lsi Logic Corporation Using multiple high speed serial lines to transmit high data rates while compensating for overall skew
US6201829B1 (en) * 1998-04-03 2001-03-13 Adaptec, Inc. Serial/parallel GHZ transceiver with pseudo-random built in self test pattern generator
US6594275B1 (en) * 1998-04-03 2003-07-15 Texas Instruments Incorporated Fibre channel host bus adapter having multi-frequency clock buffer for reduced power consumption
US6377575B1 (en) * 1998-08-05 2002-04-23 Vitesse Semiconductor Corporation High speed cross point switch routing circuit with word-synchronous serial back plane
US6667993B1 (en) * 1998-10-22 2003-12-23 Texas Instruments Incorporated Communication channel
US6618395B1 (en) * 1999-05-27 2003-09-09 3Com Corporation Physical coding sub-layer for transmission of data over multi-channel media
US6140926A (en) * 1999-07-21 2000-10-31 Hewlett-Packard Company Redundant status indicators for fault tolerance
US6775328B1 (en) * 1999-08-11 2004-08-10 Rambus Inc. High-speed communication system with a feedback synchronization loop
US6577649B1 (en) * 1999-11-12 2003-06-10 International Business Machines Corporation Multiplexer for asynchronous data
US6738935B1 (en) * 2000-02-07 2004-05-18 3Com Corporation Coding sublayer for multi-channel media with error correction
US7317720B2 (en) * 2002-08-30 2008-01-08 Fuji Xerox Co., Ltd. Signal transmission system

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050275674A1 (en) * 2004-05-26 2005-12-15 Hao-Feng Hung General serial interface system
US7396094B2 (en) * 2004-05-26 2008-07-08 Qisda Corporation General serial interface system
US20080117994A1 (en) * 2006-11-17 2008-05-22 Intersil Americas Inc. Use of differential pair as single-ended data paths to transport low speed data
US7953162B2 (en) * 2006-11-17 2011-05-31 Intersil Americas Inc. Use of differential pair as single-ended data paths to transport low speed data
US20110194595A1 (en) * 2006-11-17 2011-08-11 Intersil Americas Inc. Methods and systems for transmitting signals differentialy and single-endedly across a pair of wires
US8175173B2 (en) * 2006-11-17 2012-05-08 Intersil Americas Inc. Methods and systems for transmitting signals differentially and single-endedly across a pair of wires
US20100262887A1 (en) * 2009-04-13 2010-10-14 Lockheed Martin Corporation High Integrity Data Network System and Method

Also Published As

Publication number Publication date
EP1134668B1 (en) 2008-10-08
GB0006291D0 (en) 2000-05-03
EP1134668A2 (en) 2001-09-19
US20010033568A1 (en) 2001-10-25
US7031347B2 (en) 2006-04-18
EP1134668A3 (en) 2006-02-08
DE60136025D1 (en) 2008-11-20

Similar Documents

Publication Publication Date Title
US20060187968A1 (en) Method for data communication
EP0424774B1 (en) Clock distribution system and technique
US8625627B2 (en) Apparatus and method for controlling data transmission
US5020023A (en) Automatic vernier synchronization of skewed data streams
US6667993B1 (en) Communication channel
US7346819B2 (en) Through-core self-test with multiple loopbacks
US6792003B1 (en) Method and apparatus for transporting and aligning data across multiple serial data streams
JPH055711Y2 (en)
US6671753B2 (en) Elastic interface apparatus and method therefor
US8194652B2 (en) Serializer for generating serial clock based on independent clock source and method for serial data transmission
US5003558A (en) Data synchronizing buffers for data processing channels
US20080279224A1 (en) Alignment and Deskew For Multiple Lanes of Serical Interconnect
JP2004520649A (en) Source synchronous receiver link initialization and input floating control with clock detection and DLL lock detection
US6959015B1 (en) Method and apparatus for aligning multiple data streams and matching transmission rates of multiple data channels
US6671833B2 (en) Forward error correction and framing protocol
US7054356B2 (en) Method and apparatus for testing serial connections
US20060112293A1 (en) Interface for compressed data transfer between host system and parallel data processing system
US5410570A (en) Self synchronizing automatic correlator
US6920578B1 (en) Method and apparatus for transferring data between a slower clock domain and a faster clock domain in which one of the clock domains is bandwidth limited
US6577649B1 (en) Multiplexer for asynchronous data
US6643788B1 (en) Method for detecting a number of consecutive valid data frames and advancing into a lock mode to monitor synchronization patterns within a synchronization window
JP2596336B2 (en) Asynchronous digital communication device
US6597707B1 (en) Circuitry, architecture and methods for synchronizing data
KR930010778B1 (en) Data transmission line fault detecting circuit
JP3268337B2 (en) Line switching method

Legal Events

Date Code Title Description
AS Assignment

Owner name: LUCENT TECHNOLOGIES, INC., NEW JERSEY

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SPOONER, ROBERT JOHN;REEL/FRAME:017680/0483

Effective date: 20010123

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION