FireWire/IEEE1394 HighSpeed Serial Bus

download FireWire/IEEE1394 HighSpeed Serial Bus

of 4

Transcript of FireWire/IEEE1394 HighSpeed Serial Bus

  • 7/28/2019 FireWire/IEEE1394 HighSpeed Serial Bus

    1/4

    FireWireTM/IEEE 1394 High Speed Serial Bus

    R. Gill

    Abstract-The IEEE 1394 is a high performance serial bus

    protocol, which is becoming the defacto serial bus for the

    consumer electronics market, PC peripherals, multimedia

    entertainment systems and home automation systems. The

    protocol is also being used for interconnecting real time

    computer systems. This paper describes how the protocol

    can perform at high data rates and allow such flexibility for

    when connecting diverse devices.

    I INTRODUCTION1

    Digital peripheral devices such as camcorders and scannersrequire high data throughput rates for situation such assynchronises audio and video in real time. The FireWire orIEEE 1394 was originally designed to address this kind ofneed.The IEEE 1394 protocol (FireWire) is a high speed,low cost digital connection, serial bus which hasadvantages for real time systems requiring calculations andsamplings to perform within a particular time framewindow, in order to guarantee results. FireWire performsthis with built in synchronization of communications and

    processes between devices. FireWire supports two modesof data transfer, asynchronous and isochronous.Isochronous support is important for multimediaapplications such as live feed and where audio-video must

    be synchronized. In such cases, uninterrupted transport oftime critical data and just-in-time delivery reduces the needfor costly buffering. This is an ideal solution forinterconnecting real time computer systems. Isochronoustransmission provides automatic synchronization ofcommunications and guarantees data transport at a predetermined rate with no extra programming, alsoeliminating latency and jitter.FireWire uses serial communication allowing for a thin andeasy to handle 6 conductor cables used between computersand I/O devices. Each FireWire bus can have a maximumof 64 nodes (devices) connected in peer to peer style,allowing data rates of up to 400Mbs for multiple devicesmapped to the same bus. This means that there is no needto manually configure device IDs as the FireWire busautomatically assigns IDs to devices as they are connected.In short FireWire is a protocol allowing flexible

    topologies, high speed data rates and easy to use plug andplay connections for multiple devices.The rest of this paper is organized as follows. In section 2 adescription of FireWire protocol as a conceptualmultilayered reference model is provided. Section 3describes the topology benefits of the protocol, Section 3describes how the arbitration is done between the bus andconnecting and disconnecting nodes, Section 4 compares

    performance with other protocols, Section 5 describesarbitration for access to bus between networked nodes,Section 6 describes system clock synchronization and

    Section 7 outlines unique features and limitations of theprotocol.

    II THE CONCEPTUAL BUS

    Here the 1394 protocol is described in terms of a threelayered model similar to the OSI reference model. The topof Figure 1 shows the simple bus topology. Nodes maybeconnected to the bus at anytime without any requirementfor manual resetting or node address update.

    The automatic plug and play feature of plugging orunplugging nodes is possible because of the unique threelayered protocol model shown in Figure 1. The first two

    layers correspond to the first two layers of the OSI

    reference model. The third is a unique FireWire specificlayer which functions similar to the bottom four layers ofthe OSI model.The physical layer receives raw data from the cable and

    symbolic data from the link layer above it. The physicallayer has three primary functions. Firstly, as a translator ofdata from the cables electrical signals to the link layer, and

    from symbolic data from the link layer into electricalsignals for the cable. Secondly, it defines electrical and

    mechanical connections to the serial bus. Thirdly, it makessure all nodes connected to the bus have fair access to the

    bus by arbitrating to make sure only one node is sending

    data at any time.

    The link layer handles packet transmission and reception,including addressing, checking data and formatting data.The link layer delivers packet data by sending andreceiving between connected nodes, in asynchronous andisochronous modes. In asynchronous mode aacknowledgement datagram is sent to the transaction layerfor confirmation. In asynchronous mode, packets are

  • 7/28/2019 FireWire/IEEE1394 HighSpeed Serial Bus

    2/4

    formatted and transferred directly to the application, duringthis operation a cycle signal is generated for timing andsysnchronising asynchronous packets during transfer.

    Figure 1 1394 conceptual multilayered reference model

    .

    The transaction layer supports read, write and lockcommands asynchronously. A write command sends datafrom the data source to the data receiver, and a readcommand returns data from the receiver to the data source.The lock command combines write and read commands bya round trip routing of data between source and receiver,the round trip routing includes processing by the datareceiver.

    Bus management controls bus functions at the physical,link and transaction layers for hardware or software at eachindividual connected node. Bus management has threelevels of management control, depending on the bus itself,called non-managed, limited managed and fully managed.At the non-managed bus management level onlyasynchronous data is managed, for example from a scannerto a hard drive using a cycling method. Here nointervening node such as a PC is present. A bus withlimited management can support asynchronous and 8 to 64channels of isochronous data transfer, plus some powermanagement ability. A fully managed bus includes adevice such as a PC to act as the bus manager. A fullymanaged bus enables asynchronous data transfer and 64

    channels of isochronous data transfer. At this level fullpower management and bus optimization, as well asmapping of bus topology and data transfer speed isadministered.

    III TOPOLOGY

    One of the advantages of FireWire is the ease in whichdevices can be connected together without the need for anymanual setting to either the new device or existingcommunication network of devices.

    Figure 2 Example 8 node FireWire topology

    The topology is tree like with a root node (device) and

    branching out into logical nodes. A device maybe pluggedinto an existing network (typically a FireWire device has

    up to 3 ports) whether it is self powered or not. Thelimitation on the topology pattern is that no loops maybe

    formed. In Figure 2, N1 is the root node which controlsarbitration of the network this is called the root node. Theroot node is the first live node from which the network is

    built upon, the root node could just as well be any of theother nodes, as long as it meets this requirement. The rootis node is automatically designated as root on initialization

    and will remain root as long as it remains connected. Whenconnecting or disconnecting a node the bus reconfigures

    itself automatically to the network.A FireWire topology can have up to 63 nodes and eachtopology can in turn be connected to other topologies using

    bridges to form an overall maximum topology network of1023 buses. Thus allowing up to 64,449 (1023 buses x 63nodes) nodes connected to the same network.

    FireWire topology has certain limitations both netword andphysical. Network limitations include a maximum of 16

    hops between any two nodes, and no loops can be formed.Physically, cable length between nodes should not be morethan 4.5 metres.

    PHYSICAL CONNECTION

    FireWire connector is small and compact with only 6connector pins connected to 6 cable wires. Of the cablewires 2 connect to cable power wires and the other 4connect to two pairs of twisted signal wires. The power

    wires carry up to 1.5A at 8-40V, enabling nodes withoutpower supply to be connected in a plug and play manner to

    the FireWire bus.

  • 7/28/2019 FireWire/IEEE1394 HighSpeed Serial Bus

    3/4

    Figure 3 FireWire connector and cable wire configuration

    Compared to parallel connectors such as SCSI whichrequire up to 25 or 50 connector pins, FireWire is much

    less. The reason for this is that data is transferred seriallyusing FireWire instead of broken up into parallel transfer.

    IV PERFORMANCE

    The FireWire standard supports data rates of 100,200 and400Mb/s. The flexibility of FireWire protocol allows

    devices to communicate at different throughput rates on the

    same bus. Table 1 shows comparable figures for FireWire,USB and Ethernet Ramamurthy[1],

    File Size(Mbytes)

    Type ofNetwork

    AverageData

    TransferTime(sec)

    AverageData

    TransferSpeed

    (Mbits/sec)

    13.7 FireWire 1.03 106.4Ethernet 11.83 9.26

    USB 15.01 7.30

    42.7 FireWire 3.58 95.41

    Ethernet 34.16 10.0096.8 USB 48.66 7.02

    FireWire 7.56 102.43

    Ethernet 49.76 15.56

    USB 121.95 6.35

    Table 1(a) FireWire data rates compared to USB andEthernet

    V ARBITRATION

    A. Data Transfer

    FireWire operates in two modes, asynchronous and

    isochronous mode. Asynchronous requiresacknowledgement from specific addresses when sending

    packets and has longer packet length to accommodateacknowledgements than isochronous. Asynchronoustransfer rates are lower than isochronous. Isochronous

    mode broadcasts variable packet lengths to all nodesaddresses in the bus at fixed intervals without requiring

    acknowledgements. Asynchronous transfer is managed by

    the conceptual framework reference (see Figure 1) inwhich the Transaction Layer is responsible for

    asynchronous reading and writing operations only.

    B. Resetting Network Topology

    On connecting or disconnecting a node and prior toarbitration, any network topology is cleared from all node

    registers and a new network topology is built. At thephysical layer connection status of each port is checked tosee if the node is either isolated a leaf node or branch node

    of the existing topology. Identify each node status buildsthe topology and a root node is designated. Root

    designation is usually the last node to be checked as thetree is built from furthest nodes first and built backwardsfrom leaf, branch, and then root. Once the tree topology is

    known, each node is assigned a physical address ID toidentify itself to the bus manager and for asynchronoustraffic.

    As the new topology is built, nodes on the bus arbitrate forbus management roles. The role of cycle master is played

    by the designated root node. The cycle master contains acommon clock source and synchronises all nodes to thatclock, so that isochronous data can be transmitted.

    Another important toll is that of the isochronous resourcemanager and bus manager. The isochronous resourcemanager allocates time slots to nodes. The resource

    manager then tells it whether that channel is free. If thechannel is free, then that channel is assigned to the node

    making the request. If the channel is in use, the node willtry other channels until one found which is free. Duringthis bus reconfiguration process, assigned channels prior to

    reconfiguration are re assigned before new ones areassigned. If there are to few time slots for a requestingnode, the node will periodically repeat the request until a

    time slot is found. This is normally when an existingisochronous node releases its resources. Actual allocation

    of the role of isochronous resource manager and busmanager can depend on hardware and software being usedat the time, or the most qualified node, if two or more

    nodes are equally qualified then the highest numberednode will be assigned the role.

    Once the bus reconfiguration management roles areassigned, arbitration for access between nodes begins. Themode in which the node transfers data (asynchronous or

    isochronous) is also important for access rights to the bus,because different data transfer rights have different accessrights.

    The main decision maker is this arbitration process is theroot, in its cycle master role, which transmits a timing

    message called a cycle start at intervals of 125 , this is

    the actual start of access to bus arbitration for nodes. Thefirst 80% of the cycle start cycle is reserved for

    isochronous data access, the remaining 20% forasynchronous data.

  • 7/28/2019 FireWire/IEEE1394 HighSpeed Serial Bus

    4/4

    Access hierarchy is, first rights go to nodes with reservedisochronous channels arbitrate. As soon as a node receives

    a cycle start, it sends its request for access to the root. Thefirst request will gain access. After a node has been givenaccess a gap called isochronous gap occurs, in which

    arbitration restarts, and the next closest node is grantedaccess. This access-gap-access sequence continues for untilall nodes wishing to transmit isochronous data have

    accessed.Second in the hierarchy is the asynchronous data in which

    a longer gap called a sub action gap occurs, andasynchronous arbitration begins. This is similar toisochronous arbitration, except gaps between messages are

    longer to allow for asynchronous acknowledgements.During asynchronous arbitration, a fairness interval allowsall asynchronous nodes to transmit once, after this fairness

    interval an arbitration reset gap occurs in the cycle, afterwhich arbitration between all nodes continues.

    VI PHYSICAL OPERATION

    At the physical level, the data is sent over the two twistedpairs called TPA and TPB, in the FireWire cable. Of thetwo twisted pair cables one is used for data and one is usedfor a strobe. The data twisted pair sends a non return to

    zero (NRZ) data and the strobe changes state whenevertwo consecutive NRZ bits have been transmitted In thatway either the strobe or the data signal changes state on

    each bit period. Combining the data and strobe signals withan EXCLUSIVE.OR gate generates a clock whose

    frequency is the base frequency of the entire system (seeFigure 5).

    Figure 5 Setting Clock Frequency

    .

    VII FEATURES AND LIMITATIONS2

    Performance, although not as fast as fibrechannel, the performance ability tosimultaneously send data rates of 100Mbs.200Mbs and 400Mbs, out performing USB andEthernet.

    Topology, the plug and play feature allowsflexible topology without the need to manuallyreset anything when nodes are connected ordisconnected from a network because busreconfiguration is done on the fly.

    Modes of Data Transfer, both asynchronous andisochronous transfer are supported. Isochronouscommunication enables fixed bandwidth andtherefore system predictability.

    Limitations are for permanent long distance connectionsIEEE 1394 is unsuitable as the maximum per hop length

    between nodes is 4.5 m and maximum end to end limit of72m. (The 72m end to end limit does not include the wholenetwork, for example in a star topology total length would

    be more) Although a unique feature, the topology

    flexibility is limited no loops.

    REFERENCES

    [1] Ramamurthy, G.; Ashenayi, K., Comparative study ofthe FireWire IEEE-1394 protocol with the UniversalSerial Bus and Ethernet, Circuits and Systems,MWSCAS-2002. The 2002 45th Midwest Symposium onVolume 2, 4-7 Aug. 2002 Page(s):II-509 - II-512 vol.2

    [2] Wickelgren, I.J; The facts about FireWire [serialcommunication bus], Spectrum IEEE, Volume 34, Issue4, April 1997 Page(s):19 - 25

    http://ieeexplore.ieee.org.elib.tcd.ie/xpl/RecentCon.jsp?punumber=8452http://ieeexplore.ieee.org.elib.tcd.ie/xpl/RecentCon.jsp?punumber=8452http://ieeexplore.ieee.org.elib.tcd.ie/xpl/RecentCon.jsp?punumber=8452http://ieeexplore.ieee.org.elib.tcd.ie/xpl/RecentCon.jsp?punumber=8452http://ieeexplore.ieee.org.elib.tcd.ie/xpl/RecentCon.jsp?punumber=8452http://ieeexplore.ieee.org.elib.tcd.ie/xpl/tocresult.jsp?isnumber=12655http://ieeexplore.ieee.org.elib.tcd.ie/xpl/tocresult.jsp?isnumber=12655http://ieeexplore.ieee.org.elib.tcd.ie/xpl/RecentCon.jsp?punumber=8452http://ieeexplore.ieee.org.elib.tcd.ie/xpl/RecentCon.jsp?punumber=8452http://ieeexplore.ieee.org.elib.tcd.ie/xpl/RecentCon.jsp?punumber=8452http://ieeexplore.ieee.org.elib.tcd.ie/xpl/RecentCon.jsp?punumber=8452http://ieeexplore.ieee.org.elib.tcd.ie/xpl/RecentCon.jsp?punumber=8452http://ieeexplore.ieee.org.elib.tcd.ie/xpl/tocresult.jsp?isnumber=12655http://ieeexplore.ieee.org.elib.tcd.ie/xpl/tocresult.jsp?isnumber=12655