This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Cortex-M4 documentation

hi,

im a total noob here so do excuse if im asking some weird question. im using an arm cortex m4f for the first time ...

i looked online and i was able to find the TRM for the arm cortex m4f. however being more on the hardware side, i am interested in things like operating voltage, max current drawn, max operating freq, what the processor does in the various pipeline stages, hardware architecture overview etc.

i searched a lot online but i was not able to find a document with this info. the TRM didn't have this either. for old school processors like intel 8051, i would just search for the 8051 datasheet and i would get this information but i can't locate anything similar for cortex m4f.

would be glad if someone could point out where the doc is located or the exact search string i need (keywords etc., maybe i need to look for something different) ...

thanks in advance ...

z.

  • Hello and welcome Z!

    At ARM, we don't manufacture the chip, we only do its blueprints.

    When you use an ARM Cortex-M4 with FPU, you get one from a chip manufacturer or their distributor.

    The chip manufacturer/silicon vendor is integrating our blueprints in their product. They decide which geometry/process they use. Voltage, package and frequency are based on a particular set of data depending on the vendor choice and their tests. To take an analogy of the car, among others we do the engine, but if you want to know your car performance, it will depend on the weight, its gearbox, and only the car manufacturer can give you the spec of the product. Does that clarify a bit?

    Because at ARM we don't deal with the realisation, we only provide the manual of what we do. In this case, we most likely only provide the core, the CPU and not the peripherals, not the memory, not the package.

    In the case of your microcontroller, if you give me the markings on it, I can direct you to the datasheet in the format you are used to. But it will be from the silicon vendor.

  • Thanks Alban. your answer clarifies things a lot.

    I only have the Cortex m4 blueprint. and no specific vendor in mind. when you say "the markings" ... do you mean the markings/manufacturer of the chip?

    also, if i have to emulate the cortex core on ... say an FPGA ... then i would need to know the freq etc on which i can implement the core. so how would i get that information (independent of vendor/manufacturer)?

    I guess i mean to ask - if ARM does make a chip blueprint, do they have some target freq/voltage ranges in mind beyond which the chip cant work? and if this information is generic, where can i get it?

    basically - if i was a chip manufacturer and i was integrating the chip into my product, i would need to know the upper limits of the freq, voltage etc. the cortex can work and then decide the rest of the system so that something for the cortex core does not become out of spec. so how do i go about finding that out ?

    z.

  • Great I could be of some help to you.

    By the marking, I meant the reference of the product yes.

    For the FPGA, you will have the same dependency. FPGAs have different clock speed, and depending on how the product is implemented in the FPGA, the timing critical path might influence the maximum speed. So the maximum frequency of a FPGA chip doesn't give you the maximum frequency of what you've implemented.

    Let's take a comparison. If I ask you how fast is your application software is running, you should tell me it depends on the OS, the hardware, what else is running...

    Cortex-M4 Processor - ARM should give some examples. Otherwise, look at what the silicon vendors have in their datasheet if you want real world values.

    For FPGA implementations, the Cortex-M1 Processor - ARM might be a better suited product.