Browse Prior Art Database

Hardware Assignment of Fibre Channel Exchange Identifiers in Microprogrammed N_Port

IP.com Disclosure Number: IPCOM000116941D
Original Publication Date: 1995-Nov-01
Included in the Prior Art Database: 2005-Mar-31
Document File: 4 page(s) / 124K

Publishing Venue

IBM

Related People

Nordstrom, GM: AUTHOR

Abstract

Disclosed is a method suitable for hardware implementation by which an ANSI X3T9.3 Fibre Channel N_Port may assign a local Exchange Id (RX_ID) in response to an exchange originated by a remote N_Port. The local Exchange Id assignment, and continuing frame routing to local data buffers, is performed concurrent with microprocessor processing to validate the initial frame header and fully establish that Exchange.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 44% of the total text.

Hardware Assignment of Fibre Channel Exchange Identifiers in Microprogrammed
N_Port

      Disclosed is a method suitable for hardware implementation by
which an ANSI X3T9.3 Fibre Channel N_Port may assign a local Exchange
Id (RX_ID) in response to an exchange originated by a remote N_Port.
The local Exchange Id assignment, and continuing frame routing to
local data buffers, is performed concurrent with microprocessor
processing to validate the initial frame header and fully establish
that Exchange.

      Frame transmissions between a pair of Fibre Channel N_Ports
occur within the context of an "Exchange" and a given Exchange is
identified at each N_Port by a shorthand identifier, the Exchange Id.
The N_Port that requests establishment of the Exchange is the
Exchange Originator and assigns to that Exchange an "OX_ID" that is
transmitted in the frame header of all frames associated with that
Exchange.  The recipient is the Exchange Responder and, upon
acceptance of the exchange, assigns to the exchange an "RX_I D" that
is transmitted to the Exchange Originator in all frames of that
Exchange sent by the Responder.

      The functions associated with validation and establishment of
an exchange are complex and better suited to microprocessor
implementations.  However, if high-speed frame routing to local
responder data buffers is to use the RX_ID to locate these buffers --
as it will, generally, once the Exchange is fully established -- then
that RX_ID must be assigned for frame routing as rapidly as possible
during Exchange initiation.  Performing RX_ID assignment as a
microprocessor function, during frame reception, can limit frame
transmissions from the Originator and thereby degrade the bandwidth
of the fiber link, so that a method is desirable by which the
recipient N_Port hardware can assign an RX_ID for frame routing
concurrent with Exchange initiation by the microprocessor.

      A method that allows hardware to assign RX_ID and route
received frames from hardware link buffers to application data
buffers consists of:
  1.  During N_Port initialization, the microprocessor establishes
one
       or more local resources, associated with or indexed by the
RX_ID,
       to receive new exchanges from other N_Ports.  These resources
       include:
      o  Sets of application data buffers, separate from frame
buffers
          used by the N_Port hardware to receive data at high
bandwidth
          from the link.
      o  A direct memory access (DMA) path for each set of
application
          data buffers, initialized for the transfer of data from the
          N_Port link buffers to those application data buffers.
  2.  The microprocessor initializes an  RX_ID Assignment Table, or a
       set of N_Porthardware registers, that contains in each entry
the
       RX_ID to be used with a particular exchange resource (DMA path
       and a...