home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 4 Drivers / 04-Drivers.zip / s2kv201a.zip / TECHTALK.TXT < prev    next >
Text File  |  2001-11-06  |  4KB  |  74 lines

  1.  
  2.  
  3.                        Technical Rambling about SIO2K
  4.  
  5. The SIO2K set of drivers have some interesting new techniques and
  6. implementations.
  7.  
  8. Block input and output.
  9.      If the UART is a FIFOed device, the interrupt service routines (there
  10.      are several) always use block input and output instructions to read
  11.      and write characters.  During high communications activity, this means
  12.      the 16550 interrupt routine is 5 to 10 times faster (possibly more)
  13.      than previous implementations.  UARTs with larger FIFOs will execute
  14.      even faster.  Now boys and girls, it is the interrupt service routines
  15.      that are faster.  Nothing on Earth can make your modem go faster than
  16.      it is capable of.  However, faster interrupt service routines means
  17.      less processor overhead.
  18.  
  19. Automatic FIFO sizing.
  20.      The SIO2K drivers now support 16650, 16550A, 16750, 16850 and 16950
  21.      uarts.  However, knowing the chip type does not necessarily mean the
  22.      FIFO size is know.  For example, the 16654 is the equivalent of four
  23.      (or more) 16650A UARTS on a single chip.  The normal 16650 UARTs have
  24.      a 32 byte FIFO, but the UARTS on the 16654 have 64 byte FIFOs.  Only
  25.      probing will determine this.
  26.  
  27.      The first time a UART is touched by an application the SIO2K drivers
  28.      automatically probe the size of the FIFO and the found size is used. 
  29.      Note that a UART with no FIFOs can be thought of as having a FIFO size
  30.      of 1 byte.  My thanks to Sam Detweiler, of IBM, for the idea of
  31.      probing for FIFO size.
  32.  
  33. Automatic Crystal Frequency.
  34.      Most UARTs are capable of bit rates to 921600bps or more. 
  35.      However, on most serial devices, the bit rate is limited to
  36.      115200bps by the crystal oscillator attached to the UART. Many
  37.      boards, like those from Lava, offer bit rates greater than 115200
  38.      by using faster crystal oscillator.  The down side is one must
  39.      tell the driver to use a bit rate of 28800 to really get a bit
  40.      rate of 115200.
  41.  
  42.      The first time a UART is touched by an app, the SIO2K drivers probe
  43.      the UART to determine if it is using a standard crystal oscillator or
  44.      not.  If the frequency is not standard, then the SIO2K drivers
  45.      automatically adjust so that a request of 115200bps yields an actual
  46.      bit rate of 115200bps.  In addition, the maximum bit rate is adjusted
  47.      and reported to applications that request the maximum bit rate. 
  48.      Boards like the Blue Heat from CTI use a 12x crystal and its top bit
  49.      rate is 1382.4kbps.
  50.  
  51.  
  52. Minimum touch during boot.
  53.      The SIO2K drivers do not touch the UART hardware during boot. This was
  54.      very difficult to do, while maintaining a compatible OS/2 serial
  55.      driver. The "no touch" practically eliminates the possibility of traps
  56.      occurring during the boot process when they are difficult to deal
  57.      with.  This does mean that a lot of processing will occur the first
  58.      time a port is opened.
  59.  
  60. Coming attractions.
  61.      The separation of the standard OS/2 driver into two drivers (sio2k.sys
  62.      and uart.sys) amounts to a virtualization of the OS/2 serial driver. 
  63.      This gives great flexibility in redirecting the serial data to
  64.      destinations other than a serial device.
  65.  
  66.      The first major addition planed for the SIO2K driver set is remote
  67.      modems.  Using this feature, OS/2 systems will be able to access
  68.      modems on another OS/2 system across a network.  As planed now, the
  69.      network can be either a Local Area Network, or Internet/Intranet.
  70.  
  71.      One will be able to set up an OS/2 system to act as a modem pool for
  72.      other OS/2 systems, and it will be simple.
  73.  
  74.