Intel i860
Designer | Floating point | 32 32-bit (16 64-bit) |
---|
The Intel i860 (also known as 80860) is a
Implementations
General information | |
---|---|
Launched | 1989 |
Discontinued | mid-1990s |
Common manufacturer |
|
Performance | |
Max. CPU clock rate | 25 MHz to 40 MHz |
Cache | |
L1 cache | 4 KB (I) + 8 KB (D) |
Architecture and classification | |
Instruction set | Intel i860 |
Physical specifications | |
Cores |
|
History | |
Successor | i860 XP |
General information | |
---|---|
Launched | 1991 |
Discontinued | mid-1990s |
Common manufacturer |
|
Performance | |
Max. CPU clock rate | 40 MHz to 50 MHz |
Cache | |
L1 cache | 16+16 KB |
Architecture and classification | |
Instruction set | Intel i860 |
Physical specifications | |
Transistors |
|
Cores |
|
History | |
Predecessor | i860 XR |
The first implementation of the i860 architecture is the i860 XR microprocessor (code-named N10), which ran at 25, 33, or 40 MHz. The second-generation i860 XP microprocessor (code named N11) added 4 Mbyte pages, larger on-chip caches, second level cache support, faster buses, and hardware support for bus snooping, for cache consistency in
Technical features
The i860 combined a number of features that were unique at the time, most notably its
All of the data buses were at least 64 bits wide. The internal memory bus to the cache, for instance, was 128 bits wide.
The "core" class instructions use thirty-two 32-bit integer registers. But the "floating-point or graphics" instructions use a register file that can be accessed by the floating point units as either thirty-two 32-bit, sixteen 64-bit, or eight 128-bit floating-point registers, or that can be accessed by the graphics unit as sixteen 64-bit integer registers.
The "core" unit is responsible for fetching instructions, and in the normal "single-instruction" mode can fetch one 32-bit "core" or one 32-bit "floating point or graphics" instruction per cycle. But when executing in dual-instruction mode, the instruction cache is accessed as VLIW instructions consisting of a 32-bit "core" instruction paired with a 32-bit "floating-point or graphics" instruction, simultaneously fetched together over a 64-bit bus.[5]
Intel referred to the design as the "i860 64-Bit Microprocessor".[6]
Intel i860 instructions acted on data sizes from 8-bit through 128-bit.[7]
The graphics supports
The pipelines into the functional units are program-accessible (
The i860 has both non-delayed and delayed branch instructions. When delayed branches are taken, the following instruction will be executed prior to transferring control to the branch target instruction. It means the i860 has a single branch delay slot.[8]
Performance
On paper, performance was impressive for a single-chip solution; however, real-world performance was anything but. One problem, perhaps unrecognized at the time, was that runtime code paths are difficult to predict, meaning that it becomes exceedingly difficult to order instructions properly at
Another serious problem was the lack of any solution to handle context switching quickly. The i860 had several pipelines (for the ALU and FPU parts) and an interrupt could spill them and require them all to be re-loaded. This took 62 cycles in the best case, and almost 2000 cycles in the worst. The latter is 1/20000th of a second at 40 MHz (50 microseconds), an eternity for a CPU. This largely eliminated the i860 as a general purpose CPU.
Demise
As the compilers improved, the general performance of the i860 did likewise, but by then most other RISC designs had already passed the i860 in performance.
In the late 1990s, Intel replaced their entire RISC line with
We now had two very powerful chips that we were introducing at just about the same time: the 486, largely based on CISC technology and compatible with all the PC software, and the i860, based on RISC technology, which was very fast but compatible with nothing. We didn't know what to do. So we introduced both, figuring we'd let the marketplace decide. ... our equivocation caused our customers to wonder what Intel really stood for, the 486 or i860?
—Andy Grove, [11]
Applications
At first, the i860 was only used in a small number of
The i860 did see some use in the
During the early 1990s, Stratus Technologies built i860-based servers, the XA/R series, running their proprietary VOS operating system.[18]
Also in the 1990s, Alliant Computer Systems built their i860-based FX/800 and FX/2800 servers, replacing the FX/80 and FX/8 series that had been based on the Motorola 68000 ISA. Both the Alliant and Mercury compute systems were in heavy use at NASA/JPL for the SIR-C missions.
The U.S. military used the i860 for numerous aerospace and digital signal processing applications as a coprocessor, where it saw use up until the late 1990s.[19]
References
- ^ a b Perry, Tekla (2022-07-02). "The First Million-Transistor Chip: the Engineers' Story". IEEE Spectrum. Archived from the original on 2022-07-05. Retrieved 2022-07-05.
- ^ Lewnes, Ann, "The Intel386 Architecture Here to Stay", Intel Corporation, Microcomputer Solutions, July/August 1989, page 2
- ^ "The i860 XP - Second Generation of the i860" (PDF). Archived from the original (PDF) on 2018-08-20. Retrieved 2015-02-22.
- S2CID 21922034.
- ^ a b c i860 64-bit Microprocessor Programmer's Reference Manual (PDF). Santa Clara, CA, USA: Intel. 1989. Archived (PDF) from the original on 2022-02-23.
- S2CID 38831149.
- ^ "The Chip Collection - i860 Microprocessor - Smithsonian Institution". Smithsonian Institution.
- ^ "i860™ 64-bit Microprocessor Programmer's Reference Manual" (PDF). p. 70(5-11). Retrieved 2023-12-21.
- ^ Oleg Yu. Repin, Alexei S. Pylkin (2000). "Intel i860 : 64-Bit Microprocessor". sscc.ru, ICMMG. Archived from the original on 2009-06-23. Retrieved 2013-09-27.
- ^ Bailey, D.H.; Barszcz, E.; Fatoohi, R.A.; Simon, H.D.; Weeratunga, S. (1990). Performance Results on the Intel Touchstone Gamma Prototype (PDF) (Report). NASA Ames Research Center.
- ^ Olson, Sander (3 June 2004). "Intel's 486 CPU turns 15". Geek.com. Archived from the original on 2008-05-25.
- ^ "Oki Electric OKI Station 7300/30-Computer Museum".
- ^ "Intel i860 - From Here to There". 2010.
- ^ "KUBOTA Computer/Stardent AVSstation Titan Vistra 800". Archived from the original on 2014-05-14. Retrieved 2014-05-14.
- ^ "GeekDot - Hauppauge 4860". 20 March 2008.
- ^ "GeekDot - Olivetti CP486". 16 August 2011.
- ^ Thurrott, Paul (2003-01-24). "Windows Server 2003: The Road To Gold". Win super site. Archived from the original on 2011-07-20. Retrieved 2013-09-02.
- ^ "Stratus Machine History". Archived from the original on 2003-06-12.
- ^ "StackPath". May 1997.
- Margulis, Neal (1990). i860 Microprocessor Architecture. Osborne/McGraw-Hill. ISBN 978-0-07-881645-1.
External links
- Many i860 expansion cards
- i860 images and description.
- Rhodehamel, Michael W. "The Bus Interface and Paging Units of the i860(tm) Microprocessor". In Proc. IEEE International Conference on Computer Design, p. 380–384, 1989.