Good info, keep it coming as you learn more. Every once in a while I pick up an ARM datasheet and think I need to learn more. Haven't found the time/motivation to get serious yet though :~
My understanding is that CMSIS is a hardware abstraction layer for the Cortex-M series meant to provide a common interface to various vendor's chips. I'm not clear how successful it is, or to what extent various vendors comply with it.
I saw a question whether NXP had abandoned CMSIS, but they replied that their LPCOpen framework was CMSIS-compliant. With Atmel, I think that ASF comprises their effort for CMSIS compliance.
I've been looking a little at the Atmel SAM D series and also the NXP LPC800 series. NXP gets points for removing restrictions on the free version of their LPCXpresso IDE, namely C++ support is now included, and code size limitations eased or removed.
For me, one of the big selling points with Arduino is built-in or easily added common interfaces such as I2C, SPI, asynchronous serial, etc. I don't particularly care to reinvent those wheels for ARM but I'm hoping that CMSIS may be an answer.