UniPro explained

UniPro (or Unified Protocol) is a high-speed interface technology for interconnecting integrated circuits in mobile and mobile-influenced electronics. The various versions of the UniPro protocol are created within the MIPI Alliance (Mobile Industry Processor Interface Alliance), an organization that defines specifications targeting mobile and mobile-influenced applications.

The UniPro technology and associated physical layers aim to provide high-speed data communication (gigabits/second), low-power operation (low swing signaling, standby modes), low pin count (serial signaling, multiplexing), small silicon area (small packet sizes), data reliability (differential signaling, error recovery) and robustness (proven networking concepts, including congestion management).

UniPro version 1.6 concentrates on enabling high-speed point to point communication between chips in mobile electronics. UniPro has provisions for supporting networks consisting of up to 128 UniPro devices (integrated circuit, modules, etc.). Network features are planned in future UniPro releases. In such a networked environment, pairs of UniPro devices are interconnected via so-called links while data packets are routed toward their destination by UniPro switches. These switches are analogous to the routers used in wired LAN based on gigabit Ethernet. But unlike a LAN, the UniPro technology was designed to connect chips within a mobile terminal, rather than to connect computers within a building.

History and aims

The initiative to develop the UniPro protocol came forth out of a pair of research projects at respectively Nokia Research Center[1] and Philips Research.[2] Both teams independently arrived at the conclusion that the complexity of mobile systems could be reduced by splitting the system design into well-defined functional modules interconnected by a network. The key assumptions were thus that the networking paradigm gave modules well-structured, layered interfaces and that it was time to improve the system architecture of mobile systems to make their hardware- and software design more modular. In other words, the goals were to counteract the rising development costs, development risks and time-to-market impact of increasingly complex system integration.

In 2004, both companies jointly founded what is now MIPI's UniPro Working Group. Such multi-company collaboration was considered essential to achieve interoperability between components from different component vendors and to achieve the necessary scale to drive the new technology.

The name of both the working group and the standard, UniPro, reflects the need to support a wide range of modules and wide range of data traffic using a single protocol stack. Although other connectivity technologies (SPI, PCIe, USB) exist which also support a wide range of applications, the inter-chip interfaces used in mobile electronics are still diverse which differs significantly from the (in this respect more mature) computer industry.

In January 2011, UniPro Version 1.40[3] was completed. Its main purpose is full support for a new Physical Layer: M-PHY including support for power modes change and peer device configuration. In July 2012 UniPro v1.40 has been upgraded to UniPro v1.41[4] to support the newer higher speed M-PHY v2.0.[5] The UniPro v1.4x specifications have been released together with a formal specification model (SDL).

The final draft of Version 1.6[6] of the UniPro specification was completed in August 2013. Its acknowledgements list 19 engineers from 12 companies and organizations: Agilent, Cadence, IEEE-ISTO, Intel, nVidia, Nokia, Qualcomm, Samsung, STMicroelectronics, Synopsys, Texas Instruments and Toshiba.The UniPro v1.6 Specification is an update to the UniPro v1.41.00 Specification, and consists solely of the UniPro specification document, SDL is no longer supported.The UniPro v1.6 Specification references the following documents:

To date, several vendors have announced the availability of UniPro IP blocks and various chip suppliers have created implementations that are at various phases of development. In the meantime, the MIPI UniPro Working Group is setting up a conformance test suite[8] and is preparing future extensions of the technology (see UniPro Versions and Roadmap).

On January 30, 2018, JEDEC published the UFS 3.0 standard which uses MIPI M-PHY v4.1 (with HS-Gear4) and MIPI UniPro v1.8 for mobile memory with data rates up to 2900 MB/s (11,6 Gbit/s per lane, 2 lanes, 23,2 Gbit/s total).

Main features

  1. gigabit/s - serial technology with a number of bandwidth scaling options
  2. generic - can be used for a wide range of applications and data traffic types
  3. scalable - from individual links to a network with up to 128 UniPro devices
  4. low-power - optimized for small battery-powered systems
  5. reliability - data errors detected and correctable via retransmission
  6. hardware friendly - can be implemented entirely in hardware where needed
  7. software friendly - similar concepts to familiar network technologies
  8. bandwidth utilization - provides features to manage congestion and control arbitration
  9. shareable - different traffic types and UniPro devices can share pins and wires
  10. testable - since version 1.1, UniPro mandates features to facilitate automated conformance testing

Layered architecture

UniPro associated with its underlying PHY layer is a layered protocol stack that covers layers L1 to L4 of the OSI Reference Model for networking. UniPro introduces an extra layer L1.5 between L1 and L2 which can be regarded as a sub-layer of OSI's layer L1.

Multiple applications

UniPro's strict layering enables it to be used for a wide range of applications:

Alternative physical layers

UniPro's layered architecture also allows it to support multiple physical layer (L1, PHY) technologies even within a single network. This is analogous to TCP/IP which can run on a wide range of lower-layer technologies. In the case of UniPro, two PHY technologies are supported for off-chip use.

UniPorts

These PHY technologies are covered in separate MIPI specifications[11] [12] (which are referenced by the UniPro specification. Note that the term UniPort is used to represent the actual port on a chip which conforms to the UniPro specification for its upper layers (L1.5 to 4) and a MIPI PHY specification for L1. As there are two PHY technologies, these are respectively known as UniPort-D (UniPro with D-PHY) and UniPort-M (UniPro with M-PHY).

Phased roadmap

The UniPro 1.0 specification[13] was approved by the MIPI Board of Directors on January 14, 2008. UniPro 1.1,[14] that was completed in July 2009, aims to improve readability, provides a reference model (in SDL) for two of the four UniPro protocol layers, and provides features to facilitate automated conformance testing.

The architects designing UniPro intended from the start to release the technology as a step-wise roadmap with backward compatibility. UniPro 1.1 is designed to be fully backwards compatible with UniPro 1.0. The main purpose of UniPro 1.40 and UniPro v1.41 (UniPro v1.4x) is to support an additional physical layer, the M-PHY. Furthermore, UniPort-M features local and remote control of a peer UniPro device that can be used for example to control various supported power modes of the link.Planned roadmap steps beyond UniPro v1.4x aim to provide specifications for network-capable endpoint and network switch devices.

The UniPro v1.6 Specification was designed to ensure interoperability with UniPro v1.41.00 when using the M-PHY physical layer. As D-PHY is no longer supported on v1.60, backwards compatibility for D-PHY operation cannot be maintained.

Scope and applicability

UniPro and its underlying physical layer were designed to support low power operation needed for battery-operated systems. These features range from power-efficient high-speed operation to added low-power modes during idle or low bandwidth periods on the network. Actual power behavior is, however, highly dependent on system design choices and interface implementation.

The UniPro protocol can support a wide range of applications and associated traffic types. Example chip-to-chip interfaces encountered in mobile systems:

Note that such applications require an application protocol layer on top of UniPro to define the structure and semantics of the byte streams transported by UniPro. These can be done by simply porting existing data formats (e.g. tracing, pixel streams, IP packets), introducing new proprietary formats (e.g. chip-specific software drivers) or defining new industry standards (e.g. UFS for memory-like transactions).

Applications which are currently believed to be less suitable for UniPro are:

Versions and roadmap

Version Text freeze Formal release Description
UniPro 0.80.006 September 200626 February 2007Technology preview of UniPro 1.0
UniPro 1.00.0025 August 200714 January 2008Limited changes compared to UniPro 1.0. All the basics for a chip-to-chip link via the D-PHY
UniPro 1.10.0029 July 200922 January 2010"Hardened": formal reference models for 2 protocol layers; readability and testability improvements
UniPro 1.40.0031 January 2011 28 April 2011 "M-PHY": support for a new physical layer technology. M-PHY v1.0 with HS-G1. Formal reference model for the whole stack. Peer Configuration. Versioning.
UniPro 1.41.004 May 201230 July 2012Upgrade to support M-PHY v2.0 with HS-G2
UniPro 1.60.006 August 201330 September 2013Upgrade to support M-PHY v3.0 with HS-Gear3, Power Reduction during M-PHY Sleep and Stall States, Scrambling for EMI MitiUpgrade to support M-PHY v3.0 with HS-Gear3gation, Removal of D-PHY and SDL Reference
UniPro 1.88 February 2018[15] Upgrade to support M-PHY v4.1 with HS-Gear4[16]
future releasest.b.d.t.b.d."Endpoint": fully networkable endpoint including inband configuration protocol."Switches": network switches.
Sharing of the link between several applications.
Dynamic Connection Management.
Hot Plugging.
Security features.
Real Time Traffic Class.

Protocol stack architecture

See main article: UniPro protocol stack. The UniPro protocol stack follows the classical OSI reference architecture (ref). For practical reasons, OSI's Physical Layer is split into two sub-layers: Layer 1 (the actual physical layer) and Layer 1.5 (the PHY Adapter layer) which abstracts from differences between alternative Layer 1 technologies.

UniPro protocol stack (this color-coding is a long-standing UniPro tradition)
Layer # Layer name Functionality Data unit name
LAApplicationPayload and transaction semanticsMessage
DME
Layer 4TransportPorts, multiplexing, flow controlSegment
Layer 3NetworkAddressing, routingPacket
Layer 2Data linkSingle-hop reliability and priority-based arbitrationFrame
Layer 1.5PHY adapterPhysical layer abstraction and multi-lane supportUniPro symbol
Layer 1Physical layer (PHY)Signaling, clocking, line encoding, power modesPHY symbol

The UniPro specification itself covers Layers 1.5, 2, 3, 4 and the DME (Device Management Entity). The Application Layer (LA) is out of scope because different uses of UniPro will require different LA protocols. The Physical Layer (L1) is covered in separate MIPI specifications in order to allow the PHY to be reused by other (less generic) protocols if needed(ref).

OSI Layers 5 (Session) and 6 (Presentation) are, where applicable, counted as part of the Application Layer.

Discussion of value proposition

UniPro and system integration

UniPro is specifically targeted by MIPI to simplify the creation of increasingly complex products. This implies a relatively long-term vision about future handset architectures composed of modular subsystems interconnected via stable, standardized, but flexible network interfaces. It also implies a relatively long-term vision about the expected or desired structure of the mobile handset industry, whereby components can readily interoperate and components from competing suppliers are to some degree plug compatible.

Similar architectures have emerged in other domains (e.g. automotive networks, largely standardized PC architectures, IT industry around the Internet protocols) for similar reasons of interoperability and economy of scale. It is nevertheless too early to predict how rapidly UniPro will be adopted by the mobile phone industry.

High bandwidth and costs

High speed interconnects like UniPro, USB or PCI Express typically cost more than low speed interconnects (e.g. I2C, SPI or simple CMOS interfaces). This is for example because of the silicon area occupied by the required mixed-signal circuitry (Layer 1), as well as due to the complexity and buffer space required to automatically correct bit errors. UniPro's cost and complexity may thus be an issue for certain low bandwidth UniPro devices.

Adoption rate

As Metcalfe[17] postulated, the value of a network technology scales with the square of the number of devices which use that technology. This makes any new cross-vendor interconnect technology only as valuable as the commitment of its proponents and the resulting likelihood that the technology will become self-sustaining. Although UniPro is backed by a number of major companies and that the UniPro incubation time is more or less in line with comparable technologies (USB, Internet Protocol, Bluetooth, in-vehicle networks), adoption rate is presumed to be main concern about the technology. This is especially true because the mobile industry has virtually no track record on hardware standards which pertain to the internals of the product.

A key driver for UniPro adoption is JEDEC Universal Flash Storage (UFS) v2.0 which uses MIPI UniPro and M-PHY as the basis for the standard. There are several implementation of the standard which are expected to hit the market

Availability of application protocols

Interoperability requires more than just alignment between the peer UniPro devices on protocol layer L1–L4: it also means aligning on more application-specific data formats, commands and their meaning, and other protocol elements. This is a known intrinsically unsolvable problem in all design methodologies: you can agree on standard and reusable "plumbing" (lower hardware/software/network layers), but that doesn't automatically get you alignment on the detailed semantics of even a trivial command like ChangeVolume(value) or the format of a media stream.

Practical approaches thus call for a mix of several approaches:

Licensing

The Membership Agreement[19] of the MIPI Alliance[20] specifies the licensing conditions for MIPI specifications for member companies. Royalty-free licensing conditions apply within the main target domain of the MIPI Alliance, mobile phones and their peripherals, whereas RAND licensing conditions apply in all other domains.

See also

External links

Notes and References

  1. http://research.nokia.com/publications/embedded_network_architectures_mobile_devices Nokia's Discobus research project
  2. The MICA (Mobile Interconnect-Centric Architectures) project, led by Peter van den Hamer, started within Philips but later became, via NXP, part of ST-Ericsson.
  3. https://members.mipi.org/mipi-adopters/file-fix/Specifications/Board%20Approved/mipi_UniPro_specification_v1-40-00.pdf UniPro 1.40.00 Specification
  4. https://members.mipi.org/mipi-adopters/file-fix/Specifications/Board%20Approved/mipi_UniPro_specification_v1-41-00.pdf UniPro 1.41.00 Specification
  5. https://members.mipi.org/mipi-adopters/file-fix/Specifications/Board%20Approved/mipi_M-PHY_specification_v2-0.pdf M-PHY v2.0 Specification
  6. https://members.mipi.org/mipi-adopters/file-fix/Specifications/Board%20Approved/mipi_UniPro_specification_v1-6.pdf UniPro 1.60.00 Specification
  7. https://members.mipi.org/mipi-adopters/file-fix/Specifications/Board%20Approved/mipi_M-PHY_specification_v3-0.pdf M-PHY v3.0 Specification
  8. https://members.mipi.org/mipi-unipro/file-fix/Subgroups/Testing/Latest_Documents_Dec2010/mipi_specification_UniPro_v1.4_Testing_v0.08r0.07.pdf, MIPI Alliance Specification for UniPro v1.4 Testing
  9. http://www.jedec.org/standards-documents/focus/flash/universal-flash-storage-ufs JEDEC UFS
  10. https://members.mipi.org/mipi-adopters/file/Specifications/Board%20Approved/MIPI%20UniPro%20PIE%20Specification_v00-90-00c.pdf MIPI Alliance Specification for Processor Interface Emulation (PIE) v0.90.00
  11. https://members.mipi.org/mipi-adopters/file-fix/Specifications/Board%20Approved/mipi_D-PHY_specification_v01-00-00.pdf MIPI D-PHY 1.00 specification
  12. https://members.mipi.org/mipi-adopters/file-fix/Specifications/Board%20Approved/mipi_M-PHY_specification_v1-00-00.pdf MIPI Specification for M-PHY version 1.00.00
  13. https://members.mipi.org/mipi-adopters/file/Specifications/Board%20Approved/MIPI%20UniPro%20Specification_v01-00-00.pdf MIPI Alliance Standard for Unified Protocol v1.00.00 (UniProSM)
  14. https://members.mipi.org/mipi-adopters/file/Specifications/Board%20Approved/MIPI%20UniPro%20Specification_v01-10-00.pdf UniPro 1.10 spec
  15. Web site: MIPI Alliance Releases MIPI UniPro v1.8 with Increased Performance and Improved Quality of Service. www.mipi.org. en. 2021-04-19.
  16. Web site: JEDEC Publishes Universal Flash Storage (UFS & UFSHCI) Version 3.0 and UFS Card Extension Version 1.1 JEDEC. www.jedec.org. en. 2018-01-31.
  17. [Metcalfe's law]
  18. [Network on Terminal Architecture|NoTA]
  19. https://members.mipi.org/mipi/file/Governing%20Documents/mipi-ma-2006.pdf MIPI Membership Agreement November 1, 2006
  20. http://www.mipi.org MIPI Alliance web site