Open main menu

CDOT Wiki β

Changes

ARMv8

274 bytes added, 20:54, 14 September 2015
Implementations of ARMv8
== Implementations of ARMv8 ==
 
ARM does not implement its processors; except for a few test kits (e.g., the "Juno" ARMv8 systems), ARM licenses their intellectual property to other companies for implementation. This has resulted in dozens of different companies producing ARM processors.
ARM licenses their technology at several different levels:
Most SoCs offer more features than are used in any one system and more features than can be exposed on the pins which are physically present on the chip. A pin multiplexor system, or PinMux, is used to select which signals are currently exposed on the SoC's pins. For example, a given group of pins could be used for an SPI serial interface, or an I<super>2</super>C serial interface, or as general-purpose input/output (GPIO) connections, but are only connected to one of those functions at a time.
In addition, a number of SoCs use high-speed serial interfaces for multiple purposes -- a pool of 40 highmulti-speed gigabit-per-second serial interfaces can be provided, for example, and it is up to the board designer to decide how many of those interfaces to use for as the lanes of a PCIe bus, gigabit ethernet ports, or as SATA ports.
The operating system kernel has the required mechanisms to set up the PinMux as needed for a given board, and to connect serial controllers to the appropriate drivers. In order to do this, it is critical that the kernel receive not only an accurate description of the SoC, but also an accurate description of how that SoC is wired up in the current system. This information is passed in via a Device Tree or an ACPI description (ACPI is mandated by the SBSA specification for servers).