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."

39 of 324 comments (clear)

  1. Good! by Futurepower(R) · · Score: 3, Insightful

    Good, because compatibility is everything.

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

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

    1. 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. 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.

  4. 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?

  5. 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.
  6. 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 LostCluster · · Score: 1, Insightful

      No. An instruction set is not instructions on how to make a processor... just how to operate it.

    3. 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
  7. 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
  8. 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
  9. 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

  10. 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.

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

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

  12. 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?

  13. 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 ----
  14. 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
  15. 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

  16. 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).

  17. 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.

  18. 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 Anonymous Coward · · Score: 1, Insightful

      Woo.. Intel bashing!

      Okay, fair enough about RamBust. That was just a stupid idea to try and force everybody to use extremely expensive RAM designed by a company that uses dubious business tactics.

      I wouldn't say AMD are the "REAL innovators". They're just good at designing something which is simple and fast. Opteron is based on IA32 still. Itanium is supposed to be a total redesign from the ground up so it would appear Intel are doing more innovation than AMD.

      What's wrong with dropping the P4 architecture for the mobile Pentium architecture anyway? Are we supposed to stick with a single design forever? I'll dig out my 8086 if you want it. Stick it in liquid nitrogen and you might be able to get 40MHz out of it.

  19. 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
  20. 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?

  21. 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.

  22. B.S. article. by rice_burners_suck · · Score: 1, Insightful
    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

    So? Even if they did reverse-engineer something, what's wrong with that? Without reverse-engineering, IBM would probably still be producing the only PCs, and the computer market, Internet, and many related technologies might not have grown to the extent that they did.

    Besides, they could have bought the instruction set documentation and built a similar processor based on that. Just like you can read the Windows API manuals and make libraries that provide the same functionality.

  23. 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.
  24. Neither can the compiler see these new registers by Anonymous Coward · · Score: 1, Insightful

    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. Then they aren't very useful. RISC architectures are much better.

  25. 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?

  26. 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.

  27. 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.

  28. 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.
  29. 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.
  30. 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
  31. Re:Neither can the compiler see these new register by Anonymous Coward · · Score: 1, Insightful

    All that crap like Register Renaming is just a huge hack!

    The ONLY reason we have it is because of the crappy x86 architecture (4 registers! GAH!).

    The majority of 'advancements' in x86 CPU design have mostly been ways of getting round the stupid design of x86 rather than actual advancement.

    CISC->RISC instruction decoders, register renaming, and all the other 'intelligence' of the modern x86 CPU are just ways of getting round the limitations of x86.

    As an architecture, Itanium is excellent - Unlike x86, where the only real way to speed things up is ramping clock-speed, Itanium leverages parallelism which is much easier to speed up (Adding another CPU currently requires a lot less effort than finding new ways of throwing electrons down increasingly thinner tracks).

    The Itanium CPU itself is as thick as a brick compared to K7 and P4, but this is the KISS principle, and IMHO, very clever.
    The CPU doesn't need all that die-enlarging baggage: All the intelligence - branching, instruction interleaving, and what have you is all delt with by the compiler, which can evolve unlike the CPU. This would potentially allow you to compile a program again later in life to give it a performance boost!

    However, x86 has a single thing going for it which is why nothing - not Macs, Itanium, Amiga or anything will dislodge it any time soon:

    Its momentum.

    x86 is so damned prevailent that it is impossible for AMD or Intel or anyone to break away from it. It's success will mean that we'll be saddled with it for a loong time, despite the universally accepted notion that it is insanely out of date and, in fact, crap.

    If Itanium ever comes to the desktop, Linux is the one thing that can save it: The source-code nature means that programs can just be re-compiled (with tweaking) to work with it and you're sorted.

    The Windows world is screwed 'tho - decades of binary-only software will immediately be useless, lost. Its only means of survival would be via. emulation.

    This ain't gonna happen, which is why we're stuck with x86 and why Itanium will be stuck with Sparc et. al. in the high-end where custom programs are written as a matter of course.