System PCI performance features

  Chapter 7. System PCI performance features
    Most PC systems are performance tuned for CPU and display
  performance benchmarks.  The systems are optimized for CPU
  accesses to memory and video buffers (both slave devices).
  This leaves PCI Master devices like the Auto LANStreamer PCI
  susceptible to being locked out of memory.
    The PCISETUP programs provided with this adapter adjust the
  CPU to PCI access buffering to eliminate the CPU contention that
  can cause a PCI Master adapter to get locked out of memory.
    Instructions for installing the PCISETUP program under DOS
  and OS/2 are in the Installation and Testing Instructions book
  (P/N 13H8865) on page 49.
    Windows, and Windows for Workgroups environments should
  install the PCISETUP.EXE program as instructed for the DOS
  environment.  These directions are repeated in the
  \README.WFW file on the Windows NT Driver Diskette for anyone
  installing the NDIS 3.0 drivers.
    Windows NT environments should install the PCISETUP.SYS
  program.  Instructions are provided in the \README.NT
  file on the Windows NT Driver Diskette.
    It is not necessary to use PCISETUP on more recent systems
  that are designed and tuned as network servers.
  Do not use PCISETUP on IBM 8640-OPT (IBM PC Server, Pentium).
             PCISETUP Version 1.2 Technical Details
             --------------------------------------
  The PCISETUP program is provided in three forms:
  DOS, Windows, Windows for Workgroups
          - \PCISETUP.EXE on the Driver Diskette
          - \WFW\PCISETUP.EXE on the Windows NT Driver Diskette
          - \PCISETUP.EXE on the Diagnostic Diskette
  OS/2    - \PCISETUP.OS2 on the Driver Diskette
  Windows NT
          - \NT\PCISETUP.SYS on the Windows NT Driver Diskette
   The program looks for specific chips based on their assigned
  Vendor ID and Device ID.  Based on which chip(s) are found,
  corresponding modifications are made to specific bits within
  that chip's PCI Configuration registers, or within The Auto
  LANStreamer PCI's Configuration registers.
   Search for     and if found alter
   ------------   ------------------
   8086 O4A3 x    offset 53 bit 1 = 0
                  offset 54 bit 0 = 0 if offset 53 bit 0 = 1
   8086 O483 x    offset 53 bit 1 = 0
                  offset 54 bit 0 = 0 if offset 53 bit 0 = 1
   1045 C822 <2   Disable IBM Auto LANStreamer's 'Fast Back-to-Back'
                  - offset 5 bit 1 = 0
      KEY:  All values are in hexadecimal
            'x'  - Any revision level will be a match
            '<2' - Revision 0 and revision 1 Only
  Latency Timer:
  -------------
    The PCI Master Latency Timer sets the limit for how long a
  PCI Master device can transfer data on the PCI bus.  This has
  a small effect on overall adapter and system performance.
    On systems that automatically set the Latency Timer value, no
  change should be necessary.  On systems that require manual
  configuration, we suggest that the Latency Timer be set to at
  least 64 (decimal), or '40'h (hexadecimal).  This is a
  reasonable setting for all systems.
  PCI Extended Commands:
  ---------------------
    The Auto LANStreamer utilizes PCI data transfer commands
  designed for high efficiency.  'Memory Read Line', 'Memory
  Read Multiple', and 'Memory Write and Invalidate' are each used
  as appropriate for maximum PCI bus throughput.  On systems which
  do not yet implement these commands, they are executed as though
  they were basic read or write commands.
    'Fast Back to Back' accesses allow this adapter to perform
  multiple data transactions without pausing in between each one.
  PCI Bus Speed:
  -------------
    PC system processors range from 33Mhz to 100Mhz, with numerous
  SX, DX, DX2, DX4, Pentium®, P5, P54C, P54M,...  designations.
  But, PCI bus performance is based on four main parameters:
  1. PCI bus frequency
     - 25Mhz, 30Mhz, or 33Mhz
       The processor speed may be 1X, 2X, or 3X the PCI bus speed.
       (Auto LANStreamer PCI will operate between 16Mhz - 33Mhz.)
  2. Time to get data from memory
     - 9 to 12 clock cycles, or about 0.4 microseconds
  3. 'Wait states' between each subsequent data phase
     - 0 to 3 wait states, from 30 nanoseconds to 120 nanoseconds
       per 4 byte (32 bit) data transfer.
  4. Average data transfer burst length
     - 1 to hundreds of data phases
                         -----------------
    Measurements on currently available 32-bit systems utilizing
  33Mhz memory (as in most '486 systems) show a sustained data
  transfer rate of 25MBytes/sec between memory and the PCI bus.
  Note: if the system does not allow burst transfers, the
  sustained data transfer rate will be limited to 8MBytes/sec.
    Measurements on currently available 64-bit systems utilizing
  33Mhz memory (as in most Pentium® systems) show a sustained data
  transfer rate of 75 to 85 MBytes/sec between memory and the PCI
  bus.
  Note: if the system does not allow burst transfers, the
  sustained data transfer rate will be limited to 33MBytes/sec.
  ISA Device Impact on PCI Performance:
  ------------------------------------
    ISA devices are much less efficient transferring data than PCI
  or EISA or Micro Channel devices.  A system with the video
  and/or the disk controller on the ISA bus will have
  less memory bandwidth available for PCI bus devices to use.
    In many cases the effect on overall system performance is
  negligible.  In some cases though, high speed graphics screen
  activity, or extensive disk activity can hinder PCI memory
  transfers.
    In the extreme case, this can cause the Auto LANStreamer to
  drop frames being transmitted or received.  For this reason, we
  recommend that PCI video and PCI disk adapters be used in
  systems handling critical LAN traffic, rather than ISA based
  adapters.
                         -----------------
    NOTE: IDE disk drive controllers are generally speed limited by
          the attached disk drive.  A high performance ISA IDE and
          a PCI IDE controller will give comparable performance.
  Interrupt level:
  ---------------
    Sharing an interrupt between different types of devices could
  cause a small decrease in performance.  This is due to the
  additional time the processor spends in each device's device
  driver when an interrupt occurs on any one of the adapters.
  Thus, if one of the device drivers is slow in checking its adapter
  for interrupts, then all devices sharing that interrupt will be
  affected.  We recommend that only high performance adapters be
  set up to share interrupts.
  And, where possible. the Auto LANStreamer adapters should not
  share interrupts with other device types (SCSI adapters, IDE
  adapters, other types of LAN adapters, etc.).
  An interrupt can be shared between Auto LANStreamer PCI adapters.
  The device driver is written to handle this case efficiently.
                         -----------------
    Interrupts are handled by the system processor on a priority
  basis - Interrupt 0 has the highest priority, and interrupt 15
  has the lowest priority.  It is recommended that the Auto
  LANStreamer PCI adapter be set to the lowest available interrupt
  number (sometimes referred to as an IRQ number).
    Adapters communicating at high speed (>1Mbits/sec) with other
  systems, such as LAN adapters, should have higher priority than
  adapters communicating with dedicated devices, such as the disk
  controllers (IDE or SCSI).


Back to  Jump to TOP-of-PAGE

Please see the LEGAL  -  Trademark notice.
Feel free - send a Email-NOTE  for any BUG on this page found - Thank you.