Email or username:

Password:

Forgot your password?
Top-level
Ken Shirriff

The output pins need high current, so each pin has multiple large transistors in parallel. This diagram shows how long, parallel transistors are created from polysilicon and silicon, and then wired together by the metal layer on top.

12 comments
Ken Shirriff

Each pin has a latch to store the output value, as well as a circuit to read incoming data. This diagram shows how that circuitry looks on the die, underneath the metal layer. These transistors are much larger than regular logic transistors.

Ken Shirriff

Although the 8086 had 16-bit registers, it created a larger 20-bit address space by breaking memory into segments. A special address adder computed the physical address from the segment and offset. These values moved through the chip over the internal AD and C buses.

Ken Shirriff

This diagram shows the main functional blocks of the 8086. The address/data pins are along the edges. The address adder is in the upper left. Address and data values move across the various buses. Complicated bus control logic handles the memory accesses.

Ken Shirriff

To support the different types of address pins, four different circuits were required, more than I'd expect. The 8086 is full of special cases: The top 4 address pins also provide status, but one pin constantly updates while the others don't. The bottom 4 pins use an extra latch.

TheBuell

@kenshirriff I understand Intel used to HATE adding extra pins to DIPs. Today's processors have more than 3k pins ... vorsprung durch technik!

David Gerhart

@kenshirriff

"This diagram shows the main functional blocks of the 8086."

Your whole thread on this is so interesting!

It numbs the mind to think that this was, what 1980? (vs Moores Law...)

Thanks.

lopta

@kenshirriff How similar was the 8088 bus to that of the 8085?

Ken Shirriff

@lopta The 8085 and 8086 buses were pretty similar. I think Intel wanted to make migration to the 8086 easier. Of course there were some differences since the 8086 has a 20-bit address bus and the 8085 has a 16-bit bus. But they used the same concepts: INTR/INTA for interrupts, HOLD/HLDA for bus hold, similar T state timing, similar status bits, and so forth.

lopta

@kenshirriff Thank you. I thought perhaps it helped engineers use (readily available?) 8085 support chips and adapt existing 8-bit boards to run 16-bit code (a bit like the 80386sx let you build an AT that could run 32-bit code), albeit more slowly.

Borogove

@kenshirriff how much current is “high current” in this context?

Ken Shirriff

@borogove The outputs were high current compared to the internal signals, but not a lot of current overall. The output pins could source 400 μA and sink 2.5 mA.

Go Up