6

This question is related to a previous one that has been asked here before (How did AMD's 386 and 486 perform like Intel's newer generation?)

My question is-two fold:

  1. a) When AMD "reverse engineered" clones of the i386 (Am386) and i486 (Am486) what exactly was cloned? Was it just the microarchitecture alone, or did they literally get a copy of every transistor on the die? b) How exactly did AMD do the "clean room" reverse engineering? I'm not sure how that process would actually work!

  2. As per the previous question, AMD was known for launching versions of the cloned chips that operated at higher clock-speeds than Intel's own. A good example is the Am386 DX-40 which operated at 40MHz, when the best Intel 386 processor operated at 33 MHz. Wikipedia (note, not a good source) notes that it also had lower power consumption. How did AMD accomplish this? Was it just by shrinking the chip onto newer process nodes that Intel did not? Or did they make modifications to the chip to accomplish the higher clock speeds and lower power consumption? If yes, what modifications?

11
  • 4
    Just comments as I don't know enough about the specific situation (I'm sure Raffzahn will provide that) but: reverse engineering in this context means you look at what the device does (based on documentation, testing, etc.) and make something that does the same thing. Transistor level, possibly even microarchitecture is copying - that's a very different thing. As far as "clean room", here it refers to doing this without any prior knowledge of the inner workings - e.g., reproducing the instruction set without knowing the microcode. (Classic example is producing an IBM PC compatible BIOS Jan 9 at 4:55
  • 1
    without using the actual code - code which was printed by IBM and also readily available by simply reading the BIOS ROM). Jan 9 at 4:56
  • 1
    Wouldn't that mean that they need not even use the same microarchitecture? But I am operating under the assumption that AMD did in fact use the same microarchitecture. Jan 9 at 5:40
  • 3
    Yes. That's the very definition of 'reverse engineering' since it derives an implementation from observed behaviour, the reverse of having an implementation exhibit that behaviour.
    – dave
    Jan 9 at 12:39
  • 6
    @lvd, yep. Engineering something is starting with requirements/specs and producing a final design. Reverse-engineering is starting with a final design, observing it and working back to precise requirements/specs. From those requirements/specs, you can design a new one that does the same. Those last two steps often get bundled together as reverse-engineering.
    – TonyM
    Jan 9 at 13:14

1 Answer 1

1

They didn't clone it transistor by transistor, that would have violated Intel's IP.

AMD and Cyrix clones were basically functional clones, they clone the behaviour (as detailed in the technical specs). This was achieved by a strategy known as Clean Room Design.

However, most CPUs have unexpected behaviours that aren't properly documented (unofficial instructions, unofficial usage of flags, etc.). To maximize compatibility, they used several techniques of analysis:

  • Decapping of the original CPU. This means a physical microscopic analysis of the cloned Intel processor.
  • Logic analysis and brute force combination of opcodes and operands. They used to generate all possible instructions (including impossible/ilegal opcodes) with all type of operands and tracked how registers and flags were updated. Also, all the pins were tracked and analysed at the electrical level.

About your second question: based on the reverse engineering processes described above, AMD just made their own design so they had the chance to improve some aspects (i.e. clock frequency) but, frequently, those improvement were at the expense of other characteristics. For example, AMD CPUs used to be more powerful doing integer operations, while Intel processors remained the winners when it came to floating-point operations.

1
  • Do you have references that support these claims? I don't doubt you're correct, but it would be helpful if you could corroborate the assertions. Feb 2 at 20:55

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .