EmbeddedRelated.com
Forums
The 2024 Embedded Online Conference

x86 architecture concepts

Started by Mouarf February 23, 2005
On Wed, 23 Feb 2005 20:11:09 +0000, Vadim Borshchev wrote:
> On Wed, 23 Feb 2005 19:28:01 +0100, Mouarf <moi@chezmoi.fr> wrote: > >> You mean that the only way for non Intel processors (AMD's one, Crusoe, >> Geode) to be called x86 is to have the same instruction set and main >> registers as Intel's x86? > > Yes. If it looks like x86, walks like x86 and quacks like x86 - it is x86 > :) All competitors' (AMD etc.) processors can execute the binary code for > Intel's x86. *How* they do it internally -- might be completely different. > > >> Wasn't there any patent on the Intel x86 instruction set that did not >> allow any other company to build x86 processors? > > No, IMHO.
According to my own, dim, memory, history says that there were indeed several licencing-related restrictions and patent portfolios involved. AMD was granted licences back in the day (8086 and 8088, or maybe even 8085-vintage) when "second sources" had to be available before anyone would buy a part. I don't think that they were the only ones to get licences for that reason. IBM got licences in order to build (I think) the 386sx or some such. Transmeta and the originators of the Geode (wasn't always National Semiconductor: they bought it from ?Cirix?) get to build their chips because they use IBM's fab facilities, and therefore come under IBM's licence agreements. Or so I've read. Cheers, -- Andrew
"CBFalconer" <cbfalconer@yahoo.com> wrote
> Without that decision [nominal 8080 compatability] > we wouldn't have the Microsoft/Gates monopoly > sucking at us today.
Like the man said: Grant Edwards wrote:
> It was a horrible decision for which the personal > computer industry has suffered immeasurably > for the past 20 years.
My prejudices come from a design implemented first in 68000 and then re-designed in 8086. As a result my conclusion was the 8086 architecture, though somewhat weird, turned out to be, oh let us say, "useful." The 68000 was left with most of its registers unused. The tragedy of the PC is that IBM didn't take Intel's iRMX operating system and PLM/86 and instead went to a scheming little college drop-out who took them blind and saddled them with kinder spiel technology. iRMX was multi-user, networked and password secure from the get-go. PLM/86 and the 8086 were designed to go together -- like C only makes sense on a PDP-11 (Oh, I am going to hear howls for that one). PLM did have it's problems: it's ability to handle arrays was ROTFL - the _language_ addressed data only as far as the 8086 could address data in one instruction - an array of structures with arrays as members of the structures. 3-d arrays, never heard of them ... And iRMX was slow, really slow. -- Nicholas O. Lindan, Cleveland, Ohio Consulting Engineer: Electronics; Informatics; Photonics. To reply, remove spaces: n o lindan at ix . netcom . com psst.. want to buy an f-stop timer? nolindan.com/da/fstop/
Grant Edwards wrote:
> On 2005-02-23, Hans-Bernhard Broeker <broeker@physik.rwth-aachen.de> wrote: > The "silly reason" is so that they can charge a higher price > for it. :)
I think the silly reason is so they won't kill off their meat and potato P4 chips. Recent Pentium M benchmarks are showing that the high end Pentium M (2.1 GHz) performs about as well as a 3.2 GHz P4 for 20% of the power. In response, Intel charges more than 2x as much for the low power part. Kelly
"CBFalconer" <cbfalconer@yahoo.com> wrote
>>Without that decision [nominal 8080 compatability] >>we wouldn't have the Microsoft/Gates monopoly >>sucking at us today.
It only sucks at you if you let it. Alternatives exist for just about any Microsoft product. Many of the alternatives are pretty good. Many suck worse than the Windows version. >>It was a horrible decision for which the personal >>computer industry has suffered immeasurably >>for the past 20 years. "Labored", perhaps, but "suffered"? You want to talk suffering, consider the minicomputer and mainframe computer folks over the last 20 years. Nicholas O. Lindan wrote:
> The tragedy of the PC is that IBM didn't take Intel's > iRMX operating system and PLM/86 and instead went to > a scheming little college drop-out who took them blind > and saddled them with kinder spiel technology.
Seems to me that IBM and Microsoft both did quite well based on that business decision. Could they have made better (more elegant) technical decisions? Certainly. But it's not clear that they would have made more money with more elegant technology. Alternatives have always existed, since IBM offered CPM-86 and UCSD P-System in the catalog along with PC/MS-DOS. UCSD was non-starter for business folks, and DRI priced themselves out of the market. MS-DOS was good enough for Visicalc and WordStar, and the rest is history. Technical elegance and good business intersect too rarely. Kelly
Vadim Borshchev wrote:
> On Wed, 23 Feb 2005 19:28:01 +0100, Mouarf <moi@chezmoi.fr> wrote: > >> You mean that the only way for non Intel processors (AMD's one, >> Crusoe, Geode) to be called x86 is to have the same instruction >> set and main registers as Intel's x86? > > Yes. If it looks like x86, walks like x86 and quacks like x86 - > it is x86 :) All competitors' (AMD etc.) processors can execute > the binary code for Intel's x86. *How* they do it internally -- > might be completely different. > >> Wasn't there any patent on the Intel x86 instruction set that >> did not allow any other company to build x86 processors? > > No, IMHO.
I believe there were copyrights asserted on the instruction mnemnonics. However they were licensed to AMD early on, along with the dies etc. to build the earlier x86s. That die license (for 2nd sourceing) was pulled about the time of the 286 (or was it 386?)). However I believe that process allowed the use of the mnemnonics forever. -- "If you want to post a followup via groups.google.com, don't use the broken "Reply" link at the bottom of the article. Click on "show options" at the top of the article, then click on the "Reply" at the bottom of the article headers." - Keith Thompson
Mouarf wrote:
> "Kelly Hall" <khall@acm.org> schrieb im Newsbeitrag > news:Un2Td.6505$OU1.1819@newssvr21.news.prodigy.com... >>Mouarf wrote: >>>according to you, x86 architecture is only an instruction set?
>>
>>Given that an instruction set defines all of the visible registers and >>operations, what else do you need to define an architecture?
>
> visible registers and operations refers to software side, is there a > hardware side hidden in the word "architecture"?
Yes. The registers, instruction set, memory addressing method, and I/O design make up the programmers' model. That is one level of processor architecture. It has a major influence on the hardware design, but doesn't totally determine it. You noted different implementations having different performance and power tradeoffs. IBM exposed the separation when they defined the System 360 architecture in the 1960s, then implemented several computer models using very different hardware designs. Microprogramming allowed them to implement machines with a wide range of performance, yet executing the same instruction set. Today there is are many ways to implement a given programmers' model on all but the bottom-end processors. You might call this the hardware architecture for the machine. Thad
On 2005-02-23, Mouarf <moi@chezmoi.fr> wrote:

> In brief, my first question on this topic was more a vocabulary question > (and certainly badly exposed considering the reaction of other readers) > because "x86" word is used almost every day but only few people know what > this exactly refers to. That's why I also tried to understand what the > correct definition of an "architecture" is (some colleagues told me that > "architecture" only refers to the memory organisation around the &#4294967295;C core, > others say that it depends on instruction set, others even senior have no > clear idea....).
It means different things to different people. To software people it means the instruction set and addressing range. To hardware people, it may include things like the bus structure. -- Grant Edwards grante Yow! Will this at never-ending series of visi.com PLEASURABLE EVENTS never cease?
On 2005-02-23, CBFalconer <cbfalconer@yahoo.com> wrote:

>> Intel sacrificed all sorts of practical things to acheive that >> stupid, useless familiar-but-not-compatible relationship >> between the 8080 and the 8086. It was a horrible decision for >> which the personal computer industry has suffered immeasurably >> for the past 20 years. > > No, it was a decision that produced an instant set of > applications ported from CP/M via a fairly simple source code > translation mechanism, and thus made the IBM PC popular back > in the early '80s.
I'm not buying that arguement. From what I knew, most CP/M applications were just re-written by hand. I never met anybody who had used the mythical 8080 -> 8086 assembly language translator. Since there was a CP/M for the 68K, I don't see how the pseudo-backwards comopatibility with the 8086 made much difference.
> Without that it would have competed on equal grounds with such > things as the Motorola 68000, the National IMPS, the Zilog > Z8000, etc. All but the 68000 are now gone, and even that is > on its last legs. > > Without that decision we wouldn't have the Microsoft/Gates > monopoly sucking at us today.
That's for sure. -- Grant Edwards grante Yow! Look DEEP into the at OPENINGS!! Do you see any visi.com ELVES or EDSELS... or a HIGHBALL??...
CBFalconer wrote:

> Vadim Borshchev wrote: >> On Wed, 23 Feb 2005 19:28:01 +0100, Mouarf <moi@chezmoi.fr> wrote: >> >>> You mean that the only way for non Intel processors (AMD's one, >>> Crusoe, Geode) to be called x86 is to have the same instruction >>> set and main registers as Intel's x86? >> >> Yes. If it looks like x86, walks like x86 and quacks like x86 - >> it is x86 :) All competitors' (AMD etc.) processors can execute >> the binary code for Intel's x86. *How* they do it internally -- >> might be completely different. >> >>> Wasn't there any patent on the Intel x86 instruction set that >>> did not allow any other company to build x86 processors? >> >> No, IMHO. > > I believe there were copyrights asserted on the instruction > mnemnonics. However they were licensed to AMD early on, along with > the dies etc. to build the earlier x86s. That die license (for 2nd > sourceing) was pulled about the time of the 286 (or was it 386?)).
It was pulled when pentium (586) came out. AMD made 8086, 286, 386, 486 (intel design). When intel made pentium, AMD could not catch up, so AMD made those 100MHz and 133MHz 486's. AMD's own design, 586, does not work fast enough to compete with Intel Pentium. So AMD had to buy Nexgen (founded by former employees from Intel), and made the new Nexgen processor 686. Thats when AMD started to catch up. vax, 9000
> However I believe that process allowed the use of the mnemnonics > forever. >
CBFalconer wrote:

> Grant Edwards wrote: >> > ... snip ... >> >> Nobody gave a shit that the 8086 mnemonics and register layout >> were reminiscent of (but incompatible with) the 8080. But, >> Intel sacrificed all sorts of practical things to acheive that >> stupid, useless familiar-but-not-compatible relationship >> between the 8080 and the 8086. It was a horrible decision for >> which the personal computer industry has suffered immeasurably >> for the past 20 years. > > No, it was a decision that produced an instant set of applications > ported from CP/M via a fairly simple source code translation > mechanism, and thus made the IBM PC popular back in the early > '80s. Without that it would have competed on equal grounds with > such things as the Motorola 68000, the National IMPS, the Zilog > Z8000, etc. All but the 68000 are now gone, and even that is on > its last legs. > > Without that decision we wouldn't have the Microsoft/Gates monopoly > sucking at us today.
I agree with you with two arms and two legs up. The compatibility desicion Intel made was brilliant. Just look at i432, i860 and IA64. i432 died before it released. i860 was not successful at all, found its place in embedded devices, or intel super computers only. IA64 almost killed Intel. On the other hand, AMD got a new breath after it designed AMD64, the latest family member of X86. Think what would have happened if Zilog designed the Z180 other than Z8000 in 1979, or Motorola designed an extension of 6800 otherthan the 68000 in 1979... They would have been able to compete better. vax, 9000

The 2024 Embedded Online Conference