CMSIS-SVD: System View Description

| CMSIS-SVD Version 1.3.1 CMSIS System View Description

- Main Page
- Usage and Description
- Reference

System View Description

## Introduction

The CMSIS System View Description format(CMSIS-SVD) formalizes the description of the system contained in ARM Cortex-M processor-based microcontrollers, in particular, the memory mapped registers of peripherals. The detail contained in system view descriptions is comparable to the data in device reference manuals. The information ranges from high level functional descriptions of a peripheral all the way down to the definition and purpose of an individual bit field in a memory mapped register.

CMSIS-SVD files are developed and maintained by silicon vendors. Silicon vendors manage their descriptions in a central, web-based Device Database. The CMSIS-SVD files are down-loadable via a public web interface once they have been released by the silicon vendor. Tool vendors use CMSIS-SVD files for providing device-specific debug views of peripherals in their debugger. Last but not least, CMSIS-compliant device header files are generated from CMSIS-SVD files.

## CMSIS-SVD Benefits

- For Software Developers:
  - Consistency between device header file and what is being displayed by the debugger.
  - Detailed information about peripherals, registers, fields, and bit values from within the debugger, without the need to reference device documentation.
  - Public access via a web interface to new and updated descriptions as they become available from silicon vendors.
  - Improved software development efficiency.

- For Silicon Vendors:
  - A tool vendor independent file format enables early device support by a wide range of toolchains with limited effort.
  - The XML-based format helps ease the integration into in-house design flows.
  - Automated generation of CMSIS compliant device header files.
  - Full control throughout the life cycle of the CMSIS-SVD files from creation to maintenance via the web-based Device Database.

- For Tool Vendors:
  - Unified file format across silicon vendors helps the efficiency of supporting a wide range of new devices in a timely manner.
  - Silicon vendors provide early review access to individuals ahead of the publishing date.
  - Updated descriptions are available over the web simplifying the maintenance of device support.

## The Web Infrastructure

CMSIS-SVD Management Processes

The diagram illustrates the management process steps for uploading, validating, reviewing, publishing, and downloading CMSIS-SVD files.

- Managing Files: A CMSIS-SVD file is uploaded by a silicon vendor via the web interface (Device Database). The system performs a check against the CMSIS-SVD Schema and runs the SVDConv consistency checker. Only if both checks were successful the file will be stored in the SVD Storage. Files can be added, replaced, and deleted.

- Managing Devices: The silicon vendor creates an entry for each of his devices in the database by defining a name and associating it with a CMSIS-SVD file from the SVD Storage. The publishing date set forth for a device is used by the system to determine when this device becomes visible in the public device database. Prior to the publishing date, the silicon vendor can grant review access to individuals for an individual device. Reviewers get notified by e-mail about a device being made available for review.

- Public Download: Public access to the silicon vendor specific CMSIS-SVD download pages is provided from cmsis.arm.com or www.arm.com/cmsis. Select the CMSIS-SVD tab and select the Silicon Vendor of interest from the list. For the public download of the CMSIS-SVD files of published devices it is mandatory to:
  - Be logged in on the ARM web site.
  - Have accepted a silicon vendor specific End Users License Agreement (EULA).

More information about the web infrastructure can be found in the CMSIS-SVD Web Interface User Guide

## Language Outline

- SVD File Format

## Language Specification

- SVD File Schema Levels
- SVD Extensions

## CMSIS-SVD in ARM::CMSIS Pack

The following files relevant to CMSIS-SVD are present in the ARM::CMSIS Pack directories:

File/Folder | Content
--- | ---
CMSIS\Documentation\SVD | This documentation
CMSIS\SVD | Exemplary SVD file (ARM_Example.svd) and generated header file (ARM_Example.h).