Article de reference

UniPro

UniPro (ou Unified Protocol ) est une technologie d'interface à haut débit pour l'interconnexion de circuits intégrés dans l'électronique mobile et influencée par la téléphonie ...

UniPro (ou Unified Protocol ) est une technologie d'interface à haut débit pour l'interconnexion de circuits intégrés dans l'électronique mobile et influencée par la téléphonie mobile. Les différentes versions du protocole UniPro sont créées au sein de la MIPI Alliance (Mobile Industry Processor Interface Alliance), une organisation qui définit des spécifications ciblant les applications mobiles et influencées par la téléphonie mobile.

La technologie UniPro et les couches physiques associées visent à fournir une communication de données à haut débit (gigabits/seconde), un fonctionnement à faible consommation d'énergie (faible signalisation de swing, modes veille), un faible nombre de broches (signalisation série, multiplexage), une petite surface de silicium (petites tailles de paquets), la fiabilité des données ( signalisation différentielle , récupération d'erreur) et la robustesse (concepts de réseau éprouvés, y compris la gestion de la congestion ).

La version 1.6 d'UniPro se concentre sur la communication point à point à haut débit entre les puces de l'électronique mobile. UniPro est prévu pour prendre en charge des réseaux comprenant jusqu'à 128 appareils UniPro (circuits intégrés, modules, etc.). Des fonctionnalités réseau sont prévues dans les prochaines versions d'UniPro. Dans un tel environnement en réseau, des paires d'appareils UniPro sont interconnectées via des liaisons tandis que les paquets de données sont acheminés vers leur destination par des commutateurs UniPro. Ces commutateurs sont analogues aux routeurs utilisés dans les réseaux locaux câblés basés sur Ethernet gigabit. Mais contrairement à un réseau local, la technologie UniPro a été conçue pour connecter des puces dans un terminal mobile, plutôt que pour connecter des ordinateurs dans un bâtiment.

Représentation schématique d'un réseau UniPro reliant des appareils UniPro et des circuits imprimés
Prototype de laboratoire d'UniPro fonctionnant sur la couche physique D-PHY

Histoire et objectifs

L'initiative de développer le protocole UniPro est née de deux projets de recherche menés respectivement au Nokia Research Center et au Philips Research Center . Les deux équipes sont arrivées indépendamment à la conclusion que la complexité des systèmes mobiles pouvait être réduite en divisant la conception du système en modules fonctionnels bien définis interconnectés par un réseau. Les hypothèses clés étaient donc que le paradigme de mise en réseau donnait aux modules des interfaces bien structurées et en couches et qu'il était temps d'améliorer l'architecture système des systèmes mobiles pour rendre leur conception matérielle et logicielle plus modulaire. En d'autres termes, les objectifs étaient de contrer l'augmentation des coûts de développement, des risques de développement et de l'impact sur le délai de mise sur le marché d'une intégration de systèmes de plus en plus complexe.

En 2004, les deux entreprises ont fondé conjointement ce qui est aujourd'hui le groupe de travail UniPro du MIPI . Cette collaboration entre plusieurs entreprises était considérée comme essentielle pour assurer l'interopérabilité entre les composants de différents fournisseurs et pour atteindre l'échelle nécessaire pour piloter la nouvelle technologie.

Le nom du groupe de travail et de la norme, UniPro, reflète la nécessité de prendre en charge une large gamme de modules et de trafic de données à l'aide d'une seule pile de protocoles. Bien qu'il existe d'autres technologies de connectivité ( SPI , PCIe , USB ) qui prennent également en charge une large gamme d'applications, les interfaces inter-puces utilisées dans l'électronique mobile sont encore diverses, ce qui diffère considérablement de l'industrie informatique (à cet égard plus mature).

En janvier 2011, la version 1.40 d'UniPro a été finalisée. Son objectif principal est la prise en charge complète d'une nouvelle couche physique : M-PHY, y compris la prise en charge du changement de mode d'alimentation et de la configuration des périphériques homologues. En juillet 2012, UniPro v1.40 a été mis à niveau vers UniPro v1.41 pour prendre en charge la nouvelle version plus rapide M-PHY v2.0. Les spécifications UniPro v1.4x ont été publiées avec un modèle de spécification formel (SDL).

La version finale de la version 1.6 de la spécification UniPro a été achevée en août 2013. Ses remerciements énumèrent 19 ingénieurs de 12 entreprises et organisations : Agilent, Cadence, IEEE-ISTO, Intel, nVidia, Nokia, Qualcomm, Samsung, STMicroelectronics, Synopsys, Texas Instruments et Toshiba. La spécification UniPro v1.6 est une mise à jour de la spécification UniPro v1.41.00 et se compose uniquement du document de spécification UniPro, SDL n'étant plus pris en charge. La spécification UniPro v1.6 fait référence aux documents suivants :

  • Spécification pour M-PHY, version 3.0
  • Spécification pour le bloc descripteur de périphérique (DDB), version 1.0

À ce jour, plusieurs fournisseurs ont annoncé la disponibilité des blocs IP UniPro et divers fournisseurs de puces ont créé des implémentations qui se trouvent à différentes phases de développement. En attendant, le groupe de travail MIPI UniPro met en place une suite de tests de conformité et prépare les futures extensions de la technologie (voir Versions et feuille de route UniPro).

Le 30 janvier 2018, JEDEC a publié la norme UFS 3.0 qui utilise MIPI M-PHY v4.1 (avec HS-Gear4) et MIPI UniPro v1.8 pour la mémoire mobile avec des débits de données jusqu'à 2900 Mo/s (11,6 Gbit/s par voie, 2 voies, 23,2 Gbit/s au total).

Caractéristiques principales

  1. gigabit/s - technologie série avec un certain nombre d'options de mise à l'échelle de la bande passante
  2. générique - peut être utilisé pour une large gamme d'applications et de types de trafic de données
  3. évolutif - des liens individuels à un réseau avec jusqu'à 128 appareils UniPro
  4. faible consommation - optimisé pour les petits systèmes alimentés par batterie
  5. fiabilité - erreurs de données détectées et corrigibles via retransmission
  6. compatible avec le matériel - peut être entièrement implémenté dans le matériel si nécessaire
  7. logiciel convivial - concepts similaires aux technologies réseau familières
  8. Utilisation de la bande passante - fournit des fonctionnalités pour gérer la congestion et contrôler l'arbitrage
  9. partageable - différents types de trafic et appareils UniPro peuvent partager des broches et des fils
  10. testable - depuis la version 1.1, UniPro impose des fonctionnalités pour faciliter les tests de conformité automatisés

Architecture en couches

UniPro associé à sa couche PHY sous-jacente est une pile de protocoles en couches qui couvre les couches L1 à L4 du modèle de référence OSI pour la mise en réseau. UniPro introduit une couche supplémentaire L1.5 entre L1 et L2 qui peut être considérée comme une sous-couche de la couche L1 de l'OSI.

Applications multiples

La stratification stricte d'UniPro lui permet d'être utilisé pour une large gamme d'applications :

  • UFS : Universal Flash Storage . Périphériques de stockage de masse de nouvelle génération spécifiés par JEDEC avec une prise en charge d'un débit de données allant jusqu'à 300 Mo/s, dans la première génération, et prenant en charge les fonctionnalités de mise en file d'attente des commandes pour augmenter la vitesse de lecture/écriture aléatoire.
  • CSI-3 : l'interface série de caméra MIPI de 3e génération dispose d'une interface évolutive à large bande passante, d'une transmission de données garantie et d'un ensemble de commandes pour l'initialisation et la configuration des composants de base.
  • GBT : MIPI Gigabit Trace. Protocole indépendant du réseau pour le transport de données de trace sur des interfaces à haut débit telles que UniPort-M ou USB 3.0.
  • DSI-2 : Interface série d'affichage MIPI de 2e génération .
  • PIE : Processor Emulation Interface. Ce protocole d'application transmet les transactions traditionnelles de lecture/écriture basées sur la mémoire telles que celles que l'on trouve sur les bus de processeur. Les applications de streaming de données (par exemple le trafic multimédia), les protocoles de type commande/réponse (par exemple pour le contrôle) et le tunneling de protocoles populaires d'autres domaines (par exemple TCP/IP ) sont également pris en charge et particulièrement encouragés car ils ont tendance à augmenter la modularité et l'interopérabilité au niveau du système en raison de leur niveau d'abstraction plus élevé.
  • UniPort-M (UniPro avec M-PHY) : permet une interface d'extension à usage général pour connecter des périphériques tels que des accélérateurs graphiques, des modules tels que le projet ARA de Google
  • UniPort-D (UniPro avec D-PHY) : permet une extension à usage général avec D-PHY, notez que D-PHY n'est pas une couche physique prise en charge pour UniPro au-delà de la spécification UniPro v1.41

Couches physiques alternatives

L'architecture en couches d'UniPro lui permet également de prendre en charge plusieurs technologies de couche physique (L1, PHY) au sein d'un même réseau. Cela est analogue à TCP/IP qui peut fonctionner sur une large gamme de technologies de couche inférieure. Dans le cas d'UniPro, deux technologies PHY sont prises en charge pour une utilisation hors puce.

UniPorts

Ces technologies PHY sont couvertes par des spécifications MIPI distinctes (qui sont référencées par la spécification UniPro. Notez que le terme UniPort est utilisé pour représenter le port réel sur une puce qui est conforme à la spécification UniPro pour ses couches supérieures (L1.5 à 4) et à une spécification MIPI PHY pour L1. Comme il existe deux technologies PHY, celles-ci sont respectivement connues sous le nom de UniPort-D (UniPro avec D-PHY) et UniPort-M (UniPro avec M-PHY).

Feuille de route par étapes

La spécification UniPro 1.0 a été approuvée par le conseil d'administration du MIPI le 14 janvier 2008. UniPro 1.1, qui a été achevé en juillet 2009, vise à améliorer la lisibilité, fournit un modèle de référence (en SDL ) pour deux des quatre couches de protocole UniPro et fournit des fonctionnalités pour faciliter les tests de conformité automatisés.

Les architectes qui ont conçu UniPro avaient dès le départ l'intention de proposer la technologie sous forme de feuille de route progressive avec rétrocompatibilité. UniPro 1.1 est conçu pour être entièrement rétrocompatible avec UniPro 1.0. L'objectif principal d'UniPro 1.40 et UniPro v1.41 (UniPro v1.4x) est de prendre en charge une couche physique supplémentaire, le M-PHY. De plus, UniPort-M permet le contrôle local et à distance d'un périphérique UniPro homologue qui peut être utilisé par exemple pour contrôler différents modes d'alimentation pris en charge de la liaison. Les étapes de la feuille de route prévues au-delà d'UniPro v1.4x visent à fournir des spécifications pour les périphériques de point d'extrémité et de commutation réseau compatibles réseau.

La spécification UniPro v1.6 a été conçue pour garantir l'interopérabilité avec UniPro v1.41.00 lors de l'utilisation de la couche physique M-PHY. Étant donné que D-PHY n'est plus pris en charge sur la version 1.60, la rétrocompatibilité pour le fonctionnement de D-PHY ne peut pas être maintenue.

Portée et applicabilité

UniPro et sa couche physique sous-jacente ont été conçus pour prendre en charge le fonctionnement à faible consommation d'énergie nécessaire aux systèmes fonctionnant sur batterie. Ces fonctionnalités vont du fonctionnement à grande vitesse et à faible consommation d'énergie aux modes à faible consommation ajoutés pendant les périodes d'inactivité ou de faible bande passante sur le réseau. Le comportement énergétique réel dépend cependant fortement des choix de conception du système et de la mise en œuvre de l'interface.

Le protocole UniPro peut prendre en charge une large gamme d'applications et de types de trafic associés. Exemples d'interfaces puce à puce rencontrées dans les systèmes mobiles :

  • Transfert de fichiers de stockage de masse : 6 Gbit/s
  • Caméra 24M pixels à 30 ips : 9 Gbit/s
  • Connectivité puce à puce : 1 Gbit à 24 Gbit/s

Notez que de telles applications nécessitent une couche de protocole d'application au-dessus d'UniPro pour définir la structure et la sémantique des flux d'octets transportés par UniPro. Cela peut être réalisé simplement en transférant des formats de données existants (par exemple, traçage, flux de pixels, paquets IP), en introduisant de nouveaux formats propriétaires (par exemple, pilotes logiciels spécifiques à la puce) ou en définissant de nouvelles normes industrielles (par exemple, UFS pour les transactions de type mémoire).

Les applications actuellement considérées comme moins adaptées à UniPro sont :

  • contrôle à faible bande passante - sauf s'il est multiplexé avec un autre trafic (préoccupation : la complexité d'UniPro est bien supérieure à celle d'I2C , par exemple )
  • échantillons audio de haute qualité (problèmes : UniPro ne distribue pas une horloge partagée à tous les appareils ; complexité d'UniPro par rapport à SLIMbus ou I2S , par exemple )
  • interfaces vers la mémoire dynamique (problème : latence pour les instructions du processeur/récupération de données)

Versions et feuille de route

Architecture de la pile de protocoles

La pile de protocoles UniPro suit l'architecture de référence OSI classique (ref). Pour des raisons pratiques, la couche physique de l'OSI est divisée en deux sous-couches : la couche 1 (la couche physique proprement dite) et la couche 1.5 (la couche d'adaptateur PHY) qui fait abstraction des différences entre les technologies de couche 1 alternatives.

La spécification UniPro elle-même couvre les couches 1.5, 2, 3, 4 et le DME (Device Management Entity). La couche application (LA) est hors de portée car différentes utilisations d'UniPro nécessiteront des protocoles LA différents. La couche physique (L1) est couverte par des spécifications MIPI distinctes afin de permettre à la PHY d'être réutilisée par d'autres protocoles (moins génériques) si nécessaire (réf.).

Les couches OSI 5 (Session) et 6 (Présentation) sont, le cas échéant, comptées comme faisant partie de la couche Application.

Discussion de la proposition de valeur

UniPro et intégration système

UniPro est spécifiquement destiné par le MIPI à simplifier la création de produits de plus en plus complexes. Cela implique une vision à relativement long terme des futures architectures de téléphones portables composées de sous-systèmes modulaires interconnectés via des interfaces réseau stables, standardisées mais flexibles. Cela implique également une vision à relativement long terme de la structure attendue ou souhaitée de l'industrie des téléphones portables, dans laquelle les composants peuvent facilement interagir et les composants des fournisseurs concurrents sont dans une certaine mesure compatibles en matière de connexion .

Des architectures similaires ont émergé dans d'autres domaines (par exemple les réseaux automobiles, les architectures PC largement standardisées, l'industrie informatique autour des protocoles Internet) pour des raisons similaires d'interopérabilité et d'économie d'échelle. Il est néanmoins trop tôt pour prédire à quelle vitesse UniPro sera adopté par l'industrie de la téléphonie mobile.

Bande passante élevée et coûts

Les interconnexions à haut débit comme UniPro, USB ou PCI Express coûtent généralement plus cher que les interconnexions à faible débit (par exemple, les interfaces I2C , SPI ou CMOS simples ). Cela est dû, par exemple, à la surface de silicium occupée par le circuit à signaux mixtes requis (couche 1), ainsi qu'à la complexité et à l'espace tampon requis pour corriger automatiquement les erreurs de bits. Le coût et la complexité d'UniPro peuvent donc constituer un problème pour certains périphériques UniPro à faible bande passante.

Taux d'adoption

Comme l'a postulé Metcalfe , la valeur d'une technologie de réseau est proportionnelle au carré du nombre d'appareils qui utilisent cette technologie. Par conséquent, toute nouvelle technologie d'interconnexion entre fournisseurs n'a de valeur que dans la mesure où ses promoteurs s'y intéressent et où la technologie deviendra autonome. Bien qu'UniPro soit soutenu par un certain nombre de grandes entreprises et que son temps d'incubation soit plus ou moins conforme à celui de technologies comparables ( USB , protocole Internet , Bluetooth , réseaux embarqués), le taux d'adoption est censé être la principale préoccupation de cette technologie. Cela est particulièrement vrai parce que l'industrie mobile n'a pratiquement aucun historique en matière de normes matérielles qui concernent les composants internes du produit.

L'adoption d'UniPro est principalement due à la norme JEDEC Universal Flash Storage (UFS) v2.0, qui utilise MIPI UniPro et M-PHY comme base de la norme. Plusieurs implémentations de la norme devraient arriver sur le marché

Disponibilité des protocoles d'application

L'interopérabilité nécessite plus qu'un simple alignement entre les périphériques UniPro homologues sur les couches de protocole L1 à L4 : elle implique également un alignement sur des formats de données plus spécifiques à l'application, des commandes et leur signification, ainsi que d'autres éléments de protocole. Il s'agit d'un problème intrinsèquement insoluble connu dans toutes les méthodologies de conception : vous pouvez vous mettre d'accord sur une « plomberie » standard et réutilisable (couches matérielles/logicielles/réseau inférieures), mais cela ne vous permet pas automatiquement d'obtenir un alignement sur la sémantique détaillée d'une commande même triviale comme ChangeVolume(value) ou le format d'un flux multimédia.

Les approches pratiques nécessitent donc un mélange de plusieurs approches :

  • Si l'interconnexion de la génération précédente fonctionnait, il existait une solution. Envisagez de la réutiliser/de la transférer/de la porter avec un minimum de modifications.
  • Il existe de nombreuses normes industrielles réutilisables et spécifiques aux applications (comme les commandes pour contrôler une radio, les formats audio, MPEG ).
  • Les principales technologies de tunneling sont basées sur UniPro. Si vous interagissez avec le monde IP , il est judicieux de fournir IP sur UniPro.
  • Utilisez des pilotes logiciels spécifiques à l'application. Cela ne fonctionne que pour des débits de données limités et transforme le problème d'interopérabilité en un problème d'interopérabilité logicielle interne, mais c'est une approche bien comprise.
  • Transformez les interfaces logicielles existantes en protocoles. Dans certains cas, la transformation peut être simple, voire automatisée si les API d'origine ont la bonne architecture.

Licences

L'accord d'adhésion de l'Alliance MIPI précise les conditions de licence pour les spécifications MIPI pour les entreprises membres. Les conditions de licence libres de droits s'appliquent au domaine cible principal de l'Alliance MIPI, les téléphones mobiles et leurs périphériques, tandis que les conditions de licence RAND s'appliquent à tous les autres domaines.

Plus d articles de Worldlex Wiki

Revenez a l index pour explorer davantage de pages sur l histoire, la science, la culture, la geographie et la societe en francais.

Explorer l index