Hacker News new | past | comments | ask | show | jobs | submit login

> I don't see why a new compiler would be necessary. It's unlikely they'd completely throw out the whole ARM ISA and replace it with something completely different in one go. More likely, they'll gradually add new instructions and mutate the characteristics of existing instructions over time

Well this is exactly the point. They cannot do this the license will not permit them to alter the architecture it's all or nothing (indeed if the new ISA was too ARM like the lawyers would be sure to come knocking).

I'm sure the could reuse quite a lot of compiler technology but the entire point of the article is by doing clean slate ISA design you can do something radical and get gains. Whether this is true is unclear, but it would require some serious work on the compiler.

Producing their own conventional ISA would seem to be pointless as it wouldn't give them anything vs ARM (or indeed x86).




Apple has an Architecture License with ARM. Basically the broadest license that ARMS sells. If you didn't know this, ARM was founded as a joint venture between Apple and Acorn. Their history goes back to the day the company was created. (ARM Chips powered the first PDA, the newton.)

Your assertion that their license will not permit them to alter the architecture is wrong. This is true of the vast majority of ARM licenses, but not Apple's.

They can take the ARM ISA and extend it in any way they want, and they can take ARM cores and adjust them, or design their own-- they have already done all of this (though to a small degree, not enough to be called a "new ISA".)


> Your assertion that their license will not permit them to alter the architecture is wrong. This is true of the vast majority of ARM licenses, but not Apple's.

> They can take the ARM ISA and extend it in any way they want, and they can take ARM cores and adjust them, or design their own-- they have already done all of this (though to a small degree, not enough to be called a "new ISA".)

What is your source for this? As far as I know ARM do not permit modification of the designs they sell or alterations to the architecture. After all allowing such things could lead to the errosion of their business (e.g. by letting apple slowly slide to a non ARM architecture).


Apple does not use ARM designs, they use certain principles present in the ARM architecture and the ISA.

Wikipedia:

"Companies can also obtain an ARM architectural licence for designing their own CPU cores using the ARM instruction sets. These cores must comply fully with the ARM architecture."

https://en.wikipedia.org/wiki/ARM_architecture#Licensing


That's about the best description I could find, too. It all boils down to what 'comply fully' means.

Given the lego-like structure of the ARM instruction set (the 32-bit variant), with zillions of extensions (Jazelle, DSP instructions, Neon, Thumb, Thumb-2, various revisions of vector floating point instructions) and explicit support for "coprocessors" (https://en.wikipedia.org/wiki/ARM_architecture#Coprocessors), I suspect (based on common sense and nothing else) that the license allows expanding the instruction set and dropping whole modules.

But as I said elsewhere: concrete proof for that is lacking.


Which do you think makes more business sense. Allow a highly profitable and influential customer to gradually move away from your product over a period of many years or just force them to leave immediately.


Apple engineers were heavily involved in the design of the ARM 610. I can imagine they are equally involved now.


"the license will not permit them to alter the architecture it's all or nothing"

Can you give a reference for that? As far as I know, Apple has an architectural license that allows them to ship anything that passes a test suite. Depending on the way the test suite is specified, that may not rule out shipping a superset of ARM, for example with a few extra instructions.

One that I _think_may_ be useful is one to load values from tagged pointers (caveat: I know little of CPU architecture)


> Can you give a reference for that? As far as I know, Apple has an architectural license that allows them to ship anything that passes a test suite.

I can't find one actually, so perhaps I am wrong. If it strictly based upon the test suite then maybe it's sufficiently thorough that interesting alterations are effectively impossible (e.g. it could test you get invalid instruction exceptions when you feed in unused bits of instruction encoding space, preventing you from adding any).


Turns out I'm wrong. The A6 used a variant named ARMv7s: http://www.primatelabs.com/blog/2012/09/apple-a6/

It has two extra integer division instructions and some extra floating point. Though the blog says that the extra floating point instructions are also present in ARMv7 (in XCode) but unused.

So perhaps they're allowed to add whatever they want? I suspect only the lawyers truely know...

What is pretty certain is they couldn't break compatability with the ARM architecture.


Those were the instructions (integer divide and VFPv4) added in Cortex-A15 chips.


You make some good points. I don't think Licensing is likely to be an issue. ARM offer a wide range of licensing deals, and since Apple wouldn't be selling their chips I don't see why ARM would feel the need to enforce compatibility. It's going to be interesting to see if this ever happens.


ARM's market cap is 20B. If Apple sees enough benefit to do this, they can buy their way out of any legal questions that might arise.


It's not the money that's the hurdle for that, buying ARM would be a massive antitrust headache for Apple.


Is owning the ISA worth 20 billion dollars? You could buy half the music industry for that


If Whatsapp was worth 19B it's easy to see the ISA being worth at least that much.

edit: for what possible reason can this be downvoted? It's just a datapoint.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: