Talk:Intel i860
From Wikipedia, the free encyclopedia
The i860 was never superscalar -- it was quasi-VLIW. I will leave this comment here for a while to elicit feedback, and then correct the commentary. gnetwerker - 12/29/04
-
- Just saw this now -- some easier way to track comments would be nice. Anyway I'm not sure the two are as separate as you note, the term "superscalar" generally means "runs more than one instruction at once". I think the i860 certainly fits this definition. Of the two, VLIW is more restrictive, such that all VLIW processors are superscalar (or what's the point?!) while only a very few superscalar designs are VLIW. Maury 13:24, 31 Jan 2005 (UTC)
Well, no, not really -- "superscalar" does not mean "more than 1 insn at once" -- it means "more than one instruction at once from a normal, linear instruction stream". Otherwise microcode machines and others were doing it for years. Read Patterson and Hennessey or Mike Johnson's (from AMD) book on the subject. VLIW is VLIW, Superscalar is superscalar. The two are different. The literature backs me up on this one. I know because I wrote some of it. -- Gnetwerker 22:49, 7 Feb 2005 (UTC)
OK, I did a certain amount of work on this. First, as noted above, the i860 was NOT Superscalar. Second, calling VLIW an "extension" of RISC is completely wrong, as well as historically out of place, as the i860 was developed in they heyday of RISC, and was a competitor to more normal RISC concepts. Third, the i960 actually taped out long before the i860, though I have left some wiggle room in there because I don't know the precise tape-out date for the 860 (the 960 first tape-out was October 85, same month as the i386). Fourth, the central paragraph was a blatantly POV trumpeting of its superior performance which was (IMHO) insufficiently corrected by the (problems) para. Ideally these would be merged into a single NPOV para but I'm not there yet. - Gnetwerker 08:15, 30 Mar 2005 (UTC)
Contents |
[edit] No, I'm not just trolling
You note:
First, as noted above, the i860 was NOT Superscalar.
Well let's see what foldoc says:
A superscalar architecture is a uniprocessor that can execute two or more scalar operations in parallel.
Pretty clear so far. By this definition the i860 is definitely superscalar.
Some definitions include superpipelined and VLIW architectures; others do not.
So certainly the definition used in this article can apply.
Superscalar architectures (apart from superpipelined architectures) require multiple functional units, which may or may not be identical to each other.
The i860 certainly fits this description.
In some superscalar processors the order of instruction execution is determined statically (purely at compile-time), in others it is determined dynamically (partly at run time).
Once again, the i860 is defined by, at least, the loose definition.
I would claim that the common definition, and even some of the more pendantic ones, support the statement "the i860 was a superscalar processor". I can find no instances of a general definition that explicitly disagrees, all I can find are comments in the context of VLIW that say it's different. I don't think these definitions are either widely used, nor particularily useful.
If one does wish to claim VLIW is not superscalar, I'd really like to know what purpose that claim would serve. Since the general understanding of superscalar is more the one instruction at a time, VLIW implementations would always appear to be a subset (is there a counterexample? can their be?). Saying that VLIW machines are not superscalar would be like saying a Jeep isn't a car, because it only comes in wheel drive: you have to redefine "car" in order to make the definition work. And for what reason?
Moving on, I don't remember the article calling VLIW an extension of RISC. But even if it did, it's equally incorrect to claim that VLIW is, by definition, different (or competing). RISC is based on a small number of basic concepts:
- make memory access explicit; it's expensive, make the programmer known they're doing it and thereby try to avoid it
- use lots of registers instead, and make most instructions register-register only instead of providing lots of versions in microcode -- use that silicon for something else instead
It is for these reasons that the literature often tries to use the term load-store instead of RISC, as the later is misleading.
I suppose it's entirely possible that someone could build a VLIW-based CISC design; that is, a CPU with lots of microcode, lots of addressing modes, and a VLIW instruction format.
The i860 certainly fit into this definition of RISC as far as I can tell. It is certainly fair to call the Merced a VLIW-RISC system, and it would seem the same is true for the i860. The only way to know for sure is to look at the addressing modes.
Maury 01:20, 25 Apr 2005 (UTC)
[edit] If You're Not Trolling, You're Just Plain Wrong
VLIW is not superscalar because if it were, every bitslice microcode processor out there would be "superscalar" -- it would have no meaning. As I said already, and you have ignored, the reputable, published literature on the subject defines superscalar as I have. The definitive work is "Superscalar Microprocessor Design", by Mike Johnson, Pentice-Hall, 1991. On page 6, he says: "A superscalar processor ... allow[s] concurrent execution of instructions in the same pipeline stage ..." (emphasis in original).
If you choose the one-line definition from an on-line dictionary of no greater repute than Wikipedia, you demean both.
So let me repeat: I was on the i960 design team. I was intimately acquainted with the i860 design and team. Intel did not market or describe the i860 as superscalar. The dominant experts in the field do not consider the i860 superscalar. The distinction between superscalar and VLIW is a clear and important one (having to do with the trade-off between instruction decode complexity and fetch bandwidth/code expansion). You are, quite simply, wrong. If you, an apparent amateur with no specific qualification in the field, want to force this issue, then you reinforce the central complaint about Wikipedia -- it can never be trusted. -- Gnetwerker 08:24, 25 Apr 2005 (UTC)
- I think (as less than amateur) that you guys are pretty much splitting terminological hairs here. Nobody will take this entry as some kind of definitive reference. I don't think that this shows that Wikipedia cannot be trusted - just that one is well advised to check Talk page and source documents, if doing more than just idly browsing. Where are Talk pages in Britannica? :) --bonzi 21:28, 15 January 2006 (UTC)
BTW, there is no argument that the i860 might be called "RISC" (someone tried to call almost every processor built after 1986 thusly). What it is not meaningful to say is that it is an "extension" of RISC. It is not. It was a different direction that failed and is now largely dead. -- Gnetwerker 08:24, 25 Apr 2005 (UTC)
[edit] Who are these "experts in the field"?
OK, I would recommend you actually look at the i860 ISA before calling it a VLIW machine. It is by any definition a superscalar processor.
I believe a lot of the confusion comes from the fact that the 860 was, however, an "implicit superscalar" design. since each instruction/opcode is isolated and targets a single functional unit, unlike VLIW instructions. Unlike explicit superscalars (or dynamic if you may) the 860 made the pipeline visible, meaning that there were very strict restrictions on the instruction ordering. That still does not make it a VLIW machine, in the sense that a machine with delay slots is not considereded automatically a VLIW design just because. Some people argue that this "visibility" of the pipeline makes the i860 not a SuperScalar design, but the truth of the matter is that superscalar just refers to processors with the ability of executing/issuing 2+ instructions per cycle.
So let's all coold down our engines, please.
[edit] The Experts: People Who Were There
To the question: Who Were the Experts? -- They were those of us actively working in the field in the late 1980s. Most likely in attendance at the Hot Chips Conference, or several others. Some (already noted) published books on the subject (Mike Johnson, John Hennessey/Bill Patterson), some designed these chips (Glen Myers, Randy Steck), others marketed them (Claude Leglise). Claude, the overall manager for the i860, never referred to, considered, or marketed the 860 as Superscalar. No one at any contemporaneous conference referred to it as such.
What part of "A superscalar processor ... allow[s] concurrent execution of instructions in the same pipeline stage ..." do you fail to understand? The i860 achieved multiple instruction execution from wide instructions, not from superscalar technology. You are confusing the fact that the i860 had a "single intruction mode" as well as the (default) dual instruction mode with the notion that it could issue multiple simultaneous instructions from single instruction mode -- it could not, therefore was not superscalar. In dual instruction mode, it was VLIW.
From http://www.nxp.com/acrobat/other/vliw-wp.pdf:
In the early 1990s, Intel introduced the i860 RISC microprocessor. This simple chip had two modes of operation: a scalar mode and a VLIW mode. In the VLIW mode, the processor always fetched two instructions and assumed that one was an integer instruction and the other floating-point. A single program could switch (somewhat painfully) between the scalar and VLIW modes, thus implementing a crude form of code compression.
-- Gnetwerker 9 July 2005 06:43 (UTC)
"A superscalar processor ... allow[s] concurrent execution of instructions in the same pipeline stage ..."
I am afraid you are the one here who fails to understand this sentence, the i860 allowed up to 2/3 concurrent instructions: 1 integer, 1 FP, and possibly 1 FP in the MACC unit for GFX and yes they were all concurrent since the pipelines were decoupled. Thus making it a superscalar, whether you like it or not. It is not a true VLIW in the sense that the instructions themselves were RISC not VLIW.... The people from multiflow, cyndrome, et al would take a serious offence at the i860 being considered a VLIW.
[edit] Link down
Link entitled "Intel i860 64-Bit Microprocessor Data Sheet" is down 87.234.92.102 16:02, 30 December 2006 (UTC)
[edit] XScale
Just a note: XScale has been sold to Marvell 193.131.176.54 10:32, 8 March 2007 (UTC)