Check out my first novel, midnight's simulacra!
Microarchitectures: Difference between revisions
From dankwiki
No edit summary |
|||
(31 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
Microarchitecture is defined as those elements of a CPU design which are, to first order, invisible to application programmers (ie, not part of the instruction set). Those elements which are visible comprise the [[architecture]]. | Microarchitecture is defined as those elements of a CPU design which are, to first order, invisible to application programmers (ie, not part of the instruction set). Those elements which are visible comprise the [[architecture]]. | ||
==[[:CATEGORY: x86|x86]] μarchitectures== | ==[[:CATEGORY: x86|x86]] μarchitectures== | ||
'''FIXME: add early clones (NEC V20/V30, etc)''' | '''FIXME: add early clones (NEC V20/V30, etc), AMD, VIA, Cyrix etc...'''<br/> | ||
'''FIXME: add variants (80188, embedded 80386's, etc)''' | |||
{| border="1" | {| border="1" | ||
! | ! Name | ||
! Maker | ! Maker | ||
! Date | ! Date | ||
Line 11: | Line 12: | ||
! Addr bits | ! Addr bits | ||
! Clock(s) | ! Clock(s) | ||
! | ! ISA | ||
! Notes | ! Notes | ||
|- | |- | ||
Line 21: | Line 22: | ||
| 16 | | 16 | ||
| 20 | | 20 | ||
| 4 | | 4--10 MHz | ||
| x86-16 | | x86-16 | ||
| Segmented memory | | Segmented memory<br/>Optional 80-bit 8087 FP coprocessor | ||
Optional 80-bit 8087 FP coprocessor | |||
|- | |- | ||
| 8088 | | 8088 | ||
Line 30: | Line 30: | ||
| 1979 | | 1979 | ||
| 3.2 μm (?) | | 3.2 μm (?) | ||
| 40-pin DIP | | 40-pin DIP | ||
44-pin PLCC | |||
| 16/8 | | 16/8 | ||
| 20 | | 20 | ||
| | | 5--8 MHz | ||
| | | x86-16 | ||
| Designed for use with 8-bit externals | | Designed for use with 8-bit externals<br/>Used in IBM PC-5150 / XT-5160 / PCjr-4860 | ||
Used in IBM PC-5150 / XT-5160 / PCjr-4860 | |||
|- | |- | ||
| 80186 | | 80186 | ||
| Intel | | Intel | ||
| | | 1980 | ||
| 2.6 μm | | 2.6 μm | ||
| 68-pin PLCC/PGA | | 68-pin PLCC<br/>68-pin PGA<br/>100-pin PQFP | ||
| 16 | | 16 | ||
| 20 | | 20 | ||
| 6--25 MHz | | 6--25 MHz | ||
| 8086-2 | | 8086-2 | ||
| Designed for embedded systems (clock, PIC, DMA on-die) | | Designed for embedded systems<br/>(clock, PIC, DMA on-die) | ||
|- | |- | ||
| 80286 | | 80286 | ||
Line 53: | Line 53: | ||
| 1982 | | 1982 | ||
| 1.5 μm | | 1.5 μm | ||
| 68-pin PGA/CLCC/PLCC | | 68-pin PGA<br/>68-pin CLCC<br/>68-pin PLCC | ||
| 16 | | 16 | ||
| 24 | | 24 | ||
| 4--12.5 MHz | | 4--12.5 MHz | ||
| 8086-2 | | 8086-2<br/>+ PVAM | ||
| Introduced protected mode | | Introduced protected mode/MMU<br/>Used in the IBM AT-5170 | ||
Used in the IBM AT-5170 | |- | ||
| 80386-DX | |||
| Intel | |||
| 1985 | |||
| CHMOS III 1.5 µm<br/>CHMOS IV 1 µm | |||
| 132-pin PGA<br/>132-pin PQFP | |||
| 32 | |||
| 32 | |||
| 12--33 MHz | |||
| x86-32 | |||
| Introduced paging, VM86, flat memory<br/>Optional 80287 or 80387 FP<br/>Support for external caches | |||
|- | |||
| 80386-SX | |||
| Intel | |||
| 1988 | |||
| CHMOS IV 1 µm | |||
| PQFP-100<br/>PGA-88 | |||
| 32/16 | |||
| 24 | |||
| 16--33 MHz | |||
| x86-32 | |||
| Optional 80387SX (16-bit) FP | |||
|- | |||
| 80376 | |||
| Intel | |||
| 1989 | |||
| CHMOS IV 1 µm | |||
| PQFP-100<br/>PGA-88 | |||
| 32/16 | |||
| 24 | |||
| 16--20 | |||
| x86-32 | |||
| Protected mode '''only'''<br/>No paging<br/>Optional 80387SX (16-bit) FP | |||
|- | |||
| 80386-SL | |||
| Intel | |||
| 1990 | |||
| CHMOS IV 1 µm | |||
| PQFP-132 | |||
| 32/16 | |||
| 24 | |||
| 20--25 MHz | |||
| x86-32 | |||
| Designed for mobile/low-power systems<br/>Added [http://en.wikipedia.org/wiki/System_Management_Mode System Management Mode] | |||
|- | |- | ||
|} | |} | ||
===Instruction sets=== | |||
* x86-16: The granddaddy of 'em all | |||
* 8086-2: Added ENTER/LEAVE, PUSHA/POPA, INS/OUTS | |||
* PVAM: Added Protected Virtual Address Mode instructions (L/S*DT, etc) | |||
===Physical Packages=== | |||
* DIP (dual in-line package): 2 parallel rows of pins | |||
* PGA (pin grid array): Regularly-spaced pins in rectangular geometry | |||
* CLCC (ceramic leadless chip carrier): Regularly-spaced metallized castellations in rectangular geometry | |||
* PLCC (plastic lead chip carrier): Regularly-spaced J-leads in rectangular geometry, surface- or package-mounted | |||
* PQFP (plastic quad flat pack): Regularly-spaced side leads in rectangular geometry, designed for surface mounting | |||
==References== | |||
* [http://www.pcmech.com/article/a-cpu-history/ A CPU History], David Risley, PCMECH, 2001-03-23 | |||
* [http://portfolio.ecs.soton.ac.uk/29/1/Intel_History.pdf An Outline of Developments in Intel CPU Architecture], Benjamin MJ Hodgson, University of Southampton, 2007-03-14 | |||
* [http://www.redhill.net.au/c/c-1.html The Red Hill CPU Guide], Red Hill Technology | |||
* [[Media:8088 datasheet.pdf|Intel 8088 Datasheet]], Intel, 1990-08 | |||
* [http://www.ragestorm.net/downloads/286intel.txt Intel 80286 Programmer's Reference Manual], Intel, 1987 | |||
* [[Media:Intel_80387_Datasheet.PDF|Intel 80376 Datasheet]], Intel, 1990-12 | |||
* [[Media:Amd80186.pdf|80186 AMD Datasheet]], Advanced Micro Devices, 1991-11-01 | |||
* [http://www.intersil.com/design/packages/hermetic.asp Hermetic Package information], Intersil | |||
* [http://www.evergreensemiconductor.com/products/packages Packages], Evergreen Semiconductor Materials | |||
* [http://www.cpu-world.com/CPUs/ Microprocessor/Co-processor/Microcontroller families], CPU World | |||
* [http://www.pagetable.com/?p=460 The Intel 80376 – a Legacy-Free i386 (with a Twist!)], pagetable.com, 2010-11-16 | |||
[[CATEGORY: Hardware]] | [[CATEGORY: Hardware]] | ||
[[CATEGORY: x86]] | [[CATEGORY: x86]] |
Latest revision as of 01:31, 31 August 2012
Microarchitecture is defined as those elements of a CPU design which are, to first order, invisible to application programmers (ie, not part of the instruction set). Those elements which are visible comprise the architecture.
x86 μarchitectures
FIXME: add early clones (NEC V20/V30, etc), AMD, VIA, Cyrix etc...
FIXME: add variants (80188, embedded 80386's, etc)
Name | Maker | Date | Process (min) | Package | ALU/data bits | Addr bits | Clock(s) | ISA | Notes |
---|---|---|---|---|---|---|---|---|---|
8086 | Intel | 1978 | 3.2 μm | 40-pin DIP | 16 | 20 | 4--10 MHz | x86-16 | Segmented memory Optional 80-bit 8087 FP coprocessor |
8088 | Intel | 1979 | 3.2 μm (?) | 40-pin DIP
44-pin PLCC |
16/8 | 20 | 5--8 MHz | x86-16 | Designed for use with 8-bit externals Used in IBM PC-5150 / XT-5160 / PCjr-4860 |
80186 | Intel | 1980 | 2.6 μm | 68-pin PLCC 68-pin PGA 100-pin PQFP |
16 | 20 | 6--25 MHz | 8086-2 | Designed for embedded systems (clock, PIC, DMA on-die) |
80286 | Intel | 1982 | 1.5 μm | 68-pin PGA 68-pin CLCC 68-pin PLCC |
16 | 24 | 4--12.5 MHz | 8086-2 + PVAM |
Introduced protected mode/MMU Used in the IBM AT-5170 |
80386-DX | Intel | 1985 | CHMOS III 1.5 µm CHMOS IV 1 µm |
132-pin PGA 132-pin PQFP |
32 | 32 | 12--33 MHz | x86-32 | Introduced paging, VM86, flat memory Optional 80287 or 80387 FP Support for external caches |
80386-SX | Intel | 1988 | CHMOS IV 1 µm | PQFP-100 PGA-88 |
32/16 | 24 | 16--33 MHz | x86-32 | Optional 80387SX (16-bit) FP |
80376 | Intel | 1989 | CHMOS IV 1 µm | PQFP-100 PGA-88 |
32/16 | 24 | 16--20 | x86-32 | Protected mode only No paging Optional 80387SX (16-bit) FP |
80386-SL | Intel | 1990 | CHMOS IV 1 µm | PQFP-132 | 32/16 | 24 | 20--25 MHz | x86-32 | Designed for mobile/low-power systems Added System Management Mode |
Instruction sets
- x86-16: The granddaddy of 'em all
- 8086-2: Added ENTER/LEAVE, PUSHA/POPA, INS/OUTS
- PVAM: Added Protected Virtual Address Mode instructions (L/S*DT, etc)
Physical Packages
- DIP (dual in-line package): 2 parallel rows of pins
- PGA (pin grid array): Regularly-spaced pins in rectangular geometry
- CLCC (ceramic leadless chip carrier): Regularly-spaced metallized castellations in rectangular geometry
- PLCC (plastic lead chip carrier): Regularly-spaced J-leads in rectangular geometry, surface- or package-mounted
- PQFP (plastic quad flat pack): Regularly-spaced side leads in rectangular geometry, designed for surface mounting
References
- A CPU History, David Risley, PCMECH, 2001-03-23
- An Outline of Developments in Intel CPU Architecture, Benjamin MJ Hodgson, University of Southampton, 2007-03-14
- The Red Hill CPU Guide, Red Hill Technology
- Intel 8088 Datasheet, Intel, 1990-08
- Intel 80286 Programmer's Reference Manual, Intel, 1987
- Intel 80376 Datasheet, Intel, 1990-12
- 80186 AMD Datasheet, Advanced Micro Devices, 1991-11-01
- Hermetic Package information, Intersil
- Packages, Evergreen Semiconductor Materials
- Microprocessor/Co-processor/Microcontroller families, CPU World
- The Intel 80376 – a Legacy-Free i386 (with a Twist!), pagetable.com, 2010-11-16