Slashdot Mirror


Intel Potentially Reverse-Engineered AMD64

icypyr0 writes "Tom Halfhill, an analyst for In-Stat/MDR claims that due to similiarities in the instruction sets of AMD64 chips and the new 64-bit extensions for Intel Xeons, it is clear that Intel reverse-engineered the AMD64. However, due to the fact that the new Xeon is not an exact copy of the AMD64's microarchitecture, Intel has not broken the law. This very tactic has actually been used by firms such as AMD in the past to catch up to Intel."

104 of 324 comments (clear)

  1. AMD and Intel have a cross-licencing agreement. by norculf · · Score: 5, Informative

    So reverse engineering is not a problem in this case. In fact, it's not unlikely that AMD simply handed them the documentation.

    1. Re:AMD and Intel have a cross-licencing agreement. by athakur999 · · Score: 5, Interesting

      Barring that, Intel could have simply browsed to AMD's web page and downloaded it themselves.

      In Slashdot Utopia we could mark this article as "-1, Yellow Journalism".

      --
      "People that quote themselves in their signatures bother me" - athakur999
    2. Re:AMD and Intel have a cross-licencing agreement. by Anonymous Coward · · Score: 3, Informative

      Or maybe, just maybe, Intel simply downloaded the tech docs off AMDs website..

      http://www.amd.com/us-en/Processors/TechnicalResou rces/0,,30_182_739,00.html

      Whoa..

    3. Re:AMD and Intel have a cross-licencing agreement. by Anonymous Coward · · Score: 4, Insightful

      The real crime isn't the reverse engineering. Its that both intel and AMD are still supporting the x86 architecture. x86 is like a dog that should have been put down a long time ago. I remember 10 years back looking at VAX architeture and being amazed that intel would continue without multi-purpose registers. It truly is a pain to do any assembly programming on the x86. The only excuse that intel had to continue with the x86 was that optimizing compilers weren't good enough for them to reimplement a RISC processor. The times have changed, and so should their microprocessor designs.

    4. Re:AMD and Intel have a cross-licencing agreement. by Homology · · Score: 5, Informative
      So reverse engineering is not a problem in this case. In fact, it's not unlikely that AMD simply handed them the documentation.

      Security wise, it is bad that Intel decided not to copy the NX (No Excute on pages) part as well.The NX is not an AMD invention, of course, but it's very nice that they included it. And who uses this? OpenBSD developers was not very happy with the Intel decision : they actually recommend buying AMD before Intel.

    5. Re:AMD and Intel have a cross-licencing agreement. by Anonymous Coward · · Score: 2, Interesting

      Yes but the point that article is making is that they didn't (and there seems to be pretty good proof of that as far as i'm concerned). Could the reason for the reverse engineering be that intel started work on it some time before the documentation became publicy available?

      Anyways - Intel's behaviour is increasingly erratic.

    6. Re:AMD and Intel have a cross-licencing agreement. by FatRatBastard · · Score: 5, Insightful

      {cough cough cough} Itanium. And look how well that turned out.

      There are options out there my friend (Power, Sparc, ARM... I happen to adore my power based macs). Its not like anyone is shoving the X86 arch. down our throat. Intel, in fact, has been trying to shove the good ship Itanic down the high end's throat and the high end told him to piss off. Face facts, technology doesn't always trump economics. Get over it (and go buy a Mac if you hate the x86 so much).

    7. Re:AMD and Intel have a cross-licencing agreement. by scrytch · · Score: 4, Funny

      > In Slashdot Utopia we could mark this article as "-1, Yellow Journalism".

      Has anyone submitted a patch to slash for story moderation? At least then the editors can't claim the code isn't there...

      --
      I've finally had it: until slashdot gets article moderation, I am not coming back.
    8. Re:AMD and Intel have a cross-licencing agreement. by Sivar · · Score: 3, Insightful
      Barring that, Intel could have simply browsed to AMD's web page and downloaded it themselves.
      There's a rather large difference between having a set of programmer's manuals and having the transistor-level blurprints of the logic implementation.
      --
      Computer Science is no more about computers than astronomy is about telescopes. --E. W. Dijkstra
    9. Re:AMD and Intel have a cross-licencing agreement. by turgid · · Score: 4, Interesting
      Security wise, it is bad that Intel decided not to copy the NX (No Excute on pages) part as well.The NX is not an AMD invention, of course, but it's very nice that they included it.

      Yes, but intel needs something to differentiate the Xeon from the itanic i.e. they can claim you need to buy an intanic to get this high-tech, innovative intel security feature. Many corporates still don't buy AMD because there hasn't been big name backing until now. intel hopes that it can still market its way past some peoples' ignorance.

    10. Re:AMD and Intel have a cross-licencing agreement. by Neophytus · · Score: 2, Insightful

      The problem is that all windows apps which people take for granted as working since 1994 would break unless software (slow) or hardware (bloat) emulation were integrated into the new systems. Windows could be recompiled by MS, but what about Jim the Tech's miricle tool made in '96 and unsupported ever since?

    11. Re:AMD and Intel have a cross-licencing agreement. by Waffle+Iron · · Score: 5, Insightful
      It truly is a pain to do any assembly programming on the x86.

      So?

      The 99.9% of people writing apps in any langauge as abstract as C or higher don't have to worry about the CPU architecture. If it compiles and runs these languages at a price/performance ratio favorable to other CPUs, then nobody sould have a problem with it.

      The true runtime architecture of an X86 CPU (and most RISC chips as well) has been mostly unfathomable to humans since the Pentium Pro came out. The X86 instruction set is just a backwards-compatible abstraction that is used to logically specify what needs to be done. The chip transforms these instructions to something completely different at runtime. For example, X86 chips already do have dozens of the "multi-purpose" registers you're pining for; you just don't see them at the visible instruction set level. When you do "assembly programming" on a modern CPU, you're not much closer to the real hardware than you are writing in C.

    12. Re:AMD and Intel have a cross-licencing agreement. by alienw · · Score: 3, Interesting

      Two words: backwards compatibility. Nobody wants a processor that is not backwards compatible with current software, and nobody except OS programmers really cares what's inside the chip. If there was an actual demand for a better architecture, people would have switched to Alpha or PPC a long time ago.

    13. Re:AMD and Intel have a cross-licencing agreement. by Shurhaian · · Score: 5, Insightful

      However, that's largely irrelevant since it's not the same architecture anyway. This is reverse engineering in the most literal sense - taking a known set of responses and going backwards from it to a design that will yield the desired result. Analyzing the blueprints wouldn't be reverse engineering at all; it would actually be making a direct copy.

      --
      NB: YMMV. IANAL. Take the above with a grain of salt.
    14. Re:AMD and Intel have a cross-licencing agreement. by goodster · · Score: 4, Funny

      "OpenBSD developers was not very happy with the Intel decision..." Both of them? :)

    15. Re:AMD and Intel have a cross-licencing agreement. by John+Courtland · · Score: 4, Informative

      The x86-64 has 16 64-bit GP registers now. The instruction set isn't so bad if you get down to the microcode anyhow, most common instructions (MOV, ADD, INC, DEC) are executed in 1-2 clocks, and have since the 486. Yes there is a latency to decode the instructions but that's what pipelining is for.

      --
      Slashdot is proof that Sturgeon's Law applies to mankind.
    16. Re:AMD and Intel have a cross-licencing agreement. by Transcendent · · Score: 4, Insightful

      There's a rather large difference between having a set of programmer's manuals and having the transistor-level blurprints of the logic implementation.

      And if you did have the transistor level blueprints of the logic implementation, what exactly would you be reverse engineering?

    17. Re:AMD and Intel have a cross-licencing agreement. by nyteroot · · Score: 4, Informative
      Sorry, I'm afraid this time it's you that doesn't know what's going on.

      Since the Pentium Pro, Intel's IA32-based chips (and AMD's chips from a similar point in time I'm sure) have actually had to translate IA32 instructions into an even lower-level RISC-like instruction set before they were executed. At this point the IA32 instruction set no longer truly reflects the runtime architecture of an x86 CPU.

      --
      Ratio of replies to old sig content : replies to actual post content > 0.5. Sig changed.
    18. Re:AMD and Intel have a cross-licencing agreement. by FatRatBastard · · Score: 2, Interesting

      Like I said, that's an economic issue. As much as everyone shoots (somewhat deserved) arrows at the x86 arch. it continues to exist because of the legacy programs out there. Whether or not a lot of the problems are more percieved than actual as both AMD (much to their delight) and Intel (much to their chagrin) are finding the marketplace wants the 64 bit cludge to the x86 arch. not something totally different, regardless of how good it may be.

    19. Re:AMD and Intel have a cross-licencing agreement. by dfghjk · · Score: 2, Interesting

      The market has proven that you are wrong. You don't change instruction sets because the old ones aren't technically pleasing. Many have tried but none have succeeded in replacing x86 because they just haven't been compelling enough.

      Assembly language programming in general is difficult. x86 assembly not particularly more so than others, but instruction sets aren't designed with assembly program ease in mind. Try programming EPIC in assembly or the first generation MIPS.

    20. Re:AMD and Intel have a cross-licencing agreement. by Hoser+McMoose · · Score: 2, Interesting

      Please tell me WHAT is wrong with x86? Ok, some people don't like programming assembly for it, others love it (as one x86 assembly fan put it: "there's a perfect instruction to do exactly what you want no matter what it is"). Besides which assembly programming for high-end microprocessors really doesn't make much sense anymore except in very odd situations.

      No multi-purpose registers? x86-64 has 16 general purpose registers and 16 double-precision floating point registers (the latter capable of holding 2 DP or 4 SP floating point variables in vector mode if you so desire). Sure many other architectures have 32 of each type of register, but the difference isn't that significant.

      10 years ago Alpha was stomping all over x86 in raw number crunching, especially in floating point. Now the two fastest processors in the world for integer stuff are x86 and two of the top 4 for floating point as well. Relative to RISC chips x86 is doing BETTER now than it was 10 years ago, not worse.

    21. Re:AMD and Intel have a cross-licencing agreement. by Ninja+Programmer · · Score: 2, Interesting
      x86 is like a dog that should have been put down a long time ago.
      Except that these dogs outperform their contemporary RISC competition.

      It truly is a pain to do any assembly programming on the x86.
      Evidenced by the volume of x86 ASM source, as well as like a million assemblers that are available for it? x86 ASM has its warts but it has some unusual advantages as well (complex addressing, lock primitives, free implicit flag calculations, etc) RISC and VLIW/EPIC have not been convincing alternatives to x86, so I would posit that at the very least its very *difficult* to develop an instruction architecture that's really superior to x86.
    22. Re:AMD and Intel have a cross-licencing agreement. by YetAnotherGeekGuy · · Score: 3, Informative

      Itanium is hardly what I'd call RISC

      And neither would Intel. Its called EPIC, which is one step beyond VLIW (ok maybe only a half a step), which is one step beyond RISC, which is one step beyond CISC (x86).

      In fact the AMD/Intel cross-licensing may well be the most significant reason x86 has continued to be the dominant design for so long. The mutual co-opetition has served to make both offerings consistently better over time.

      What amazes me is that x86 has been so resilient (x86-64/EMT64 being the latest case in point). For 20+ years we've been hearing about the death of CISC, but all those predictions simply underestimated the ability of x86 to adapt to the new technologies. And the "religious" overselling of the philosophy of RISC and its "unique" benefits has also contributed. RISC, as implemented, was really more than just a reduced instruction set. The speed came as much from other architectural improvements. The superscallar, branch optimizations, register set expansion (through the huge x86 reorder buffer/retirement unit), and the march of computer architecture progress have all been co-opted by x86 which had the market share to afford to invest in the improvements.

      The other thing that the existence of the "AMD Intel cross license" comments above overlook is that that cross license does not extend to Itanium. So, while its OK for AMD and Intel to reverse engineer each other on the x86 (they essentially share an IP portfolio here), that does not apply to other architectures.

      --

      to the Engineer, the glass is neither half full nor half empty. Its just two times too big.
    23. Re:AMD and Intel have a cross-licencing agreement. by TheLink · · Score: 2, Interesting

      AMD released docs for the AMD64 stuff years back when it was x86-64.

      Year=1999 specs etc released
      http://www.amd.com/us-en/Weblets/0,,7832 _8366_7595 ~751,00.html

      Year=2000 _simulator_ released
      http://www.amd.com/us-en/Weblets/0,,7832 _8366_7595 ~7363,00.html

      That's plenty of time. IIRC AMD even invited Intel to join the x86-64 side.

      The issue is whether Intel needs a license. Maybe they indeed did a clean room implementation of AMD64. I'm not sure Intel can use that method to successfully avoid getting a license from AMD.

      AMD64 should do some marketing and branding of the stuff Intel didn't implement- the times are right for it.

      Actually HP selling Opteron servers is a bigger deal than this. It says many things. Maybe HP is feeling the 7 year itch, esp since the Itanic wasn't such a beautiful baby.

      --
    24. Re:AMD and Intel have a cross-licencing agreement. by ChrisMaple · · Score: 2, Funny
      The workers have nothing to lose but their chains.

      Dammit! I told you not to let the workers have any chains!

      --
      Contribute to civilization: ari.aynrand.org/donate
    25. Re:AMD and Intel have a cross-licencing agreement. by Lars+T. · · Score: 4, Informative
      Intel, AMD sign new licensing deal
      The two companies signed a 10-year patent-licensing deal, the fourth pact between the companies since 1976. The deal is retroactive to Jan. 1, when the previous agreement expired.
      Neither company needs a specific license to use one of the other's technologies (if it falls inside the limits of this deal of course), e.g. AMD doesn't need one to use (I)SSE (II(I)).
      --

      Lars T.

      To the guy who modded me down from perfect to terrible Karma - Apple haters still suck

    26. Re:AMD and Intel have a cross-licencing agreement. by hzoli · · Score: 2, Insightful
      The page you linked to (repeating here) contains only documentation regarding instructions and programming the processor, NOT the processor's architecture.
      FYI, the processor architecture *is* about instructions and programming, perhaps you have confused this with the micro-architecture, which describes a specific physical implementation of an architecture.
    27. Re:AMD and Intel have a cross-licencing agreement. by maraist · · Score: 2, Insightful

      So if you can make a CPU which emulates x86 code as fast as the competition, then go right ahead and try.

      The key is that software writers (other than assembly) don't care about hardware; they care about maximizing the number of customers. Customers want cheap, fast and good software and hardware. If most customers currently have x86, and it would cost more to develop for other platforms (think beta-testing on every type of hardware), then software makers can minimize costs, and expediate release dates by supporting only one platform. Since x86 is the historical basis, customers can mostly only purchase x86 software, so they maximize their utility by purchasing x86 hardware, and the cycle repeats.

      To introduce incompatible (or innefficient at backward emulation) hardware, customers will have a minimial initial set of commercial software that will run on it. So they won't purchase the new hardware unless their work-station/desktop will run nothing other than core utilities (OS MP software, for example), and thus there is no market for software writers.

      OS writers may love hardware enhancements, but they don't make the bulk of software demand. Video games, office software (ACT, exchange, visio, photoshop, Nero, etc) are limited to very vew platforms (MAC/x86), so you're giving up a lot, even with newer software.

      Apple had enough monopolistic pull in the MAC software world to make the hardware transition. Windows / Intel do not have such pull; how long did it take to migrate from DOS -> NT? And the irony is that OS/2 was not serious competition, so what did MS have to lose by going full protected mode win32 in the early days of win98? The reason is that they were trying to maximize their revenue stream, and I trust MS, of all companies, to know exactly how to do so.

      Here is what I would have suggested. AMD64 adds an entirely new operating mode of execution. This is identical to the Itanium x86-mode, EXCEPT that AMD kept the x86 instruction format. This reuses the I-decoder, and more importantly, garuntees compatible instruction formats. The Itanium SUCKS at running x86-code because there is an impedence mismatch between x86 and EPIC logical instruction units. The Itanium solves totally different problems than x86-assembly is asking the CPU to solve. If Itanium requires smart compilers talking it's exact langauge to operate efficiently, then running x86 is like being given driving directions in greek for a road in France when you're in New York. The only difference is that you happen to have the same logical output when you're done. To make matters worse, x86 compilers do all sorts of bizzar re-arrangements of code with the full knowledge that they're maximizing the concurrent execution and minimizing delays FOR THE PENTIUM IV. These bizzar arrangements are just line-noise to the Itanium which can in no way take advantage of the re-ordering, and often time is spend decoding and excecting the equivalent of noops.

      The point is that, any radical divergence, even by AMD64 from the core macro-op concepts are going to have likewise impedence mismatches for running legacy IA32 code. Still, I don't know why they didn't make all instructions 32bit aligned, and simply have seperate instruction decoders for 64 and 32bit instructions. They could have preserved the logical units, and given a HUGE performance boost.. But I haven't read enough AMD-64 details to know the motivations in this respect.

      --
      -Michael
  2. Good! by Futurepower(R) · · Score: 3, Insightful

    Good, because compatibility is everything.

  3. So... by Rick+Zeman · · Score: 2, Insightful

    ...in other words this isn't news.

    1. Re:So... by Rick+Zeman · · Score: 4, Funny

      You must be new here.

      You must not know how to read slashdot ID #'s.

    2. Re:So... by timeOday · · Score: 4, Insightful
      Intel playing catch-up to AMD IS big news, not because it's illegal (it isn't) but because it has always been the other way around.

      Granted, it doesn't mean AMD is the "market leader" (normally measured in $$$), nor even the overall technology leader, but being copied by Intel sure bolsters AMD's image.

    3. Re:So... by 1000StonedMonkeys · · Score: 4, Funny

      Everyone knows how slashdot ID #'s work.

      In a now famous episode of short sightedness, CmdrTaco said, "Slashdot will never need more than 640K IDs," and determined that slashdot IDs would count down from 640K and stop when they hit 0.

      Your ID of 15628 indicates both that you are new here, and that the end is near.

    4. Re:So... by Rick+Zeman · · Score: 2, Funny

      Whatever you say, newbie.

      I've been waiting for that....:-)

  4. umm yeah? by toast0 · · Score: 5, Insightful

    I haven't read the article (this is /.), but i would have expected they reverse engineered, or read the documentation for AMD64 to implement their x86-64 cause it's apparently very nearly the same ISA.

    Intel and AMD have a broad patent cross licensing agreement, so it's not a big deal.

  5. Something they left out... by LordK3nn3th · · Score: 4, Interesting

    ...Isn't it true that they left out the NX (no-execute?) bit, thus causing some compatibility issues?

    --

    ---
    Never criticize religion on Slashdot. You will be modded down for "Troll" no matter how factual it is.
    1. Re:Something they left out... by sirsnork · · Score: 2, Informative

      This is correct, the NX bit is missing from the Intel implementation

      --

      Normal people worry me!
    2. Re:Something they left out... by Anonymous Coward · · Score: 2, Informative

      No, not really. The NX flag is dealt with by the memory controller, which is not incorporated into Intel's processor (but is in Opteron/Athlon64), so it's hard to say whether it will be supported by Intel. That is, until the specs for the north-bridge are out.

      But given how MS bragg it as a security measure, I can take bets :-)

      Stephane

    3. Re:Something they left out... by l33t-gu3lph1t3 · · Score: 5, Interesting

      Intel had decided that the NX bit was best left for their Itanium line as a highend feature ;)

      --
      ------- "From bored to fanboy in 3.8 asian girls" ----------
    4. Re:Something they left out... by kasperd · · Score: 3, Interesting

      thus causing some compatibility issues?

      Shouldn't cause any major problems. Only the kernel have to deal with this when setting up page tables. Any correctly written program will work the same on both processors. What will be the difference is, that some buggy code and some security exploits will work only on Intel and not on AMD.

      --

      Do you care about the security of your wireless mouse?
    5. Re:Something they left out... by nester · · Score: 2, Informative
      The NX flag is dealt with by the memory controller

      no, it's handled by the mmu, which is on chip (and has been for many years on many different chips). the memory ctrler does nothing but access the ram chips.

  6. So? by cjthompson · · Score: 4, Insightful

    I don't get it. If they all do it, then this is a bit of a 'none story' right?

    1. Re:So? by Ralph+Yarro · · Score: 5, Funny

      I think we're supposed to be amazed that a big company did something that isn't illegal. Not sure though, that's the best I could get out of it.

      --

      The real Ralph Yarro posts as Anonymous Coward. Anyone else is an impostor.
  7. Copy-Cat. by Anonymous Coward · · Score: 5, Insightful

    "This very tactic has actually been used by firms such as AMD in the past to catch up to Intel."

    Of course. Although don't forget cross-licensing deals as well e.g. Pentium.

    The fact that Intel went to all this work simply shows that AMD made the better decision with it's architecture.

    1. Re:Copy-Cat. by BWJones · · Score: 4, Insightful

      I might remind everybody that this is exactly how Compaq made a name for themselves by reverse engineering the IBM PC, thus creating the Wintel based PC industry.

      --
      Visit Jonesblog and say hello.
    2. Re:Copy-Cat. by Jeremiah+Cornelius · · Score: 4, Interesting
      Uhhh...

      We had several years of "DOStel".

      Remember when 8086's and 80286's were made by everybody from Harris to NEC? DOS was the standard, and LIM 4 was the memory overlay spec. You could USE something goofy like NEC's 20MHz 8086 clone - when the Intel part topped off shy of 8 Mhz, and the 286 ran at 12MHz!

      The whole kit was nearly "off-the-shelf", except for the BIOS. This was what Compaq "clean-room" reverse engineered with such care.

      --
      "Flyin' in just a sweet place,
      Never been known to fail..."
  8. Reverse engineer ... instruction set?! by mentin · · Score: 5, Insightful

    In my vocabulary "to reverse engineer" means to find out something internal, hidden and protected. The article talks about "reverse engineering AMD instruction set", which is obviously public. This is called "copying", and has nothing to do with "reverse engineering"

    --
    MSDOS: 20+ years without remote hole in the default install
    1. Re:Reverse engineer ... instruction set?! by Sebastopol · · Score: 4, Insightful

      No, it's not. Reverse engineering would be me analyzing a few ml of Coca Cola, spectroscopy, fractional distillation, etc. to determine the chemical composition, and then synthesizing a new composition that mimics the resulting flavor of the Coke sample.

      -OR-

      coke could publish the recipe and I could make some at home combining vanilla, lemon and cinnamon.

      The former is reverse engineering, the later is what Intel did.

      --
      https://www.accountkiller.com/removal-requested
    2. Re:Reverse engineer ... instruction set?! by Anonymous Coward · · Score: 2, Interesting

      No, reverse engineering would be if they didn't know what the instruction set was, and they just applied inputs to AMD's CPU, and observed the outputs, and then made some suitable logic so that it would be the same for all the different input combinations.

      Intel didn't have to do anything like that; they already had the documentation, all the specs, just had to implement it. Humans probably didn't even implement it. Geez. No reverse engineering here.

    3. Re:Reverse engineer ... instruction set?! by Monkelectric · · Score: 2, Interesting
      It's a little more complicated then that. I used to write alot of asm code back when people still did that. And let me say this:

      It's very rare that the instruction set is the end of the story. There's alot of "gray area" that may or may not be documented and tons of undocumented instructions -- that was always the shtick with Intel. These gray areas need to be compatible as well. Hopefully AMD did things more straightforward.

      Although I can't believe they wouldn't provide documentation to Intel, this is a HUGE win for them.

      --

      Religion is a gateway psychosis. -- Dave Foley

    4. Re:Reverse engineer ... instruction set?! by RML · · Score: 4, Insightful

      Engineering is taking a specification and making a product from it.

      Reverse engineering is taking a product and making a specification for it.

      This is clearly an example of normal engineering.

      --
      Human/Ranger/Zangband
  9. License if Free by bstadil · · Score: 3, Interesting
    [Sarcasm]Yes this would be real clever on Intel's part. Much smarter than taking out a free license.

    I have not read the license but maybe deliberately breaking the compatibility may not be an option, and god forbid having your "innovations" stymied. [/sarcasm]

    --
    Help fight continental drift.
  10. Cross-licensing by l33t-gu3lph1t3 · · Score: 4, Informative

    Intel has cross-licensed X86 do death. I believe the terms of the deal state that Anyone can use x86, but any improvements they do to it are free for Intel to incorporate.

    --
    ------- "From bored to fanboy in 3.8 asian girls" ----------
  11. AMD passes Intel. by LostCluster · · Score: 4, Insightful

    The big story here isn't that Intel has done anything "wrong", but they've done something that they haven't done in the past... something that AMD used to do when they were trailing behind Intel.

    Now the shoe's on the other foot. AMD has taken one of the signs that used to say Intel was the market leader.

    1. Re:AMD passes Intel. by aquishix · · Score: 2, Insightful

      The big story here isn't that Intel has done anything "wrong", but they've done something that they haven't done in the past... something that AMD used to do when they were trailing behind Intel. Now the shoe's on the other foot. AMD has taken one of the signs that used to say Intel was the market leader.

      I think that your comments have truth, but I'd like to append some of my own:

      This really gets down to the heart of intellectual property ideologies. I, for one, don't believe any human being has the right to declare something ethereal to be "theirs". The entire concept is bogus because of one principle that I especially hold true: Nothing is invented -- only discovered.

      And contrary to the seeming philosophy of the white man over the last several millenia, finders != keepers.

      --
      - I am a viral sig. Please copy me and help me spread. [strain #2] Thank you
  12. AMD will have the last laugh here by AtariAmarok · · Score: 5, Funny

    AMD will have the last laugh here. Turns out they embedded a Pink Floyd album in the code of AMD64 (a fair-use copy, as AMD had previously purchased the album). When Intel copied the code and put it in their chip, it was all AMD needed for a little call to the RIAA to pay a visit to Intel's house....

    --
    Don't blame Durga. I voted for Centauri.
    1. Re:AMD will have the last laugh here by niko9 · · Score: 4, Funny

      /song/...and when you running Windows 64, I'll see you on the dark side of the CPU.../song/

    2. Re:AMD will have the last laugh here by AtariAmarok · · Score: 5, Funny

      /song/
      "We don't need no "Media Player"
      "We don't need no content control"
      "No dark embracing, or extension"
      "Hey Redmond! Leave script kids alone!"
      "All in all, we're all just borg in the cube"

      --
      Don't blame Durga. I voted for Centauri.
    3. Re:AMD will have the last laugh here by Joe+Enduser · · Score: 4, Funny

      Actually, it was Bohemian Rapsody, by Queen, and not quite the same without the no-execution bit.

    4. Re:AMD will have the last laugh here by No.+24601 · · Score: 3, Informative
      AMD will have the last laugh here. Turns out they embedded a Pink Floyd album in the code of AMD64 (a fair-use copy, as AMD had previously purchased the album).

      Yep, Intel sure suffered A Momentary Lapse of Reason.

    5. Re:AMD will have the last laugh here by eclectro · · Score: 3, Funny


      I think it needs more cowbell.

      --
      Take the cheese to sickbay, the doctor should see it as soon as possible - B'Elanna Torres, "Learning Curve"
  13. Not reverse engineering by Sebastopol · · Score: 4, Insightful

    This is ahrdly reverse engineering. This is Intel building an ISA to a specification laid down by AMD. Just like Transmeta executing IA-32 code, or like Lindows looking like windows.

    AMD didn't even have silicon before Intel started building 'yamhill', so by definition of the term, it is impossible for Intel to have reverse engineered.

    --
    https://www.accountkiller.com/removal-requested
  14. It's JUST MORE FUN!! by Wolfier · · Score: 5, Funny

    Intel employee A: Here's the spec AMD gives us. Use it.

    Intel employee B: Yee Hah!! I've almost figured out how they do this last opcode!

    Intel employee A: Yeah, it's on page 183 of this. Read it.

    Intel employee B: Leave me alone!! Specifications are for weenies! I'll reverse engineer it. You can keep the specs, thanks.

  15. So...What's the point? by Tuckdogg · · Score: 5, Insightful

    I've seen some people suggest that it was actually a "copy" of something AMD already made public, and not really a true attempt at reverse engineering. But even if it was reverse engineering, so what? Of course they haven't broken any laws! There's nothing wrong with reverse engineering. How many times has /. come out to defend reverse engineering (DeCSS, PlayFair, bleem!, Connectix's Virtual Game Station)?

    If the little guys can do it, the big guys can do it, too. No double standards, please.

    --
    Tuck
    Tuck's Journal.
    1. Re:So...What's the point? by infernow · · Score: 4, Insightful
      I don't think this is a matter of double standards. The article even says that there's no shame in what Intel has done:
      "There's no shame in it," Halfhill said of the reverse-engineering. "AMD has reverse-engineered everything Intel has done for years."
      Intel may or may not have copied, reverse-engineered, or otherwise duplicated the AMD spec. That doesn't matter. What does matter is that it is Intel who is having to catch up to AMD, rather than the other way around.
      --

      that that is is that that is not is not

  16. Happens all the time by bigberk · · Score: 3, Insightful

    Half of Engineering is reverse-engineering. And it's not always a bad thing.

  17. Re:Really?! by vanillacoke · · Score: 2, Informative

    Give up on the MP3, go for AAC.

    --
    The secret to getting modded up is to allways say i've got karma to burn in your sig..
  18. What's the big deal? by Entropy2016 · · Score: 2, Insightful

    IANAPCU (PC user), but maybe they're doing this for compatibility?

    Think about it. PCs are almost struggling for good 64-bit compatibility. Chances are that they got a clue and decided to do what Apple-hardware did with PowerPC many many years ago.

    Remember, Motorola & IBM both had PowerPC standards. Why shouldn't Intel & AMD learn how to get along as well?

  19. How is it reverse engineering? by nurb432 · · Score: 2, Insightful

    If they just copied the instruction set to be compatible, then created their own microcode to implement the code, how is that really considered 're-engineering' ?

    Now if they tried to duplicate the internals as well, id give you that it would be in that case..

    But sounds like Intel did nothing more then clone the functionality of a black box, using their own techniques.

    Or perhaps I'm just nitpicking on terminology..

    --
    ---- Booth was a patriot ----
    1. Re:How is it reverse engineering? by only_human · · Score: 2, Informative

      Also, the lack, or inclusion, of LAHF and SAHF being a "smoking gun" seems to be an overly strong conclusion. LAHF and SAHF were included in the 8086 to ease transition from 8080 code and as such, have been somewhat arcane. Although they have their uses, dropping them has been probably been frequently considered over the years.

  20. No way Intel is going to do something like this. by Theovon · · Score: 3, Informative

    Sure, Intel is known, like Microsoft, to do underhanded things, but these are all gray areas... marketing tactics, etc. But when it comes to a clear-cut IP thing like this, there's no way they're going to want to put themselves at risk like this.

    Besides: (1) Intel and AMD have all sorts of cross-licensing things in place, and (2) there are only so many ways to extend a 32-bit arch to 64-bit.

    Intel's "IA32e" is fundamentally an Intel design, with 64-bit extensions. I think IA32e is basically a Prescott (or later) core. Intel and AMD go about their CISC-front-end-to-RISC-core in quite different ways with quite different results in terms of efficiency, etc.

    So, the bottom line is that I'm sure, given that they do execute the same instruction set, that there will be MANY similarities, but they will be either accidental or necessary similarities.

  21. Instruction sets want to be free! by Limburgher · · Score: 2, Funny

    Next week: GNU/Assembler. . .

    --

    You are not the customer.

  22. Legal? by minion · · Score: 2, Interesting

    To quote from the article: While exactly copying a processor's microarchitecture would be illegal, creating a compatible product through the use of an original "clean room" design is legally protected.

    So, if what Halfhill says is true, how did Intel make it illegal for VIA to make a chipset for the P4? How did Intel prevent AMD from making chips that would fit in Socket 370 and Slot 1? That was the reason for the "socket wars" - to prevent AMD from making compatible products.

    Thats complete BS if Intel can get away with this and AMD had to suffer for it.

    --

    -- If we don't stand up for our rights, now, there will be no right to stand up for them later.
  23. They had to Reverse-Engineer it? by Anonymous Coward · · Score: 2, Funny

    Does that mean that what each AMD64 machine instruction does is not fully specified? How are we supposed to program for the AMD64 then, by using only the machine instructions that are clearly explained? Intel just missed an opportunity to invent a new behavior for the badly-explained instructions, publish a "complete instruction set handbook" for the AMD64, which people will use because AMD's handbook is unclear/incomplete, and have everyone wonder why their "AMD64" code only works on Intel.

  24. Not exactly a well informed article by Lface · · Score: 5, Informative

    Given that the instruction sets are compatible, you don't need to do much investigation to figure out that they have looked at AMD's x86-64.

    Apparently, there is still some confusion about whether the instructions sets are compatible or not, and people such as Linus has been critisizing Intel for trying to hide the fact that they are indeed compatible by giving the instruction set another name.

    When it comes to licensing of technology, AMD and Intel has had cross-licensing agreements since the seventies, and there has been roumors for a long time that these has included x86-64.

  25. The Real Story (tm) by ReverendLoki · · Score: 4, Insightful

    Yes, reverse Engineering is the norm, happens all the time, blah blah.... The real story here is that, for a change, Intel did it to AMD instead of the other way around. Or, as the article puts it, "Intel's decision, however, clearly places AMD in the role of market leader. " Maybe a tad too grandiose of a statement, but it's at least in the same ball park.

    --
    09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
  26. Two missing instructions by NTmatter · · Score: 3, Interesting

    It looks like Intel might be pulling the same trick as MS did on Java. By not implementing two instructions (LAHF and SAHF) might be trying to break compatibility ever so slightly. The question is whether they'll be able to fragment the market as well as Microsoft did.

    I suspect that they won't be able to, as compatibility and optimization lies a mere recompile away. However, if they were going to be 100% binary compatible, the results would be most interesting. Just imagine the carnage from head-to-head competition between Intel and AMD. While they have competed in the past, they have always had slightly different offerings. Their different feature sets were needed by different people. If these were identical, then AMD and Intel would be on the same battleground with the same featureset.

    It would be an interesting battle indeed. AMD's low cost and efficiency (and overclockability) versus Intel's brute-force and high-speed (and marketing). I suppose we'll have to wait for the next round for anything along those lines though.

  27. Looks like... by Pollux · · Score: 5, Informative

    Intel pulled an AMD.

    So reverse engineering is not a problem in this case. In fact, it's not unlikely that AMD simply handed them the documentation.

    But reverse engineering isn't "Handing them the document," as you put it. They have the right to produce a chip which uses the same instruction set (x86-64) within their chip, but they have to find a way to build it themselves...unless they reverse engineer the design of the chip itself...happens all the time...Z80 ring a bell? AMD did the exact same thing with the Intel 286, 386, and 486...took Intel's chip and reversed the design...until they finally came out with their own design of the 5x86 architecture, the K5. The K5 still used the x86 instruction set, but executed it with their own engineered design. So, maybe this is a good sign of Intel now being the follower instead of the leader.

    1. Re:Looks like... by BitchKapoor · · Score: 2, Interesting

      But AMD's 286, 386, and possibly 486 were based on designs licensed from Intel. I believe at least some versions of the 286 were microarchitecturally identical (AMD as a second source of parts for Intel).

    2. Re:Looks like... by Anonymous Coward · · Score: 2, Interesting
      So, maybe this is a good sign of Intel now being the follower instead of the leader.

      In what way is Intel a follower instead of leader here? Everytime this subject comes up people here seem to conveniently forget that Intel had the Itanium 64bit chip out way before AMD. You can nitpick and argue that it is only used for high end servers but the fact is that Intel always planned for this to trickle down into the desktop space once they become cheaper and software is available. I doubt they have changed that plan. AMD (and probably IBM/Apple) simply forced them to come out with an interim solution that will go away once Itanium is ready for the desktop.

    3. Re:Looks like... by isdnip · · Score: 5, Informative

      Just to be more specific about the history...

      Intel licensed AMD to produce their designs, as a second source, up through the 80286. Intel masks and all. By the time the 386 came out, Intel didn't need AMD any more (they had multiple fabs and a good enough reputation, plus a lock on PC-compatible chips). So they told AMD that the agreement didn't apply any more. I don't remember if AMD won or lost on the 80386. But it certainly didn't last until the 486. So AMD did their own design, without any help from Intel. The court did note that a number could not be trademarked. It was thus never the "80486"; I think "i486" was a trademark, not that anybody cared, and that's why the next Intel chip was "Pentium".

      AMD's "586"-class chip, the K5, was a dog. They then bought NexGen and adapted its RISC-innard design to the K6, which rocked, and fit a Pentium socket. Intel put tighter patents on the PII socket so AMD built the Athlon on DEC's Alpha socket electrical design.

      Intel didn't have to change the ISA (drop the NX, for instance) in order to be legal. Either they goofed, or they sabotaged their own 64-bit x86 upgrade (as others here have suggested) in order to create a niche for the Itanic.

    4. Re:Looks like... by Webmonger · · Score: 2, Insightful

      Reverse engineering is harder than working from published specs. It is establishing specs from the actual chip, then building it themselves.

      AFAICT, the Intel stuff is no more "reverse engineered" from AMD64 than Linux is "reverse engineered" from Unix. It's simply another implementation of the spec.

    5. Re:Looks like... by Trepalium · · Score: 2, Insightful

      You think Itanic will ever be ready for the desktop? I'd bet that the AMD x86-64 wouldn't even really exist today if the Intel Itanic had lived up to something near it's marketing hype. The Itanic is a dog. It came out extremely late, and with a low clockspeed, which allowed Intel's other processors to beat it in nearly all benchmarks, had limited OS support, and provided little or no 'bang for the buck'. Even the 'early adopters' had no reason to get Itanic chips. It would've been nice to get away from the i386 instruction set, but Intel messed up any chance of that happening.

      --
      I used up all my sick days, so I'm calling in dead.
    6. Re:Looks like... by Hoser+McMoose · · Score: 2, Informative

      I don't remember if AMD won or lost on the 80386. But it certainly didn't last until the 486.

      What lasted until the 486 was the legal battle. AMD did end up losing but not until after they had reverse engineered Intel's 486. AMD later did their own version of the 486. The first version of AMD's 486 just changed the microcode, enough to make it a "legal copy" so to speak. Later they designed an entirely new chip called the 5x86 that offered decent performanced compared to Intel's early Pentiums but at a much lower price and with cheaper 486 motherboards.

      AMD's "586"-class chip, the K5, was a dog.

      The problem with the K5 wasn't so much that it was a dog-slow processor, it was more simply that it was over a year later. If the K5 had arrived in 1994 or even in early 1995 it would have been a decent competitor to the Pentiums at the time. However it didn't make it to market until 1996 and the clock speeds just weren't there.

      Intel put tighter patents on the PII socket so AMD built the Athlon on DEC's Alpha socket electrical design.

      The patents had nothing to do with the socket and everythign to do with the bus. One of the important outcomes of the legal battle you mentioned was that AMD was given the right to produce chips compatible with the Pentium bus but NOT the Pentium Pro bus. The PII (and PIII that followed) switched to use the PentiumPro bus rather than the old Pentium bus, so AMD needed to find another solution. The EV6 bus from the Alpha design team was a nice and easy solution offering pretty good performance at the time.

      Intel didn't have to change the ISA (drop the NX, for instance) in order to be legal.

      Intel didn't have to do much of anything to make the chip legal, as the original poster in the thread mentioned, Intel and AMD have cross-licensing agreements that cover them for this sort of thing.

      Either they goofed, or they sabotaged their own 64-bit x86 upgrade (as others here have suggested) in order to create a niche for the Itanic.

      My understanding of things is that this feature just wasn't implemented in time for this spin of the silicon. It's expected to show up in the next generation of Intel 64-bit x86 chips, probably ariving in early to mid 2005.

  28. Wrong by Wesley+Felter · · Score: 3, Informative

    No, not really. The NX flag is dealt with by the MMU, which is part of the processor.

  29. this story is null and void by Neophytus · · Score: 5, Insightful

    because Intel and AMD have, and recently renewed, a share and share-alike licence for each others technologies. They do this because it would hurt them both were their chips incompatable

    1. Re:this story is null and void by SpaceLifeForm · · Score: 2, Interesting
      And the primary reason they would both be hurt if their chips were incompatible is spelled 'MS'.

      So, it's not just a benefit to Intel and AMD, but really to everyone, even those who run Linux on x86, since it helps keep the hardware costs down.

      --
      You are being MICROattacked, from various angles, in a SOFT manner.
  30. In related news.... by Hogwash+McFly · · Score: 2, Funny

    Hollywood actor Ben Affleck has been witnessed cashing a multi million dollar paycheck around the time of the chip's release. Film at 11.

    --
    Mother, do you think they'll like this sig?
  31. Fire the slashdot editor who dropped the ball. by mwarps · · Score: 5, Insightful

    Completely irresponsible and mindless work here.

    This is truly a sad, sad state of affairs when stupid, unresearched yellow journalism like this makes the front page of Slashdot. We have known for *years* about the cross licensing of patents between AMD and Intel. It's been reported ON THIS SITE.

    I normally don't like to flame the editors, but this is nearly unforgivable.

    Goodbye Karma.

  32. Goodbye Intel... by MBCook · · Score: 5, Insightful
    The whole thing is very interesting. The first thing to note is that Intel has been doing this since the very start. The proof? According to a document that made all the tech sites a few weeks ago (don't want to dig it up) if you remove the stuff Intel added to the IA-32e over AMD-64 (you know, SSE3 and such) the architectures are IDENTICLE except for two instructions. Those two instructions happen to be the exact same two that were not in the first draft of the AMD-64 architecture and were added later. That would be one MAJOR coincidence. I doubt that anyone is suprised though.

    As for Intel's processor, I haven't heard good things. I saw an article on either The Register or The Inquirer that pointed to an article in c't about the Noncona (English thanks to Google) that Noncona is in trouble. According to the article in c't, a beta tester described the performance of the chip succintly: "It sucks." The article also states that HP has decided to only use Opteron chips, so perhaps it knows this fact too. The article doesn't say why (although it speculates that it's only emulating parts of the 64 bit instruction set). The article also has some info on some other things.

    All in all, after all their foot dragging, I've lost interest in Intel. I'm worried that it won't perform as well as an Opteron. I'm worried it will be a blast furnace (Opteron's aren't cool by any means, but they look only luke-warm compared to Presshot). And I have read speculation (which I believe) that Intel is going to move to an integrated memory controller (like the Opteron) for performance reasons. Let's not forget that Intel is pushing a whole new form factor (BTX) just to help controll heat (or at least that seems to be it's major contribution to the world). AMD used to look like a "me too" company to me, making knockoffs. But over time (starting with the Athlon) I've been watching them and I no longer see them as an "also ran", they seem to be the REAL innovators these days.

    AMD vs. Intel:

    • Intel says Rambus. AMD says DDR. The industry uses DDR.
    • Intel says "no one needs 64-bits". AMD says "here, have 64-bits". People buy AMD, so Intel says "wait for me!"
    • Intel makes MMX, AMD makes 3DNow! and it spanks MMX, so Intel has to make SSE.
    • Intel says "faster processors (ghz) are faster, performance ratings confuse people". AMD says "faster processors (ghz) aren't always faster, performance ratings help people see past speeds". AMD's chips are faster than Intel's and Intel has to admit it won't keep pumping up clockspeeds. Result? Intel says "faster processors (ghz) aren't always faster, performance ratings help people see past speeds".
    • AMD released the Opteron and Athlon 64 which races past the P4. Intel has to release the P4 Emergency Edition just to stay competitive at the top end. How did they improve the processor? They didn't, they just added cache. They're 3ghz processor needs extra cache to keep up with a 2ghz one from their compeditor that runs cooler and has 64-bits.

    There are tons more. I saw an article on it the other day. Intel is not on sure footing, if you ask me. Between the problems above, the trend to sub $500 computers, and just AMDs gaining reputation, Intel could be in trouble. It has recently admitted that it can't continue to use the P4 and is going to build it's future chips off of it's mobile chip because they can't keep speeding up the P4, it's not worth it.

    --
    Comment forecast: Bits of genius surrounded by a sea of mediocrity.
    1. Re:Goodbye Intel... by Mashiki · · Score: 2, Interesting

      Damn I'm glad you posted that. I was going to actually write something very close to the same. My next builds will all be AMD for various reasons listed here(and not), but Intel has been borking along for far too long.

      Intel has become the underdog either refusing to look and devlop or thinking that 'name' will build and hold them marketshare. GM, Ford and Chrysler thought the same way back in the early 80's and it nearly killed all three. It may well kill Intel off if they don't smarten up.

      --
      Om, nomnomnom...
    2. Re:Goodbye Intel... by SpaceLifeForm · · Score: 2, Interesting

      Intel also fell behind because they spent too much time in bed with MS marketing.

      --
      You are being MICROattacked, from various angles, in a SOFT manner.
    3. Re:Goodbye Intel... by ImpTech · · Score: 3, Informative

      Lots of good points there... AMD has been doing very well lately, though honestly I think they've been doing most of it by *not* trying to innovate, and just trying to do what makes the most sense. Example: Athlons from tbird through barton are all pretty much the same, just with die shrinks, cache increases, and bus/multiplier differences. In that period Intel's put out what, 3 significantly different P4 cores, and invalidated a couple of socket types. I think that lack of extra worthless effort is a big part of what keeps Athlons so inexpensive, and yet AMD has still provided good performance just doing the conventional things.

      However, where I disagree with your assessment is about the dropping of the P4 architecture, going with a Pentium M derivative. I think thats the best move Intel can make at this time, and that while it might be a bit confusing to consumers, they're going to develop some very good chips as a result. I've always felt that the P4 was a stupid design to begin with, that only stayed competitive through hacks and ingenuity on the part of Intel's engineers. Now that they're going back to a good architecture, we could very well see another dynasty like the P6 core presided over.

  33. if only by Cynikal · · Score: 5, Funny

    if only AMD had been able to sneak in a few cyrix chips as their new easier-to-reverse-engineer edition 64bit chips....

  34. Quite true indeed by Anonymous Coward · · Score: 5, Interesting

    While working at Intel in 2000-2001 it was well known that there was a "finders fee" of $5,000 for each 'hammer' you could provide the company with. In fact there was even a spooky looking site (complete with spy vs spy logo) on our intranet listing what all the finders fees were for various 'items' under development by our competitors.

    needless to say I was a little surprised when I saw this...but not to surprised.

  35. Reverse Engineering in other fields by Nom+du+Keyboard · · Score: 2, Funny
    While exactly copying a processor's microarchitecture would be illegal, creating a compatible product through the use of an original "clean room" design is legally protected.

    Gee, can I do this with music, and then the RIAA can't touch me?

    --
    "It's the height of ridiculousness to say for those 9 lines you get hundreds of millions."
  36. Most likely NOT reverse-engineeered by Eric+Smith · · Score: 2, Insightful
    it is clear that Intel reverse-engineered the AMD64.
    How is Mr. Halfhill able to conclude that, when Intel could just as easily have simply read the x86-64 documentation which was released more than two years before Intel announced their version? His only evidence is that Intel left out two instructions which were not in the early AMD documentation; that actually suggests Intel simply used the AMD documentation, and did no reverse-engineering at all.

    Or perhaps Mr. Halfhill is confused about what the term "reverse-engineering" means. Specifically, it is reconstructing specifications and design information from a finished product. Designing a new, compatible product from published documentation is not in any sense reverse engineering.

    However, due to the fact that the new Xeon is not an exact copy of the AMD64's microarchitecture, Intel has not broken the law.
    It's not clear that Intel would have broken the law even if they HAD made an exact copy of AMD's microarchitecture.

    Microarchitecture per se is not protected by law, though aspects of it could be patented. But Intel and AMD have patent cross-licenses, to that is not an issue. A specific mask layout may be protected by copyright law, but it's quite possible to copy microarchitecture without copying mask layout.

    It is also possible that AMD may have provided the x86-64 architecture documentation to Intel under NDA well before the public release. The very name, "x86-64", was suprisingly vendor-neutral. I suspect that AMD only renamed it to AMD64 after they believed they had been unsuccessful at convincing Intel to produce compatible processors. Intel denied for years that they would offer a 64-bit extension of any kind for the x86, despite the widespread rumors to the contrary.

  37. More detail by Eric+Smith · · Score: 2, Informative
    A little digging reveals that AMD published the x86-64 architecture specification on August 10, 2000: AMD Releases x86-64(TM) Architectural Specification; Enables Market Driven Migration to 64-Bit Computing.

    Although there were rumors about an Intel Yamhill 64-bit x86 part for many years, they didn't announce an 64-bit x86 architecture extension until February 18, 2004, and it was announced sheepishly as a very minor point in a press release rather than amid great fanfare as AMD had done. Intel still has not released any product incorporating this extension. Thus they've had more than 3 1/2 years to develop their own 64-bit x86 based on the AMD specifications. No need whatsoever for reverse-engineering. In fact, reverse engineering would have taken much longer, because they would have had to wait to get their hands on working AMD silicon.

  38. Re:Neither can the compiler see these new register by Waffle+Iron · · Score: 4, Informative
    Maybe they do have more multi-purpose registers (I don't believe you 100%), but if you cannot access them via assembly code, then the compiler can't see them either.

    Well, the way CPU performance works today isn't really intuitive. A modern CPU can slice each opcode into several independent primitive operations and run each of those independently. In fact, it can reorder the suboperations from a variety of opcodes and do the work as it can be done, delaying for later the primitives that depend on long-latency things like data from cache. It can also execute many operations after a branch before it knows that the branch will be taken, and throw away all of those results if the branch gets mispredicted. The CPU may be simultaneosly working on dozens of opcodes at any given point in time.

    To support this craziness, the CPU uses "register renaming", which allots dynamic assignments for the user-visible registers from a bank of generic hardware registers. At any one time, you may have several versions of "EAX" simultaneously exist in the CPU; these represent the value of EAX at different logical points in the program code (some of the values may later be found to be useless because of speculative execution).

    So what the programmer thinks of as a bottleneck of loading and storing EAX a couple of times in succession may turn out not to be a bottleneck at all if the values are logically independent. The instructions may be reordered so that both loads of EAX exist at the same time, regardless of what one would assume from looking at the linear opcode sequence. In this case you get to simultaneously use more registers than what you can see.

    While its hard for assembly programmers to keep this straight, compiler writers can emit code that is aware of the CPUs behavior to take advantage of these features as much as possible. The X86 instruction set is a kind of bytecode abstraction; the compiler and CPU can mutually understand that there are ways to transcend the apparent limitations of that visible architecture.

    The bottom line is that register pressure is an issue, but register renaming in the X86 helps to mitigate it. Moreover, AMD's 64-bit extension adds lots of new programmer-visible registers, further reducing the problem. The real challenges going forward with current CPU designs today are improving branch prediction with ever-deepening pipelines, increasing cache size as the CPU speed continues to outstrip DRAM speed, and managing power consumption as gate leakage and transistor count increase. All CPU architectures need to deal with these issues, X86 and RISC included.

    (Itanium was meant to be a new approach to the branch-prediction issue, pushing the intelligence to the software compiler; it hasn't been a resounding success. It also really pushed the cache size by including monster caches, and this has been the main reason for its reputation as an expensive power guzzler. The CPU core really isn't that big or complex.)

  39. Reverse engineering was NEVER a problem. by Ungrounded+Lightning · · Score: 2, Interesting

    So reverse engineering is not a problem in this case. In fact, it's not unlikely that AMD simply handed them the documentation.

    Reverse engineering is NEVER a problem. The very concept that it MIGHT be is recent - and driven by propaganda from the software industry.

    Historically, industries have reverse engineered nearly everything: Cars, looms, what have you. (Auto compaines, for instance, have entire DEPARTMENTS to disassemble and reverse-engineer their competitors' products.)

    You can patent an idea - which gives you a lock for a number of years on using it in a commercial product or process. But that immediately exposes it, and releases it to the public domain once the time is up.

    Alternatively you can keep it secret, and hope the secret stays secret and nobody reinvents or reverse-engineers it. But once the cat's out of the bag you have no protection whatsoever. If you show the secret to an employee or business partner, and they leak it or use it beyond the limits of the contract, you can sue THEM and enjoin them against further disclosure. But if the "secret" has spread beyond catching, or if it is rediscovered/reinvented or discovered by examining a product you sold, tough luck!

    Software companies have tried to stretch trade secret via ELUAs claiming you're a "business partner" rather than a purchaser of a product, and thus contractually forbidden to do reverse-engineering. And they've tried to stretch copyright similarly, claiming you have to copy it to use it to reverse engineer and that's forbidden by your license (first-sale doctrine be damned). But (except for the DMCA, which has yet to be adequately tested) there's essentially no foundation in law for these claims.

    Or at least that's how I (who ANAL) read it.

    --
    Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
  40. Some hints from an ex-Intel engineer by Anonymous Coward · · Score: 4, Informative

    sorry for posting as Anonymous.
    When AMD only started to loudly talk about x86-64, my friend - u-code designer - told me in a private conversation that "...the management is worried, I was asked to look into the possibility of implementing u-code extensions of those new instructions. I'll look at their public specs today. After all, there's not much else to be changed except the u-code".
    I guess he did - but we never spoke about that later.
    The point is:
    1. Intel was preparing an answer to x86-64 as early as AMD started to talk about it.
    2. Intel was quite understandingly taking a wait-and-see approach to that - no one would pull the plug on an already available product, no matter how well it's selling, in favour of competitor's hype. They only started taking real marketing steps when it was obvious that x86-64 is getting accepted and didn't want to lose this market completely.
    3. The implementation is 100% in-house using only AMDs public specs. The uArch was ready before Athlon64 launch, for just in case, and they started marketing it as early as it was clearly no-other-choice situation. C'mon, give Intel some credit - why steal from AMD if there's plenty of in-house talent available? They even made Merced work (after only 8 years :-)).

  41. I wonder if.... by MWales · · Score: 3, Interesting

    I think it's clear to everyone this isn't reverse engineering. They are copying the instruction set, which in most peoples opinion, is no sin. It's of mutual benefit if the instruction sets are compatible, and there is a cross-licensing agreement in place between the two companies to ensure this.

    What I think is that Intel is now saying, "Oh crap, we missed 2 instructions!" Now do they quickly add them in to maintain the compatibility, or create this wiered instruction set that is always going to be known as "Intel's Mostly Compatible AMD64 Instruction Set". I would like to see them add the 2 instructions in, just to make it easier for software developers.

  42. AMD Cool'n'Quiet niftier by foxalopex · · Score: 3, Informative

    I'm not sure AMD-64's instruction set is all that useful at this point in time owning a new Athlon64 3200+ myself. I find the Cool'n'Quiet function more impressive. At idle I have a core cpu temperature of 31 Celcius! A tie to my motherboard chipset due to it CPU clocking down to 800mhz when idle. If you ask me that's a much nicer innovation at this point.

  43. LAHFing out loud by XNormal · · Score: 2, Informative

    Do you know what these two instructions are? They are for compatibility between the 8086 and the 8-bit 8085 processor. They load and store the flags into AH in the same bit positions as the 8085 so that SAHF+PUSH AX has the same format as pushing the Accumulator/Flags pair onto the stack on the 8085. Since the 8085 is an extension of the 8080 and 8008 architectures it makes these instructions compatible with the flags register format of the first 8 bit processor ever produced!

    There were actually tools to automatically convert 8085 code to 8086 that used these instructions.

    --
    Stop worrying about the risks of nuclear power and start worrying about the risks of not using nuclear power.