>a strange machine -- one of the few MS-DOS boxes
to use an 8089 I/O
>coprocessor (which I why I got interested in it -- nice chip).
Hi Tony, I have an 8089 in a CPM machine but I
haven't been able to find
out much about that chip. What can you tell me about it?
The 8089 is the supposed I/O Processor for 8086/88 systems.
Like the 8087 it can be used in an 8 or 16 bit bus system.
Basicly Intel did go for a structure like a /370 alike mainframe.
A CPU (8086 or 8088), an IOC (8089) and a math extension to the
CPU (FPU, 8087). Due the nature of the 86 Bus the 8087 did become
a bit more independant than a /370 math extension. Basicly the
8086 is designed as ordinary CPU, while the 8089 is optimized for
I/O - you may call it a super DMA chip, but thats like calling
a versitale VW Bus a shoping cart. From a system softwares view
point you may assign the low level I/O drivers to be run on the
8089, while the 8086 executes the high level functions. For a
a Disk drive this may give you an SCSI like interface between
these components - the 8086 supports a control block with (logical)
drive ID, and block number, while the 8089 translates this to
controller address, drive number and head/track/sector number
to programm the FD chips and then initiate the DMA transfer.
For a serial line, this may include low level block drivers
for packing/unpacking and CRC and block repeat to handle the
complete transmission of a given data (chunk).
Especialy in a multi tasking environment this gives an enormus
boost in available processing power. Not to mention the simplified
OS design. As a standard IOC, the 89 also overcomes the driver
problems that you get if every I/O has his own, different
'intelligent' controller.
Well, I guess there may have been some applications, but I doubt
if this has ever used the full potential of the 86/89 combination.
The design did realy borrow a lot of good mainframe ideas. Just to
early ?
Gruss
H.
--
Der Kopf ist auch nur ein Auswuchs wie der kleine Zeh.
H.Achternbusch