The invention relates to data communication and, in particular, to extending short-range data interfaces. The invention has particular application to extending the length of IEEE 1394b interfaces.
The IEEE 1394b interface (commonly known as ‘Firewire’) is often used to transfer time sensitive data streams such as audio or video between a peripheral device and a computer. The IEEE 1394b standard defines a high-speed serial bus. The IEEE 1394b interface is somewhat limited in the physical distance it can carry data by the maximum cable length of 4.5 m.
Gigabit Ethernet is a high-speed version of the dominant local area networking interface used to interconnect computers and other peripherals in home and office environments. The most common form of gigabit Ethernet can support network link distances over twisted-pair cables of up to 100 m.
There is a need for simple and cost-effective ways for extending the physical range of high speed serial interfaces such as IEEE 1394b interfaces.
This invention provides extended high-speed serial data interfaces and methods and apparatus for extending high-speed serial data interfaces. In some embodiments the high-speed serial interface is an IEEE 1349b interface. In some embodiments, data from an IEEE 1349b interface is transported over an intermediate link, which may comprise a gigabit Ethernet link. The intermediate link transparently carries the IEEE 1349b traffic.
Further aspects of the invention and features of specific embodiments of the invention are described below.
The accompanying drawings illustrate non-limiting embodiments of the invention.
Throughout the following description, specific details are set forth in order to provide a more thorough understanding of the invention. However, the invention may be practiced without these particulars. In other instances, well-known elements have not been shown or described in detail to avoid unnecessarily obscuring the invention. Accordingly, the specification and drawings are to be regarded in an illustrative, rather than a restrictive, sense.
In some embodiments, ethernet link 25 implements only the gigabit ethernet physical layer. It is not mandatory that data converters 22 have MAC addresses or implement OSI layer 2 or higher layers of the gigabit ethernet protocol. Frames of data transmitted over ethernet link 25 do not need to satisfy any particular formatting requirements other than the minimum framing required for operation of the ethernet physical layer to transport data between data converters 22A and 22B. Thus, data converters 22A and 22B can be relatively simple devices. Using minimal framing can reduce overhead and frame size. Optionally a MAC layer overhead could be added to permit standard layer 2 Ethernet networking devices such as switches to be present in ethernet segment 25. Providing such devices can increase the distance over which ethernet segment 25 can extend at the expense of latency.
The IEEE 1394b interface transfers data as a serial bit stream at a nominal rate of 983.4 Mbit/s. A gigabit ethernet link can transfer data at a nominal rate of approximately 1000 Mbit/s. Therefore, gigabit ethernet link 25 has a sufficient bandwidth to encapsulate the entire 1394b bit stream 30A as payload in Ethernet data stream 30B even when Ethernet protocol overhead is taken into account.
In the prototype embodiment, the 10-bit data stream is further parallelized into 40-bit words at a rate of 24.576 Mwords/s. These 40-bit words are written to a rate adaptation FIFO 40 so that the data can cleanly cross clock domains to the Ethernet data stream. This may be done, for example, by providing four 10-bit wide registers and directing 10-bit words of the 10-bit data stream into each of the four registers in turn until each of the registers has received a 10-bit word. Then, the four 10-bit words can be clocked into corresponding positions at the input of a 40-bit wide FIFO 40. Allocation of 10-bit words to the registers may be coordinated by providing a modulo-4 counter that controls switching logic to direct each 10-bit word into the next register.
The data is read out of rate adaptation FIFO 40 at a rate of 25 Mwords/s and broken up into standard 8-bit wide bytes. Ethernet framing data is then added to the byte stream. These steps are performed by data formatting logic 41. The resulting data is passed to an Ethernet PHY device 42 one byte at a time at a rate of 125 Mbytes/s. Only the minimal amount of framing overhead required by ethernet PHY device 42 needs to be added to the data stream. Data may be provided to Ethernet PHY device 42 in frames approximately 1300 bytes in length to minimize the percentage of bandwidth lost to framing overhead. Ethernet PHY device 42 transmits the frames over medium 26 (which could comprise a suitable cable or optical fibre for example). In some embodiments, media 26 comprises a standard Category 5 cable.
At the other end of medium 26, a similar process is followed in reverse to recreate the original 1394b serial bit stream. In the illustrated embodiment, ethernet PHY device 42 of data converter 22B receives ethernet frames. A data formatting circuit 43 strips ethernet frame data, assembles received data into 40-bit words and places the words into FIFO 44. At the output of FIFO 44 a parallel to serial converter 45 formats the data into a serial data stream that is transmitted by IEEE 1394 interface 35.
A feature of the illustrated embodiment is the mechanism provided to maintain synchronization of the 1394b and Ethernet clock domains. An embodiment of this mechanism is illustrated in
In the illustrated embodiment, each data converter 22 has a Phase Locked Loop (PLL) 50, an Ethernet clock 52 and an IEEE 1394 clock 54. IEEE 1394 clock 54 is synchronized to Ethernet clock 52 by dividing both clocks to a common frequency and locking the IEEE 1394 clock 54 to the Ethernet clock 52 using Phase Locked Loop (PLL) 50. In the illustrated embodiment, a first divider 56 divides the clock signal from ethernet clock 52 by a first factor and a second divider 57 divides the clock signal from IEEE 1394 clock 54 by a second factor such that outputs of first and second dividers 56 and 57 are at a common frequency.
In an example embodiment, ethernet clock 52 generates a 125 MHz clock signal for coordinating data transport over ethernet link 25. Ethernet clocks 52 at either end of Ethernet link 25 are locked to one another (the two clocks 52 effectively provide one clock domain). This is done automatically by the operation of the gigabit ethernet protocol.
IEEE 1394 clock 54 generates a clock signal at 98.304 MHz. In the example embodiment, dividers 56 and 57 each divide by a factor selected to produce an 8 kHz output. These outputs are passed to a phase comparator of PLL 50 which generates an output signal 59 that controls the frequency of IEEE 1394 clock 54. Any differences between the phases of the two 8 kHz signals causes output signal 59 to have a value such that it causes clock 54 to either speed up or slow down. Thus the frequency of IEEE 1394 clock 54 is controlled so that the phase difference between the 8 kHz signals remains constant. At this point, clocks 52 and 54 are locked.
When clocks 52 and 54 are locked there are no data overflows or underflows in FIFOs 40 or 44 or in other parts of data converters 22.
Embodiments of the invention permit 800 megabit per second IEEE-1394b data to be transmitted over common Category 5 cable. This may be done over distances significantly longer (e.g. 4 times longer or more, in some cases 20 times longer or more) than the 4.5 m maximum length of an IEEE 1394b cable.
The invention may be embodied in a range of ways including as:
data converters as described herein;
computer systems as described herein; and
data transmission methods as described herein.
The example embodiment described herein obtains the benefit of ethernet connectivity (low cost, reliable interface, long cables, ubiquitous infrastructure) while transparently maintaining the advantages of IEEE 1394b connectivity. The example embodiment described herein provides a cost-effective way to extend the distances over which existing cameras and other devices having IEEE 1394 interfaces can communicate.
Where a component (e.g. a PLL, circuit, etc.) is referred to above, unless otherwise indicated, reference to that component should be interpreted as including as equivalents of that component any component which performs the function of the described component (i.e., that is functionally equivalent), including components which are not structurally equivalent to the disclosed structure which performs the function in the illustrated exemplary embodiments of the invention.
As will be apparent to those skilled in the art in the light of the foregoing disclosure, many alterations and modifications are possible in the practice of this invention without departing from the spirit or scope thereof. For example:
This application claims the benefit under 35 U.S.C. §119 of U.S. patent application No. 61/040,515 filed 28 Mar. 2008 and entitled METHODS AND APPARATUS FOR EXTENDING SHORT RANGE DATA INTERFACES, which is hereby incorporated herein by reference.
| Number | Date | Country | |
|---|---|---|---|
| 61040515 | Mar 2008 | US |