Author here: this is a pretty obscure circuit, but hopefully it is interesting. I figured I'd start with the simple parts of the 386. Only 285,000 more transistors to go :-)
Typo: "Even though the 8086 has four clock signals" 8086 should be 386.
What if you looked at the 186, comparing it with the 8086? It should be interesting considering there is more efficient digital logic (including microcode) and possibly some interesting analog circuits for the embedded I/O...
I haven't looked at the 186, but maybe if I have time. From a quick look, it looks like the core is similar to the 8086 so the circuitry improvements can't be too major. It would be interesting to compare the microcode. And of course the 186 has the programmable interrupt controller, timers, and DMA. I'm not sure what analog circuitry you're referring to, other than the clock generator which isn't much more than inverters.
>It would be interesting to compare the microcode.
I've disassembled the microcode[1], it's similar to the 8086 but with some changes:
- No subroutines are used (effective address calculation and most of multiply/divide handled by dedicated logic). CORR is also no longer needed.
- The 'update flags' bit now has a second function: on a jump, it causes the next micro-instruction to always be executed unconditionally (saving one clock cycle in case the jump is taken)
- MOVS / INS / OUTS are optimized, using a special memory-to-memory (or I/O) transfer; the microcode for this has the 'IRQ' bit set. The address isn't loaded into IND for these anymore (tested it with LEA reg,reg) - maybe it's using the DMA controller?
- Slightly different condition codes ("CX not zero" was added for LOOP/JCXZ; "segment prefix is present" for adjusting IP on interrupted string instructions).
- Order of the 4 instructions in each 84-bit row is shuffled around for some reason
Don’t know what ad network you’re using but the popups taking over the whole window and trying to trick you to navigate away from your content seem counter intuitive to content creation.