CMSIS-SVD: SVD File Schema Levels

| CMSIS-SVD Version 1.3.1 CMSIS System View Description

- Main Page
- Usage and Description
- Reference

Content
SVD File Schema Levels

## Content
| Device Level
| Peripherals Level
| Registers Level
| Fields Level
| Enumerated Values Level

## Description

This section specifies the SVD file format Version 1.0. Each subsection defines one level of hierarchy and lists all mandatory and optional language elements as well as their type. A brief example description snippet demonstrates the usage of the elements.

Note
  - The sequence of elements in CMSIS-SVD is mandatory.
  - Optional elements are highlighted in green.
  - Mandatory elements are highlighted in blue. Optional sections can contain mandatory elements, which must be specified when the optional section is used. In this case the mandatory elements are also highlighted in blue.

# Names

All name tags must comply with the ANSI C identifier naming restrictions (identifierType). In particular they must not contain any spaces or special characters. This is necessary to support the generation of device header files thus providing consistency between the names being shown by the debugger and the symbols being used in the CMSIS compliant target software.

# Constants

Number constants shall be entered in hexadecimal, decimal, or binary format.

- The Hexadecimal format is indicated by a leading "0x".
- The Binary format is indicated by a leading "#".
- All other formats are interpreted as decimal numbers.
- The value tag in enumeratedValue accepts 'do not care' bits represented by "x".

# Comments

Comments have the standard XML format.

- Start a comment with "<!–".
- End a comment with "–>".

# Empty Tags

- Single tags are not supported (for example, <name>).
- The tag content must not consist of an empty string (instead, omit optional tags).

Remarks
  The latest CMSIS-SVD Schema File is provided alongside this document.