From: bob@amscons.amscons.com (Bob Amstadt)
Newsgroups: comp.sys.ibm.pc.hardware
Subject: Specifications: Intelligent Multi-port Serial Board
Keywords: IMSB
Date: 31 Dec 92 07:11:28 GMT
Organization: Amstadt Consulting Group

As promised, here is a first cut at rough specifications for the
serial board.  I will attempt to explain the reasoning behind each
decision.  I would appreciate any comments preferably sent via e-mail.
I would be willing to run a mailing list if someone could tell
me how to get the software and how to use it.  Meanwhile direct
all comments to me bob@amscons.com.

----------------------------------------------------------------------------
	Intelligent Multi-port Serial Board (IMSB) Specifications
	----------- ---------- ------ ----- ------ --------------

    The main purpose of this board is to provide multiple RS-232C interfaces
on a single ISA bus printed circuit board (PCB).  The board should provide
a high-speed interface for interfacing to advance operating systems and
also a standard interface for ease of migration.  The high-speed interface
will rely on an onboard processor to provide adequate buffering between
the serial interfaces and the main processor.  It should also be possible
to write custom firmware for the onboard processor to implement software
protocols on top of the serial interface.  This would allow for the creation
of custom transmission protocols which operate transparently to the
operating system.

    Inorder to allow software packages that are unaware of the high-speed
interface to operate normally with the IMSB, I would like to use the
standard 16450's or 16550's for this design.  The user could use either
type of IC when implementing the design.  Because this interface is
secondary to the true purpose of this design, I would like to use fixed
address decoding based on programmable logic devices (PLDs).  Also I
would like to predetermine the interrupt numbers that each port generates.
Again the predetermination would be based on a PLD.

    I would like the high-speed interface to be based on shared memory
between the onboard processor and the main processor.  This memory would
be 16-bits wide and could be accessed by the main processor without
wait states.  A standardized software protocol will need to be designed
for maximum utility through this interface.  I will consider implementing
a DMA interface to the shared memory, but my current belief is that this
will cause a cost increase that does not justify the added functionality.
Interrupts, addresses and DMA channels used for the high-speed interface 
would be selectable based on a set of jumpers.

    I would like to use an 8-MHz 8086 as the onboard processor.  I
would leave room in the design to replace the 8086 with a V30 processor.
I currently have all of the tools necessary to debug an 8086-based
design and the parts that would be used in the design should available
and cheap.  In fact you might even be able to find many of the parts
on old scrap boards.

    I believe that it would be possible to design for up to 8 ports,
and I will assume I can for the moment.  If board space becomes an issue
it may be necessary to only implement 4 or 6 ports.  I believe that a total
throughput of approximately 153.6k baud should be possible, but this
number assumes that the main processor will be able to operate at this
rate, and that the onboard processor is not required to perform any
protocol implementation.  Of course this number is just an approximation
based on processor speed and average instruction timing.  Most likely
my calculation was conservative.

    These specifications are subject to change based on input from you.
I will use the final version of these rough specifications to begin
designing the IMSB.  Detailed specifications including schematics will
be available after I have completed designing the IMSB.  The detailed
specifications will then be open for review.  Should interest in this
project drop I may discontinue the effort.  I will not guarantee the
final product nor will I be responsible for any damage to your system
caused by the final product.  I will, of course, be one of the users
of this product, and will be the first to verify its operation.

---
Bob Amstadt
bob@amscons.com
Newsgroups: comp.sys.ibm.pc.hardware