2.3 Floating-Point System ID Register

The FPSID characteristics are:

Purpose
Provides top-level information about the floating-point implementation.
Usage constraints

This register is accessible as follows:

EL0

(NS)

EL0

(S)

EL1

(NS)

EL1

(S)

EL2

EL3

(SCR.NS = 1)

EL3

(SCR.NS = 0)

- - Config RO Config Config RO
Configurations

Access to this register depends on the values of CPACR.{cp10,cp11}, NSACR.{cp10,cp11}, and HCPTR.{TCP10,TCP11}. For details of which field values permit access at specific exception levels, see the ARM® Architecture Reference Manual ARMv8, for ARMv8-A architecture profile .

This register largely duplicates information held in the MIDR. ARM deprecates use of it.

Attributes
FPSID is a 32-bit register.
Figure 2-1 FPSID bit assignments
To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


Implementer, [31:24]

Indicates the implementer:

0x41ARM Limited.
SW, [23]

Software bit. This bit indicates that a system provides only software emulation of the floating-point instructions:

0The system includes hardware support for floating-point operations.
Subarchitecture, [22:16]

Subarchitecture version number:

0x03VFPv3 architecture, or later, with no subarchitecture. The entire floating-point implementation is in hardware, and requires no software support code. The MVFR0, MVFR1 and MVFR2 registers indicate the VFP architecture version.
Part number, [15:8]

Indicates the part number for the floating-point implementation:

0x40v8-A profile
Variant, [7:4]

Indicates the variant number:

0x1Cortex®‑A32 processor.
Revision, [3:0]

Indicates the revision number for the floating-point implementation:

0x1r0p1.

To access the FPSID:

VMRS <Rt>, FPSID ; Read FPSID into Rt
Non-ConfidentialPDF file icon PDF versionARM 100243_0001_00_en
Copyright © 2016, 2017 ARM Limited or its affiliates. All rights reserved.