CMSIS-SVD
Version 1.10
CMSIS System View Description
|
The CPU section describes the processor included in the microcontroller device. This section is mandatory if the SVD file shall be used for the device header file generation.
<cpu> <name>cpuNameType<name> <revision>revisionType<revision> <endian>endianType<endian> <mpuPresent>xs:boolean<mpuPresent> <fpuPresent>xs:boolean<fpuPresent> <vtorPresent>xs:boolean<vtorPresent> <nvicPrioBits>scaledNonNegativeInteger<nvicPrioBits> <vendorSystickConfig>xs:boolean<vendorSystickConfig> </cpu>
Element Name | Description | Type | Occurrence |
---|---|---|---|
name | The predefined tokens are:
| cpuNameType | 1..1 |
revisionType | Defines the HW revision of the processor. The defined version format is rNpM (N,M = [0 - 9]). | revisionType | 1..1 |
endian | Defines the endianess of the processor being one of:
| endianType | 1..1 |
mpuPresent | Indicates that the processor is equipped with a memory protection unit (MPU). This tag is either set to true or false, 1 or 0. | boolean | 1..1 |
fpuPresent | Indicates that the processor is equipped with a hardware floating point unit (FPU). Cortex-M4 is the only available Cortex-M processor with an optional FPU. This tag is either set to true or false, 1 or 0. | boolean | 1..1 |
vtorPresent | This is an optional flag used for the Cortex-M0+ based devices only. It indicates whether the Vector Table Offset Register (VTOR) is implemented in the Cortex-M0+ device or not. This tag is either set to true or false, 1 or 0. If it is not specified VTOR is assumed to be present. | boolean | 1..1 |
nvicPrioBits | Defines the number of bits that are available in the Nested Vectored Interrupt Controller (NVIC) for configuring the priority. | scaledNonNegativeInteger | 1..1 |
vendorSystickConfig | Indicates whether the processor implements a vendor-specific System Tick Timer. If false, then the ARM defined System Tick Timer is available. If true, then a vendor-specific System Tick Timer must be implemented. This tag is either set to true or false, 1 or 0. | boolean | 1..1 |
This example describes a Cortex-M4 core of HW revision r0p0, with fixed little endian memory scheme, including Memory Protection Unit and hardware Floating Point Unit. The Nested Vectored Interrupt Controller uses 4 bits for configuring the priority of an interrupt. It is equipped with the standard System Tick Timer as defined by ARM.