Browse Prior Art Database

Method for Optimizing Interface Between Host and Adapter When Issuing Write Commands

IP.com Disclosure Number: IPCOM000122014D
Original Publication Date: 1991-Oct-01
Included in the Prior Art Database: 2005-Apr-04
Document File: 2 page(s) / 102K

Publishing Venue

IBM

Related People

Adkins, JT: AUTHOR [+2]

Abstract

When using DMA to transfer data to an adapter card across the bus, resources such as Transfer Control Words (TCWs) are used to map memory addresses for the DMA operation. There is a limited number of TCWs available for any particular adapter. The method used for allocating and freeing TCWs has a direct impact on system performance. This relationship is even more critical with multiport adapters.

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

Method for Optimizing Interface Between Host and Adapter When Issuing
Write Commands

      When using DMA to transfer data to an adapter card across
the bus, resources such as Transfer Control Words (TCWs) are used to
map memory addresses for the DMA operation.  There is a limited
number of TCWs available for any particular adapter.  The method used
for allocating and freeing  TCWs has a direct impact on system
performance.  This relationship is even more critical with multiport
adapters.

      The MPQP Adapter (Multiprotocol Quad Port) environment includes
a sophisticated base card with a four-port daughter card.  The base
card is made up of an onboard CPU, memory, communications chips and
dedicated DMA channels to the I/O ports. The communications
environment provided by the four-port daughter card leaves
considerable processor resources available for complex data
manipulation onboard the card itself.  Such chores as packetizing and
frame analysis are performed on the adapter.    The device driver and
adapter software are closely synchronized when moving data across the
bus.  This particular adapter is a bus master.  The device driver
allocates TCWs and informs the adapter where transmit buffers are
located.  The adapter software requests access to the bus and
performs the DMA operation.  It then notifies the driver when the
write has completed.  If requested, the device driver gives an
acknowledgement to the application that the write was completed.

      In most communication applications, many write commands may be
issued before an acknowledgement is requested.  When acknowledgment
is requested, it may not be sent until the data is off the card.
Synchronization of this type is used in cases where the link is
brought down after errors were received.

      Applications may also request DMA acknowledgement.  In this
case, the application needs to know when the buffer containing the
data can be reused.   In our particular implementation restrictions,
the entire page in which a DMA is occurring is not accessible by
other processes.  Attempts to access the page while DMA is in
progress will result in an unrecoverable machine check.

      In order to reduce the interrupt activity between the adapter
and host, and to recycle TCWs as soon as possible, a two-tiered
acknowledgement scheme is used.   The device driver is able to
request DMA acknowledgement, transmit acknowledgement, or both.

      DMA acknowledgement occurs when the data in a transmit buffer
has been successfully DMAed to the adapter.  At this time, the bu...