Sure, the most notable differences are that the M0 is a Von Neuman
architecture, and has a 3 stage pipeline. It is not capable of single
cycle I/O access.
The M0+ on the other hand is a modified Harvard architecture and has a 2
stage pipeline. It is capable of single cycle I/O access. It can also
support an optional MAY (memory protection unit).
Sorry auto correct took over the last point was MPU not MAY.
On Dec 10, 2013 8:18 PM, "Matt Wood" mattwood2000@gmail.com wrote:
Sure, the most notable differences are that the M0 is a Von Neuman
architecture, and has a 3 stage pipeline. It is not capable of single
cycle I/O access.
The M0+ on the other hand is a modified Harvard architecture and has a 2
stage pipeline. It is capable of single cycle I/O access. It can also
support an optional MAY (memory protection unit).
I know that CM0+ typically has lower dynamic current than CM0 but I didn't ask about that.
What is the difference in registers (visible from EmbSys) in between CM0,CM0+ (without MPU) and CM1 because you clearly see the necessity of maintaining that in separate folders? If you do not see the difference then I suggest placing whole ARMv6-M (along with Cortex M0++, M0+++, M1+, M1+++, with or without MPU and alike) in one folder that would be easier to maintain than keeping them separate.
Another problem discussed in here was the structure of the EmbSys because relying on the core type seems obscure/impractical for the user. Only the Vendor and chip marking should be used. IMHO.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
With all the respect, can you list the differences in core registers in between other ARMv6-M marketing names, notably Cortex M0, M0+ and M1?
Sure, the most notable differences are that the M0 is a Von Neuman
architecture, and has a 3 stage pipeline. It is not capable of single
cycle I/O access.
The M0+ on the other hand is a modified Harvard architecture and has a 2
stage pipeline. It is capable of single cycle I/O access. It can also
support an optional MAY (memory protection unit).
Hope this helps.
Regards, Matt.
On Dec 9, 2013 5:33 PM, "Brutte" brutte@users.sf.net wrote:
Sorry auto correct took over the last point was MPU not MAY.
On Dec 10, 2013 8:18 PM, "Matt Wood" mattwood2000@gmail.com wrote:
Related
Patches:
#18The question was:
I know that CM0+ typically has lower dynamic current than CM0 but I didn't ask about that.
What is the difference in registers (visible from EmbSys) in between CM0,CM0+ (without MPU) and CM1 because you clearly see the necessity of maintaining that in separate folders? If you do not see the difference then I suggest placing whole ARMv6-M (along with Cortex M0++, M0+++, M1+, M1+++, with or without MPU and alike) in one folder that would be easier to maintain than keeping them separate.
Another problem discussed in here was the structure of the EmbSys because relying on the core type seems obscure/impractical for the user. Only the Vendor and chip marking should be used. IMHO.
Thanks again for your work.
Will be in 0.2.4, checked in as r151