From: Dennis M. O'Connor on
"Stephen Fuld" <s.fuld(a)PleaseRemove.att.net> wrote ...
> "Dennis M. O'Connor" <dmoc(a)primenet.com> wrote in message
>> Yeah, well, I may not have the illustrious track record of
>> some of the posters here, but I have spent a few years being
>> a microprocessor architect and micro-architect, during
>> my 15 years at Intel Corporation
>
> Just out of curiosity, can you explain the difference between the jobs
> "micprocessor architect" and "micro-architect", as it might appear that
> they are essentially the same thing?

Architecture is, in general, what the programmers see, and
doesn't change too much from, say, a Pentium III to a Pentium IV
(except the new stuff (WNI) added to P4).

Microarchitecture is the highest-level of the processor design.
The P3 and P4 micro-architoectures are very different; you'd
hardly know that they were the same ISA to look at them.

Architects to architecture. Micro-architects do micro-architectecture.
The former is one level of abstraction higher than the latter.
--
Dennis M. O'Connor dmoc(a)primenet.com


From: Terje Mathisen on
Dennis M. O'Connor wrote:
> Architecture is, in general, what the programmers see, and
> doesn't change too much from, say, a Pentium III to a Pentium IV
> (except the new stuff (WNI) added to P4).
>
> Microarchitecture is the highest-level of the processor design.
> The P3 and P4 micro-architoectures are very different; you'd
> hardly know that they were the same ISA to look at them.

Even for a (semi-)regular programmer microarchitecture can become very
important!

As soon as you have some sort of code that really needs maximum
performance, you have to realize that any major change in
micro-architecture probably requires a total rewrite of said code, even
though the two cpus are totally compatible.

I've held an hour-long presentation at a microcomputer conference about
this particular issue, and how I had rewritten one particular piece of
code about 10 times during the evolution from 8088 to P4.

All this is without using any of the new/fancy opcodes. Now I'm thinking
about how SIMD opcodes could give another factor of 2-8 speedup. :-)

Terje

--
- <Terje.Mathisen(a)hda.hydro.com>
"almost all programming can be viewed as an exercise in caching"
From: Stephen Fuld on

"Dennis M. O'Connor" <dmoc(a)primenet.com> wrote in message
news:1160886201.962428(a)nnrp1.phx1.gblx.net...
> "Stephen Fuld" <s.fuld(a)PleaseRemove.att.net> wrote ...
>> "Dennis M. O'Connor" <dmoc(a)primenet.com> wrote in message
>>> Yeah, well, I may not have the illustrious track record of
>>> some of the posters here, but I have spent a few years being
>>> a microprocessor architect and micro-architect, during
>>> my 15 years at Intel Corporation
>>
>> Just out of curiosity, can you explain the difference between the jobs
>> "micprocessor architect" and "micro-architect", as it might appear that
>> they are essentially the same thing?
>
> Architecture is, in general, what the programmers see, and
> doesn't change too much from, say, a Pentium III to a Pentium IV
> (except the new stuff (WNI) added to P4).
>
> Microarchitecture is the highest-level of the processor design.
> The P3 and P4 micro-architoectures are very different; you'd
> hardly know that they were the same ISA to look at them.
>
> Architects to architecture. Micro-architects do micro-architectecture.
> The former is one level of abstraction higher than the latter.

Thanks, Dennis. I knew about the different levels, but wasn't aware that
the jobs had different titles.

--
- Stephen Fuld
e-mail address disguised to prevent spam


From: jsavard on
John Dallman wrote:
> Personally, being a software person, I'd consider P4 and C2D to be
> significantly different implementations of the same basic architecture.
> However, that view probably isn't good for the egos of chip designers.

Implementations do have a structure, however.

Thus, modern chips are referred to as having a "decoupled
microarchitecture", which means that instructions are converted to a
different internal form before being used to tell the pipelines what to
do.

Back in the old days when we didn't have enough transistors to directly
implement mainframe type architectures at reasonable cost, we used
microcode. Obviously, a microcode instruction word has a form, and it's
as reasonable to call the facilities offered to the microprogrammer an
'architecture' as it is those offered to the programmer.

It isn't a question of ego. Even an implementation of a given ISA still
needs to be designed at the top level as well, and that top level of
design has much in common with designing the basics of a computer with
a new ISA.

John Savard

From: Dennis M. O'Connor on

"Terje Mathisen" <terje.mathisen(a)hda.hydro.com> wrote ...
> Dennis M. O'Connor wrote:
>> Architecture is, in general, what the programmers see, and
>> doesn't change too much from, say, a Pentium III to a Pentium IV
>> (except the new stuff (WNI) added to P4).
>>
>> Microarchitecture is the highest-level of the processor design.
>> The P3 and P4 micro-architoectures are very different; you'd
>> hardly know that they were the same ISA to look at them.
>
> Even for a (semi-)regular programmer microarchitecture can become very
> important!

For performance, yes. But if the architects and micro-architects
have done their jobs right, then program correctness will not
be affected by micro-architecture. I think we agree on that.

That said, it's hard to do something as complex as a
microprocessor completely right.
--
Dennis M. O'Connor dmoc(a)primenet.com