john@hp-pcd.UUCP (05/08/86)
>> >>One potential problem when running a V20 in 8080 mode is that the 8087 >>is still watching the instruction stream to see if any floating point >>instructions are being executed. I haven't checked the opcodes but I think >>you could probably find some 8080 opcodes that will send an 8087 out to >>lunch. >> >>John Eaton >>!hplabs!hp-pcd!john > >I don't think this is quite how it works... after reading my Intel manual and >talking to a few hardware gurus, it appears that the coprocessor >opcodes are flagged and passed to the 8087 by the 8088, rather than the >8087 "watching for" them. The 8088 will support up to three >coprocessors, allowing use of things other than the 8087. > > -bill davidsen > I checked the manuals and found out how they manage to make this work. The 8088 does not pass anything to the 8087. They both are connected in parallel on the buss and the 8087 watches the opcodes that are fetched by the CPU. When the CPU fetches a Floating Point ESC opcode the 8087 will decode it and perform the operation. My initial concern was that the 8087 would not know that the CPU had switched to its 8080 emulation mode and might try to execute some 8080 opcodes as floating point operations. It turns out that there is a status bit output on the A19 line that prevents this for occuring. Normally the CPU drives this bit low and the coprocessor drives it hi to show whether the cycle is a cpu cycle or not. The V-20 drives it low for 8088 mode and high for 8080 mode and this disables the 8087 during emulation cycles. John Eaton !hplabs!hp-pcd!john
@hpislx.UUCP (05/08/86)
This message is empty.