Server Base System Architecture: Difference between revisions

Content deleted Content added
added link to the ACS source code.
Tags: Visual edit Newer user possibly adding unreferenced or improperly referenced material
GreenC bot (talk | contribs)
Rescued 1 archive link. Wayback Medic 2.5 per WP:URLREQ#anandtech.com
 
(15 intermediate revisions by 12 users not shown)
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|30 January 2014-01-30}} |title=ARM finally defines a platform as it sets its sights on the server room |publisher=[[Ars Technica]] |url=httphttps://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|29 January 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 |archive-url=https://web.archive.org/web/20140131074619/http://anandtech.com/show/7721/arm-and-partners-deliver-first-arm-server-platform-standard |url-status=dead |archive-date=January 31, 2014 }}</ref><ref>{{cite press release |title=ARM Ecosystem Collaborates to Deliver Initial Server Platform Standard |date={{date|2014-01-29}} January 2014 |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|5 February 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 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.
 
== 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.
 
=== Server Base Boot Requirements ===
[[Firmware]] issues are addressed separately in the Server Base Boot Requirements (SBBR) specification.<ref>{{Cite web|title=Server and Infrastructure|url=https://developer.arm.com/architectures/platform-design/server-systems|last=Ltd|first=Arm|website=ARM Developer|language=en|access-date=2020-05-13}}</ref>
 
== 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.
 
== Compliance levels ==
 
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.
 
=== Level 7 ===
 
Extends level 6, e.g. with support for Arm Memory System Resource Partitioning and Monitoring (MPAM) and Performance Monitoring Unit (PMU) features.
 
== 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 5.0 was released on May 30, 2018.
 
=== SBSA Version 6.0 ===
 
SBSA Version 6.0 was released on September 16, 2019.
 
=== SBSA Version 6.1 ===
 
SBSA Version 6.1 was released on September 15, 2020.
 
=== SBSA Version 7.0 ===
 
SBSA Version 7.0 was released on January 31, 2021.
 
=== SBSA Version 7.1 ===
 
SBSA Version 7.1 was released on October 6, 2022.
 
 
== See also ==
 
* [[Unified_Extensible_Firmware_Interface|UEFI]]
* [[Advanced_Configuration_and_Power_Interface|ACPI]]
 
== References ==