WO2001008366A9 - Appareil et procede destines au controle d'acces au support - Google Patents

Appareil et procede destines au controle d'acces au support

Info

Publication number
WO2001008366A9
WO2001008366A9 PCT/US2000/019979 US0019979W WO0108366A9 WO 2001008366 A9 WO2001008366 A9 WO 2001008366A9 US 0019979 W US0019979 W US 0019979W WO 0108366 A9 WO0108366 A9 WO 0108366A9
Authority
WO
WIPO (PCT)
Prior art keywords
network
devices
lanes
stream
data
Prior art date
Application number
PCT/US2000/019979
Other languages
English (en)
Other versions
WO2001008366A8 (fr
WO2001008366A1 (fr
Inventor
Robert D Hoover
Frank Zdybel Jr
Kerry E Lynn
Manoj Bhatnagar
Marie-Dominique Baudot
Philip J Pines
Roger C Meike
Saba Rahman
Timothy A Ryan
Original Assignee
Centillium Communications Inc
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 Centillium Communications Inc filed Critical Centillium Communications Inc
Publication of WO2001008366A1 publication Critical patent/WO2001008366A1/fr
Publication of WO2001008366A8 publication Critical patent/WO2001008366A8/fr
Publication of WO2001008366A9 publication Critical patent/WO2001008366A9/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40058Isochronous transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2838Distribution of signals within a home automation network, e.g. involving splitting/multiplexing signals to/from different paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40065Bandwidth and channel allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40117Interconnection of audio or video/imaging devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
    • H04L25/4917Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using multilevel codes
    • H04L25/4919Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using multilevel codes using balanced multilevel codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0685Clock or time synchronisation in a node; Intranode synchronisation
    • H04J3/0694Synchronisation in a TDMA node, e.g. TTP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L2012/284Home automation networks characterised by the type of medium used
    • H04L2012/2845Telephone line
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals

Definitions

  • This invention relates generally to network interconnection and control of multiple electronic and consumer devices, and in particular to synchronous networks optimized for transmission of digital media streams.
  • existing home theater and home automation systems interconnect devices with dedicated media-specific cables (audio and video cables, speaker wire, etc.), and provide separate controls (e.g., infrared remote controls, X10 control networks, and so forth).
  • These home theater systems quickly become unwieldy as devices are added (including the "spaghetti” of interconnecting cables), in part because such devices typically do not all "speak the same language.”
  • Users are faced with the complex task of having to "program” or configure their system to perform even relatively simple tasks, such as turning the system on and off, or using a "universal" remote control (e.g., to watch or record a television program or videotape, laserdisc, or satellite broadcast)
  • digital media and services e.g., audio compact disks (CDs), direct satellite service (DSS) or digital video broadcast (DVB) from digital satellite broadcasts, and digital video disk (DVD) movies
  • CDs compact disks
  • DSS direct satellite service
  • DVD digital video broadcast
  • a network distributing digital media and control information to devices has significant advantages. First, it is easier and less expensive to distribute information in a digital environment than it is to distribute and route analog audio and video streams to devices throughout a home or other environment, or process (e.g., record, mix, and otherwise modify) information along the way. Second, software control over individual "samples" of digital media provides significant new functionality that is not feasible in an analog domain. In a digital domain, all information (e.g., from audio, video, other digital media streams, custom commands, and asynchronous network protocols) can be distributed, processed, and controlled using the binary language spoken by virtually all of today's computer hardware and software, including dedicated hardware state machines, "smart" controllers, and general purpose central processing unit (CPU) based devices.
  • CPU central processing unit
  • users could decide to record a movie after watching the first 15 minutes, or record a song after hearing it in its entirety.
  • users can easily select a variety of programs to be recorded (e.g., over the course of a week) without having to worry about switching tapes in a videocassette recorder (VCR).
  • Additional telephone lines, or complex private branch exchange (PBX) functionality could be integrated into the system, all under software control for greater flexibility. Playing and recording digital media streams can be as simple as reading and writing a disk drive, as will be explained below.
  • a particularly important network parameter is the reliability of on- time delivery of time-sensitive data, sometimes called "quality of service.”
  • Quality of service in many prior-art networks is low, because many network protocols are collision-based (i.e., there is no handshaking or allocation of network resources between devices to preclude the need for repeat transmissions of time-sensitive data on congested networks).
  • Audio, video, and other media are examples of time-sensitive data, and any network to distribute time-sensitve data must have a high quality of service in order to be practical.
  • Each source device such as a satellite receiver, VCR, laserdisc, or DVD player
  • a "central" preamplifier or other form of switching device typically is connected, by relatively expensive audio and video cables, to a "central" preamplifier or other form of switching device, which is also connected to a main television/monitor as well as to one or more power amplifiers.
  • These power amplifiers are also connected to various speakers throughout the room by dedicated (and also expensive) speaker cables.
  • Such a cabling scheme is expensive, obtrusive, and difficult to maintain, even in one room and especially in multiple rooms.
  • Removing a defective VCR from a rack of equipment often requires reconnecting cables in a new configuration just to enable the rest of the system to function while the VCR is being repaired.
  • flexibility is limited, even with relatively high-end preamplifiers. Only a limited number of source devices can be accommodated by any dedicated device interconnection scheme. It is often prohibitively expensive to replace a high-end preamplifier merely because it will not accommodate the latest source device added to the system. Users therefore still may suffer the inconvenience of connecting and disconnecting cables manually to switch sources.
  • Home automation networks do not allow for sufficiently flexible control over streams of audio, video and other media, except at the most basic level of switching from one device to another.
  • Existing home automation networks do not take advantage of the advent of digital media, continues to be distributed in analog form over a separate network, distinct from the control network that is the primary focus of such home automation networks. The result, as noted above, is a highly complex and expensive system that is difficult to set up, use, and maintain.
  • media and information data services e.g., the Internet
  • Computer users are now recording television shows and using telephone transmission over the Internet.
  • Cable television operators are now providing telephone and data services.
  • Telephone companies are now offering data, video, and digital telephones. Therefore, the need for one integrated network to handle all of the converging media and information data services is rapidly increasing beyond the capabilities of prior-art networks.
  • Ethernet for example, is not optimized to carry real-time continuous digital media streams. It is an asynchronous, packet-based protocol that would add significant overhead to digital audio and video samples, which require consistent and timely delivery, as opposed to the ability to send "burst" packets of information at high speeds on demand.
  • FireWire (described in the International Electrical and Electronic Engineer (IEEE) specification standard 1394)
  • IEEE International Electrical and Electronic Engineer
  • Firewire was not designed as a network protocol optimized for distributing real-time continuous digital media streams and control information among consumer electronics devices throughout a home.
  • FireWire devices are connected by a custom 6-wire cable, with two wires for power and two twisted-pairs for data. Devices can be daisy-chained to allow tree and other non- cyclic network topologies (i.e., no "loops" are allowed).
  • the bus configures itself in three phases: bus initialization, tree identification, and self-identification. Whenever a new node is connected or disconnected, a signal sends all nodes into an initialization state, whereupon each node resets all topological information in a distributed manner. In other words, each node determines its own connections and passes this information along to its neighboring nodes, and so on throughout the network. One node is selected as the "root" node, and a unique physical ID is assigned to each node (though physical IDs are reassigned every time the bus is reconfigured).
  • FireWire employs two different processes, called “sub-actions,” for distributing data packets among devices attached to the bus.
  • One sub-action is asynchronous, while the other sub-action is isochronous.
  • Asynchronous sub-actions begin with an arbitration period to determine which requesting device is granted control of the bus (because only one device can transmit at a time).
  • the winning node transmits certain transaction and other codes (for speed, format, etc.), along with its address and that of destination nodes, and variable-length data. If the packet is not a broadcast packet, there is a brief gap, followed by an acknowledgment from the destination node.
  • Asynchronous sub-actions are followed by "sub-action gaps,” which are required due to propagation delays.
  • Isochronous sub-actions are similar, but have a simpler arbitration process, a short channel identifier instead of source and destination addresses, no acknowledgment, and shorter gaps between sub-actions.
  • FireWire uses a relatively slow 8 kHz clock for isochronous transmissions. After all desired isochronous packets have been sent, the bus resumes asynchronous sub-actions.
  • FireWire Communication between devices on a FireWire bus is half-duplex (i.e., devices connected to two or more nodes cannot propagate incoming data while transmitting their own data).
  • FireWire devices employ a "data-strobe encoding" scheme (disclosed in U. S. Pat. No. 5,341,371), which involves transmitting data on one twisted-pair wire and a strobe signal on the other pair. The strobe signal transitions whenever two consecutive data bits are the same. This technique was believed to result in increased skew tolerance compared to a standard clocked format (such as 4B/5B or 8B/10B and clocked non-return to zero (NRZ) coding).
  • a standard clocked format such as 4B/5B or 8B/10B and clocked non-return to zero (NRZ) coding.
  • FireWire there are a number of obstacles to applying FireWire to real-time distribution of digital media streams among consumer electronics devices, particularly in light of its essentially asynchronous and half-duplex nature.
  • the installation cost of a FireWire network of consumer electronics devices is likely to be quite high.
  • Custom installation of FireWire cables is usually required throughout a house, despite the use of twisted-pair cables.
  • no mechanism for compatibility with existing UTP telephone wiring topologies is included in the FireWire specification.
  • FireWire devices themselves is likely to be quite high, due primarily to the asynchronous nature of FireWire. Because data packets are transmitted asynchronously, devices must be able to buffer incoming packets and generate timing information internally (i.e., "timestamps" associated with the data packets), which must be communicated to other devices. Moreover, the audio data rate can be almost doubled due to this buffering/time-stamping process, resulting in a significant loss of bandwidth. This results in complex and expensive devices, due to the memory, buffers, counters, and associated circuitry required to perform such functions.
  • FireWire has additional problems.
  • One significant limitation to FireWire is the total length of the connecting cable, which is limited in the current specification to 4.5 meters (unless extremely expensive fiber optic or other alternative cables are used). This short length is a significant limitation within a single room used for a typical home theater system, and is prohibitive in the context of a house-wide application, such as a home telephone PBX or multi-room digital audio and video distribution system.
  • Extensions to the Firewire standard now allow the network to be extended beyond 4.5 meters, but expensive protocol and media conversion boxes have to be installed on each end of a wire/fiber run. The network bandwidth for the whole system is limited by the low data rates possible over these other media. An asynchronous FireWire router might become necessary to accommodate additional devices beyond this limit.
  • Such a router would be extremely complex, requiring knowledge of data types to reassemble packets, buffering of variable-length packets, and so forth. In addition to being expensive, such a router would impose variable-length delays, making it extremely difficult, for example, to synchronize, with low latency, two speakers receiving information from a source device via the router.
  • Each device must update its topology table whenever the bus is re-initialized (e.g., whenever a new device is added or removed, or a device malfunctions). Therefore, no device can rely on these device IDs remaining constant. Because of the required transmission gaps between data transmissions on Firewire, it is very hard to utilize the full bandwidth that is possible on a particular media type. The half- duplex nature of Firewire further reduces the available bandwidth over a transmission medium by a factor of two. Since clocking and data are transmitted separately, two pairs of wires are required for a connection to be established. These factors reduce transmission efficiency by a factor of eight when data is transmitted over Firewire.
  • Time-division multiplexed access (TDMA) networks for example, utilize time-division multiplexing, and synchronize all devices to a master clock.
  • the bandwidth on a TDMA network is typically divided equally among the devices on the network. In other words, if ten devices are on the network, each device gets one tenth of the network bandwidth, and thus can transmit information only during that channel or "time slice" (e.g., during one unit of every ten units of time).
  • TDMA networks assign each device a single channel in which to transmit all of its data. These channels are based simply on the number of devices on the network, and bear no relationship to the bandwidth requirements of the type of data being transmitted. This problem is exacerbated when asynchronous! ⁇ distributed variable bit-rate data, such as MPEG2 compressed video, needs to be accommodated. TDMA neuvork technology provides no solution to either of these problems.
  • TDMA devices are left with a single fixed-width channel that is not well-suited for accommodating either multiple real-time continuous data types having differing bandwidth requirements, or an asynchronous data type having bandwidth requirements that vary over time.
  • a device on a TDMA network could transmit information (such as a digital audio sample ) anytime during its assigned time slice.
  • that time slice might change whenever anew device is added to or removed from the network.
  • Ring networks could be good candidates for consistently delivering particular data (e.g., a digital audio stream) from one device to another (e.g., from a CD player to a speaker), assuming that such information propagates around the ring at a consistent rate (e.g., synchronously, based upon a master clock).
  • a consistent rate e.g., synchronously, based upon a master clock.
  • Token Ring networks as described in such specifications as the IEEE 802.5 Token Ring specification, are asynchronous in nature. Each device transmits data only when it receives the "token,” which does not occur at fixed intervals of time. Thus, such networks cannot guarantee consistent delivery of real-time continuous digital media streams.
  • Fiber distributed data interface (FDDI) networks are similar to synchronous ring networks, but FDDI networks transmit information synchronously only in a point-to-point manner. In other words, the transmitter on one device is synchronized to the receiver on the next device on the ring, but the transmitter and receiver within a device are not synchronized to each other. Therefore, information will not always propagate through a device at a consistent rate, due to the difference between the transmit oscillator and receive oscillator within a device, among other factors. FDDI devices compensate for this difference with an "elasticity buffer" which avoids losing data, but this does not guarantee consistent delivery of data. For example, if a device receives data "late,” it will transmit that data late.
  • FDDI Fiber distributed data interface
  • FDDI devices also cannot guarantee consistent delivery of data such as real-time continuous digital media streams. They are optimized for high throughput, but not for consistent, synchronous delivery of data.
  • Both TDMA and FDDI systems do not transmit bi-directional data over a single pair of wires. This means that multiple pairs of wire must be run between devices, or the network must always be wired in a physical loop configuration. Resolving the Problem
  • a low-cost physical network topology preferably one that is compatible with the existing physical cabling infrastructure in a home to avoid the significant barrier of having to rewire an entire home
  • a network topology should enable devices to be interconnected with relative ease, compared to the difficulty and expense of interconnecting audio and video and other consumer electronics devices within and across rooms of a home using p ⁇ or art technologies
  • Such a network also should be compatible with existing consumer electronics devices, again to avoid the significant problem of having to replace all existing devices merely to set up a simple network consisting of a few devices
  • such adapters and other devices preferably should be relatively inexpensive (at least no more expensive than comparable existing devices) m order to encourage consumers to adopt this new technology
  • the network should provide a network that can accommodate real-time continuous digital media streams (e g , digitized audio, video, and telephone), as well as asynchronous data and traditional data networking protocols To do so, the network must deliver digital media streams reliably with a high quality of service, m order to provide the same level of synchronization as
  • One object of the present invention is to provide a low-cost physical network topology compatible with the existing physical cabling infrastructure in a home
  • Another object of the invention is to provide a network compatible with existing consumer electronics devices
  • Another object of the invention is to provide a network that can accommodate real-time continuous digital media streams (e g , digitized audio, video, and telephone), as well as asynchronous data and tradittonal data networking protocols
  • the present invention fills these needs by providing a protocol and architecture for a synchronous logical ⁇ ng network which operates on the existing physical twisted-pair telephone topologies found in most homes today (forming a "logical" ⁇ ng without requi ⁇ ng m-wall wi ⁇ ng modifications)
  • the present invention can be implemented m numerous ways, such as a method, a system, an apparatus, and a program on electronic-readable media Several aspects of the invention are desc ⁇ bed below
  • the invention provides a method and apparatus to communicate information by using symbols generated by a source device on a network for transmission m the network by the source device and reception in the network by a destination device.
  • the method includes encoding the information to produce an encoded symbol; expressing the encoded symbol as a scrambled multi-level electrical signal at the source device, wherein the multi-level electrical signal has at least three levels; de-scrambling the scrambled multi-level electrical signal at the destination device to determine the encoded symbol; grouping at least one of the encoded symbols into a symbol group; and decoding the symbol group into the information.
  • the invention provides a method and apparatus to transmit a command stream generated by a source device for reception by a destination device in a network connecting a plurality of devices.
  • the method includes appointing one of the devices as a clock master to provide a command stream token on the network, wherein each source device on the network is required to receive the command stream token before transmission of the command stream, and hold the command stream token until transmission of the command stream is complete; releasing the command stream token to another device on the network; encoding the command stream as a group of one or more symbols, wherein each symbol is represented by a multilevel electrical signal having at least three levels; receiving at the destination device one or more multi-level electrical signals representing the group of one or more symbols; and decoding the group of one or more symbols to reconstruct the command stream at the destination device.
  • the invention provides a method and apparatus to transmit an audio stream generated by a source device on a network for reception in said network by a destination device.
  • the method includes expressing the audio stream as a group of one or more symbols, wherein each symbol is represented by a scrambled multi-level electrical signal having at least three levels; de-scrambling and error correcting the scrambled multi-level electrical signal at the destination device to determine the group of one or more symbols; grouping one or more symbols into a symbol group to be decoded; and decoding the symbol group to reconstruct the audio stream at the destination device from at least two of the symbol groups.
  • the invention provides a method and apparatus to transmit an asynchronous packet stream generated by a source device on a network for reception in the network by a destination device.
  • the method includes expressing the asynchronous packet stream as a group of one or more symbols, wherein each symbol is represented by a scrambled multi-level electrical signal having at least three levels; de- scrambling the scrambled multi-level electrical signal at the destination device to determine the group of one or more symbols; grouping said one or more symbols into a symbol group to be decoded; and decoding the symbol group to reconstruct the asynchronous packet stream at the destination device from at least two of the symbol groups.
  • the invention provides a method and apparatus to transmit a telephone stream generated by a source device on a network for reception in the network by a destination device.
  • the method includes expressing the telephone stream as a group of one or more symbols, wherein each symbol is represented by a scrambled multi-level electrical signal having at least three levels; de-scrambling the scrambled multi-level electrical signal at the destination device to determine the group of one or more symbols; grouping one or more symbols into a symbol group to be decoded; and decoding the symbol group to reconstruct the telephone stream at the destination device from at least one of the symbol groups.
  • the invention provides a method and apparatus to determine a clock offset on a logical ring network having a plurality of devices.
  • the method includes synchronizing a plurality of frame-counting clocks on the network by broadcasting a time mark command; specifying a frame count for each device of the plurality of devices that needs its frame count synchronized with other devices of said plurality of devices on the logical ring network; following the time mark command with the transmission of a marked frame that goes around the logical ring network; calculating a time difference value from the time mark command and the marked frame for at least one device; and transferring the time difference value into a frame-counting clock in at least one device. wherein the time difference value is used to calculate a clock offset for at least one device
  • the invention provides a method and apparatus to interface stream information between one or more network control protocols and a network physical layer.
  • the method includes processing command and data in the stream information with a command stream processor; generating one or more network time and event signals with a network time and event generator; reading and writing command and data in the stream information communicated to the network physical layer on a physical layer interface; reading and writing serial data provided on a serial memory interface; and selectively resetting the command stream processor, the network time and event generator, the physical layer interface, and the serial memory interface.
  • the invention provides a method and apparatus to elect a device as a clock master from a plurality of devices on a logical ⁇ ng network.
  • the method includes selecting a first device of a plurality of devices as the clock master using an arbitration value; sending a first message from the first device, wherein if the first device receives an acknowledgment on all of the ports, the first device is elected the clock master, but if the first device receives a message from a second device containing a higher arbitration value than the arbitration value of the first device, the first device sends a second message containing the higher arbitration value of the second device out on all remaining ports; and sending a third message to the second device with the higher arbitration value as an acknowledgment message appointing the second device as the clock master, if an acknowledgement is received on all of the other ports of the first device, or sending the third message to the second device with a higher arbitration value if a message with an even higher arbitration value than the arbitration value of the second device arrives on any of the ports of
  • the invention provides a method and apparatus to allocate a set of lanes in a frame containing a plurality of lanes, in a network connecting a plurality of devices.
  • the method includes transmitting a value from an originating device requesting the set of lanes in the frame, wherein the set of lanes are represented by a plurality of bits in the value; receiving the value at each device of the plurality of devices; removing a bit from the value for each corresponding lane of the plurality of lanes that each device is using; receiving the value at the originating device; and setting a set of bits in a mask representing the set of lanes at the originating device, wherein the set of bits reserves the set of lanes for the use of the originating device.
  • the invention provides a method and apparatus to transmit bi-directional synchronous data streams from a first device to a second device on a time-division multiplexed access (TDMA)-oriented network connecting a plurality of devices.
  • TDMA time-division multiplexed access
  • the method includes allocating a first set of lanes in a frame containing a plurality of lanes to the first device when the first set of lanes can be allocated, wherein the frame is received by the second device; allocating a second set of lanes in the frame to the second device when the second set of lanes can be allocated, wherein the frame is received by the first device; transmitting a first group of synchronous data on the first set of lanes from the first device to the second device; and transmitting a second group of synchronous data on the second set of lanes from the second device to the first device.
  • the invention provides a method and apparatus for broadcasting device identification during startup of each device in a network connecting a plurality of devices.
  • the method includes sending status information from each device to the remainder of the network connecting the plurality of devices; and sending device configuration information from each device to the remainder of the network connecting the plurality of devices.
  • the invention provides a method and apparatus for structuring the data architecture of a device read only memory (ROM) in a network connecting a plurality of devices.
  • the method includes assigning a first plurality of bytes in a device ROM of the device for one or more of the following purposes selected from the group consisting of: Protocol Version Number, Company ID, and Model ID; assigning a second plurality of bytes in the device ROM of the device for one or more of the following purposes selected from the group consisting of: Protocol Hint Bit Mask, Capability Hint Bit Mask, and the number of streams implemented by the device; and assigning a third plurality of bytes in the device ROM of the device for one or more of the following purposes selected from the group consisting of: start address of the device's Allocation Marker in a random access memory, start address of the device's Device Information in ROM, device status, logical loop number, and loop operating mode.
  • FIG. 1 illustrates a typical system-level configuration of consumer electronics devices connected to one preferred embodiment of the invention in a typical home.
  • FIG. 2 shows an example of a MAC interface illustrating how the speakers in FIG. 1 are configured.
  • FIG. 3 shows another example of a MAC interface illustrating one preferred embodiment of how a device with a central processor (CPU) is configured with the MAC interface.
  • FIG. 4 shows a detailed diagram of one prefe ⁇ ed embodiment of a MAC chip.
  • FIG. 5 is a diagram illustrating the configuration of the MAC interface shown in FIG.
  • FIG. 6 illustrates decoding physical symbols into a frame in one embodiment of the invention.
  • FIG. 7 illustrates one embodiment of the invention with lane assignments for three streams.
  • FIG. 8 illustrates devices that write, read, modify, or pass-through streams.
  • FIG. 9 illustrates one preferred embodiment of a frame header and command lane assignments.
  • FIG. 10 illustrates one example of creating a logical loop from a daisy-chain.
  • FIG. 1 1 summarizes the top-level states and state transitions of a device.
  • FIG. 12 illustrates an optional mechanism to enhance the accuracy beyond the standard clock synchronization.
  • FIG. 13 illustrates the most preferred embodiment for encoding on the wire and at the PHY and MAC layers.
  • FIG. 14(a) and 14(b) illustrate network 5-level data code pairs according to one embodiment of the invention.
  • FIG. 15 illustrates 5-level control code pairs according to one embodiment of the invention.
  • FIG. 16 shows auto-negotiation can be broken up into several major phases: link fail, clock arbitration, speed arbitration, loop configuration, and normal operation.
  • FIG. 17 shows the state machine for half-duplex communication for one prefe ⁇ ed embodiment.
  • FIG. 18 illustrates one example of coding of a 20-bit sample on an audio stream, and shows how a stream sample consisting of a single 20-bit audio sample is formatted and distributed onto lanes in a frame.
  • FIG. 19 shows how a stream sample consisting of a stereo pair of 20 bit audio samples would be formatted and distributed onto the frame.
  • FIG. 20 depicts four stations on a ring and illustrates the four basic steps of asynchronous packet stream operation; token circulation, transmitting, receiving, and stripping.
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Alternative embodiments of the invention can be implemented with devices other than consumer electronics devices (e g , business devices, indust ⁇ al devices, professional devices, and so forth) and in environments other than a home (e g , offices, hotels, apartment buildings, cars, boats, recreational vehicles, and so forth) The particular environment or application may result m a significantly different configuration than the configurations illustrated below
  • the advantages of the embodiments of the invention desc ⁇ bed below with reference to a network of consumer electronics devices in a home also apply to these other environments and applications
  • a logical ⁇ ng network can be as simple as connecting two network devices together with a standard RJ-1 1 telephone cable (or standard or slightly modified RJ-12, RJ-45, or other connectors in other embodiments) More devices can be added to the network by daisy - chammg them directly to one of these two devices, or connecting them to a junction box (for distribution throughout a home) All devices and or components illustrated are shown attached to logical ⁇ ng network in a daisy-chain fashion (either withm a room or behind the walls via a junction box)
  • the actual physical topology of a logical ⁇ ng network, and the manner m which devices are interconnected, is discussed extensively in co-pending U S Patent Application Se ⁇ al No 09/079,914, entitled "Synchronous Network for Digital Media Streams,” filed on May 15, 1998, which is incorporated by reference
  • FIG 1 Illustrated in FIG 1 is a typical system-level configuration of consumer electronics devices connected to one preferred embodiment of the invention m a typical home 100 having a first room 102, a second room 120, and a third room 146
  • the first room 102 has devices connected in a daisy chained fashion including an incoming cable line 104, a set top box 106, a DVD player 108, a CD player 1 10, a stereo 1 12, a telephone 1 14, five speakers 1 16, and a television monitor 118 Each device is connected through a media access controller (MAC) and physical (PHY) interface (not shown for set top box 106, DVD player 108, CD player 1 10, and stereo 112, to reduce drawmg complexity)
  • MAC media access controller
  • PHY physical interface
  • the second room 120 includes telephone adapter 122, telephone 124, stereo 126 speaker 128, television monitor 130, speaker 132, speaker 144, MAC interface 134, and PHY interface 135 MAC interface 134 and PHY interface 135 can be implemented in one or more integrated circuit chips MAC interface 134 is connected to converters and relays that are m turn connected to camera 136, microphone 138, light 140, and doorbell 142 MAC interface 134 is also connected to a physical layer (PHY) interface 135 that is connected to the MAC/PHY interfaces of telephone 124, stereo 126, and stereo 144.
  • Telephone 124 can be a digital telephone, capable of accessing the legacy analog telephone network via a plain old telephone service (POTS) version of telephone adapter 122.
  • POTS plain old telephone service
  • Such devices can have built-in PBX functionality, or can provide such functionality via a general-purpose DSP device (not shown).
  • the third room 146 includes a DSS receiver 148 with a MAC/PHY interface connected to the network in second room 120.
  • the DSS receiver is connected to a satellite dish 150 to receive satellite signals.
  • DSS receiver 148 receives broadcast audio/video information (e.g. MPEG2). Because MPEG2 information already is in digital form and compressed, it can be transmitted directly onto the network. As will be explained below for one embodiment, the MPEG2 decoding will occur only after such information leaves the network (e.g., at a television where the information will be decoded and decompressed for viewing).
  • Information transmitted by these source devices propagates around the network and can be received by any appropriate destination device, as will be described in greater detail below.
  • an MPEG2 movie received by DSS Tuner 148 or played at CD/DVD player 110 or 108, could be displayed on television monitor 1 18 and/or television monitor 130 after being decoded by MPEG2 decoders (not shown).
  • the audio extracted by an MPEG2 decoder could be transmitted back onto the network and played by speakers 1 16, 128, 132, or 144.
  • the audio extracted by a MPEG2 decoder could be transmitted back onto the network, processed by digital signal processing (DSP) (e.g., an AC-3 surround sound decoder), and then transmitted back onto the network and played by surround sound speakers 1 16.
  • DSP digital signal processing
  • remote confrol interface/monitor devices such as simple remote controls or complex controllers with large LCD screens capable of viewing computer graphics images, MPEG2 video, and so forth, also control the systems in rooms 102, 120, and 148.
  • any information obtained or generated by one network device can be distributed "simultaneously" (i.e., within the same digital sample, appropriate to the media type) to any other network device, because such devices are connected to the network.
  • DVD 108 in first room 102 might be playing various digital audio/video programs previously selected by a family member.
  • Such information can be transmitted along the network for immediate viewing, or saved for later viewing (e.g., to avoid being overwritten as new programs are played).
  • This embodiment of a home network provides a great deal of flexibility.
  • any network device distribute real-time continuous digital media streams (and possibly asynchronous data) to any other network device, but such devices (including legacy devices connected via an adapter, as well as new "digital-ready” devices) can exhibit functionality not feasible with existing technologies, such as recording television programs already in progress in their entirety. It is significant to note that network devices need not be complex or expensive to perform basic functions such as communicating with the network and transmitting and receiving digital media streams. Other embodiments of the invention can be implemented by adding devices of greater complexity, particularly CPU -based devices controlled by software or firmware (as will be discussed below).
  • FIG. 2 shows an example of a MAC interface 200 illustrating how the speakers in FIG. 1 are configured.
  • MAC interface 200 has two input output plugs 202 and 204 connected to PHY 206.
  • PHY 206 is connected to MAC chip 208.
  • the serial audio input output of MAC chip 208 is then connected to a digital-to-analog (D/A) converter 210 that is connected to an amplifier 214 and speaker 212.
  • D/A digital-to-analog
  • FIG. 3 shows another example of a MAC interface 300 illustrating one preferred embodiment of how a device with a central processor (CPU) 310 is configured within MAC interface 300.
  • MAC interface 300 has two input/output plugs 302 and 304 connected to PHY 306.
  • PHY 306 is connected to MAC chip 308.
  • the host bus connection on MAC chip 308 is then connected to CPU 310, where CPU 310 can control any components (not shown) that are connected to bus 312.
  • PHY 306 implements all of the line adaption and line coding, equalization, echo cancellation, time base derivation, and so forth.
  • there are 3 bit wide parallel digital signals being sent in both directions between PHY 306 and MAC chip 308.
  • FIG. 4 shows a detailed diagram of one preferred embodiment of a MAC chip 400.
  • MAC chip 400 has a number of components to control the incoming and outgoing digital data.
  • MAC chip 400 includes command stream processor 402, stream engines 404, network time & event generator 406, PHY interface 408, serial memory interface 410, reset circuit 412, media asynchronous packet stream (MAPS) 414, two synchronous direct memory access (SDMA) circuits 416, two video stream encoder/decoders 418, four audio stream encoder/decoders 420, general purpose digital I/O (GPIO) block 422, and host CPU interface 424.
  • MMS media asynchronous packet stream
  • SDMA synchronous direct memory access
  • command stream processor 402 utilizes four lanes of data on the network for a native command packet protocol that implements network control, as well as the allocation of network resources and devices on the network.
  • the number of lanes assigned could be less than four or greater than four in other preferred embodiments.
  • command stream processor 402 controls primitive devices if they do not have a host processor, wherein a processor on another node can control the device by using commands to read and write registers using the device.
  • a frame of data is sent on the network every 20.83 microseconds.
  • Each frame of data is divided up into a number of lanes.
  • Several modes of data transmission are possible and the selected mode determines the number of lanes in a frame.
  • At the beginning of a frame there are four lanes dedicated to a frame marker for synchronization, and four lanes dedicated for a command stream to be used by command stream processor 402.
  • the remaining lanes in the frame are available for dynamic allocation to pass data between devices on the network.
  • Stream engine 404 maintains the timing of the frames and informs any interfaces that are getting data from the frames when their lanes appear in each frame. In preferred embodiments, there is a stream engine 404 for each interface on the network.
  • Network time & event generator 406 has all of the clocks, the offset for one or more clocks, and participates in controlling events that need to use clocks having offsets for increased precision of synchronization between devices.
  • PHY bus 426 transfers data streams to and from the network via PHY interface 408.
  • Serial memory interface 410 is used to add external read only memory (ROM). This is preferably done either with an external interface chip, or as programmable ROM on the chip.
  • the identification (ID) number for each chip is stored on an internal ROM, or a ROM accessible through serial memory interface 410.
  • Reset circuit 412 provides reset logic to selectively reset MAC chip 400 when the network resets. In preferred embodiments of the invention, it can reset the external hardware and external hardware can reset it.
  • MAPS 414 provides facilities for handling asynchronous packets on the data stream lanes.
  • the network is a synchronous network, therefore the data can be optimized to connect to the Ethernet and carry Ethernet packet traffic.
  • the resulting data packets travel through host bus 428.
  • SDMA 416 allows taking some set of lanes, or an entire frame and make a direct memory access (DMA) into the memory or the host bus. Two SDMAs 416 are provided, one of them to output data to memory and one to input data from memory.
  • DMA direct memory access
  • Video stream encoder/decoders 418 handle any incoming or outgoing compressed digital audio or video signals through a corresponding video bus 430.
  • Audio stream encoder/decoders 420 handle uncompressed data (which is not packetized), and compressed structured data, and sends or receives digital audio signals through serial audio connection 432.
  • GPIO block 422 has eight interface lines that are one bit digital input output interfaces. If used as input pins, they can be programmed to trigger the device to broadcast a message via the command stream processor 402 when the state changes.
  • Host CPU interface 424 in prefe ⁇ ed embodiments appears as parallel ports to an external processor. It requests DMA transfers (up to six channels of DMA in one prefe ⁇ ed embodiment), generates interrupts for the host, and supports an interrupt structure. If there is no external processor, then an external memory or device module can be added using these address and data lines.
  • FIG. 5 is a diagram illustrating one possible embodiment of the MAC interface 134 and PHY 135 interface shown in FIG. 1.
  • Video camera 136 is programmed to pass its video signals to an encoder 502, and in turn the digital video signals are passed to video bus 504 on MAC interface 134.
  • digital audio can optionally be sent from MAC interface 134 along serial audio connection 506 to digital-to- analog (D/A) converter 508, and played over speaker 144, or sent directly to the speaker 144 MAC/PHY interface (shown in FIG. 1).
  • Microphone 138 passes its audio signals to analog- to-digital (A/D) converter 510, and to MAC interface 134 through serial audio connection 512.
  • Light 140 is toggled on and off through MAC interface 134 from GPIO pins 514. When doorbell 142 is activated, a toggled switch passes information through GPIO pins 514.
  • a person 190 (shown in FIG. 1) approaches house 100 and pushes doorbell 142.
  • Activated doorbell 142 triggers the command stream processor (shown in FIG. 4) to send a message on the network through the PHY interface (shown in FIG. 4) indicating that doorbell 142 has been activated.
  • the manager of the network such as a computer program (not shown) passes instructions back to MAC interface 134 instructing it to turn light 140 on, turn video camera 136 on, and turn microphone 138 on.
  • the video and audio data are selectively sent to any video/audio monitors within the house.
  • a person (not shown) in house 100 sends audio signals through the network to play on speaker 144 to person 190.
  • Network devices on a logical ring network of a prefe ⁇ ed embodiment of the invention are synchronized to one another, and each imposes a constant amount of delay (differing from device to device) to process signals. Given that signals traveling along the network path encounter each network device exactly once per "revolution" around the entire logical ring network, the signal propagation time around the logical ring network along this network path (and between any two particular devices along the way) remains constant. As a result, network devices are afforded a fixed amount of total network bandwidth for sending and receiving information along this network path. Various means of increasing network bandwidth will be discussed in greater detail below.
  • the wires may be of a different type from standard residential unshielded telephone wiring.
  • Category 3 or Category 5 unshielded twisted pair wiring, or even coaxial or fiber optic cable, may be installed in order to support higher-speed signal propagation, and thus provide increased cable lengths and/or network bandwidth.
  • the logical ring network of prefe ⁇ ed embodiments of the invention can support virtually any transmission media, including wireless configurations.
  • a logical ring network (or an extension of an existing logical ring network) is created by daisy-chaining devices to one another. It is not necessary to connect any devices to a junction box or perform any wiring modifications. For example, a daisy-chain of cables to a room extends the logical ring network to the room. Alternatively, the wiring at a single junction box is modified in each room to connect the room to the logical ring network. Thus, a logical ring network can be extended gradually throughout a house to add new devices as the need arises.
  • any wiring segment between two devices could be replaced with a bi-directional wireless link (e.g., RF, infrared, ultrasonic, or equivalents).
  • a bi-directional wireless link e.g., RF, infrared, ultrasonic, or equivalents.
  • a logical ring network could be constructed with the wireless link serving to complete the default network path.
  • an entire network is configured with the capability of switching between an analog telephone network and a logical ring network.
  • the devices would require bi-directional transceivers
  • the total distance between network devices along the network path may have a practical limitation due to signal attenuation
  • This limitation will depend on the quality of the wire Standard "silver satm" wire, for example, may be limited to approximately 100 feet, whereas Category 5 wire may perform reliably with runs in excess of 300 feet
  • a ⁇ se devices that act as repeaters, to amplify the signal, can be added to the logical ⁇ ng network
  • a "smart jack" is provided which not only closes the physical loop regardless of whether a network device is connected, but also maintains a fixed amount of network delay
  • Such a mechanism enables one to connect and disconnect network devices (daisy-chained to the smart jack) without disrupting the transmission of information (e g , an audio or video stream) among other devices on the logical ⁇ ng network
  • a POTS network to coexist (I e , to share a pair of wires) with a logical ⁇ ng network
  • a single pair of wires can support both a logical ring network (with bi-directional drivers) and a POTS network. This is accomplished by using high-pass and low-pass filters, respectively, at each wiring
  • Multiple types of signals can share the same pair of wires, which can be unshielded twisted pair, coaxial, or other transmissive media. If another pair of wires were available, it could be dedicated to a logical ring network and/or power, leaving the POTS network untouched on its own existing pair of wires, thereby preventing any interference between the phone system and the power lines or a logical ring network. Alternatively, one pair of wires could be dedicated to the bi-directional logical ring network, with the other pair supporting the POTS network or power.
  • the most prefe ⁇ ed embodiment is based on a logical ring topology, which is synchronous and stream based.
  • a stream is a constant bandwidth flow of information carried on one or more lanes.
  • the network supplies multiple streams simultaneously.
  • the basic transport protocol is a TDM scheme in which data frames (frames) propagate around the network at the rate of 48,000 frames per second.
  • Each frame contains a set of equally sized time slots ("lanes") the number of which depends on the signaling rate (the network operating mode) in use at the physical level.
  • the data rate of a stream depends on the number of lanes assigned to carry the stream.
  • the media access control (MAC) protocol governs how devices access and share the available bandwidth. Unlike many other networks, media access is not collision based, and data is not organized into packets.
  • each frame is a progression of symbols.
  • each symbol has one of 5 possible values, but alternative embodiments could use a greater number (e.g., 7) or lesser number (e.g., 3) of values.
  • symbols are grouped together in sets of five, called "quintets," but alternative embodiments could use a greater number (e.g., 6 or more) or lesser number (e.g., 2 or more) of symbols in a group.
  • a quintet carries two lanes worth of information.
  • Each quintet in this embodiment (termed 9B5Q) encodes eight data bits, four data bits and a control code, or two control codes, i.e., the quintet carries more than one byte of information.
  • FIG. 6 illustrates decoding physical symbols into a frame 606 in one embodiment of the invention.
  • frame header 604 occurs at the beginning of frame 606 and occupies two quintets 602. It is a unique code that is forbidden to occur elsewhere in the frame.
  • Frame 606 is defined as a frame header and all of the subsequent quintets transmitted until the next frame header.
  • Frame headers a ⁇ ive at a given device with a very regular and accurate period, 20.83 ⁇ sec (1/48 kHz).
  • the frames propagate all the way around the logical loop. Therefore, frame headers arrive at every device with the same frequency and accuracy.
  • a given frame header will a ⁇ ive at each subsequent device slightly after its arrival at the previous device, due to the delay introduced by the regeneration of the signal at every device, and the delay caused by the length of wire connecting the devices.
  • Each device uses the frame header to initialize an index count, which is then used to partition the data into the lanes that follow.
  • each lane transports a progression of data nibbles, interspersed with any of several confrol or escape codes.
  • all frames on a given loop contain the same number of lanes. The number of lanes per frame is determined by the speed of the network, i.e., the symbol rate.
  • a stream is a constant bandwidth flow of data between two points on the loop. It is carried by a fixed set of lanes, termed the stream's lane assignment in the loop. As each frame passes by a device, this set of lanes is accessed in order to access the sfream.
  • the set may be comprised of lanes at arbitrary positions within the frame. This mechanism is similar to many time-division multiplexing (TDM) schemes.
  • TDM time-division multiplexing
  • the lanes assigned to a particular stream need not be contiguous. They may be scattered throughout the frame, as shown in FIG. 7. This allows complete flexibility when it comes to creating new streams. It also avoids the fragmentation problems that would otherwise result after the network had been in operation for a while.
  • FIG. 7 illustrates one embodiment of the invention with lane assignments for three streams, stream 1 702, stream 2 704, and stream 3 706.
  • Device stream The abstract capability of a device to read, write, or modify a single stream is called a "device stream.”
  • the implementation of that capability at the MAC level is called a "stream engine.”
  • Devices may support up to 255 device sfreams, i.e., it is possible to specify a device that can read, write or modify 255 separate sfreams simultaneously.
  • a command is available for negotiating lane allocations and other peer-to-peer privileges among smart devices hosting processes that need to control network resources.
  • Devices can make claims for specific resources (e.g., the lanes in a given bank of lanes in a frame). Bits in a selected register or mask of each device can represent the cu ⁇ ent status of the same resources. As a claim circulates, the claim is revised to exclude the resources already marked as committed at other devices. When the claim returns to its sender, the sender determines what resources were successfully acquired. Specific resources, such as a number of lanes in a frame, can be released for use by other devices by indicating their availability by appropriate bits in the selected register or mask of each device.
  • the most prefe ⁇ ed embodiment of the invention allocates a set of lanes in a frame containing a number of lanes, among a network of devices by first transmitting a value from a device requesting a set of lanes in each frame, wherein the set of lanes are represented by bits in the value.
  • Each of the other devices in the network receives the value and removes bits corresponding to lanes that the other device is using from this value using real-time processing as the command goes through the device.
  • the requesting device receives the value, and sets the bits in a mask representing the lanes it requests and reserves to use.
  • FIG. 8 illustrates devices that write, read, modify, or pass-through sfreams.
  • the stream-based architecture allows devices to operate in one of 4 modes: writer, reader, modifier, or pass-through.
  • device A 802 is a writer of Stream 1.
  • the sfream is available at any point around the loop, but in this case Device C 806 is the only reader.
  • Device C 806 does not overwrite the stream as it reads it, and the sfream returns unmodified to Device A 802.
  • Devices B 804 and D 808 allow Stream 1 to pass through, unmodified and unread.
  • Sfream 2 is read and modified by both Device B 804 and D 808.
  • modifier devices introduce a one- frame delay in the stream being modified.
  • a modifier device reads the stream contents and then overwrites the stream with new data.
  • the total number of lanes assigned to a sfream determines its bit rate. This assignment occurs when a stream is created and remains fixed for the life of the sfream.
  • a slow stream has only a single lane assigned to it and delivers information at a bit rate of 192 kbps.
  • the fastest sfream would use every lane in the frame, minus 8 lanes that are dedicated for network support and would deliver data at a bit rate of several tens of Mbps.
  • the exact maximum rate depends on the network operating mode, i.e., on the number of available lanes in the frame. In practice, any given stream needs only a portion of this total network capacity.
  • one operating mode could appear to have a total throughput of about 49 Mbps.
  • this is deceptive because on a network according to a prefe ⁇ ed embodiment, several devices may modify the same stream. Therefore, the basic bit rate of a stream must be multiplied by the number of writers or modifiers of the sfream in order to arrive at the stream's total throughput.
  • an audio processing chain consisting of a CD player, an audio DSP, and several digital audio amplifiers can be implemented on a prefe ⁇ ed embodiment using a single stream, provided that the devices are physically connected to the network in the correct order.
  • each modifier device in a signal processing chain requires a separate stream for its output, and each of these sfreams counts separately against the total throughput of the network.
  • the network operating modes have been labeled according to their approximate throughput in the full-duplex case, i.e. where each stream has two modifiers. That is why networks running at a basic rate of about 50 Mbps are said to be operating in a MW 100 mode. In this operating mode, two devices could simultaneously transmit to each other using all available lanes) at roughly 49 Mbps, for a total network throughput of 98 Mbps.
  • Table 1 lists the operating modes in one prefe ⁇ ed embodiment, but other operating modes could be used in alternative embodiments.
  • the period of frame transmission is always constant at 20.83 ⁇ sec (i.e. the frame arrival frequency is 48 kHz).
  • the different loop bit rates produced by the different network operating modes are the result of variations in symbol signaling rate.
  • the bit rate governs the number of lanes contained in the frames propagated around the loop.
  • the operating mode, and hence the bandwidth, of a loop is determined at initialization time and remains in effect until the next network reset.
  • a network operating in MW25 mode would have 64 lanes per frame, one operating in MW50 mode would have 128 lanes per frame, etc.
  • each frame begins with a frame header that occupies the first two quintets of the frame. Since each quintet occupies two lanes, the frame header occupies lanes 0-3.
  • the "Command Stream" uses additional lanes 4-7.
  • the Command Sfream is the foundation of inter-device communication, and preferably has a permanent and invariant position in every frame. Other embodiments could use other lane assignments or different numbers of lanes for the frame header and Command Sfream.
  • FIG. 9 illustrates one preferred embodiment of a frame header and command lane assignments. FIG. 9 shows the lane assignments for the frame header 902 and the Command Stream 904. All other lanes 906 in the frame 900 are available for media and data sfreams.
  • a Command Stream is used for resource discovery, resource allocation, configuration, and control.
  • the low-level protocols are used for direct control of devices.
  • the high-level protocols which are largely based on the Message command, support cooperation among processes that manage the network.
  • Smart devices cooperate with each other in the confrol of a network. This cooperation is based on a Command Sfream and a common resource allocation model. All smart devices that manage streaming activities additionally implement certain higher-level resource allocation protocols.
  • a smart device directs other devices by means of commands, while a dumb device does not.
  • a smart device contains a microprocessor to support its application, and often includes a user interface. It optionally sends low-level configuration and control commands to other devices. It optionally hosts client processes that engage in transactions using a high-level protocol.
  • a set top box and a pre-amplifier are examples of a smart device.
  • a speaker is an example of a dumb device.
  • a CD player may be a dumb device, even though it may include a microprocessor.
  • commands are used to remotely read and write the memory and confrol registers of devices, and timed variants of some commands permit pre-scheduled, synchronized control of devices.
  • a Command Sfream supports basic discovery via a device scanning process, plus commands that allow remote access to Device ROMs
  • the Clock Master after establishing the Command Stream, broadcasts a single Scan Request command. Other devices may also request the Clock Master to perform a scan at any time. As each device sees the Scan Request, it in turn broadcasts a Scan Reply command.
  • the reply includes the device's Globally Unique Identifier (GID), brief characterizations of the device's capabilities, and an address link to the self-describing data in the Device ROM. Because the replies are broadcast, any device may acquire complete basic information about the network configuration and the devices attached to it. When further information is wanted about a device, its Device ROM may be read remotely using a Read command.
  • a Scan Reply command is sent as a delayed response to a Scan Request command.
  • all devices are capable of broadcasting a Scan Reply command.
  • Smart devices that control other devices preferably examine all Scan Reply commands broadcast during network scan; the information contained in the reply is essential for network management.
  • the information included in the Device Data field of the reply is primarily intended to help smart devices find or discover other devices without having to directly query each device. More detailed information is available in the self-describing data in the Device ROM.
  • the Company ID is a 3 -byte IEEE Organizationally Unique
  • the Protocol Hint and Capability Hint bit masks are described below.
  • the Device Allocation Marker is the address to be written on when claiming the right to operate or manage the device.
  • the Device Information address is the address to be read in order to acquire the self-describing data contained in the device's ROM. All of the above fields are static, except for the Device Status, Loop Number and Loop Operating Mode fields described below.
  • the bits of the Protocol Hint Bit Mask are listed in Table 3 according to one prefe ⁇ ed embodiment, but other bit assignments would be feasible in other embodiments.
  • Capability Hint Bit-mask The bits of the Capability Hint Bit-mask are defined in Table 4 according to one preferred embodiment, but other bit assignments would be feasible in other embodiments.
  • Device Status is two bytes of arbitrary device status information. The interpretation of this field depends entirely on specifics of the device sending the Scan Reply command. One possible use of the first byte of the device status is to contain the current state of the GPIO lines.
  • Device Rom
  • each device can convey information about its configuration and capabilities. This is accomplished in two stages. First, every device transmits hints indicating its basic function(s), which commands it supports, and other high level information. Second, every device supports a command allowing its memory to be examined over the network, and contains a Device ROM. A pointer to the start of the Device ROM is returned in the device's Scan Reply.
  • the Device ROM is a hierarchical database containing attribute and value bindings. A Device ROM provides the ability to find the value of a given attribute of a device in a simple, flexible, and efficient manner.
  • the Device ROM format is based loosely on the ANSI/IEEE Standard 1212 (1994 Edition). It is comprised of two basic data structures: leaves and directories, both of which start with a common header format.
  • a header is a 32-bit value consisting of a 16-bit length followed by a 16-bit CRC-16 value, as shown in Table 6.
  • the length specifies the size of the data that follows the header, and does not include the size of the header itself.
  • the CRC-16 field uses the polynomial specified for the E ⁇ or Detect field and applies to the length field in the header and the data that follows the header.
  • Leaves are single-valued objects consisting of a header followed by a stream of bytes.
  • a directory contains a header followed by directory entries. Directory entries contain immediate data, or point to leaves or other directories.
  • the ROM format begins with the top-level directory.
  • a directory entry consists of an 8-bit key followed by a 24-bit entry_value, and one of many preferred embodiments is shown in Table 7.
  • a key consists of a 2-bit key_type followed by a 6-bit key_value.
  • the key-type indicates the type of the entry-value, and one preferred embodiment is listed in Table 8.
  • the entry_value is a 24-bit quantity. The meaning is dependent on the key_value.
  • the entry -value is the 24-bit address in the memory space of a leaf or directory object, respectively.
  • the key-value specifies the particular entry (e.g., Textual-Descriptor, Capability, etc.) as shown in Table 9, which gives some key_value definitions used in the top-level directory according to one prefe ⁇ ed embodiment, but other definitions could be used in other embodiments.
  • a network is a logical loop where frames continuously circulate around the loop visiting every device in the loop.
  • the frame header immediately follows the last lane of the previous frame, so that every device sees frames arrive at exact periodic intervals.
  • Devices index from the frame header to decide which lanes to read and which lanes to overwrite.
  • FIG. 10 illustrates one example of creating a logical loop 1000 from a daisy-chain. Although devices behave as if they were connected together in a loop architecture, the actual physical topology is a daisy-chain. In FIG. 10, the final link 1002 (dotted arrow) in loop 1000 is not actually connected. The loop 1000 is completed by the daisy-chain segments (black a ⁇ ows) 1004, 1006, and 1008, which return all the streams from device D to device A as the dotted a ⁇ ow would have done to logically complete loop 1000.
  • an auto-negotiation procedure is performed. First, speed arbitration determines the network- operating mode. Clock arbifration then identifies which device will serve as Clock Master. When auto-negotiation is completed, the Clock Master device is selected and equal-sized frames are properly circulating around the loop. Auto-negotiation is a distributed process. No special controller is required to operate a loop according to a prefe ⁇ ed embodiment of the invention. Auto-negotiation is discussed more fully below.
  • FIG. 1 1 summarizes the top-level states and state transitions of a device in a network according to the most preferred embodiment. When the device is powered on, it and its neighboring devices immediately enter the Negotiating state 1102.
  • the Negotiating state 1102 represents the PHY-level auto-negotiation process in its entirety. During this process, the operating mode of the local loop is established and the Clock Master device is selected. All of the auto-negotiation device states are subsumed under Negotiating state 1102.
  • the Clock Master device After the Clock Master device has been selected, it will 1 ) establish synchronized frame transmission, 2) initialize the token-based command transport mechanism, 3) start a network scan by broadcasting a Scan Request command, and 4) notify smart devices when network configuration is complete. Once synchronization has been established, the PHY level of each device generates a local Link Up notification and the devices move to the Passive state 1104. While in the Passive state 1 104, devices neither sfream onto the network, nor send commands to other devices. Smart devices wait in the Passive state 1104 until the Clock Master has broadcast notification that the network configuration is complete. Following network configuration, smart devices enter the Active state 1 106 and may begin to send commands to other devices attached to the network.
  • the Passive state 1104 is implemented by a MAC level mode called Suspended Reset. In this mode all sfreaming is suspended. Smart streaming devices may leave the Suspended Reset mode under control of their local host as soon as network scan is complete. Dumb devices wait in the Suspended Reset mode until a Reset command specifying Exit Suspended Reset is received from whichever smart device is managing them. The dumb devices then move to the Active state 1106. Before a process managing an activity on the network can restart streaming among the devices involved, it first revalidates the bandwidth allocation for the activity. If network bandwidth has decreased, the manager must reallocate bandwidth and reconfigure the sfreams used by the activity's devices. If network bandwidth has not decreased (and if no essential devices are unavailable due to network segmentation), the manager can usually restore the activity by broadcasting a single Reset command specifying the Exit Suspended Reset mode.
  • a second form of the Reset command is used to reinitialize the MAC level of a device without disturbing its PHY level or disrupting network service. Following initialization of the MAC, the device is left in the Passive state (i.e., in the Suspended Reset mode). Smart devices relinquish their control of dumb devices by sending them a Reset command with Begin Device Reset mode. This form of reset is also appropriate for triggering via a reset button. Hard reset of a device occurs only when the device is power cycled. This is because hard reset includes reset of the PHY level, which causes a temporary disruption in service in the local loop. PHY level reset brings down the links to the neighboring devices and forces a return to the Negotiating state 1 102 to reestablish a network- operating mode.
  • Clock Master Requirements Every network has exactly one enabled Clock Master (after the network completes the startup process).
  • the Clock Master generates the network time base, and buffers the loop to an integral number of frame times in length.
  • the Clock Master also initializes the clocks of all the devices on the network with the Time Mark command. Many devices (but not necessarily all) on the loop should be able to become the Clock Master.
  • An auto-negotiation process arbitrates which of the eligible devices is selected to be Clock Master. The selected device remains the Clock Master until the next auto-negotiation.
  • the Arbifration Byte stored in the Device ROM specifies a device's priority in the clock arbifration scheme. This arrangement ensures that certain classes of device will always win over other classes. When two devices in the same class compete for Clock Master the decision is made arbitrarily by selecting the device with the higher GID.
  • the Clock Master also performs some network initialization operations on the Command Sfream and manages the Command Sfream during normal operation. These responsibilities are described more fully in the Command Sfream description.
  • the MAC layer of each device keeps a clock based on a frame count.
  • the clock rate in use in each device determines the precision with which time is measured in that device.
  • the basic time base instability of the network is the result of the sum of the jitters of each of the PHY chip phase-locked-loops (PLLs) between the Clock Master and a given device.
  • PLLs phase-locked-loops
  • An alternative embodiment measures data propagation times with a special timer resident m the PHY layers of both the device and the Clock Master that enables enhancing the absolute time accuracy of the network
  • the mechanism is desc ⁇ bed below
  • the Clock Master in prefe ⁇ ed embodiments initially synchronizes all the frame-counting clocks on the network by broadcasting a Time Mark command This command specifies a frame count and is saved in a register in the MAC layer of each device that needs its frame count synchronized with other devices on the network
  • the Clock Master follows the Time Mark command with the transmission of a marked frame
  • FIG 12 illustrates an optional mechanism to enhance the accuracy beyond the standard clock synchronization
  • the PHY laver portion 1202 of this mechanism is implemented in all devices that are able to become Clock Master 1206 and all devices that need enhanced time accuracy
  • Each port of the PHY layer 1202 may observe the special marker as it passes m each direction
  • Each port, of the devices that support this mechanism starts a timer at the PHY layer 1202 when it sends the marker and stops the counter when it next receives the marker
  • This counter in the PHY 1202 is at least 16 bits m length and its size is specified in the Device ROM of the device
  • a manager 1204 reads the timer values from all the devices that support this mechanism and calculates the network delays between them It uses this information along with any internal delay specifications provided the Device ROMs, to calculate offset values for the frame clock in each MAC layer 1208 of the devices
  • the MAC layer 1208 of each device supporting this increased accuracy has a register to store this offset information This offset register is 4 bytes in length and represents the offset m units of
  • the MAC layer 1208 upon receiving the marked frame, adds the offset value from MAC offset register 1210 to the Time Mark value 1212 and uses that adjusted value as the new MAC clock value 1214.
  • This mechanism synchronizes the clocks in devices that support it, limited only by the precision of the clocks in the PHY layer 1202 and MAC layer 1208, the accuracy of the internal delay specifications, and the calculations done by the controlling manager 1204.
  • the MAC and PHY layers are clocked at different rates. This means that a manager that is using the optional accuracy enhancement method adjusts the values read from PHY layer counters before they are written to the MAC layer offset register.
  • the PHY layer is clocked at a multiple of the symbol rate and the MAC layer is clocked at a rate that is a multiple of the quintet rate.
  • the standard clock for the PHY is the MW200 mode symbol rate 61.44 MHz.
  • the standard clock, at the MAC layer is four times the MW200 mode quintet rate, 49.152 MHz.
  • Devices that require more precision may use higher clock rates. Such devices use clock rates that are 1, 2, 4, 8, 16, 32 or 64 times the standard rates.
  • the resolution of time stamps used by commands ultimately limits their precision to a rate 64 times the standard MAC clock rate, co ⁇ esponding to a time interval of 317.89 picoseconds. All devices have a Device ROM entry that labels both the MAC and PHY clock rates.
  • the MAC layer uses a four-byte sub-frame counter, which is sufficient to handle any anticipated MAC layer clock rate.
  • the standard PHY counter uses a two-byte counter. Any device utilizing a PHY clock rate greater than the standard PHY clock rate uses a three-byte counter. Alternative embodiments could use counters with a different number of bytes than the counters discussed above.
  • the manager using the PHY measured times to adjust MAC layer offsets multiplies the PHY measured count by 0.8 to account for the different clock rates. If the device is using non-standard clock rates, then the adjustment factor needs to be modified to reflect the clock rates in use.
  • devices operate in the MW25 mode, and may operate in additional operating modes depending on the wire condition and the capabilities of the devices on the network.
  • Table 10 shows operating modes of networks with their associated symbol rates according to one preferred embodiment, but other embodiments of the invention could use other operating modes.
  • the gross bit error rate in preferred embodiments is better than 10 bits in a trillion bits per link. This figure applies in the worst case of maximum operating mode and maximum cable length. This means that with five devices in a network, the system bit e ⁇ or rate will be better than 100 bits in a trillion bits (the complete logical loop passes through both links of each device, for a total often links).
  • the cumulative time base jitter from one device to any other in prefe ⁇ ed embodiments is less than 10 nanoseconds measured over 100 milliseconds. Therefore, the jitter added by each device is preferably less than 0.1 ns with the total jitter accumulation of less than the system maximum over 100 devices.
  • the network initialization time includes the time it takes for a system to do all of the lowest level speed and clock arbitration and the higher level device scan and basic reset.
  • Each device necessarily creates some delay in frame transmission around the loop, because of the time required to receive and regenerate the symbols (the cabling also creates delay, approximately 1 nanosecond per foot).
  • the minimum delay through a device is two quintets. That is, a device receives a whole quintet before re-transmitting it, since some line coding and scrambling algorithms have this requirement. Since the duration of a quintet is proportional to the operating mode of a network, the delay through a device is also proportional to the operating mode of the network. As the network runs faster, the delay through each device is reduced.
  • the required maximum propagation delay of a device that is not modifying a stream is specified as a function of the symbol time.
  • devices delay a non-modified stream by no more than the time taken by 25 symbols.
  • the delay would be about 814 nanoseconds.
  • the propagation through a device is less than the time given for each operating mode shown in Table 1 1 , according to one preferred embodiment, but other device delay times would be feasible in other embodiments of the invention using other operating modes.
  • FIG. 13 illustrates the most preferred embodiment for encoding symbols on the wire and at the PHY and MAC layers.
  • the most prefe ⁇ ed embodiments use a 5-level encoding scheme that provides redundancy in the data. This helps make the communications more robust, and permits the selection of a few unique quintet values 1302 that are used as confrol codes 1304.
  • Values delivered to the MAC layer are presented as 4 bits and a flag for each lane. One possible set of values is shown in Table 12, but other embodiments of the invention could use other sets of values. As shown, the flag bit is set to zero when the 4 bits are a data value.
  • each device sends a series of 5- level symbols grouped into quintets.
  • Each quintet contains five 5-level symbols. Therefore, a quintet is theoretically capable of representing one of 3,125 possible quintet values. Of these possible values, only 381 are DC balanced, or sum to zero. DC balancing reduces emissions because the level will sum to zero over most groups of quintets. 326 of these 381 balanced values are used for all the data quintets of a frame (i.e., all except the first two quintets in the frame). The first two quintets in each frame are limited to the 'JJKK', 'WWKK' and their inverses, all of which are DC balanced in pairs.
  • the DC balancing also leads to a method of doing forward e ⁇ or co ⁇ ection by exploiting the inherent redundancy. From the characteristics of DC balance, all data quintets must have at least two symbols that are different from any other data quintet. A received quintet that has one symbol received in e ⁇ or will not be DC balanced. The receiver may use a number of techniques to nominate the most likely balanced value and further qualify the quintet as one of the 326 that are actually used.
  • Table 13 shows the blocks of 5-level codes that are used to represent all the legal states possible in quintets encoded on networks, according to one prefe ⁇ ed embodiment of the invention. Each quintet decodes into a code pair (i.e., two lanes worth of information).
  • the 'RR' code is only used during auto-negotiation. All variations of the codes 'J', 'W' and 'K' take up all five symbols to produce distinctive waveforms that span the frequency range and contain solid edges for synchronization. These codes are used for waveform references for equalization, echo cancellation, and polarity detection. They are unipolar, but they may be received in either polarity.
  • Inverted frame markers are used for synchronizing the scrambling of codes. They consist of the inverted 'JJKK' and 'WWKK' codes. The inverted frame markers do not occur on two consecutive frames. Thus, the PHY layer hardware detects positive polarity by looking for two frame markers in a row with the same polarity.
  • FIG. 14(a) and 14(b) illustrate network 5-level data code pairs according to one embodiment of the invention.
  • the first block of 256 codes is given values listed in FIG. 14(a) and FIG. 14(b).
  • Each of the quintets in the first code block represent one 8-bit data value.
  • the y[n] values are the symbol values before scrambling. Y[l] is transmitted first.
  • FIG. 15 illustrates 5-level control code pairs according to one embodiment of the invention.
  • the remaining code blocks are given in FIG. 15.
  • the quintets in these blocks contain one or more confrol codes and in the former case, may also contain a nibble of data.
  • Scrambling The most preferred embodiment of the invention transmits scrambled data signals for two purposes. Scrambling spreads out fransmitted energy of the signal, reducing spectral lines (or peaks). Scrambling also reduces co ⁇ elation in the data signal (and between signals on different cables), increasing the effectiveness of adaptive signal processing algorithms used in the receive circuitry.
  • Prefe ⁇ ed embodiments of the network interfaces utilize scrambling, as described in this section, during full-duplex operation. Half-duplex modes of operation during auto-negotiation do not use scrambled transmissions. Alternative embodiments could be implemented without scrambling.
  • the most preferred embodiment utilizes a side stream scrambler.
  • This technique combines pseudo random data with the actual data using a scrambling function prior to transmission.
  • the pseudo random sequence is independent of the actual data.
  • the receiver generating the same pseudo random sequence as the transmitter, can then extract the original data sfream by performing the inverse of the scrambling function. For example, if the transmitter has actual data 6 and a random number 2 then it adds the two values and transmits 8.
  • the receiver using the same pseudo random sequence generator, also has random number 2 and the scrambled value 8.
  • the receiver can subtract (inverse operation) 2 from 8 to get the original value of 6. Therefore, scrambling has 3 major components: pseudo random number generation, synchronization of transmit and receive pseudo random generators, and scrambling/de-scrambling functions . Scrambler De-scrambler Synchronization
  • the de-scrambler In order for the de-scrambler to recover the original data stream it must generate the same pseudo random sequence that the scrambler used to scramble the data sfream.
  • the pseudo random polynomial and initial value are determined during the early stages of auto-negotiation. Synchronization determines exactly when the initial value will be loaded. De-scrambled frame markers are used to determine the exact point of synchronization
  • a transmitter When a transmitter provides synchronization to the far end receiver it sends exactly one de- scrambled frame marker.
  • the receiver always seeds the pseudo random number generator immediately after the second quintet of a de-scrambled frame marker is received. Therefore, the receiver de-scrambles the quintet immediately following the de-scrambled frame marker using the pseudo random value.
  • a de-scrambled frame marker only is sent to provide scrambler synchronization. Otherwise, frame markers will be scrambled using the functions described in the next section.
  • Scrambling of frame markers allows positive verification that the de-scrambler is still synchronized to the far end scrambler.
  • a legal frame marker pair should always result from de-scrambling the quintets in the frame marker position. Otherwise, the scrambler and de-scrambler have somehow gotten out of sync.
  • De-scrambled frame markers can be recognized immediately and are not de-scrambled. Reception of a de-scrambled frame marker always causes the de-scrambler to re-synchronize. The only likely cause of synchronization loss is a discontinuity in the frame index (i.e., a truncated or elongated frame). During normal operation this condition should never occur.
  • the loop drops into auto-negotiation to re-configure the virtual loop.
  • a de-scrambler gets out of sync with the far end scrambler, it requests re-synchronization.
  • the port with the out of sync de-scrambler sends a de- scrambled, inverted frame marker.
  • Sending a de-scrambled frame marker causes synchronization of the local scrambler and far end de-scrambler.
  • the receiving port synchronizes its fransmit scrambler by sending a de-scrambled frame marker. Inverted frame markers are sent at most every other frame, and should occur much less frequently.
  • the line code imposes some constraints on the symbols that may be fransmitted on the wire.
  • data is fransmitted in groups of five symbols (i.e., quintets) yielding 3125 possible combinations.
  • quintets i.e., i.e., ⁇ -of-ots
  • To achieve several design objectives only 326 out of 3125 possible quintets are legal data quintets.
  • Six quintets are defined for frame marker functions.
  • the scrambled data quintets are in the legal set of 326 values. Therefore the scrambling/de-scrambling functions implement a one-to-one mapping from the legal set of 326 quintets to another legal set of 326 quintets.
  • data quintets i.e. non-frame marker quintets
  • the scrambling function uses a pseudo random number to perform a rotation within the legal set of values (i.e., addition modulo 326).
  • the de-scrambler inverts the process by performing the opposite rotation (i.e., subtraction modulo 326).
  • a de-scrambled frame marker passes through the scrambler/de-scrambler unchanged.
  • a frame marker is scrambled by subtracting 256 from the quintet value (i.e. to bring it within the legal data range), and the same function used for data quintets is performed.
  • a de-scrambler knowing the expected position of the frame marker, performs the de-scrambling function used for data and adds 256.
  • a scrambler only produces a de-scrambled frame marker when requested by the synchronization circuit.
  • a de-scrambler can recognize de-scrambled frame markers directly.
  • a de-scrambler will notify the synchronization circuit when it receives a de-scrambled frame marker.
  • a scrambler applies the frame marker scrambling function based on the input quintet value.
  • a de-scrambler requires frame index information in order to apply the frame marker de-scrambling function based on position.
  • Auto-negotiation has three purposes in preferred embodiments: determine the Clock Master, determine the operating mode, and configure the virtual loop. Once these three tasks are performed a device on the network can enter normal operation. In order to perform auto-negotiation, each device must be able to communicate to neighboring devices. To facilitate this communication, all devices preferably support half-duplex communication at the MW25 operating mode without scrambling. In the most prefe ⁇ ed embodiment, auto-negotiation completes before the media access confrol protocols can be used (i.e., command sfream access, stream access). As a port proceeds through auto-negotiation it progresses through several states, communicating to its link partner via messages. At any given port certain conditions may persist that affect the auto-negotiation process.
  • link fail 1602 link fail 1602
  • clock arbifration 1604 speed arbitration 1606, loop configuration 1608
  • normal operation 1610 normal operation 1610.
  • the ports of a device proceed sequentially through these phases. At any point a device port may fall back to an earlier phase of the process as new information becomes available from other parts of the network or some disruption occurs (e.g. slow device located elsewhere on network, link disconnected, etc.).
  • a device port may fall back to an earlier phase of the process as new information becomes available from other parts of the network or some disruption occurs (e.g. slow device located elsewhere on network, link disconnected, etc.).
  • the full-duplex transceiver technology employed in a prefe ⁇ ed embodiment of the invention requires each link to have a master and a slave where the slave recovers its timing from the master. In the most preferred embodiment, full-duplex communication does not take place until the Clock Master is determined. Therefore, at the start of auto-negotiation each device port only communicates with its nearest neighbor via half-duplex communication at the MW25 operating mode. Once communication with the nearest neighbor is established, message passing from one port to another is used to communicate information across the whole network. When auto-negotiation is completed, the individual links will form a continuous virtual loop.
  • Link partners exchange auto-negotiation information via messages, which are embedded in a frame.
  • One message is transmitted per frame. Any lanes in the frame that are not used by the message are forced to idle. Because of this and the fact the loop is not configured, applications do not attempt to fransmit or receive data until the device has entered the normal mode of operation.
  • the network hardware provides an indication to the application (hardware or software) whether or not the network is operating in normal mode.
  • the 9B5Q code is unipolar (i.e. the polarity matters).
  • half-duplex operation scrambling is disabled. Therefore, clearly identifiable frame markers appear at the beginning of every frame. Receivers search for the frame marker pattern and use it to establish the co ⁇ ect polarity and quintet alignment. The polarity determined during half-duplex operation is used during full-duplex operation (i.e., polarity does not change once full-duplex operation has begun).
  • the link fail condition indicates that no communication is occurring.
  • the most common reasons for a port to be in a link fail state are either that no cable is plugged in, or that there is no device on the other end of the cable.
  • several other situations may cause link fail.
  • the far end device may have lost power and stopped transmitting.
  • the near end or far end device may have forced the link fail condition.
  • a device bypasses any ports in the link fail condition, because bypassing allows the virtual loop to remain complete. For instance, if a port on a device has no cable connected, the device passes the data to the next functioning port, allowing the stream to pass over unconnected or non-functioning ports.
  • the link fail condition also has relevance to other stages of the auto-negotiation process.
  • a device with all but one port in link fail is an endpoint, causing it to loop back the sfream.
  • a device port may go into the link down state to indicate that a particular link should not be used during normal operation (i.e., to eliminate physical loops).
  • a device port indicates a bad link if the quality of the physical medium creates an unacceptably high e ⁇ or rate. In these cases, the port is bypassed.
  • each link establish a master/slave relationship between the ports at either end of the link before any full-duplex communication may proceed. Therefore, clock arbitration is performed first using half-duplex communication to create a directed acyclic (non-cyclic) graph through all links of the network where each device is a node, and the clock master is the root node.
  • Clock arbitration selects the Clock Master based on a 9-byte Arbifration Value. The most significant byte of the Arbifration Value is the Arbifration Byte.
  • the Arbitration Byte prioritizes a device into one of 256 classes.
  • a device's global identification number (GID) comprises the least significant 8 bytes its Arbifration Value.
  • the device with the largest Arbitration Value is selected as Clock Master.
  • the Arbifration Byte allows certain classes of devices to always win clock arbitration over devices of a lower class, and the GID breaks all ties. Not all devices are required to support the Clock Master function.
  • An Arbitration Byte of 0 indicates the device is only capable of slave operation. If no master device resides on the network, auto-negotiation will not complete and the network will not enter normal operation.
  • a device To participate in clock arbifration a device continuously sends messages on ports. If the device receives an acknowledgment on all ports, then it has been elected the Clock Master. However, if it receives a message containing an Arbitration Value larger than its own then it has lost arbitration. If a device loses clock arbitration it will proxy the Arbitration Value of the winning device (i.e. send messages containing winner's Arbifration Value) out all other ports. If an acknowledgement is received on all of the other ports then it will send an acknowledgment back to the winning device (i.e. on the same port that the winning message arrived). However, if a message with an even higher Arbitration Value arrives on any of the ports the device will proxy the new Arbifration Value out all of the other ports. This algorithm guarantees that the co ⁇ ect Clock Master has been selected when that device receives acknowledgements on all ports. However, new devices may be added to the network at any time. Therefore, clock arbifration may restart at any time.
  • Full-duplex communication requires that each link have one master and one slave. Until clock arbifration has created a directed ordering through all devices on the network, some devices may have two slave ports, and this creates a problem for full-duplex operation. Also, scrambler seeds must be exchanged between devices before full-duplex operation can proceed. Therefore, information must first be exchanged through some basic mechanism, which is the purpose of half-duplex operation.
  • FIG. 17 shows the state machine for half-duplex communication for one preferred embodiment.
  • a combination of carrier sense and random wait is used to establish an alternating pattern of transmission between two link partners.
  • the cycle begins with a random wait state 1702. Once entering the random wait state a device waits a random amount of time between 1 and 64 microseconds before proceeding to the transmit state 1704. The technique to generate random intervals is described below. If "ca ⁇ ier sense" is detected on the wire while the port is waiting then the device proceeds to the receive state 1708. If no energy is detected before the random delay expires, the port then transmits a preamble followed by at least four and no more than five complete frames with the pending transmit message in each one. The transmission need not begin on lane 0 of a frame. However, four complete frames must be transmitted.
  • the preamble consists of at least 20 and no more than 40 alternating +2, -2 symbols.
  • the port After transmitting four complete frames, the port waits 350 nanoseconds to 450 nanoseconds for the echoes to cease in state 1706. Then it begins listening for a link partner to transmit. If carrier sense is not detected within 100 microseconds, then the port begins the cycle again with a random wait 1702. If the port detects carrier sense, it attempts to receive the signal until carrier sense subsides. Then it begins the cycle again by moving to the random wait state 1702.
  • Audio Stream Format is designed to transport a vast variety of digital audio data formats, covering a large range of different sample sizes, numbers of channels, sampling frequencies, and encryption, compression and coding schemes.
  • Audio Sfream Format makes it possible to interconnect audio equipment running at arbitrary sampling rates with the same high fidelity. In some cases, compressed audio that arrives in a burst of data rather than in a continuous flow can also be transported.
  • the Audio Stream Format accommodates a wide range of sample structures, sample sizes and sample rates. This flexibility is the basis for supporting an open-ended variety of audio formats.
  • Table 14 contains some examples of audio formats that can be handled using the Audio Sfream Format.
  • the sequencing of audio samples within structured audio sfreams is standardized in such a way that high fidelity formats can be directly decoded by low fidelity devices with no need for re-routing or mixing.
  • This conversion capability is a key advantage of the Audio Sfream Format. It lowers system complexity, reduces parts counts, and grants enormous flexibility to product designers and end-users alike.
  • the Audio Stream Format specification extends the structure of Device ROM so that processes managing audio activities can query the capabilities of audio components via the Command Sfream in order to determine what audio formats they support. Whenever an application must send audio from a source device to a consumer device, the application manager reads both devices' Device ROM to determine their audio streaming capabilities. It then selects the audio format that best suits the combination of the media, producer and consumer.
  • Streams encoded in the Audio Sfream Format may contain embedded audio commands that support advanced features or confer greater flexibility in handling the stream. They may be used to provide any extra information needed for retrieving, decoding, processing, storing or editing audio sfreams. Among other things, in-stream commands can be used to support copy-protection and encryption.
  • a special audio streaming mode allows a limited number of devices to mix independent audio sources into a single sfream. This is particularly useful for telephony applications.
  • audio sfream refers to a flow of audio data moving on a network and encoded using the Audio Sfream Format.
  • An audio stream consists of a sequence of audio packets that succeed each other at the audio sampling rate of the sfream.
  • An audio stream running at the frame rate (48 kHz) is the prime example of a frame synchronous stream. In such a stream, each frame contains one audio packet, and the respective nibbles of each packet are mapped onto the same lane in every frame. Audio streams running at binary multiples of the frame rate are also considered to be frame synchronous. In these streams, which are termed "over-sampled frame synchronous," each frame contains several audio packets. The packets and their constituent nibbles repeat in exactly the same lane positions from frame to frame.
  • frame synchronous sfreams may run at binary sub-multiples of the frame rate. In these cases it takes some fixed number of frames to deliver each packet. Such streams are said to be "sub-sampled frame synchronous.”
  • An audio stream whose packets permute through a repeating pattern of nibble-to-lane mappings over some fixed number of successive frames is referred to as a "clock synchronous" audio sfream.
  • Such a sfream requires more complex decoding than a frame synchronous stream does, but its time-base is actually tied directly to the clock rate. For example, 44.1 kHz can be derived from the clock through the exact ratio 147/160.
  • An audio stream running at a sampling rate extracted from an external clock having no relationship to the frame rate is referred to as an "asynchronous" audio stream.
  • CD audio can be encoded as a clock synchronous sfream, in practice it is treated as an asynchronous sfream.
  • Each audio packet is composed of one or more audio data samples (depending on the number of audio channels being conveyed by the sfream).
  • An 'Idle' code or in-stream command may mark the end of the packet, depending on the type of the audio sfream.
  • the terms "audio sfream sample” or “sfream sample” refer to the audio content of an audio packet (i.e., it is considered apart from its encoding).
  • Audio streams are composed of audio packets.
  • Each audio packet carries a single stream sample, which in turn is comprised of at least 1 and not more than 32 audio samples.
  • the minimum size of a stream sample is 2 nibbles, and the maximum size is 64 nibbles.
  • each audio packet is explicitly terminated or delimited.
  • the delimiter is either a single "idle" control code or an in-stream command. In-stream commands consist of a "T" control code followed by an extension consisting of a single data nibble.
  • each frame may carry anywhere from a fraction of a single audio packet on up to several complete audio packets, all as part of the same sfream.
  • the network bandwidth required to carry the sfream may vary from a minimum of one lane per frame up to the maximum allowed by the network-operating mode.
  • Some audio sfream types, audio sample sizes, and stream sample rates that are supported by preferred embodiments of the invention include: Frame Synchronous Sfreams
  • Audio Sample size 8 12, 16, 20, 24 and 32 bits.
  • Stream Sample Rate derived from the sampling rate (includes 48 kHz)
  • Audio Sample size 8 12, 16, 20, 24 and 32 bits.
  • each sfream sample includes at least one audio sample, and each audio sample is at least 2 nibbles in size.
  • all audio samples are encoded most significant bit first.
  • the sfream samples of a multi-channel audio stream each contain the same number of audio samples for each channel (all channels of a multi-channel stteam are encoded at the same sampling frequency). All audio samples within the stream sample share the same format and are of the same size.
  • stream samples do not exceed 64 nibbles in size. Since each audio sample is at least 2 nibbles in size, and since all audio samples within the same stream are the same size, it follows that the sfream samples of an audio stream may consist of up to 32 audio samples each. This provides the basis for a wide variety of multi-channel and/or multi-band formats. The following sfream sample formats are supported for frame synchronous, clock synchronous, or asynchronous audio streams:
  • Mono-channel Single channel audio sfream (e.g., telephone, intercom, etc.).
  • Multi-channel Two or more time coherent audio channels combined in a single audio sfream e.g., stereo channel, Dolby Digital, Dolby Surround
  • Multi-process Two or more audio channels derived from processing of a single channel e.g., mufti-band equalizer output, cross-over output
  • Multi-sampled In a mufti-sampled stream, a stream sample contains several audio samples of the same channel. The audio samples run at a multiple of the stream sample rate.
  • Mufti-source Two or more audio sources mix onto a single full-duplex audio sfream.
  • the audio stream arrives at a device sfream, the previous sample sent by this source is subtracted, and the next sample is added in before the sfream is re-injected on the network
  • the audio samples contained in each stream are ordered in the following precedence: 1. by channel number in ascending order or (Left, Right)
  • channel type e.g. in pass-band order: high band, middle band, low band
  • FIG. 18 illusfrates one example of coding of a 20-bit sample 1802 on an audio stream, and shows how a sfream sample consisting of a single 20-bit audio sample is formatted and distributed onto lanes 1804 in a frame 1806 beginning with frame header 1808. Exactly which lane positions in the frame 1806 will be utilized is determined when the stream is initialized and lanes 1804 are assigned to carry it. The audio sample is cut into individual nibbles. Each successive nibble is coded appropriately and transmitted in one of the lanes 1804 assigned to the stream. Finally, the delimiter 1810 (in this case an "Idle" confrol code) is inserted to mark the end of the audio packet.
  • the delimiter 1810 in this case an "Idle" confrol code
  • FIG. 19 shows how a stream sample consisting of a stereo pair of 20 bit audio samples 1902 and 1904 would be formatted and distributed onto the frame 1906 with frame header 1908, lanes 1910, and packet delimiter 1912.
  • This sfream sample could be seen as composed of two 20-bit samples, or as a single 40-bit sample.
  • the encoding and decoding of audio sfreams must be externally coordinated using information that is not directly contained in the sfream.
  • a Media Asynchronous Packet Stream is used by network protocol clients (e.g., TCP/IP) to send data packets over networks.
  • MAPS streams are shared among peer reader/writer devices using an access method derived from the IEEE 802.5 standard for Token Rings. A number of terms used to describe MAPS are applied in a manner consistent with
  • frame A sequence of bytes transmitted over a set of lanes allocated to MAPS, delineated by a unique non-data sequence called the Starting Delimiter and a unique non-data sequence called the Ending Delimiter. In any case where the meaning may be ambiguous, the term frame is used to distinguish a frame from a MAPS frame. LLC: Logical Link Control layer, the upper part of the data link layer in an OSI architecture.
  • MAC Medium Access Control layer, the lower part of the data link layer in an OSI architecture. In any case where the meaning may be ambiguous, the term MAC is used to distinguish the MAC from the MAPS MAC.
  • ring A group of stations connected by lanes and using the MAPS protocol to share access to the lanes. A ring should not be confused with a loop.
  • station A device capable of performing the MAPS functions.
  • MAPS is represented as collections of octets (bytes). MAPS operates on a byte sfream, therefore the transmission order of frame headers and data is resolved to the byte level with bytes being transmitted in most-to-least significant (left-to-right) order. Each byte is composed of bits numbered 7-0, where bit 7 is always the most significant bit (msb) and bit 0 is always the least significant bit (lsb) in memory.
  • non-data codes are shown or described as nibbles for simplicity. Strictly speaking, these codes and data nibbles each occupy a lane on the physical medium.
  • the MAPS access method is based on the classic Token Ring access protocol (TKP) developed by IBM and later standardized in the United States by IEEE and internationally by ISO/IEC.
  • TTKP Token Ring access protocol
  • the MAPS frame format, maximum frame size, and bit order of LAN addresses in memory have been adopted from IEEE 802.3 CSMA/CD (Ethernet) in order to simplify bridging to this popular LAN standard.
  • TKP The TKP standard was designed to detect and isolate many common LAN problems such as faults in the physical wiring plant or network interface. TKP also provides for different priorities of service, enabling low latency application streams. These functions are handled by the architecture of the most preferred embodiment and do not need to be duplicated in MAPS. Therefore, MAPS provides a subset of TKP functionality limited to best effort delivery of single priority data frames. MAPS is a contention-free communication technique in which a group of stations are (logically) connected in a ring and a token (a three-byte entity) is used to confrol ring access.
  • FIG. 20 depicts four stations on a ring and illustrates the four basic steps of MAPS operation; token circulation 2002, transmitting 2004, receiving 2006, and stripping 2008.
  • Each station receives data from its upstream neighbor and transmits data to its downstream neighbor.
  • the token which is initially released by one station on the ring termed the Active Monitor (AM), circulates from station to station around the ⁇ ng with each station repeating the data (2002)
  • a station wishing to transmit data to another station must wait for a token to be received and, after detecting the start of the token, it changes the token to a start-of- frame sequence and appends the frame fields (Station B in 2004)
  • the MAPS frame circulates around the ⁇ ng, repeated by each station Any station that recognizes the destination address of the frame (Station D in 2006) copies the frame to a local buffer m addition to continuing to repeat the frame to the next station on the ⁇ ng Finally, the o ⁇ gmating station strips or removes the frame from the ⁇ ng and releases a token (Station B in
  • a logical ⁇ ng network can run over the existing analog telephone wire segments in a home Moreover, in a preferred embodiment of the invention, virtually any physical topology (star, loop, tree, and so forth) throughout a home, office, or other environment can be converted, with minor junction-box wi ⁇ ng modifications, into a logical ⁇ ng network Information can propagate around this logical ⁇ ng, reaching every device on each revolution around the network Network devices can be full-duplex, transmitting, and receiving information simultaneously
  • An arbitration process occurs automatically upon network initialization, and one of the competing devices is elected the network clock device to which all other devices are then synchronized
  • the logical ⁇ ng network ensures that information always will propagate from one device to another at consistent time intervals
  • information will propagate consistently around the logical ⁇ ng network at the frame rate, and the time required for information to propagate between any two particular devices will remam fixed
  • an auto-configuration process configures each network device and determines the network topology The entire network topology is discerned and made available to interested devices, even though individual devices need not be capable of interpreting such information Devices can be added and removed in true "plug and play” fashion, and will be hot-pluggable if connected anywhere on a chain of devices attached to a "hot-pluggable smart jack" device
  • Network devices are relatively “dumb” and inexpensive, in that they require only simple hardware state machines to accommodate the basic network protocol, and to fransmit and/or receive digital media streams.
  • Network devices have unique static device IDs, which simplify device identification and addressing, as well as network initialization, and form the basis for encryption to provide network security, authentication and/or copy protection functionality.
  • Devices also can contain other device-specific information, including device drivers (or pointers to external device drivers) that can be executed on their behalf by "smart" CPU-based controllers.
  • the network architecture accommodates new "restructured" digital-ready devices that redistribute existing device functionality across the network. For example, by removing MPEG2 decoders from DVD players, the compressed digital information can be distributed processed throughout the logical ring network before reaching its ultimate destination (e.g., a television attached to or incorporating an MPEG2 decoder).
  • Information propagates along the logical ring network in fixed-length frames.
  • frames contain two independent sfreams: a "data stream” for the distribution of real-time continuous digital media streams, as well as asynchronous data, and a "system command stream” for the distribution of "system commands,” which are used primarily for network initialization and auto-configuration of network devices, as well as basic switching of digital media sfreams.
  • the system command sfream propagates along a "default network path" that reaches every network device.
  • the data stteam can propagate along any available path, to provide for greater overall network bandwidth (e.g., by adding a switching router device to the network to create alternative data stteam paths).
  • the data stream is divided into distinct "channels" (the size of each channel being tailored to the bandwidth and sample-rate requirements of a particular media type) that operate by default, and can be reallocated dynamically (in some cases even occupying noncontiguous portions of the data stream).
  • devices can reliably guarantee consistent delivery of data (e.g., audio samples at the standard CD audio 44.1 kHz rate) having particular bandwidth requirements.
  • two speakers on the network will receive left and right channel digital audio, respectively, at the "same time” (i.e., within one sample time of accuracy), and thus be synchronized to each other (i.e., phase coherent), even if the source device is physically located in another room and/or zone of the network).
  • Phase coherency is a critical factor in high-quality stereo audio systems, as well as multi-channel surround sound systems (e.g., Dolby AC-3).
  • the data stteam also contains embedded control information and other asynchronous data, including, compressed MPEG2 video and other variable bit-rate data, as well as asynchronous network protocols, such as VC, RS232 serial protocols, and TCP/IP. Such information is delivered synchronously, thereby avoiding collisions.
  • Network devices can utilize channels of the data sfream to send custom commands to one another, including confrol information, pursuant to any protocol known to such devices.
  • a preferred embodiment of the invention is a synchronous, peer-to-peer, point-to-point network, connects all devices in one serial loop via a single pair of wires.
  • the wire should be category 5 grade twisted pair.
  • the invention can operate at lower speed over lower quality wire, including untwisted pair or even the flat ribbon wire used to connect telephones to wall jacks.
  • Network speed is limited by the maximum signaling speed of the attached devices. When the network is started, communication along each link is validated at the lowest speed (25 Mbps), but if every link can support it, the network speed is increased.
  • the existing telephone wiring may often be used to create a home network.
  • Ordinary Category 3 or Category 5 telephone wire is used to connect devices.
  • the preferred embodiment also tolerates the lower-quality telephone wiring found in many homes including unshielded twisted-pair " Bell' wiring, even unshielded untwisted 'Quad' wire.
  • the network interface detects bad wiring conditions and automatically remains at a slower speed (25 or 50 Mbps total throughput) to compensate.
  • Prefe ⁇ ed embodiments of the invention can connect devices over long distances. Using Category 5 telephone wiring, individual devices can be up to 100 meters (over 300 feet) apart. If Category 3 wire is used, devices should be no more than 50 meters (about 150 feet) apart. In any case, preferred embodiments of the invention can support at least 100 devices connected by thousands of meters of wire. Prefe ⁇ ed embodiments of invention support many types of devices and carry many types of media and data: • Audio: Nearly any type of digital audio including AC-3 (digital surround sound) and new high sample rate formats such as DVD audio; • Video: MPEG 1 and MPEG2 video, including DVD video and HDTV (high-definition television) signals which can require up to 19.2 Mbps);
  • One prefe ⁇ ed embodiment of the invention achieves data rates of up to 98 Mbps. Even assuming the worst-case scenario of half-duplex broadcast of all information to all points on the network, that's enough bandwidth to simultaneously carry: eight high-quality MPEG2 video channels (6 Mbps each) with accompanying audio; thirty-two 24-bit audio channels; sixteen phone or ISDN lines (encoded as low bit-rate digital audio); and more than 8 Mbps of asynchronous data such as serial or TCP/IP data.
  • Preferred embodiments of the invention are extremely bandwidth efficient. Up to 98% of network bandwidth is reserved for end-user media and data. Because prefe ⁇ ed embodiments of the invention cue a synchronous architecture, media need not include time stamps, which consume half of available bandwidth in some prior art networks.
  • the prefe ⁇ ed embodiment of the MAC level directly implements a distributed architecture that allows network applications to be controlled from a small number of devices containing processors.

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

L'invention concerne un protocole et une architecture destinés à un réseau en anneau logique synchrone qui fonctionne sur des topologies téléphoniques physiques à paires torsadées existantes. Dans un premier mode de réalisation, l'invention concerne un procédé et un appareil permettant de communiquer au moyen de symboles générés par un dispositif source sur un réseau. Dans un second mode de réalisation, l'invention concerne un procédé et un appareil permettant de transmettre un flux de commande généré par un dispositif source dans un réseau. Dans un troisième mode de réalisation, l'invention concerne un procédé et un appareil permettant de transmettre un flux audio généré par un dispositif source sur un réseau. Dans un quatrième mode de réalisation, l'invention concerne un procédé et un appareil permettant de transmettre un flux de paquets asynchrone généré par un dispositif source sur un réseau. Dans un cinquième mode de réalisation, l'invention concerne un procédé et un appareil permettant de transmettre un flux téléphonique généré par un dispositif source sur un réseau destiné à être reçu dans le réseau. Dans un sixième mode de réalisation, l'invention concerne un procédé et un appareil permettant de déterminer un décalage des horloges sur un réseau en anneau logique. Dans un septième mode de réalisation, l'invention concerne un procédé et un appareil permettant d'interfacer les informations en mode continu entre un ou plusieurs protocoles de gestion de réseau et une couche physique du réseau. Dans un huitième mode de réalisation, l'invention concerne un procédé et un appareil permettant de choisir un dispositif d'horloges de réseau commun sur un réseau en anneau logique. Dans un neuvième mode de réalisation, l'invention concerne un procédé et un appareil permettant d'attribuer un ensemble de couloirs dans une trame contenant une pluralité de couloirs à un réseau reliant une pluralité de dispositifs. Dans un dixième mode de réalisation, l'invention concerne un procédé et un appareil permettant de transmettre des flux synchrones bilatéraux de données sur un réseau orienté TDMA (accès multiple par répartition dans le temps) reliant une pluralité de dispositifs. Dans un onzième mode de réalisation, l'invention concerne un procédé et un appareil permettant de diffuser l'identification du dispositif pendant le démarrage d'un dispositif dans un réseau reliant une pluralité de dispositifs. Dans un douzième mode de réalisation, l'invention concerne un procédé et un appareil permettant de structurer l'architecture des données d'un dispositif ROM dans un réseau reliant une pluralité de dispositifs.
PCT/US2000/019979 1999-07-23 2000-07-21 Appareil et procede destines au controle d'acces au support WO2001008366A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14546199P 1999-07-23 1999-07-23
US60/145,461 1999-07-23

Publications (3)

Publication Number Publication Date
WO2001008366A1 WO2001008366A1 (fr) 2001-02-01
WO2001008366A8 WO2001008366A8 (fr) 2001-05-31
WO2001008366A9 true WO2001008366A9 (fr) 2001-06-21

Family

ID=22513235

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/019979 WO2001008366A1 (fr) 1999-07-23 2000-07-21 Appareil et procede destines au controle d'acces au support

Country Status (1)

Country Link
WO (1) WO2001008366A1 (fr)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8880205B2 (en) 2004-12-30 2014-11-04 Mondo Systems, Inc. Integrated multimedia signal processing system using centralized processing of signals
US9237301B2 (en) 2004-12-30 2016-01-12 Mondo Systems, Inc. Integrated audio video signal processing system using centralized processing of signals
US9402100B2 (en) 2004-12-30 2016-07-26 Mondo Systems, Inc. Integrated multimedia signal processing system using centralized processing of signals

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6611537B1 (en) 1997-05-30 2003-08-26 Centillium Communications, Inc. Synchronous network for digital media streams
US20040233929A1 (en) * 2003-01-27 2004-11-25 Hall Tobin J. System and method of controlling network devices
US7526350B2 (en) 2003-08-06 2009-04-28 Creative Technology Ltd Method and device to process digital media streams
EP1564990A3 (fr) * 2004-02-16 2008-04-16 Matsushita Electric Industrial Co., Ltd. Procédé et système de gestion d'équipement
US7613112B2 (en) * 2005-06-28 2009-11-03 Nokia Corporation Optimizing playback startup time of bursty real-time streams
US10013381B2 (en) 2006-08-31 2018-07-03 Bose Corporation Media playing from a docked handheld media device
WO2008128544A1 (fr) * 2007-04-24 2008-10-30 Bang & Olufsen A/S Système bon marché de liaison numérique en temps réel
US8615091B2 (en) * 2010-09-23 2013-12-24 Bose Corporation System for accomplishing bi-directional audio data and control communications
US8990464B2 (en) 2011-10-05 2015-03-24 Analog Devices, Inc. Methods for discovery, configuration, and coordinating data communications between master and slave devices in a communication system
US9946680B2 (en) 2012-10-05 2018-04-17 Analog Devices, Inc. Peripheral device diagnostics and control over a two-wire communication bus
US9772665B2 (en) 2012-10-05 2017-09-26 Analog Devices, Inc. Power switching in a two-wire conductor system
US9330169B2 (en) 2013-03-15 2016-05-03 Bose Corporation Audio systems and related devices and methods
US10419497B2 (en) 2015-03-31 2019-09-17 Bose Corporation Establishing communication between digital media servers and audio playback devices in audio systems
US9928024B2 (en) 2015-05-28 2018-03-27 Bose Corporation Audio data buffering
US9911433B2 (en) 2015-09-08 2018-03-06 Bose Corporation Wireless audio synchronization
US10454604B2 (en) 2015-10-02 2019-10-22 Bose Corporation Encoded audio synchronization
US9798515B1 (en) 2016-03-31 2017-10-24 Bose Corporation Clock synchronization for audio playback devices
US10219091B2 (en) 2016-07-18 2019-02-26 Bose Corporation Dynamically changing master audio playback device
CN111031196B (zh) * 2019-12-25 2024-04-26 普世(南京)智能科技有限公司 一种基于标志帧的低功耗单向无反馈影像传输方法及系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA925212A (en) * 1970-06-22 1973-04-24 Western Electric Company, Incorporated Digital data scrambler-descrambler apparatus for improved error performance
US5280500A (en) * 1991-10-10 1994-01-18 Crescendo Communications, Inc. Method and apparatus for multilevel encoding for a local area network
US5438571A (en) * 1992-11-06 1995-08-01 Hewlett-Packard Company High speed data transfer over twisted pair cabling
DE69733864T2 (de) * 1996-03-11 2006-08-03 Hewlett-Packard Development Co., L.P., Houston Vorrichtung und verfahren zur datenübertragung von datenwortblöcken zusammen mit kontrollwörtern

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8880205B2 (en) 2004-12-30 2014-11-04 Mondo Systems, Inc. Integrated multimedia signal processing system using centralized processing of signals
US9237301B2 (en) 2004-12-30 2016-01-12 Mondo Systems, Inc. Integrated audio video signal processing system using centralized processing of signals
US9338387B2 (en) 2004-12-30 2016-05-10 Mondo Systems Inc. Integrated audio video signal processing system using centralized processing of signals
US9402100B2 (en) 2004-12-30 2016-07-26 Mondo Systems, Inc. Integrated multimedia signal processing system using centralized processing of signals

Also Published As

Publication number Publication date
WO2001008366A8 (fr) 2001-05-31
WO2001008366A1 (fr) 2001-02-01

Similar Documents

Publication Publication Date Title
WO2001008366A9 (fr) Appareil et procede destines au controle d'acces au support
US6611537B1 (en) Synchronous network for digital media streams
US7206367B1 (en) Apparatus and method to synchronize multimedia playback over a network using out-of-band signaling
KR101429249B1 (ko) 이더넷 코딩 위반으로 구분되는 프레임 및 패킷 구조를 이용하여 이더넷 전송선을 통해 상이한 유형의 스트리밍 및패킷화된 데이터를 전송하는 시스템 및 방법
US6378000B1 (en) Address mapping in home entertainment network
EP1424827B1 (fr) Procédé et système pour désagrégation des components audio/visuels
US8094678B2 (en) Method of and apparatus for providing reserved bandwidth to ethernet devices over switched ethernet including a home network wall plate having a combined IEEE 1394 and ethernet modified HUB
EP1127427B1 (fr) Groupes de dispositifs en reseau
US7136399B2 (en) Latency handling for interconnected devices
US8379654B2 (en) Method of and apparatus for providing isochronous services over switched ethernet including a home network wall plate having a combined IEEE 1394 and ethernet modified hub
US20050002402A1 (en) Real-time transport protocol
US20030225951A1 (en) Communication system and methodology for sending a designator for at least one of a set of time-division multiplexed channels forwarded across a locally synchronized bus
KR20010090768A (ko) 전자 장치, 및 인터페이스 유닛의 버스 초기화 위상에서디지털 시리얼 데이터를 처리하는 방법
JP4709269B2 (ja) フレームセグメント内でのデータ送信を表すシグナリングバイト又はコーディングバイオレーションを使用してフレームセグメント内の同期性のネットワークを通して異なる形式のデータを送るための通信システム
US6922747B2 (en) Communication system and methodology for addressing and sending data of dissimilar type and size across channels formed within a locally synchronized bus
US20020188752A1 (en) Control messaging for an entertainment and communications network
EP1646187B1 (fr) Systeme de communication pour l'envoi de donnees de different types et dimensions par des canaux crees a l'interieur d'un bus a synchronisation locale
KR100985745B1 (ko) 직렬 통신 버스용 데이터 링크 레이어 디바이스
Klinkradt et al. A Comparative Study of mLAN and CobraNet Technologies and their use in the Sound Installation Industry
Wetzel et al. Consumer Applications of the IEEE 1394 Serial Bus, and a 1394/DV Video Editing System
JP2000174810A (ja) 伝送システム、インターフェース装置および伝送方法
Soler et al. Multichannel Audio Distribution through the IEEE 1394 Protocol.-A Practical Approach

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP KR

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
AK Designated states

Kind code of ref document: C1

Designated state(s): JP KR

AL Designated countries for regional patents

Kind code of ref document: C1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

CFP Corrected version of a pamphlet front page
CR1 Correction of entry in section i
AK Designated states

Kind code of ref document: C2

Designated state(s): JP KR

AL Designated countries for regional patents

Kind code of ref document: C2

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

COP Corrected version of pamphlet

Free format text: PAGES 1/20-20/20, DRAWINGS, REPLACED BY NEW PAGES 1/20-20/20; DUE TO LATE TRANSMITTAL BY THE RECEIVING OFFICE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase in:

Ref country code: JP