So is the Cortex M0 and Cortex M3 binary compatible?

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

So is the Cortex M0 and Cortex M3 binary compatible?

1,353件の閲覧回数
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by NYEOH on Tue Oct 19 01:03:30 MST 2010
Hi, please advice on the following statement. I read this in an article

[B]The Cortex-M0 incorporates technologies first introduced in the ARM Cortex-M3 processor to enable faster software development and ensure a binary upwards compatible roadmap to devices based on ARM Cortex-M3 and beyond. These features are common to every processor in the Cortex-M processor family.[/B]

Can someone confirm if this is true? Does it mean that if I compiled software for an M0, I can use that same binary file for an M3? Or does it mean something else.

Any comments appreciated. Thank you.
0 件の賞賛
返信
2 返答(返信)

1,250件の閲覧回数
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by NYEOH on Tue Oct 19 21:20:45 MST 2010
Thanks for your help
0 件の賞賛
返信

1,250件の閲覧回数
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by CodeRedSupport on Tue Oct 19 01:55:09 MST 2010
It is true that the Cortex-M3 is a superset of the Cortex-M0 instruction set. If you had 'pure' code (makes no use of other parts of the system) then code compiled for the M0 would run on the M3

However, the processor tends to be supplied as part of a larger system, such as an MCU - e.g. LPC1114 or LPC1343 - and these systems are typically not compatible, because of the peripherals, memory maps, etc etc.

Also, note that if you recompiled the same code for Cortex-M3 it would almost certainly run faster as the M3 has additional instructions that will allow the compiler to generate better code.

So, the answer is a qualified yes, but it depends on what you are doing and expecting.
0 件の賞賛
返信