New Article: Why Apple Won’t ARM the MacBook

Article: Why Apple Won’t ARM the MacBook
By: Wilco (Wilco.Dijkstra.delete@this.ntlworld.com), May 10, 2011 3:47 am
Room: Moderated Discussions
David Kanter (dkanter@realworldtech.com) on 5/10/11 wrote:
---------------------------
>none (none@none.com) on 5/10/11 wrote:
>---------------------------
>>There are some mistakes about ARM:
>>
>>1. except for NEON, decoding is easy, even for detecting
>>2-byte vs 4-byte instructions (which are the only sizes
>>available in Thumb mode)

Yes, there are a few misconceptions in the article. There is effectively one ARM ISA which has 2 encodings: 32-bit ARM and 16/32-bit Thumb-2 (the 16-bit encodings are Thumb-1). VFP and Neon are in both of those, and use almost identical encodings (so they can share a decoder).

Neon is a big and complex instruction set, but decoding is not as difficult as it may seem at first - it is true the encoding bits are spread around but to hardware that doesn't matter at all. Like all ARM instructions, the encoding allows you to quickly determine whether an instruction is a load or store and which registers are accessed. And that is what matters most.

>>2. Corte-A15 is Eagle and vice versa :-)
>
>Thanks for that correction.
>
>>3. the implicit barrel shifter indeed is an oddity, but it is
>>no real issue: either split the instruction or add a pipe
>>stage
>
>Still ugly.

Not nearly as ugly has having instructions which access memory, do a computation and then access memory again...

It is definitely not "very expensive" hardware as ALUs form a tiny part of a core, and ALUs have a barrel shifter anyway. It is obviously reused for plain shifts, bitfield operations, sign extension and some SIMD operations. Many other architectures support at least shift(1-3)+add, which is useful for address computations and small multiplies.

ARM has always been able to do more with fewer executed instructions, not just compared to its purist RISC siblings but even compared to x86. The 3 operands, conditional execuction, shifted immediates and shifts on ALU operations means you can pack a lot of computation into a single instruction, allowing a relatively narrow design to be very efficient. How many ISAs can emulate an IEEE floating point multiply in 25 instructions?

>>4. in ARM mode (as opposed to Thumb mode) setting condition
>>flags is an option
>
>Yes, I got that.

It is also optional in 32-bit Thumb-2 instructions - only the 16-bit Thumb-1 instructions always set the flags. Either option is not detrimental to performance, as Power and x86 prove.

>>5. Thumb initially dropped the shifter and "predication" (I
>>certainly don't like that term, it has become tainted, I
>>prefer "conditional execution" :-) to fit in 16-bit opcodes,
>>(32-bit Thumb came later) not to ease micro-architecture
>>design.
>
>Predication/conditional execution. It's all the same. You can argue predication
>is more for SIMD architectures, but I'm not sure it matters what you call it. The
>point is that you now have at least 3 inputs for most operations...

ARM can have max 4 register inputs, 2 outputs plus 1 in/out for the condition bits. The 3 and 4 register cases are rare (more so in Thumb-2) and could be split early on. Conditional execution does indeed pose a challenge to OoOE but not much more than branches do (one possible implementation is to treat a conditional instruction as a merged conditional branch + an unconditional instruction).

Anyway, I liked your article, and agree there is no chance Apple will replace their x86 laptops completely with ARM in the next few years. However I think it is extremely likely Apple will introduce laptops based on ARM - even if it is just to give people an iPad+keyboard option. There is no need for SB or Bulldozer-like performance for this to make sense - after all we have Atom and Bobcat laptops.

Wilco
< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
New Article: Why Apple Won’t ARM the MacBookDavid Kanter2011/05/10 12:19 AM
  New Article: Why Apple Won’t ARM the MacBookMark Christiansen2011/05/09 11:24 PM
  New Article: Why Apple Won’t ARM the MacBookLouis Gerbarg2011/05/09 11:54 PM
  New Article: Why Apple Won’t ARM the MacBooknone2011/05/10 12:57 AM
    New Article: Why Apple Won’t ARM the MacBookDavid Kanter2011/05/10 01:18 AM
      New Article: Why Apple Won’t ARM the MacBooknone2011/05/10 02:14 AM
        New Article: Why Apple Won’t ARM the MacBookDavid Kanter2011/05/10 02:19 AM
          New Article: Why Apple Won’t ARM the MacBookGoose2011/05/10 02:34 AM
          New Article: Why Apple Won’t ARM the MacBookRatherNotSay2011/05/10 06:25 AM
          ARM predication not so horriblePaul A. Clayton2011/05/10 08:05 AM
            ARM predication not so horriblenone2011/05/10 08:12 AM
              Partial update seems kind of oddPaul A. Clayton2011/05/10 08:29 AM
                Partial update seems kind of oddExophase2011/05/10 08:51 AM
                  Partial update seems kind of oddMichael S2011/05/10 12:56 PM
                    Partial update seems kind of oddMichael S2011/05/10 01:25 PM
                      Partial update seems kind of oddWilco2011/05/10 02:39 PM
                        Partial update seems kind of oddanonymous422011/05/10 07:09 PM
                          Partial update seems kind of oddrwessel2011/05/10 09:57 PM
                  Condition register usesPaul A. Clayton2011/05/10 05:56 PM
                  Partial update seems kind of oddMegol2011/05/11 01:06 AM
          New Article: Why Apple Won’t ARM the MacBookKevin G2011/05/11 01:21 AM
      New Article: Why Apple Won’t ARM the MacBookWilco2011/05/10 03:47 AM
        New Article: Why Apple Won’t ARM the MacBookMichael S2011/05/10 04:06 AM
          New Article: Why Apple Won’t ARM the MacBookWilco2011/05/10 04:25 AM
            New Article: Why Apple Won’t ARM the MacBookMichael S2011/05/10 05:13 AM
        Predication and OoOEExophase2011/05/10 08:34 AM
          Predication and OoOEWilco2011/05/10 03:46 PM
            Predication and OoOEExophase2011/05/11 07:51 AM
        ARM ISADavid Kanter2011/05/10 09:12 AM
          ARM ISAUngo2011/05/10 12:30 PM
  New Article: Why Apple Won’t ARM the MacBookThibs2011/05/10 02:45 AM
  New Article: Why Apple Won’t ARM the MacBookLlew2011/05/10 03:33 AM
    New Article: Why Apple Won’t ARM the MacBookDavid Kanter2011/05/10 09:34 AM
  New Article: Why Apple Won’t ARM the MacBookKevin G2011/05/10 03:55 AM
    New Article: Why Apple Won’t ARM the MacBookDavid Kanter2011/05/10 10:07 AM
      New Article: Why Apple Won’t ARM the MacBookKevin G2011/05/11 01:33 AM
        New Article: Why Apple Won’t ARM the MacBookDavid Kanter2011/05/11 02:00 AM
  New Article: Why Apple Won’t ARM the MacBook ... The FACTS say otherwise !fabrice2011/05/10 04:07 AM
    New Article: Why Apple Won’t ARM the MacBook ... The FACTS say otherwise !Rakesh Malik2011/05/11 03:03 PM
      New Article: Why Apple Won’t ARM the MacBook ... The FACTS say otherwise !Richard Cownie2011/05/12 08:50 AM
        New Article: Why Apple Won’t ARM the MacBook ... The FACTS say otherwise !Rakesh Malik2011/05/12 09:10 AM
    Hrmmmm...David Kanter2011/05/14 12:19 AM
  iPad-writer?Jouni Osmala2011/05/10 04:35 AM
    Laptops finally moving to touchscreen GUI?mpx2011/05/10 06:03 AM
  What about MS?Joe Kerr2011/05/10 06:26 AM
  New Article: Why Apple Won’t ARM the MacBookRichard Cownie2011/05/10 06:41 AM
    Dual CPU makes more sense than dropping x86Mark Roulo2011/05/10 07:54 AM
      Dual CPU makes more sense than dropping x86Richard Cownie2011/05/10 09:02 AM
        Dual CPU makes more sense than dropping x86Mark Roulo2011/05/10 09:28 AM
          Dual CPU makes more sense than dropping x86Richard Cownie2011/05/10 09:55 AM
            Dual CPU makes more sense than dropping x86Wes Felter2011/05/10 11:20 AM
      Dual CPU makes more sense than dropping x86rwessel2011/05/10 11:01 AM
        Dual CPU makes more sense than dropping x86fabrice2011/05/10 12:02 PM
    New Article: Why Apple Won’t ARM the MacBookDavid Kanter2011/05/10 10:18 AM
      New Article: Why Apple Won’t ARM the MacBookRichard Cownie2011/05/10 12:10 PM
        Form factors and performanceDavid Kanter2011/05/10 12:39 PM
          Form factors and performanceRichard Cownie2011/05/10 05:25 PM
            Form factors and performanceLinus Torvalds2011/05/10 06:24 PM
              Form factors and performanceRichard cownie2011/05/11 02:12 AM
                Form factors and performanceRichard Cownie2011/05/11 03:44 AM
              Form factors and performanceGabriele Svelto2011/05/11 09:03 AM
                Form factors and performanceLinus Torvalds2011/05/11 10:16 AM
                  Form factors and performanceMark Christiansen2011/05/11 11:06 AM
                  Form factors and performanceRichard Cownie2011/05/11 12:36 PM
              Form factors and performanceDoug Siebert2011/05/11 10:19 AM
                Form factors and performanceRakesh Malik2011/05/11 03:36 PM
            Form factors and performanceFoo_2011/05/11 04:33 AM
              Form factors and performanceRichard Cownie2011/05/11 05:35 AM
              Form factors and performanceJoe Kerr2011/05/11 09:05 PM
    New Article: Why Apple Won’t ARM the MacBookUngo2011/05/10 01:33 PM
      New Article: Why Apple Won’t ARM the MacBookRichard Cownie2011/05/10 04:54 PM
  Maybe after Cortex A15 ?Nicolas2011/05/10 07:07 AM
    Maybe after Cortex A15 ?anonymous422011/05/10 11:01 AM
      Maybe after Cortex A15 ? Nicolas2011/05/11 01:34 PM
  One way for ARM to beat Inteletienne2011/05/10 04:38 PM
  Perhaps ARMed apple netbooks?John H2011/05/16 08:14 PM
    Perhaps ARMed apple netbooks?blah2011/05/17 08:02 PM
      Perhaps ARMed apple netbooks?Brett2011/05/18 02:50 AM
        Perhaps ARMed apple netbooks?Llew2011/05/18 03:43 AM
        Perhaps ARMed apple netbooks?David Kanter2011/05/18 09:46 AM
          Perhaps ARMed apple netbooks?Brett2011/05/18 11:43 AM
            Perhaps ARMed apple netbooks?blah2011/05/18 08:01 PM
            Perhaps ARMed apple netbooks?David Kanter2011/05/18 11:47 PM
              Perhaps ARMed apple netbooks?Rob Thorpe2011/05/19 01:07 AM
                Perhaps ARMed apple netbooks?blah2011/05/19 11:01 AM
                  Perhaps ARMed apple netbooks?Richard Cownie2011/05/19 11:48 AM
              iOS changes from OSXBrett2011/05/21 12:18 PM
                iOS changes from OSXBrett Davis2011/08/26 04:46 PM
              iOS changes from OSX Brett2011/06/03 10:50 AM
  New Article: Why Apple Won’t ARM the MacBookRobi52011/05/20 11:55 PM
    New Article: Why Apple Won’t ARM the MacBookDavid Kanter2011/05/21 01:36 PM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell avocado?