Arm Community
Site
Search
User
Site
Search
User
Support forums
Arm Development Studio forum
What is the difference between M4 and MP series
Jump...
Cancel
Locked
Locked
Replies
5 replies
Subscribers
119 subscribers
Views
3614 views
Users
0 members are here
Options
Share
More actions
Cancel
Related
How was your experience today?
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
What is the difference between M4 and MP series
O M
over 12 years ago
Note: This was originally posted on 8th July 2013 at
http://forums.arm.com
Hello
[size=2]
[/size]
[size=2]I have to port a project that was written for the ARM11 MPcore to a project that will run on M4 (actually it is freescale Kinetis K60with M4 inside it)[/size]
[size=2]I saw in the documents of the ARM11 MP that it has 2 levelTLB, seven modes of operation (FIQ, IRQ, Supervisor, Abort, System, Undefinedmode), ...[/size]
In the documentation for the M4 I don't find any of it.
May I ask if it is exist in the M4 (K60) and what is themain differences between those two processors ?
Thanks a lot
OM
O M
over 12 years ago
Note: This was originally posted on 9th July 2013 at
http://forums.arm.com
Hi
Thanks a lot for an excellent detailed answer.
Yes, I am new to the M3 family (and to ARM in general)
I read the two chapters here
http://www.arm.com/support/resources/arm-books/the-definitive-guide-to-the-arm-cortex-m3.php
1. Is it possible to download the whole book somewhere ? (I mean, free of charge)
2. I wasn't aware of Thumb2 instruction set.
Is the integer type is 32 bit or 16 ?
If it is 32 bits, does the access to it is in one cycle or two ?
(I didn't find what is the size of the data bus)
Thanks a lot and have a great day
OM
Cancel
Vote up
0
Vote down
Cancel
O M
over 12 years ago
Note: This was originally posted on 9th July 2013 at
http://forums.arm.com
Regarding questoin 1, I found PDF of the whole book. Thanks a lot.
Can someone help regarding the second question ?
(the one with the thumb2, the size of data bus, and atomic access to int (if it is 32 bits wide)
Thanks
Cancel
Vote up
0
Vote down
Cancel
O M
over 12 years ago
Note: This was originally posted on 10th July 2013 at
http://forums.arm.com
Thanks a lot
Cancel
Vote up
0
Vote down
Cancel
Peter Harris
over 12 years ago
Note: This was originally posted on 9th July 2013 at
http://forums.arm.com
[color=#222222][font=Arial, Helvetica, sans-serif]> 2. I wasn't aware of Thumb2 instruction set.[/font][/color] Is the integer type is 32 bit or 16 ?
The Cortex-M family are still all 32-bit cores, so the register size etc is still 32-bits. Thumb introduces some 16-bit instructions, but they still operate on 32-bit data registers.
> If it is 32 bits, does the access to it is in one cycle or two ?
From the instruction set side of things each register load is a single instruction. Bus cycles depend on the implementation. It is quite common for external ROM or Flash to only have an 8 or 16-bit data bus to reduce pin-out on some MCU designs, so 32-bit accesses take multiple cycles, but this is all managed in hardware. Internal memory inside the MCU is normally using a 32-bit data path, but not always.
ARM only design the CPU core, so for full device memory system specifications you will need to check with a specific manufacturer.
Cancel
Vote up
0
Vote down
Cancel
Peter Harris
over 12 years ago
Note: This was originally posted on 9th July 2013 at
http://forums.arm.com
> In the documentation for the M4 I don't find any of it.
Correct =)
> what is the main differences between those two processors ?
The ARM11 is an ARMv6 processor. It was designed as a applications processor for running full-fat operating systems such as Linux, Windows CE, etc, so comes with an MMU, caches, etc.
The Cortex-M4 is an ARMv7M processor. This has a different processor architecture designed to simplify the core (smaller, more power efficient), and make it easier to program for (fewer operating modes, only implements Thumb/Thumb2 (no "ARM" ISA), you can write most code in C with no need for assembler). As a micro-controller it is designed to be plugged directly to a bus with a local SRAM, so it has no cache or MMU, but can have an optional MPU (memory protection unit).
If you are new to the Cortex-M series I would recommend the "The Definitive Guide to the ARM Cortex-M3" book. It doesn;t cover all of the Cortex-M4 changes, but teaches all of the essentials needed for getting started on the Cortex-M - most of the content is the same for both.
HTH,
Iso
Cancel
Vote up
0
Vote down
Cancel