From: Eric Smith on
I wrote:
> That doesn't explain how I can look at a piece of hardware and
> definitively state that it is or is not VLIW. I think it should
> be possible to do that without looking at the software.

John L wrote:
> Well, like I said, try programming it by hand, and if you can't, it
> must be VLIW.

Eugene Miya wrote:
> So gee Eric, does that mean we are going to dust off the Multiflow and
> grab Josh to reboot it? 8^)

Sure, let's do it! :-)
From: Eric Smith on
Quadibloc wrote:
> But I would think that there is a very simple definition of VLIW.

Once upon a time I thought that of RISC, too. But that war has been
lost.

> Instructions explicitly code for superscalar operation.

Sounds reasonable to me. So an i860 qualifies?

Eric
From: Eugene Miya on
In article <qhps52r304.fsf(a)ruckus.brouhaha.com>,
Eric Smith <eric(a)brouhaha.com> wrote:
>> That doesn't explain how I can look at a piece of hardware and
>> definitively state that it is or is not VLIW. I think it should
>> be possible to do that without looking at the software.

I wondered the same thing the first time I saw one.
Talk to me off line about that (as in "where").

It was just a board to me.

>John L wrote:
>> Well, like I said, try programming it by hand, and if you can't, it
>> must be VLIW.
>
>Eugene Miya wrote:
>> So gee Eric, does that mean we are going to dust off the Multiflow and
>> grab Josh to reboot it? 8^)
>
>Sure, let's do it! :-)

I don't recall what the state of the disks on the system were.

--
From: Quadibloc on
Eric Smith wrote:
> Quadibloc wrote:
> > But I would think that there is a very simple definition of VLIW.
>
> Once upon a time I thought that of RISC, too. But that war has been
> lost.
>
> > Instructions explicitly code for superscalar operation.
>
> Sounds reasonable to me. So an i860 qualifies?
..
I don't know enough about the i860 to answer that at the moment.
..
Looking at the manual for the AP-120B, it had 64-bit instructions that
coded for an "S-pad" operation, a floating adder operation, and a
floating multiplier operation. I would say it *definitely* qualifies
as a VLIW architecture. Even if that term only arose later with
machines like the Cyberplus, this is the same sort of thing, but in a
smaller version. (The assembly language for it obscures the fact that
adder and multiplier instructions are really part of the same
instruction word.)

John Savard

From: Quadibloc on
Greg Lindahl wrote:
> Sounds like ordinary microcode on a pipelined processor. The FPS
> AP120B array processor (which didn't come along until the early 80s)
> let you microcode it directly. But since it's just microcode, it's not
> exactly a novel idea, it's just unusual today to think of directly
> programming it that way.

I looked at the FPS AP-120B manual, and I think that it definitely
qualifies as VLIW. A 64-bit instruction had three fields; one operated
on a small integer ALU, called the S-unit, another controlled the
floating-point adder, and another controlled the floating-point
multiplier.

So each instruction could direct *two* operations that were *directly
usable* by the applications program, a floating-point add and a
floating-point multiply.

In comparison, a 360/85 or 370/168 or 3033:

- didn't let the user program in horizontal microcode, even if it was
writable,

- had only *one* ALU for regular arithmetic, although there were
supplementary ALUs for byte operations (also used for FP exponents)
and address arithmetic

Thus, while some horizontal microcode machines might be said to in
some way be precursors of VLIW, it's a stretch. With the AP-120B, on
the other hand, the resemblance is clear and unmistakable.

Superficially, VLIW instructions are microcode-like. You direct the
movement of data between functional units and internal registers. But
VLIW presents multiple functional units, applicable to user problems,
in a manner not useful for the microcoding of conventional
instructions, so they _can_ be distinguished.

The early articles about decoupled microarchitecture described the
chips as going from CISC to RISC on the fly. Actually, what they did
was closer to going from CISC to VLIW on the fly - since
microinstructions were being composed, they could combine operations
that belonged to two separate CISC instructions; this couldn't be done
if you were just executing a microprogram, and that's why a 360/85
didn't split out ALU functions the way a CDC 6600 did. If it had,
*then* its microcode could have been called a VLIW precursor with
strong justification. (You could, theoretically, use the writable
microcode store to code programs that did an EDMK and fixed-point
arithmetic in parallel, though, which would be VLIW. Nobody ever _did_
that, though. Maybe it's a VLIW precursor only a patent lawyer could
love.)

John Savard

First  |  Prev  |  Next  |  Last
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
Prev: Multiple Clock Domains on UP3
Next: Fast string functions