Firewire IEEE 1394: A Survey - PowerPoint PPT Presentation

Loading...

PPT – Firewire IEEE 1394: A Survey PowerPoint presentation | free to download - id: edab-MTQxN



Loading


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation
Title:

Firewire IEEE 1394: A Survey

Description:

First introduced as Firewire by Apple Computer in the late 1980s ... Apple and TI win 'Most Significant Technology' award. IEEE 1394-1995 was ratified in 1995 ... – PowerPoint PPT presentation

Number of Views:416
Avg rating:3.0/5.0
Slides: 68
Provided by: htpc
Learn more at: http://tamcam.tamu.edu
Category:
Tags: ieee | apple | firewire | survey

less

Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: Firewire IEEE 1394: A Survey


1
Firewire (IEEE 1394) A Survey
  • by
  • Guadalupe Hernandez
  • Sumantra Dasgupta
  • Abdullah Cerekci
  • Gonzalo Rodriguez

2
Introduction
  • Firewire
  • Oficially known as IEEE-1394
  • next generation of Plug and Play
  • With standard speeds of 100, 200 and 400 Mbps
  • ideal for connecting high-end consumer
    electronics (such as digital A/V equipment )
  • Outline
  • Description, Motivation and Evolution of Firewire
    Abdullah Cerekci
  • Protocol- Guadalupe Hernandez
  • Working and Application- Sumantra Dasgupta
  • Improvement, 1394b, Future Research on Firewire-
    Gonzalo Rodriguez

3
IEEE-1394
  • First introduced as Firewire by Apple Computer in
    the late 1980s
  • Serial bus standard to support high-bandwidth
    requirements of devices such as digital video
    equipment and high-performance mass storage
  • Performing well in Real-time data streaming

4
Research Motivation in Firewire
  • The ability to work with time sensitive data is
    growing in importance
  • Small products are favored for portability,
    convenience, and material usage resources
  • The need and desire for Peer to Peer computing is
    growing
  • There is a desire to keep data digital for as
    long as possible as a means to reduce system
    cost, complexity, and improve signal integrity
  • In multimedia market, most of the data is video
    and audio

5
Evolution of IEEE-1394
  • First introduced as Firewire by Apple Computer
  • IEEE Study Group approved December 1986
  • Basic design set by January 1987
  • Cable (10m) and backplane environments
  • 2 Mb aud/sec base rate, 8 Mb aud/sec
    optional high-speed rate
  • Bit-serial arbitration, 4B5B data
    encoding
  • Guaranteed latency
  • Read/write/lock transactions with 32-bit
    address space
  • Cost for silicon/connector/cable of
  • Apple started full scale development in 1988
  • Xilinx-based 12.288 Mb aud/sec system
  • 49.152 Mbaud cable transceiver fabbed

6
Evolution of IEEE-1394 (Cont)
  • Apple started full scale development in 1988
  • Xilinx-based 12.288 Mb aud/sec system
  • 49.152 Mbaud cable transceiver fabbed
  • Apple designed 98.302 MBit/sec PHY in 1992
  • TI built first test chips
  • Connector based on Nintendo Gameboy
  • TI delivered draft 6 PHY. It was working
  • Apple and TI win Most Significant Technology
    award
  • IEEE 1394-1995 was ratified in 1995
  • First products
  • Sony DV camcorders in 1995, many others by 1997
  • Sony machine vision cameras

7
Evolution of IEEE-1394 (Cont)
  • IEEE Std. 1394a-2000, was approved in March 2000
  • speeds of 100 Mbytes per second, 200 Mbps, and
    up to 400 Mbps
  • supports up to 63 devices
  • maximum cable length of 4.5 meters between
    devices
  • improved traffic control and power management
    features
  • 1394b finished in 2002
  • speeds up to 1,600 Mbps

8
General Specifications
  • Connector Diversity
  • six-pin connector is composed of 6 wires (2 for
    power 4 for signals)
  • four-pin connector (power wires are missing) is
    about half the size of a USB
  • connector choice for many consumer electronics
    products
  • especially self-powered portable devices

9
General Specifications (Cont)
  • Communication Diversity
  • IEEE 1394 supports both asynchronous and
    isochronous communications
  • ideal for applications such as digital audio and
    video, which demand real-time data transfer
  • Its peer-to-peer interface makes it possible to
    dub from one device (a digital video camera, for
    instance) to another without a computer
  • For example, a digital camera can send pictures
    directly to a printer

10
Characteristics Overview
  • Asynchronous/Synchronous transfer
  • Four layers are defined to simplify hardware and
    software implementation
  • -Bus Management Layer
  • -Transaction layer
  • -Link layer
  • -Physical Layer

11
Isochronous Transfer
  • Data delivery at constant intervals (125 µs)
  • Do not require confirmation of data delivery
  • Defines 6-bit channel number allowing data stream
    to be broadcast
  • Example data from a CD to a speaker that must
    occur at a constant rate to reproduce the sound
    without distortion
  • Applications must request the bandwidth from the
    resource manager node

12
Isochronous Transfer (Cont)
13
Asynchronous Transfer
  • Confirmation to the initiator that transfer was
    successfully received
  • Verifies data delivery via CRC, if errors occur
    retries are attempted under software control
  • Targets a particular node using a 64-bit address
  • Amount of data transferred depends on
    transmission speed
  • Example applications that require that data
    transfers occur without any corruptions
  • Require a more complex bus protocol
  • Are initiated by a requester node and received
    by a responder node that returns a response.
  • Consist of two subactions
  • 1. request subaction.- transfers the address,
    command and data from requester to responder
  • 2. Response subaction.- returns completion of
    status back to the requester or returns data
    during read and lock transactions

14
Asynchronous Transfer (Cont)
15
Asynchronous Transfer (Cont)
16
Protocol Layers
17
Bus Management Layer
  • Supports bus configuration and management
    activities
  • Depends on the capabilities of the node but all
    most support automatic bus configuration
  • Channel number and bus bandwidth allocation for
    asynchronous transfers
  • The 1394 specification identifies three global
    management roles
  • Cycle master
  • Isochronous Resource Manager
  • Bus manager

18
Transaction Layer
  • Supports only asynchronous transfer.
  • Supports request-response protocol for read,
    write and lock operations.
  • Provides the following services
  • Request used by the requester to start a
    transaction
  • Indication notifies the responder of the request
  • Response used by the responder to return status
    or data to request
  • Confirmation service notifies the requester that
    the response has been received
  • Adds verification of packet delivery and supplies
    a 1byte acknowledgement for each packet
    received

19
Transaction Layer (Cont)
20
Link Layer
  • For asynchronous transfers, translates
    transaction layer requests into packets to be
    delivered over the serial bus and back when
    received by responder. Performs CRC.
  • For isochronous transfers provides interface
    between isochronous software driver and physical
    layer. During transmission creates the packet to
    be sent across the cable. Also receives packets
    and decodes the channel number and if destined
    for the node, forward it to the software driver.

21
Physical Layer
  • Provides the electrical and mechanical interface
  • Implements an arbitration process to ensure only
    one node at a time transfers data across the bus
  • Uses two twisted pairs for signaling events
  • Bus configuration
  • Arbitration
  • Data transfer
  • Two type of cables are supported 6 and 4 pin
    connectors
  • NRZ encoding to reduce the frequency component
  • Bus configuration Major role of the physical
    layer. Begins with power up or when a new device
    is added to the bus
  • Arbitration
  • Data transmission Bi-directional data delivery.
    Data is transferred on Twisted pair B (TPB) while
    a strobe is delivered over Twisted Pair A (TPA)

22
IEEE1394 internals
  • IEEE 1394 network is made of point-to-point
    connections
  • It becomes a logical bus by repeating the signal
    at input of a node to all its outputs----free
    topology

23
IEEE1394 internals(Cont)
  • Repeater mechanism at each node delays signal
    transmission
  • Idle times are necessary to prevent data
    collisions
  • Arbitration is necessary for fair availability of
    bus to each node
  • Data transfer is either
  • -Asynchronous
  • question-answer game
  • Made of request-ack-delay-ans-
  • -ack sequence
  • Delay slot is used by other nodes
  • Ack consists status of receiver
  • or abort
  • Packets are made of data and payload
  • Payload is typically start,stop and parity
    check

24
IEEE1394 internals (Cont)
  • Data transmission can also be
  • -Isochronous
  • The talker needs to allocate channel and
    bandwidth at the Isochronous
  • Resource Manager (IRM)
  • Data is broadcast, so multiple nodes can
    be allowed to listen
  • 80 of total bandwidth is used for
    Isochronous transfer
  • Has 3q overhead
  • Data field can be upto 1200q

25
IEEE1394 internals (Cont)
26
IEEE1394 internals (Cont)
  • The complete 1394 packet consists of 4 major
    parts
  • -Arbitration Phase
  • -Data_Prefix and Speed signaling
  • -Data packet with specified header
  • -Data_End
  • Data_Prefix is needed for synchronization of
    internal DLLs
  • The root node can access the bus after Arb time
    has occurred
  • All other nodes have to arbitrate and access the
    bus through the root node

27
IEEE1394 internals (Cont)
  • Gaps are put between packets to avoid collisions
  • Isochronous packets are separated through
    isochronous gaps (40ns)
  • Asynchronous packets are separated through
    arb_reset gaps (280ns-10µs)
  • Subaction graphs separate Isochronous and
    Asynchronous transactions (530ns-21µs)

28
IEEE1394 internals (Cont)
  • Payload Estimation
  • Various factors affect payload
  • 1. Kind of data transfer on the bus
    (big/small data) As payload
  • descreses, so does efficiency. But
    CRC and ack provide reliability
  • 2. Number of hops the packet has to
    pass Determines the value
  • of the gap count
  • 3. Position of the requestor to root
    more number of repeater, longer
  • is the arbitration time (2x64ns at
    each repeater)
  • 4. Cable length propagation time of
    5ns/meter

29
IEEE1394 internals (Cont)
30
IEEE1394 internals (Cont)
  • Electrical
  • Packet based technology for cable or back-plane
    based environments
  • Addressing is memory based rather than channel
    based
  • Device addressing is 64 bits wide
  • -10 bits for bus ID
  • -6 bits for node ID
  • -48 bits for memory address
  • PHY can supply power to devices
  • Nodes act as repeaters
  • 16-24 hops of 4.5m each are used to get a total
    length of 72m-108m
  • Heterogeneous environment operation eith optical
    cables and low cost
  • twisted pair cables.
  • Bilingual PHYs are used to translate between
    1394-1995 and 1394a-2000 world
  • (using DS coding speed matching) and 1394b
    world (8B10B coding electrical to opt)

31
IEEE1394 internals (Cont)
  • Protocol
  • -Both asynchronous (explicit addr) and
    Isochronous (broadcast) transfer
  • -Both real-time and non real-time
  • -Network setup
  • 1.Bus reset phase Previous tree
    topology is cleared
  • 2.The tree ID sequence determines the
    actual structure
  • 3. Root node is dynamically or
    forcefully assigned
  • 4.A self ID phase Nodes introduce
    mutually each gets an address
  • 5.Bus goes into idle state waiting
    for arbitration to begin
  • -Multi-speed transactions

32
Isochronous transfer internals
  • Its a broadcast mode of transfer.
  • The talker needs guaranteed channel and
    bandwidth.
  • Setting up the transaction IRM provides channel
    number and bus bandwidth to talker. Two registers
    are defined for this purpose
  • CHANNELS_AVAILABLE
  • BANDWIDTH_AVAILABLE
  • These registers must be accessed via
    compare and swap lock transaction to ensure
    exclusive access when allocating these resources.

33
Isochronous transfer internals (Cont)
  • Maintaining Synchronization Maintain
    synchronization with isochronous clock intervals
  • -The root node issues a cycle start packet
    at approximately 125µs intervals.
  • -Cycle start synchronizes all isochronous
    channels
  • -PHY detects cycle start packet and issues
    event notification to Link layer
  • controller
  • -Link layer controller issues link cycle
    synch indication to the application

34
Isochronous transfer internals (Cont)
35
Application Computer to Video Camera
36
Application Computer side
  • TSB12LV22/OHCI-Lynx is the first Open Host
    Controller Interface
  • Link Layer controller built to IEEE1394
    specifications
  • It interfaces host PC with high-speed peripherals
  • Supports speeds up to 400Mbits/s
  • Provides four GPIOs.
  • TSB41LV03 is a Physical Layer supporting up to
    400Mbits/s
  • It provides the analog transceiver functions
    needed to implement a three port node in a cable
    based IEEE1394-1995/IEEE1394a n/w.
  • The figure shows the Link Layer and the Physical
    Layer combined working with the host PC

37
Application Computer side (Cont)
38
Application Video Camera side
  • TSB12LV31 is the industrys first general purpose
    link layer controller.
  • It is 1394-1995 compliant
  • Performs bidirectional asynchronous/isochronous
    data transfer to and from an IEEE 1394-1995
    serial bus physical layer (phy) device
  • TSB21LV03A is a 200Mbps, 3-port device capable of
    sending and receiving data at 100/200Mbps
  • The next figure shows the two working in
    conjunction in a 1394 digital video camera

39
Application Video Camera side (Cont)
40
Software Implementation Windows
Video Capture Architecture under Windows 98 and
Windows 2000                                    
                                       
41
Software Implementation Windows (Cont)
  • Before drivers can start their IEEE 1394 device,
    they must complete
  • the following steps to set up isochronous
    transfer
  • Choose isochronous transfer speed.
  • Allocate bandwidth for isochronous transfer.
  • Allocate an isochronous channel.
  • Allocate a resource handle for isochronous
    transfer.
  • Attach buffers to the resource handle.
  • Begin the isochronous data transfer.
  • Once a device no longer needs to transfer data,
    the driver must
  • inform the bus that the operation is complete,
    and then must
  • deallocate the isochronous resources it allocated
    when setting up.
  • User applications are responsible for determining
    how
  • many isochronous channels they need and their
    required bandwidth.

42
Software Implementation Windows (Cont)
  • class Win32_1394Controller CIM_Controller
  • uint16 Availability //status
  • string Caption //description
  • uint32 ConfigManagerErrorCode //win32
    config manager error code
  • boolean ConfigManagerUserConfig //if
    true then use user defined config
  • string CreationClassName //unique
    class id
  • string Description //description of
    object
  • string DeviceID //unique device id
  • boolean ErrorCleared //if true last
    error is cleared
  • string ErrorDescription //description
    of error and corrective actions
  • datetime InstallDate//installation
    date and time
  • uint32 LastErrorCode //last error code
    reported by the logical device
  • string Manufacturer//name of
    manufacturer
  • uint32 MaxNumberControlled //number of
    devices controlled
  • string Name //name of controller
  • string PNPDeviceID//plug and play
    device id
  • uint16 PowerManagementCapabilities
    //various power modes
  • boolean PowerManagementSupported //if
    true then power can be managed
  • uint16 ProtocolSupported//protocol used
    to access controlled device

43
Software Implementation Windows (Cont)
  • class Win32_1394ControllerDevice
    CIM_ControlledBy
  • uint16 AccessState //active/inactive
  • Win32_1394Controller ref Antecedent
    //to 1394 controller
  • CIM_LogicalDevice ref Dependent //to
    logical device
  • uint32 NegotiatedDataWidth //in bits
  • uint64 NegotiatedSpeed//in baud
  • uint32 NumberOfHardResets //issued by
    controller
  • uint32 NumberOfSoftResets//issued by
    controller
  • //interfaces Win32_1394Controller with
    CIM_LogicalDevice
  • CIM_LogicalDevice denotes a hardware entity that
    may or may not be realized in physical hardware

44
Applications
45
Other Bus Interfaces
46
Other Bus Interfaces (Cont)
47
FireWire vs. USB
  • FireWire
  • 400Mbit/s 800Mbit/s supported
  • Works without control, devices communicate
    peer-to-peer
  • Cable up to 100 m.
  • Limited devices supported
  • Power supply to external devices is 1.25A/12V
    (max.)
  • The only computer bus used in digital video
    cameras
  • USB
  • 1.5 Mbit/s 12Mbit/s 480Mbit/s supported
  • USB controller is required to control the bus and
    data transfer
  • Cable up to 5 m.
  • Great number of devices supported
  • Power supply to external devices is 500 mA/5V
    (max)
  • Full compatibility with USB 1.1 devices

48
IEEE 1394b
  • No change for software and applications
  • All existing 1394 devices are home network
    ready
  • Improvements
  • Lower cost and more flexible for the PC OEM
  • Even more efficient
  • Up to 1.6 Gbits/sec
  • Up to 100m
  • Fully backwards compatible

49
Definition of 1394b
  • Additional Beta mode of operation
  • 1394a operation is called Legacy mode
  • 1394b PHYs may have Legacy ports, Beta ports, or
    Bilingual ports
  • Bilingual ports negotiate with attached peer for
    best mode of operation
  • Beta mode yields higher speeds, longer distance,
    improved efficiency

50
Beta mode Higher Speeds
  • 1394b specifies S800 and S1600 data transmission
    rates
  • Also future-proofs with media for S3200
  • Electrical spec still uses two twisted pairs
  • Transmission is now continuous dual simplex
  • One pair transmitting continuously in each
    direction
  • Transmission speed never varies
  • Simpler and more efficient than 1394a

51
New about 1394b
  • Higher speeds to 3.2 Gbit/sec
  • New coding (8b10b scrambling control coding)
  • Longer distance to 100m per hop
  • A greener standard with its emphasis on lower
    emissions
  • New media, but all compatible above the media
    dependent level

52
The Need For Improvement
  • PC peripherals need higher speeds
  • Disk head read rates continue to increase
  • S400 on existing PCs and Macs is not enough 1
    Gbit/sec needed in 2001, growth path to over 2
    Gbit needed in a few years.
  • Imaging devices have higher and higher pixel
    densities and color depths
  • Home network needs high speed, low bit error,
    guaranteed latency
  • CE devices already use 1394 for video and audio
    streams
  • Virtually all DTVs, STBs, VCRs, and DVDs are 1394
    (2002)
  • 6-20 Mbit/sec MPEG-2 streams for DTV
  • Very good error rate required (loss of I-frame
    disastrous)
  • 1394 is also a dandy peer-to-peer IP network

53
The downside of Beta
  • Digital logic much more complex
  • 2-3x more gates
  • Clock recovery needed
  • Just like Ethernet, USB2
  • New border functionality needed
  • For PHYs with Beta and Legacy ports
  • Non-trivial design, need to preserve critical
    legacy timings, subtle corner cases

54
Longer distance
  • General goal is 100m per hop
  • Unfortunately, longer distance requires new media
  • UPT-5 for S100
  • Just like 100BASE-T Ethernet
  • Plastic Optical Fiber (POF) for S200
  • S400 in 2001, S1600 in 2003
  • Multi-mode glass fiber for higher speeds
  • Road map from S400 all the way up to S3200
  • Best for future-proof installations

55
Uses In Manufacturing Facilities
  • Modern day Industrial Automation Systems
  • Highly complex networks
  • High performance machine systems
  • Multi parameter control of variables
  • Precision Motion
  • Force
  • Temperature
  • Flow-Rate
  • Pressure

56
The main objectives
  • Connectivity to different machines
  • Data sharing and gathering
  • Flexibility to incorporate future advances in
    technology

57
The Need
  • Industrial automation is commonplace in most
    conventional manufacturing units
  • Increasing competitive pressures
  • Extremely high throughputs and miniaturization
  • Cost effective electronics and robust software

58
Some Background
  • Initially developed as the high speed data bus
    for consumer technology
  • Great potential in
  • Higher performance needs and
  • Lower system costs
  • Combination of IEEE- 1394 and fast-embedded
    processors
  • New cost effective
  • High performance architecture
  • Real-time automation tasks

59
The Advantages
  • High Speed
  • 1394a supports speeds of up to 400Mbps
  • Faster than nearly all DCS serial buses by 3
    orders of magnitude
  • 1000 times faster - Compared to Fieldbus derived
    technologies
  • 1394b supports speeds of 800 Mbps
  • Competes with the parallel back plane bus
    solutions
  • Nature of control messages
  • Short in data length
  • Numerous and frequent
  • 1394 provides a bandwidth option that satisfies
    all the requirements for advanced automation
    control
  • Roadmap with speeds of 3200 Mbps already under
    study

60
The Advantages
  • Isochronous Mode
  • IEEE-1394 guarantees time-based delivery of data
    packets
  • Critical in
  • closed loop servo control applications
  • data acquisition from analog sources
  • machine vision using digital video
  • It guarantees
  • delivery time
  • delivery order
  • Message represents the state of a machine or
    instrument function at a given point in time
  • Order of the data must be sequential

61
The Advantages
  • Asynchronous Mode
  • Ability to respond instantaneously to events
  • 1394a allows messages generation every 125
    microseconds
  • 1394b this is further reduced to 62.5
    microseconds
  • Adequate for most control applications
  • High priority message to propagate through the
    system with a known latency
  • For Control systems having intelligent nodes
  • Change control parameters on the fly in parallel
    loop operations
  • Usually dynamic in nature where initial
    parameters need to be modified with changing
    system conditions

62
The Advantages
  • Peer to Peer Mode
  • Allows individual nodes to directly communicate
    with each other without a host
  • Change in state of one node is deterministically
    passed onto another node with minimum latency
    delay
  • Eliminates the need for a PC in low end systems
    by introducing the possibility of embedded
    solutions

63
The Advantages
  • Broadcast Mode
  • Control system environment
  • Synchronization with an event or a trigger
    generated by a central processor
  • Intimated information to all nodes for safety
    violation conditions affecting the whole system
  • Done at once using this mode.
  • Data transfer speed is not dependent upon
    operating systems interrupt latency

64
The Advantages
  • The introduction of the 1394b
  • Galvanic Isolation
  • 1394a was susceptible to influence of system
    level ground fluctuations
  • 1394b eliminates unintended data corruption due
    to limited electrical isolation
  • Distance between nodes
  • 1394a was limited to 4.3 m distance
  • 1394b allows distances up to 100 m
  • RFI Interference
  • 1394b are far more immune to electrical noise
    fluctuations commonplace in factory environments

65
Things to Consider
  • Hierarchy
  • Response Time and Variance
  • Bandwidth
  • Efficiency
  • Access Methods
  • Topology
  • Distance
  • Protocols supported
  • Media Supported
  • Universal Plug and Play

66
Summary
  • Provide the Industrial Automation industry to
    extend functionality to a broader level
  • Allows the business to function as a unit
  • Connection between plant-floor machines and the
    rest of the corporation's assets
  • Facilitate the management mission of handling
    critical assets across the organization.
  • Enable new applications to be developed
  • Flexibility
  • Improved economics

67
References
  • Don Anderson, Firewire System Architecture, 2nd
    Ed. IEEE 1394a, Addison Wisley,
  • 1999.
  • Keith Quiring, Development of a TSB15LV01-based
    digital camera, Texas Instruments, Application
    Report, SLLA086, August 2000.
  • Felix Bartholdy, Performance Analysis of a IEEE
    1394 network, Texas Instruments, Application
    Report, SLLA099, April 2001.
  • Georg Becke et al, Comparing Bus Solutions,
    Texas Instruments, Application Report, SLLA067A,
    February 2004.
About PowerShow.com