Server Base System Architecture: Difference between revisions

Content deleted Content added
Spelled out PE
JMCorey (talk | contribs)
Fill in some synopsis based on a quick read of the spec and reference links.
Line 1:
The '''Server Base System Architecture''' ('''SBSA''') is a hardware system architecture for [[server (computing)|server]]s based on 64-bit [[ARM architecture|ARM]] processors.<ref>{{cite news |author=Peter Bright |date={{date|2014-01-30}} |title=ARM finally defines a platform as it sets its sights on the server room |publisher=[[Ars Technica]] |url=https://arstechnica.com/information-technology/2014/01/arm-finally-defines-a-platform-as-it-sets-its-sights-on-the-server-room/ }}</ref><ref>{{cite news |author=Johan De Gelas |date={{date|2014-01-29}} |title=ARM and Partners Deliver First ARM Server Platform Standard |publisher=[[AnandTech]] |url=http://www.anandtech.com/show/7721/arm-and-partners-deliver-first-arm-server-platform-standard }}</ref><ref>{{cite press release |title=ARM Ecosystem Collaborates to Deliver Initial Server Platform Standard |date={{date|2014-01-29}} |publisher=[[ARM Holdings]] |url=http://www.arm.com/about/newsroom/arm-ecosystem-collaborates-to-deliver-initial-server-platform-standard.php }}</ref><ref>{{cite news |author=Jonathan Corbet |date={{date|2014-02-05}} |title=ARM, SBSA, UEFI, and ACPI |publisher=[[LWN.net]] |url=https://lwn.net/Articles/584123/ }}</ref>
 
== Rationale ==
It attempts to standardize PE (ARM Processing Element) features and key aspects of system architecture. It specified features which firmware, OS and hypervisors can rely on, to enable a suitably-built single OS image to run on all hardware compliant with this specification.
 
Historically, ARM-based products have often been tailored for specific applications and power profiles. Variation between ARM-based hardware platforms has been an impediment requiring operating system adjustments for each product.
The architecture compliance suite to check if a system is compliant to the SBSA specification is available as open source software. It can be downloaded from https://github.com/ARM-software/sbsa-acs.
 
The SBSA seeks to strengthen the ARM ecosystem by specifying a minimal set of standardized features so that an [[Operating_system|OS]] built for this standard platform should function correctly without modification on all hardware products compliant with the specification.
==See also==
 
*[[Advanced_Configuration_and_Power_Interface|ACPI]]
== Standardized Features ==
 
* CPU features
* Memory management
* Peripheral access
* Interrupts
* Watchdog (errant system detection)
 
Existing specifications for USB, PCIe, ACPI, TPM, and other standards are incorporated to solidify the specification.
 
Firmware issues are addressed separately in the Server Base Boot Requirements (SBBR) specification.
 
== Platform Validation ==
 
The architectureArchitecture complianceCompliance suiteSuite to(ACS) checkchecks ifwhether aan systemenvironment is compliant towith the SBSA specification, and is availableprovided asunder an Apache 2 open source softwarelicense. It canis be downloadedavailable fromat https://github.com/ARM-software/sbsa-acs.
 
== Levels of Compliance ==
 
The specification defines levels of compliance, with level 0 being the most basic, and successive levels building on prior levels. In the words of the spec, "Unless explicitly stated, all specification items belonging to level N apply to levels greater than N."
 
=== Level 0, 1, and 2 ===
 
Levels 0, 1, and 2 have been deprecated and folded into level 3.
 
=== Level 3 ===
 
Level 3 contains base-level specifications for:
 
* PE (Processing Element--a core) features
* Memory map
* Interrupt controller
* PPI (peripheral interrupt) assignments
* MMU behavior
* Clock and timer subsystem
* Wake up semantics
* Power state semantics
* Watchdogs
* Peripheral subsystems
 
=== Level 4 ===
 
Extends level 3, e.g. with support for RAS fault recovery extensions of ARMv8.2 spec.
 
=== Level 5 ===
 
Extends level 4, e.g. with support for stage 2 translation control from hypervisor as specified in ARMv8.4.
 
=== Level 6 ===
 
Extends level 5, e.g. with support for speculative execution safety features.
 
== Spec Versions ==
 
=== Initial public version ===
 
Initial public version of the SBSA was announced on January 29, 2014.
 
=== SBSA Version 3.0 ===
 
SBSA Version 3.0 was released on February 1, 2016.
 
=== SBSA Version 5.0 ===
 
SBSA Version 3.0 was released on May 30, 2018.
 
=== SBSA Version 6.0 ===
 
SBSA Version 3.0 was released on September 16, 2019.
 
== See also ==
 
* [[Unified_Extensible_Firmware_Interface|UEFI]]
* [[Advanced_Configuration_and_Power_Interface|ACPI]]
 
== References ==