There are many available 386 memory adapters available for
both
the 8580 and the 8570. They generally exist in two groups; those with
more
than 16 MB capacity and those with 16 MB or less capacity.
I have initially listed only adapters which I have had personal
experience
with. I will expand this list with others over time.
There has been a lot of controversy regarding the requirements to
exceed
the 16 MB boundary within a Model 80. I intend to do some research into
this and make my findings available to you at a later date. I have
personally boosted the memory on one of my 8580 systems to 60MB using
two of the Kingston KTM-MC/x memory adapters. Two were required as I
have never been able to locate the Kingston 16 MB SIMMs that this memory
adapter will accept.
Peter Wendt made a rather detailed dissertation on this topic which
I have included here for your perusal:
Hi !
> > > The trick is you must have an adapter in there
somewhere with
> > > a BIOS or a CPU on it, I've forgot which. The IBM
memory
or
> > > the SCSI adapters have these.
This part is definitely misleading or misunderstood.
- even busmaster adapters with 32-bit addressing width cannot substitute
the missing DMA functions for the memory above 16MB
- the ROM they supply is for their own function.
The BOPT-workaround works even with no other adapter installed in
the
system than the two memory cards. (BOPT = Bypasses One Problem
Temporarily)
Also the use of Kingston or Acculogic cards pushes the system over
the
16MB-limit.
The problem is the 24-bit DMA-chip on Mod. 70 and 80 - since 2^24 =
16.0MB addressing range. This is the range where DMA can be used to
transfer data among the memory - if the DMA cannot be used direct
addressing (PIO) must be used to transfer data to the locations above
the
DMA-addressing range. Works as well but is a little slower.
A problem on the older models might occur with detection of memory
errors. The parity-informations are mainly transported with DMA to
detect and handle bit-failures.
(Mainly cause an NMI error though - and the system stops with 111
??????
or such)
If the DMA cannot directly access the memory a parity error *might*
be
undetected.
The memory handler invoked with the BOPT-workaround uses the PIO-mode
for the error-detection ... the Kingston and Acculogic cards have own
parity control integrated in their chipsets.
This however has nothing to do with the memory *refresh*, which is
directly controlled by the memory subsystem on the planar and on the
memory cards.
Let's say the system has 8MB on the planar and 16MB on a Kingston
card.
The planar-8MB are under full control of the boards DMA and parity
logic.
The 16MB on the Kingston card are on the control of the cards' parity
control and the lower 8MB can be accessed directly by the
systemboard-DMA - the upper 8MB are used via normal 32-bit direct
addressing bytewise.
The fastest memory access is that for the planar memory: DMA plus 0
- 1
waitstate make it rather quick.
The slowest memory access is that on the range from 16MB - 24MB:
bytewise direct-accessing to read from memory and to write to memory
plus 1 - 3 wait-states on "channel memory" take some time.
Pushing a Mod. 70 / 80 over the 16MB border makes only sense with a
real
32-bit operating system, which can handle the different memory
addressing
models with no problems (like OS/2) - DOS / Windows may have some
problems. I ran a Mod. 80-A31 under OS/2 Warp Server with 40MB for
quite
some time without any problem.
It had 8MB on the planar (2 x 4MB), 32MB on an Acculogic card (4 x
8MB),
an IBM SCSI controller without Cache /A, an Adaptec AHA-1640 (for tape
and CD), an IBM Token Ring 16/4 Adapter /A and an AMS 2-LPT card.
Very friendly greetings from Peter in Germany (peterwendt@aol.com)