VOGONS


How you define a 586

Topic actions

First post, by feipoa

User metadata
Rank l33t++
Rank
l33t++

I was wondering how everyone here defines a 586 CPU?

To me, it is a CPU between a 486 and a 686 which must contain some design, or architectural enhancements above that of basic Intel 486DX4-WB.

In my mind, the CPUs are as follows:

Cyrix/IBM/ST 5x86
Cyrix MediaGX (the original; not MediaGXm or MediaGX1)
NexGen Nx586
AMD K5
Intel Pentium P5 intended for socket 4
Intel Pentium P24T intended for socket 3

Maybe Intel Pentium P54 intended for Socket 5? Perhaps all pre-MMX Pentium chips? Perhaps pre-MMX Cyrix 6x86 chips? What do you think - how does your mind try to define 586?

Plan your life wisely, you'll be dead before you know it.

Reply 1 of 54, by mwdmeyer

User metadata
Rank Oldbie
Rank
Oldbie

Greater than 33MHz FSB seems to be a pretty common theme for 586 chips. But what about the Cyrix 5x86 and AMD 5x86 (although that is really just a 486)? Hard to say.

Vogons Wiki - http://vogonswiki.com

Reply 2 of 54, by GL1zdA

User metadata
Rank Oldbie
Rank
Oldbie

A 586 is a Pentium/Pentium MMX. After the 486 the x86 CPU designs diverged considerably, so it's hard to define groups with similar design. If you try to group them, you will end up grouping them mostly by marketing names (5x86, Nx586, K5/6x86, K6, P6, WinChip C6). I don't think grouping them this way is of any practical use. It would make more sense to just group them by socket or by chipset.

getquake.gif | InfoWorld/PC Magazine Indices

Reply 3 of 54, by feipoa

User metadata
Rank l33t++
Rank
l33t++

Much forum talk is of limited practical use, but can still be fun to discuss various silly topics. This has been a classification which has always bothered me and I suspect others as well.

I was also thinking of the possibility that anything pre-Pentium Pro could be "586". This would then include Pentium P54C, Pentium MMX, Winchips, mP6, Cyrix 6x86/MX/MII, MediaGXm/GX1, AMD K6, K6-II, and not sure about K6-II+/III/III+

Plan your life wisely, you'll be dead before you know it.

Reply 4 of 54, by GL1zdA

User metadata
Rank Oldbie
Rank
Oldbie

You can try to make a table with properties like:
-IOPS
-FLOPS
-supported instruction set
-being superscalar
-being superpipelined
-having out-of-order execution
-using micro-ops

and then to classify, but it would be hard to choose a set of properties which make a 586.

getquake.gif | InfoWorld/PC Magazine Indices

Reply 5 of 54, by Scali

User metadata
Rank l33t
Rank
l33t

Technically, the Pentium is the 586.
Intel counts its CPUs by a 'family' flag. Since the Pentium (and later 486 CPUs), there is a CPUID instruction that returns a range of information from the CPU.
The 'family' field is '4' on a 486, '5' on a Pentium (or PMMX), and '6' on a Pentium Pro/2/3.
To me that says that Intel would have named the Pentium the '586' and the Pentium Pro/2/3 the '686', (and they may have done so internally, as the terms '586' and '686' do pop up here and there in documentation and code), if it wasn't for the fact that you can't trademark a number like that, and competitors could easily 'steal' the brandname and use it on their clones, as they have done for 386 and 486 previously.

Anything non-Intel that tries to call itself '586' is usually an overclocked 486 core. So to me it is a 486. A Pentium is a completely different architecture to a 486, with completely different performance characteristics (which is the reason why Intel introduced the CPUID instruction in the first place: so that software can determine on what kind of CPU they are running, and pick the optimal code path for that specific architecture).

http://scalibq.wordpress.com/just-keeping-it- … ro-programming/

Reply 6 of 54, by GPA

User metadata
Rank Newbie
Rank
Newbie

To me 5th gen CPU needs to be superscalar and CISC inside, so

Superscalar CISCs are:
Intel Pentiums (including MMX and P24T overdrive)
Cyrix 5x86, 6x86 and MII CPUs

IDT WinChip, AMD 5x86 are 4th gen CPUs, as they are not superscalar, they have single pipeline

AMD K5, K6, Nx586, rise MP6, Pentium Pro are 6th gen CPUs as they have internal RISC-like core and do not execute x86 CISC instructions themselves, they translate them to internal RISC-like instructions before execution

Reply 7 of 54, by brassicGamer

User metadata
Rank Oldbie
Rank
Oldbie
GL1zdA wrote:

-being superscalar

For me this is the key feature, which is why I would not consider a P5 to be a 586 as the architecture is fundamentally different from other chips called 586 (even though the instruction set is not). Although the Pentium would have been called the 586 if Intel had been allowed to trademark a number, I think giving their chip a name represents more than just aesthetics. All the 486 clones could rightly be called 486s because they were copies of Intel's microcode in some way. There is no such thing as a Pentium clone, so there is no such thing as a 'legitimate' 586 (as in a non Intel-made Pentium). The K5, although a 5th gen CPU is not a 586 because AMD gave it their own name.

So there are two ways of looking at it:

The Simple Way: any 5th gen x86 compatible CPU.

The Complicated Way: anything x86 compatible, but non-Intel, based on 486 microcode that came out after the DX4 clones but before each manufacturer's next gen CPU. In AMD's case this would include all CPUs after the DX4 and before the K5 (as this was the first CPU to be entirely developed in-house).

Check out my blog and YouTube channel for thoughts, articles, system profiles, and tips.

Reply 8 of 54, by Scali

User metadata
Rank l33t
Rank
l33t
brassicGamer wrote:

For me this is the key feature, which is why I would not consider a P5 to be a 586 as the architecture is fundamentally different from other chips called 586 (even though the instruction set is not).

But the Pentium predates all those other chips. So technically the '586'/5th generation architecture was defined by the Pentium.
Others started using the '586' name as a marketing ploy to try and make their CPUs appear like competitors of the Pentium (which everyone thought of as the '586' anyway... not in the least because Pentium is derived from the Greek 'penta', meaning 5).
Even though especially in the early days, they were essentially overclocked and rebranded 486-derivatives.

http://scalibq.wordpress.com/just-keeping-it- … ro-programming/

Reply 9 of 54, by Ampera

User metadata
Rank Oldbie
Rank
Oldbie
mwdmeyer wrote:

Greater than 33MHz FSB seems to be a pretty common theme for 586 chips. But what about the Cyrix 5x86 and AMD 5x86 (although that is really just a 486)? Hard to say.

My DX4-100 has a 40mhz FSB (I run it at 120Mhz OC)

Reply 10 of 54, by brassicGamer

User metadata
Rank Oldbie
Rank
Oldbie
Scali wrote:

But the Pentium predates all those other chips. So technically the '586'/5th generation architecture was defined by the Pentium.

Technically, yes, but only in the sense that Intel were the first to have a 5th gen CPU on the market. In reality the Pentium was never referred to as a 586 - even before it was dubbed the Pentium it was known in the press as the P5, so this is why I would not call it a '586' - it was so fundamentally different from the 486.

A 586 should be anything that could be considered an 'evolution' of the 486 - the Pentium was not by any means.

Scali wrote:

Even though especially in the early days, they were essentially overclocked and rebranded 486-derivatives.

Exactly. So either we call anything post-486, but socket 3 compatible, a 586 (as anything after that had its own name e.g. K5), or anything truly 5th-gen, post-Socket 3, and non-Intel a 586 (such as the K5). But definitely not the Pentium.

I think we need a Venn diagram...

Check out my blog and YouTube channel for thoughts, articles, system profiles, and tips.

Reply 11 of 54, by Scali

User metadata
Rank l33t
Rank
l33t
brassicGamer wrote:

Technically, yes, but only in the sense that Intel were the first to have a 5th gen CPU on the market. In reality the Pentium was never referred to as a 586 - even before it was dubbed the Pentium it was known in the press as the P5, so this is why I would not call it a '586'

I beg to differ:
http://www.informit.com/articles/article.aspx … 30978&seqNum=29
http://www.iptegrity.com/index.php/published- … r-of-microchips

It seemed like quite a surprise to the press when the Pentium name came up. And as you can see in the second link, it was a recent development, resulting from a lawsuit over AMD's 386 and 486 clones. So Intel only found out that they couldn't claim the unique rights to '586' or '80586' when the Pentium was already years in development.

brassicGamer wrote:

it was so fundamentally different from the 486.

The 286 was also fundamentally different from the 8086 and 186 (much faster execution core, and new protected mode), and the 386 was fundamentally different from the 286 (entirely new 32-bit protected mode, pipelined execution). The 486 again was fundamentally different (more pipelining, integrated L1 cache, integrated CPU).

brassicGamer wrote:

A 586 should be anything that could be considered an 'evolution' of the 486 - the Pentium was not by any means.

See above, the precendent Intel set with the earlier x86 models certainly isn't one of 'evolution'.

http://scalibq.wordpress.com/just-keeping-it- … ro-programming/

Reply 12 of 54, by Ampera

User metadata
Rank Oldbie
Rank
Oldbie

TBH I brand anything that says it's a 586 as a 586. There is nothing else you can say, if you're not gonna call something named 586 a 586, then what are you gonna call it? And it's stupid to call something not named 586 a 586.

Reply 13 of 54, by brassicGamer

User metadata
Rank Oldbie
Rank
Oldbie
Scali wrote:
I beg to differ: http://www.informit.com/articles/article.aspx … 30978&seqNum=29 http://www.iptegrity.com/index.php/published- … […]
Show full quote
brassicGamer wrote:

Technically, yes, but only in the sense that Intel were the first to have a 5th gen CPU on the market. In reality the Pentium was never referred to as a 586 - even before it was dubbed the Pentium it was known in the press as the P5, so this is why I would not call it a '586'

I beg to differ:
http://www.informit.com/articles/article.aspx … 30978&seqNum=29
http://www.iptegrity.com/index.php/published- … r-of-microchips

It seemed like quite a surprise to the press when the Pentium name came up. And as you can see in the second link, it was a recent development, resulting from a lawsuit over AMD's 386 and 486 clones. So Intel only found out that they couldn't claim the unique rights to '586' or '80586' when the Pentium was already years in development.

Hmm... somehow you are inadvertently proving my point for me 😉

The first link states the CPU name as P5 and only puts 586 in brackets, I believe, to make it clear to the lay reader that this is the next generation CPU but no the official name. And I'll simply quote from the second link:

(It is not called the 80586 because last year when Intel was suing a rival manufacturer, AMD, for selling chips called 80386s, a judge ruled that unlike a name, a number cannot be copyrighted or trademarked.)

No matter why it was called the Pentium, it was never formally called the 586 by anyone 'in the know'.

Scali wrote:

The 286 was also fundamentally different from the 8086 and 186 (much faster execution core, and new protected mode), and the 386 was fundamentally different from the 286 (entirely new 32-bit protected mode, pipelined execution). The 486 again was fundamentally different (more pipelining, integrated L1 cache, integrated CPU).

On a purely technical note protected mode was completely flawed on the 286 which created significant nervousness among OEMs. As a result, 8088-based systems probably outsold 286 both after it was released and over its entire lifetime so, aside from late clones, the 286 is pretty much a non-CPU in my eyes. That aside, the 386 was definitely a revolution, I would not dispute that. My point is that all the competing chips were clones and therefore any CPU of that generation was a 'legit' 386. On that basis, the Pentium is a generation of its own and could only be called P5 or Pentium, but not 586. There is no other legit Pentium. Only other manufacturers could or would call their chip a 586 because they weren't clones - they were similar, but each was fundamentally different in some way.

Scali wrote:
brassicGamer wrote:

A 586 should be anything that could be considered an 'evolution' of the 486 - the Pentium was not by any means.

See above, the precendent Intel set with the earlier x86 models certainly isn't one of 'evolution'.

Okay then let's look at the scenario where Intel were successful in taking ownership of the 586 name: no one else would be able to call their chip a 586 and the press probably wouldn't get away with it either given Intel's legal oompf, so only Intel's chip would be called a 586. I'm just trying to illustrate that, until the Pentium happened, everything else was a Intel clone. It's nothing to do with the difference between the i486 or the P5 and all to do with the fact that nothing else was a Pentium.

Ampera wrote:

TBH I brand anything that says it's a 586 as a 586. There is nothing else you can say, if you're not gonna call something named 586 a 586, then what are you gonna call it? And it's stupid to call something not named 586 a 586.

I'm inclined to go along with this for the sake of simplicity!

Check out my blog and YouTube channel for thoughts, articles, system profiles, and tips.

Reply 14 of 54, by elianda

User metadata
Rank l33t
Rank
l33t

I think the 586 naming related to the Pentium, mainly because the press expected this name. And 686 to Pentium Pro.
Non-Intel CPUs are then classified according to their CPU features in comparison to the Pentium or PPro. And often it is just partial, as Non-Intel CPUs implement only some Pentium/PPro features.

Retronn.de - Vintage Hardware Gallery, Drivers, Guides, Videos. Now with file search
Youtube Channel
FTP Server - Driver Archive and more
DVI2PCIe alignment and 2D image quality measurement tool

Reply 15 of 54, by Scali

User metadata
Rank l33t
Rank
l33t
brassicGamer wrote:
Hmm... somehow you are inadvertently proving my point for me ;) […]
Show full quote

Hmm... somehow you are inadvertently proving my point for me 😉

The first link states the CPU name as P5 and only puts 586 in brackets, I believe, to make it clear to the lay reader that this is the next generation CPU but no the official name. And I'll simply quote from the second link:

(It is not called the 80586 because last year when Intel was suing a rival manufacturer, AMD, for selling chips called 80386s, a judge ruled that unlike a name, a number cannot be copyrighted or trademarked.)

No matter why it was called the Pentium, it was never formally called the 586 by anyone 'in the know'.

I don't know how you get that from these articles that both clearly state 586.
It was the '586' to everyone because that's what people expected, including Intel. It didn't become 'Pentium' or 'P5' until the judge made that particular ruling.
You initially said:
"In reality the Pentium was never referred to as a 586 - even before it was dubbed the Pentium it was known in the press as the P5"

'In the press' is not formally, but the press did indeed refer to it as 586 or 80586 before the Pentium or P5 names were eventually coined.
Examples:
https://books.google.nl/books?id=gFAEAAAAMBAJ … l%20586&f=false
https://books.google.nl/books?id=fpQP3e54P-gC … l%20586&f=false
https://books.google.nl/books?id=f1AEAAAAMBAJ … l%20586&f=false

brassicGamer wrote:

On a purely technical note protected mode was completely flawed on the 286

Which has absolutely nothing to do with the topic at hand.

brassicGamer wrote:

My point is that all the competing chips were clones and therefore any CPU of that generation was a 'legit' 386.

There never were 'legit' clones of the 386.
Intel's second-source license only covered 8088 through 286.
There was no clone of the 386 during its generation. However, when Intel had already launched its 4th generation 486, AMD and some others started to reverse-engineer and clone the 386, and sell it as a '386'.
Not 'legit', but they were the same architecture.

brassicGamer wrote:

There is no other legit Pentium.

There is no other legit 386 or 486 either.
I don't understand this criterion.

brassicGamer wrote:

Only other manufacturers could or would call their chip a 586 because they weren't clones - they were similar, but each was fundamentally different in some way.

The only reason they weren't clones was because Intel shut down cloning with the AMD lawsuit.
So it was no longer the same playfield.
If it was, I'm 100% sure that every clone maker would just go the easy way and do a 100% carbon-copy of the Pentium circuit, as they did before.

brassicGamer wrote:

Okay then let's look at the scenario where Intel were successful in taking ownership of the 586 name: no one else would be able to call their chip a 586 and the press probably wouldn't get away with it either given Intel's legal oompf, so only Intel's chip would be called a 586. I'm just trying to illustrate that, until the Pentium happened, everything else was a Intel clone. It's nothing to do with the difference between the i486 or the P5 and all to do with the fact that nothing else was a Pentium.

It's a legal thing, as I said before. The timeline is like this:
8088-286: Official second-source licensing, therefore everyone was allowed to use the same designs and trademarks.
386-486: No second-source license in-place, so manufacturers started reverse-engineering the CPUs themselves, so they could still sell their own 'copies'. This is illegitimate of course.

The 386 cloning started at about the time that Intel had launched the 486, and started work on the Pentium.
So all the lawsuits against AMD and others were ongoing at the time Intel was working on the Pentium.
Somewhere in 1991, AMD and Intel finally finished their legal battle, and AMD could finally get their 386 clones on the market (after having to replace the copied microcode with a clean-room reimplemented version, but Intel could not enforce trademark rights on the 386 name).
This changed everything, both Intel's naming scheme, and also the approach that other x86-manufacturers would take. They knew that they'd get tied up in court for years everytime they'd downright clone an Intel CPU. That was not a viable business model. So they had to start designing their own.
Other factors could include that it became increasingly difficult to reverse-engineer and clone the chips as they got more complex.

But the name? Hardly.

http://scalibq.wordpress.com/just-keeping-it- … ro-programming/

Reply 16 of 54, by feipoa

User metadata
Rank l33t++
Rank
l33t++
GPA wrote:
To me 5th gen CPU needs to be superscalar and CISC inside, so […]
Show full quote

To me 5th gen CPU needs to be superscalar and CISC inside, so

Superscalar CISCs are:
Intel Pentiums (including MMX and P24T overdrive)
Cyrix 5x86, 6x86 and MII CPUs

IDT WinChip, AMD 5x86 are 4th gen CPUs, as they are not superscalar, they have single pipeline

AMD K5, K6, Nx586, rise MP6, Pentium Pro are 6th gen CPUs as they have internal RISC-like core and do not execute x86 CISC instructions themselves, they translate them to internal RISC-like instructions before execution

I do not believe the Cx5x86 is superscalar; Cyrix removed the second integer pipeline to reduce cost, power, and complexity.

The increased complexity, transistor count, and power consumption of superscalar designs led Cyrix engineers to re-examine the benefits of the superscalar approach.
A key lesson from both fifth- and sixth-generation designs, however, is that inherent parallelism is most easily exploited through the use of decoupled units within the processor.

The Cx5x86 does have a decoupled load/store unit, which the article hits at some kind of multi-tasking capabilities "load/store unit capable of managing concurrent operations..."

The pipelined load/store unit is capable of managing concurrent operations and of processing loads and stores out of order while maintaining a three-deep load queue and four-deep store queue.

I believe the i486 has a 5-stage pipeline, while the Cx5x86 is 6-stage. Cyrix calls this "superpipelined", probably to confuse readers into think it is superscaler.

You are correct in that the original IDT Winchip was not superscaler, but the Winchip2 documentation mentions that the Winchip2 is superscaler.

Seems like we could benefit from a table of features for each CPU then take a channel survey for which category each CPUs falls into: 486, 586, 686.

Plan your life wisely, you'll be dead before you know it.

Reply 17 of 54, by brassicGamer

User metadata
Rank Oldbie
Rank
Oldbie
Scali wrote:

This changed everything, both Intel's naming scheme, and also the approach that other x86-manufacturers would take. They knew that they'd get tied up in court for years everytime they'd downright clone an Intel CPU. That was not a viable business model. So they had to start designing their own.
Other factors could include that it became increasingly difficult to reverse-engineer and clone the chips as they got more complex.

This I agree with. I've already said there are two ways one can choose to view the 586 issue:

a) any 5th gen x86
b) any non-Intel, pre 5th gen, socket 3 CPU

My use of the term 'legit' was in the context of them being clones rather than imitators in that an AMD 386 is directly comparable to an i386 and could even be called 'the same chip', where the architectural differences between the K5 and the Pentium make them compatible and similar, but not 'the same chip'.

I don't think it's going to be possible to 'prove' what is or isn't a 586 here, but it's interesting to see the breadth of opinions ranging to the very simple (i.e. based on naming) to the debatable (based on classification). I'm going with option b).

Check out my blog and YouTube channel for thoughts, articles, system profiles, and tips.

Reply 18 of 54, by GPA

User metadata
Rank Newbie
Rank
Newbie
feipoa wrote:
I do not believe the Cx5x86 is superscalar; Cyrix removed the second integer pipeline to reduce cost, power, and complexity. […]
Show full quote

I do not believe the Cx5x86 is superscalar; Cyrix removed the second integer pipeline to reduce cost, power, and complexity.

The increased complexity, transistor count, and power consumption of superscalar designs led Cyrix engineers to re-examine the benefits of the superscalar approach.
A key lesson from both fifth- and sixth-generation designs, however, is that inherent parallelism is most easily exploited through the use of decoupled units within the processor.

The Cx5x86 does have a decoupled load/store unit, which the article hits at some kind of multi-tasking capabilities "load/store unit capable of managing concurrent operations..."

The pipelined load/store unit is capable of managing concurrent operations and of processing loads and stores out of order while maintaining a three-deep load queue and four-deep store queue.

I believe the i486 has a 5-stage pipeline, while the Cx5x86 is 6-stage. Cyrix calls this "superpipelined", probably to confuse readers into think it is superscaler.

Thanks. I didn't know that!
Cx5x86 goes to Gen 4 then. Extra pipeline stage is hardly a benefit by itself, an extra stage would probably allow more complex instruction management, but nothing like concurrent execution anyway.

feipoa wrote:

Seems like we could benefit from a table of features for each CPU then take a channel survey for which category each CPUs falls into: 486, 586, 686.

That's indeed a good idea.

Reply 19 of 54, by Scali

User metadata
Rank l33t
Rank
l33t
brassicGamer wrote:

This I agree with. I've already said there are two ways one can choose to view the 586 issue:

a) any 5th gen x86
b) any non-Intel, pre 5th gen, socket 3 CPU

Well, clearly there is at least a third option:
c) The unofficial name of the Intel 5th gen CPU (Pentium).
The above links have shown that the name '586' was used to refer to the Intel 5th generation chip which eventually became known as the Pentium, which predates any use of the term '586' from any other manufacturers.

brassicGamer wrote:

My use of the term 'legit' was in the context of them being clones rather than imitators in that an AMD 386 is directly comparable to an i386 and could even be called 'the same chip', where the architectural differences between the K5 and the Pentium make them compatible and similar, but not 'the same chip'.

I think this is exactly the point I also made earlier:
Everything changed.
Prior to the Pentium, 'generation' was equivalent to 'x86 name'.
So you had a simple 1:1 mapping:
First generation: 8088/8086/80186
Second generation: 286
Third generation: 386
Fourth generation: 486

Anything non-Intel was either an official second-source product, or an illegitimate carbon-copy, but for all intents and purposes, 'the same chip'.
After that, things changed, and 'generations' became somewhat meaningless.
Eg, an Athlon is considered 7th generation, like the Pentium 4. Technically however, the Athlon is nearly identical to a Pentium Pro/2/3, which is 6th generation.
Likewise, most CPUs marketed as '586' were actually close relatives of the 4th generation 486. But then there's gray areas.
I suppose the obvious conclusion is that there's no proper definition for what a '586' is or isn't. It is used in many different contexts, to mean many different things.
For me personally, option C is the 'natural choice', since I was actively following the industry back then, and read those magazines, and the first few years of '586', it could mean only one thing: Intel's upcoming 5th generation CPU. Since that name never became the official product name, others 'borrowed' it for marketing purposes. And marketing is always one big gray area.

http://scalibq.wordpress.com/just-keeping-it- … ro-programming/