Appendix A: Glossary

A number of acronyms are used in the embedded development space. This glossary attempts to define any acronyms used in this book.

SVD

System View Description.

The CMSIS-SVD specification formalizes the description of the system contained within a microcontroller. This specification was designed with ARM Cortex-M microcontrollers in mind, however it is still applicable to other architectures.

SVD files are XML and contain definitions for peripherals which can be consumed by tools such a svd2rust to generate Peripheral Access Crates.

PAC

Peripheral Access Crate.

Provides a type-safe, low-level API for interacting with the device's hardware peripherals. For more information on the generated API please refer to the svd2rust documentation.

HAL

Hardware Abstraction Layer.

Provides higher-level abstractions over hardware peripherals which are more easily used by developers. These libraries are generally implemented on top of Peripheral Access Crates, and often implement the various traits provided by embedded-hal.