[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Intel vs 6502



In article <8doR9.1979$x_5.110021941@newssvr17.news.prodigy.com>,
Kelli Halliburton <kelli217@crosswinds.not> wrote:
 
>>> The original 8086, and its stablemate with the 8-bit data bus, the
>>> 8088, did not have floating point registers -- they were only
>>> implemented in the 8087. This was followed in turn by the 80287 and
>>> 80387 (was there an 80187 to go with the underappreciated 80186?)
>>> until the floating point circuitry was integrated into the 80486.
>>> The 80487SX was simply a fully working 80486DX chip that replaced
>>> the functionality of the 80486SX chip, which was just an 80486DX
>>> that had a disabled floating point system.
> 
> I was thinking that the 8087 was async, but wasn't sure. Turns out at
> least one other person thinks so, too. I didn't remember ever hearing
> of an 80187, even in embedded systems,
 
I don't think there was one: if you wanted an FPU with the 80186, you
just used the 8087.....
 
> where the 80186 saw much more use than in personal computers.
 
That's because the 80186 was designed for embedded systems.... :-)
 
BTW if you repaced the 8088 on your PC with a Nec V40, you got all
the 186-specific opcodes and the integer mul/div speedup of the
186 --- PLUS an 8080 emulation mode....
 
> I've learned that the 80287 was basically an 8087 with different
> pins (non-multiplexed pins, maybe? The 8086 and 8088 used pins for
> multiple purposes, but the 80286 didn't), and that there was a 16-bit
> data bus version of the 80387.
 
Yep, the 80387SX was to be used with the 80386SX, which both were
16-bit externally....
 
And some very early 80386'es (from before the 80387 even was released)
had to be used witn an 80287 if you wanted an FPU ..... yielding FPU
speeds much slower than with a real 80387.
 
> Or, given that the 8087 is apparently async anyway, it could be used
> with the 65816 just fine. Latency might be a problem in waiting for
> results to come back, but it could be done.
 
There could be problems with opcode collisions though: on an
8086+8087 system, the 8086 fetched the instructions, but both the
8086 and the 8087 examined the instruction stream, each deciding what
to operate on and what to ignore.  This worked fine since the 8086
and 8087 had opcodes integrated with one another.  However, since
the 65816 wasn't designed to co-operate with the 8087, the 65816
will most likely attempt to operate on the 8087 instructions as
well..... you get the idea.  The result would of course be chaos....
 
-- 
----------------------------------------------------------------
Paul Schlyter,  Swedish Amateur Astronomer's Society (SAAF)
Grev Turegatan 40,  S-114 38 Stockholm,  SWEDEN
e-mail:  pausch at saaf dot se
WWW:     http://hem.passagen.se/pausch/index.html
         http://home.tiscali.se/~pausch/