ARM Processor Documentation
ARM's documentation set can be found at http://infocenter.arm.com/. Below are listed direct links to some of the more useful documents.
Each processor implements a specific version of the ARM Architecture, which covers things like the actual instruction set available. This is detailed in the appropriate ARM Architecture Reference Manual.
For more information on ARM Architectures, see: http://www.arm.com/products/processors/technologies/instruction-set-architectures.php
The actual implementation of the Architecture in hardware for a particular processor, including things like instruction timings, is then covered in the appropriate Technical Reference Manual.
For more information on ARM processors, see: http://www.arm.com/products/processors/cortex-m/index.php
Cortex-M0 based parts
ARM v6M Architecture Reference Manual (ARM DDI 0419B)
Cortex-M0 Technical Reference Manual (Revision: r0p0)
Cortex-M0 Devices Generic User Guide
We would also recommend the following book:
The Definitive Guide to the ARM Cortex-M0, by Joseph Yiu, ISBN 978-0123854773
Cortex-M3 based parts
ARMv7-M Architecture Reference Manual (ARM DDI 0403D)
Cortex-M3 Technical Reference Manual (Revision r2p1)
Cortex-M3 Devices Generic User Guide
We would also recommend the following book:
The Definitive Guide to the ARM Cortex-M3, Second Edition, by Joseph Yiu, ISBN 978-1856179638
Cortex-M4 based parts
ARMv7-M Architecture Reference Manual (ARM DDI 0403D)
Cortex-M4 Technical Reference Manual (Revision r0p1)
Cortex-M4 Devices Generic User Guide
ARM7 and ARM9 based parts
ARMv5 Architecture Reference Manual
Technical Reference Manuals for ARM9 processors (for example ARM926EJ-S)
Technical Reference Manuals for ARM7 processors (for example ARM7TDMI)
