1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. Dismiss Notice

ARM M4 usage

Discussion in 'Pyra OS (Debian GNU/Linux)' started by ToastBucket, Nov 23, 2017.

  1. ible

    ible Advanced Guard Tower

    Joined:
    Mar 24, 2014
    Messages:
    1,717
    Location:
    Thrice in CA, twice in ND, once in the NL
    the M4s won't be on by default, and they're not capable of floating point math (at least not in hardware). but they are turing complete, just not very fast to run debian, nor are they hooked up in standard ways to all the peripherals. (AIUI.) you'd also find it difficult to compile stuff directly on them....
     
  2. ToastBucket

    ToastBucket Member

    Joined:
    Oct 12, 2010
    Messages:
    140
    Location:
    Santa Cruz
    Are the M4 cores on the OMAP5 missing the FPU? I guess this wouldn't be too much of a surprise since their main purpose is to be used to control the image processing unit. From the TRM it appears they have a direct connection to the DSP core which could be interesting. I still have more reading to do on this subject however.

    My goal here is to be able to load externally compiled bare-metal or RTOS applications onto these cores and allow communication with the A15's. Trying to run Linux on these cores doesn't seem very viable, plus I don't really see the point when there's two A15's sitting right next to them.
     
  3. levi

    levi Still fresh, damnit!

    Joined:
    Oct 6, 2008
    Messages:
    8,143
    Location:
    Somewhere off the coast of the EU
    I don't see why compiling things on them would be impossible - just not fast. I've built bits and pieces on a 110MHz StrongARM chip with no FPU, indeed I've even built the linux kernel on either an ARM2 or ARM3 chip (no FPUs there either). I don't know why you'd do it. Now the M4 cores don't implement A32, only Thumb-1 and Thumb-2 instruction sets, which are mostly comprised of 16-bit instructions rather than the pure 32-bit instruction set of A32, so they're not comparable MHz to MHz with my old ARM chips, but they should be in a similar ballpark I'd have thought. I'd guess we'll never actually see anyone compiling anything on the M4 cores in our Pyras - when you have access to much faster A15 cores, why would you?

    I'd guess these parts don't have FPUs because as far as I can tell they generally get called M4F cores if they have an FPU.

    I should probably have said Debian is a Linux which is only designed to run on heterogeneous cores e.g. Symetrical Multiprocessing in modern x86 cores, or an ARM big-little setup. You can't use these M4s in a big-little configuration because they don't implement the same instruction sets.
     
  4. ible

    ible Advanced Guard Tower

    Joined:
    Mar 24, 2014
    Messages:
    1,717
    Location:
    Thrice in CA, twice in ND, once in the NL
    now i don't mean to be split hairs, but do you know any gcc's compiled for such Thumb-1 and Thumb-2 instruction sets? (i'm willing to be surprised...)

    correct.
     
  5. levi

    levi Still fresh, damnit!

    Joined:
    Oct 6, 2008
    Messages:
    8,143
    Location:
    Somewhere off the coast of the EU
    Compiled for? You mean you can run it on a Thumb-only CPU? No idea, but I'd be very surprised if it weren't possible - Thumb is still turing complete, it just usually results in smaller but slightly slower binaries, although as with all compromises, there are situations where it'll actually generate larger binaries. I just don't know anyone whose built it for Thumb - I don't know of anyone with an M4-only devboard who doesn't have a faster machine to cross compile from. Most M4-only boards are probably a little short on RAM for running a C++ compiler too.
     
  6. ible

    ible Advanced Guard Tower

    Joined:
    Mar 24, 2014
    Messages:
    1,717
    Location:
    Thrice in CA, twice in ND, once in the NL
    fair enough...
     

Share This Page

Loading...