UniPro - UniPro

UniPro (eller Unified Protocol ) är en höghastighetsgränssnitsteknik för sammankoppling av integrerade kretsar i mobil och mobilpåverkad elektronik. De olika versionerna av UniPro-protokollet skapas inom MIPI Alliance (Mobile Industry Processor Interface Alliance), en organisation som definierar specifikationer riktade till mobil- och mobilpåverkade applikationer.

UniPro-tekniken och tillhörande fysiska lager syftar till att tillhandahålla höghastighetsdatakommunikation (gigabit / sekund), lågeffektdrift (låg svängsignalering, standby-lägen), lågt stiftantal (seriell signalering, multiplexing), litet kiselområde (litet paket storlekar), datasäkerhet ( differentiell signalering , felåterställning) och robusthet (beprövade nätverksbegrepp, inklusive överbelastningshantering ).

UniPro version 1.6 koncentrerar sig på att möjliggöra höghastighets-punkt-till-punkt-kommunikation mellan chips i mobil elektronik. UniPro har bestämmelser för att stödja nätverk som består av upp till 128 UniPro-enheter (integrerad krets, moduler etc.). Nätverksfunktioner planeras i framtida UniPro-utgåvor. I en sådan nätverksmiljö är par av UniPro-enheter sammankopplade via så kallade länkar medan datapaket dirigeras mot sin destination av UniPro-omkopplare. Dessa omkopplare är analoga med routrarna som används i trådbundet LAN baserat på gigabit Ethernet. Men till skillnad från ett LAN utformades UniPro-tekniken för att ansluta marker i en mobil terminal snarare än att ansluta datorer i en byggnad.

Schematisk representation av ett UniPro-nätverk som ansluter UniPro-enheter och kretskort
Laboratorieprototyp av UniPro som körs på det fysiska lagret D-PHY

Historia och mål

Initiativet till att utveckla UniPro-protokollet kom från ett par forskningsprojekt vid respektive Nokia Research Center och Philips Research. Båda lagen kom oberoende till slutsatsen att komplexiteten i mobila system kunde minskas genom att dela upp systemdesignen i väldefinierade funktionella moduler sammankopplade av ett nätverk. De viktigaste antagandena var således att nätverksparadigmet gav moduler välstrukturerade, skiktade gränssnitt och att det var dags att förbättra systemarkitekturen för mobila system för att göra deras hårdvaru- och mjukvarudesign mer modulär. Med andra ord var målen att motverka de stigande utvecklingskostnaderna, utvecklingsriskerna och time-to-market-effekten av alltmer komplex systemintegration.

År 2004 grundade båda företagen gemensamt det som nu är MIPI : s UniPro-arbetsgrupp. Ett sådant samarbete med flera företag ansågs nödvändigt för att uppnå interoperabilitet mellan komponenter från olika komponentleverantörer och för att uppnå den nödvändiga skalan för att driva den nya tekniken.

Namnet på både arbetsgruppen och standarden, UniPro, återspeglar behovet av att stödja ett brett utbud av moduler och ett brett utbud av datatrafik med en enda protokollstack. Även om det finns andra anslutningstekniker ( SPI , PCIe , USB ) som också stöder ett brett spektrum av applikationer, är gränssnittet mellan chip som används i mobil elektronik fortfarande olika, vilket skiljer sig avsevärt från (i detta avseende mer mogna) datorindustri.

I januari 2011 slutfördes UniPro version 1.40. Dess huvudsyfte är fullt stöd för ett nytt Physical Layer: M-PHY® inklusive stöd för energilägesändring och peer-enhetskonfiguration. I juli 2012 har UniPro v1.40 uppgraderats till UniPro v1.41 för att stödja den nyare högre hastigheten M-PHY v2.0. UniPro v1.4x-specifikationerna har släppts tillsammans med en formell specifikationsmodell (SDL).

Det slutliga utkastet till version 1.6 av UniPro-specifikationen slutfördes i augusti 2013. Dess erkännanden listar 19 ingenjörer från 12 företag och organisationer: Agilent, Cadence, IEEE-ISTO, Intel, nVidia, Nokia, Qualcomm, Samsung, STMicroelectronics, Synopsys, Texas Instrument och Toshiba. UniPro v1.6-specifikationen är en uppdatering av UniPro v1.41.00-specifikationen och består enbart av UniPro-specifikationsdokumentet, SDL stöds inte längre. UniPro v1.6-specifikationen refererar till följande dokument:

  • Specifikation för M-PHY®, version 3.0
  • Specifikation för Device Descriptor Block (DDB), version 1.0

Hittills har flera leverantörer meddelat tillgängligheten av UniPro IP-block och olika chipleverantörer har skapat implementeringar som befinner sig i olika utvecklingsfaser. Under tiden inrättar MIPI UniPro-arbetsgruppen en testtest för överensstämmelse och förbereder framtida förlängningar av tekniken (se UniPro-versioner och färdplan ).

Den 30 januari 2018 publicerade JEDEC UFS 3.0-standarden som använder MIPI M-PHY v4.1 (med HS-Gear4) och MIPI UniProSM v1.8 för mobilminne med datahastigheter upp till 2900 MB / s (11,6 Gbit / s per fil, 2 banor, totalt 23,2 Gbit / s).

Viktigaste egenskaper

  1. gigabit / s - serieteknik med ett antal skalningsalternativ för bandbredd
  2. generic - kan användas för ett brett spektrum av applikationer och datatrafiktyper
  3. skalbar - från enskilda länkar till ett nätverk med upp till 128 UniPro-enheter
  4. låg effekt - optimerad för små batteridrivna system
  5. tillförlitlighet - datafel upptäcks och korrigeras via återöverföring
  6. hårdvaruvänlig - kan implementeras helt i hårdvara där det behövs
  7. programvaruvänlig - liknande koncept som välbekanta nätverkstekniker
  8. bandbreddsanvändning - ger funktioner för att hantera trängsel och kontrollera skiljedom
  9. delbar - olika trafiktyper och UniPro-enheter kan dela stift och ledningar
  10. testbar - sedan version 1.1 föreskriver UniPro funktioner för att underlätta automatisk testning av överensstämmelse

Skiktad arkitektur

UniPro associerat med det underliggande PHY-skiktet är en skiktad protokollstack som täcker lager L1 till L4 i OSI-referensmodellen för nätverk. UniPro introducerar ett extra lager L1.5 mellan L1 och L2 som kan betraktas som ett underskikt av OSI: s lager L1.

Flera applikationer

UniPros strikta skiktning gör att den kan användas för ett brett spektrum av applikationer:

  • UFS: Universal Flash Storage . Nästa generations masslagringsenheter som specificerats av JEDEC med stöd för dataflöde på upp till 300 MB / sek, i första generationen, och stöd för kommandoköfunktioner för att höja den slumpmässiga läs- / skrivhastigheten.
  • CSI-3: 3: e generationens MIPI-kameras seriella gränssnitt har ett skalbart gränssnitt med hög bandbredd, en garanterad dataöverföring och en kommandosats för grundläggande komponentinitiering och -konfiguration.
  • GBT: MIPI Gigabit Trace. Ett nätverksoberoende protokoll för transport av spårningsdata över höghastighetsgränssnitt som UniPort-M eller USB3.0.
  • DSI-2: 2: a generationens MIPI Display Serial Interface .
  • PIE: Processoremuleringsgränssnitt. Detta applikationsprotokoll förmedlar traditionella minnesbaserade läs / skriv-transaktioner som finns på processorbussar. Applikationer för datastreaming (t.ex. multimediatrafik), kommando- / svarstypsprotokoll (t.ex. för kontroll) och tunnling av populära protokoll från andra domäner (t.ex. TCP / IP ) stöds också och uppmuntras särskilt eftersom de tenderar att öka modulnivån på systemnivå och interoperabilitet på grund av deras högre abstraktionsnivå.
  • UniPort-M (UniPro med M-PHY): Aktiverar allmänt ändringsgränssnitt för att ansluta kringutrustning som grafiska acceleratorer, moduler som Googles ARA-projekt
  • UniPort-D (UniPro med D-PHY): Aktiverar allmäntillägg med D-PHY, notera att D-PHY inte är ett fysiskt lager som stöds för UniPro utöver UniPro-specifikation v1.41

Alternativa fysiska lager

UniPros lagerarkitektur gör det också möjligt att stödja flera fysiska lager (L1, PHY) tekniker även inom ett enda nätverk. Detta är analogt med TCP / IP som kan köras på ett brett spektrum av teknik med lägre lager. När det gäller UniPro stöds två PHY-tekniker för användning utanför chip.

UniPorts

Dessa PHY-tekniker täcks av separata MIPI-specifikationer (som refereras till av UniPro-specifikationen. Observera att termen UniPort används för att representera den faktiska porten på ett chip som överensstämmer med UniPro-specifikationen för dess övre lager (L1.5 till 4) och en MIPI PHY-specifikation för L1. Eftersom det finns två PHY-tekniker är dessa kända som UniPort-D (UniPro med D-PHY) och UniPort-M (UniPro med M-PHY).

Stegvis färdplan

UniPro 1.0-specifikationen godkändes av MIPIs styrelse den 14 januari 2008. UniPro 1.1, som slutfördes i juli 2009, syftar till att förbättra läsbarheten, ger en referensmodell (i SDL ) för två av de fyra UniPro-protokollskikten, och tillhandahåller funktioner för att underlätta automatisk testning av överensstämmelse.

Arkitekterna som designade UniPro tänkte från början att släppa tekniken som en stegvis färdplan med bakåtkompatibilitet. UniPro 1.1 är utformad för att vara helt bakåtkompatibel med UniPro 1.0. Huvudsyftet med UniPro 1.40 och UniPro v1.41 (UniPro v1.4x) är att stödja ett ytterligare fysiskt lager, M-PHY. Dessutom har UniPort-M lokal och fjärrkontroll av en peer UniPro-enhet som kan användas till exempel för att styra olika strömtillstånd som stöds av länken. Planerade färdplansteg utöver UniPro v1.4x syftar till att tillhandahålla specifikationer för nätverkskompatibla slutpunkter och nätverksväxlar.

UniPro v1.6-specifikationen utformades för att säkerställa interoperabilitet med UniPro v1.41.00 när du använder det fysiska lagret M-PHY. Eftersom D-PHY inte längre stöds på v1.60 kan inte bakåtkompatibilitet för D-PHY-drift bibehållas.

Omfattning och tillämpbarhet

UniPro och dess underliggande fysiska lager utformades för att stödja drift med låg effekt som behövs för batteridrivna system. Dessa funktioner sträcker sig från energieffektiv höghastighetsdrift till extra lågeffektlägen under tomgång eller låg bandbredd i nätverket. Faktiskt effektbeteende är dock mycket beroende av systemdesignval och gränssnittsimplementering.

UniPro-protokollet kan stödja ett stort antal applikationer och tillhörande trafiktyper. Exempel på chip-till-chip-gränssnitt som finns i mobila system:

  • Överföring av masslagringsfil: 6 Gbit / s
  • 24M pixelkamera @ 30fps: 9Gbit / s
  • Chip-to-chip-anslutning: 1Gbit till 24Gbit / s

Observera att sådana applikationer kräver ett applikationsprotokollskikt ovanpå UniPro för att definiera strukturen och semantiken för de byteflöden som transporteras av UniPro. Dessa kan göras genom att helt enkelt portera befintliga dataformat (t.ex. spårning, pixelströmmar, IP-paket), införa nya egna format (t.ex. chipspecifika mjukvarudrivrutiner) eller definiera nya branschstandarder (t.ex. UFS för minnesliknande transaktioner).

Applikationer som för närvarande anses vara mindre lämpliga för UniPro är:

  • kontroll med låg bandbredd - om inte multiplexerad med annan trafik (oro: UniPro-komplexitet är mycket högre än t.ex. I2C )
  • högkvalitativa ljudprover (oro: UniPro distribuerar inte en delad klocka till alla enheter; UniPro-komplexitet jämfört med t.ex. SLIMbus eller I2S )
  • gränssnitt till dynamiskt minne (oro: latens för processorinstruktion / datahämtning)

Versioner och färdplan

Version Textfrysning Formell frisläppande Beskrivning
UniPro 0,80, 00 6 september 2006 26 februari 2007 Teknisk förhandsvisning av UniPro 1.0
UniPro 1,0 0,00 25 augusti 2007 14 januari 2008 Begränsade förändringar jämfört med UniPro 1.0. Alla grunderna för en chip-till-chip-länk via D-PHY
UniPro 1,1 0,00 29 juli 2009 22 januari 2010 "Härdad": formella referensmodeller för två protokollskikt; förbättringar av läsbarhet och testbarhet
UniPro 1,40 .00 31 januari 2011 28 april 2011 " M-PHY ": stöd för en ny fysisk lagerteknik. M-PHY v1.0 med HS-G1. Formell referensmodell för hela stacken. Peer-konfiguration. Versionering.
UniPro 1.41 .00 4 maj 2012 30 juli 2012 Uppgradera för att stödja M-PHY v2.0 med HS-G2
UniPro 1,60 .00 6 augusti 2013 30 september 2013 Uppgradera för att stödja M-PHY v3.0 med HS-Gear3, Power Reduction under 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.8 8 februari 2018 Uppgradera för att stödja M-PHY v4.1 med HS-Gear4
framtida utgåvor tbd tbd "Slutpunkt": slutlig nätverksanslutning inklusive inband-konfigurationsprotokoll.

"Växlar": nätverksväxlar.
Delning av länken mellan flera applikationer.
Dynamisk anslutningshantering.
Hot Plugging.
Säkerhetsfunktioner.
Trafikklass i realtid.

Protokollstapelarkitektur

UniPro-protokollstacken följer den klassiska OSI-referensarkitekturen (ref). Av praktiska skäl är OSI: s Physical Layer uppdelat i två underlag: Layer 1 (det faktiska fysiska lagret) och Layer 1.5 (PHY Adapter-lagret) som dras från skillnader mellan alternativ Layer 1-teknik.

UniPro-protokollstack (denna färgkodning är en långvarig UniPro-tradition)
Lager # Skiktnamn Funktionalitet Dataenhetens namn
LA Ansökan Nyttolast och transaktionssemantik Meddelande
DME
Skikt 4 Transport Portar, multiplexering, flödeskontroll Segmentet
Skikt 3 Nätverk Adressering, dirigering Paket
Skikt 2 Data länk Single-hop tillförlitlighet och prioritetsbaserad skiljedom Ram
Skikt 1.5 PHY-adapter Fysiskt lagerabstraktion och stöd för flera spår UniPro-symbol
Skikt 1 Fysiskt skikt (PHY) Signalering, klockning, linjekodning, strömlägen PHY-symbol

UniPro-specifikationen täcker själva lager 1.5, 2, 3, 4 och DME (Device Management Entity). Application Layer (LA) är utanför tillämpningsområdet eftersom olika användningar av UniPro kräver olika LA-protokoll. Det fysiska skiktet (L1) täcks av separata MIPI-specifikationer för att PHY ska kunna återanvändas av andra (mindre generiska) protokoll om det behövs (ref).

OSI Layers 5 (Session) och 6 (Presentation) räknas, där så är tillämpligt, som en del av Application Layer.

Diskussion om värdeförslag

UniPro och systemintegration

UniPro riktas specifikt av MIPI för att förenkla skapandet av allt mer komplexa produkter. Detta innebär en relativt långsiktig vision om framtida telefonarkitekturer som består av modulära delsystem sammankopplade via stabila, standardiserade men flexibla nätverksgränssnitt. Det innebär också en relativt långsiktig vision om den förväntade eller önskade strukturen för mobiltelefonindustrin, där komponenter lätt kan samverka och komponenter från konkurrerande leverantörer till viss del är kompatibla med pluggar .

Liknande arkitekturer har uppstått inom andra domäner (t.ex. bilnätverk, till stor del standardiserade PC-arkitekturer, IT-industrin runt Internetprotokollen) av liknande skäl till driftskompatibilitet och skalfördelar. Det är ändå för tidigt att förutsäga hur snabbt UniPro kommer att antas av mobiltelefonindustrin.

Hög bandbredd och kostnader

Höghastighetsanslutningar som UniPro, USB eller PCI Express kostar vanligtvis mer än låghastighetsanslutningar (t.ex. I2C , SPI eller enkla CMOS- gränssnitt). Detta beror till exempel på kiselområdet som upptas av den erforderliga kretsen för blandad signal (lager 1), såväl som på grund av komplexiteten och buffertutrymmet som krävs för att automatiskt korrigera bitfel. UniPros kostnad och komplexitet kan således vara ett problem för vissa UniPro-enheter med låg bandbredd.

Antagande

Som Metcalfe antog, skalas värdet på en nätverksteknik med kvadratet av antalet enheter som använder den tekniken. Detta gör alla nya samtrafikteknologier över flera leverantörer bara lika värdefulla som dess förespråkares engagemang och därmed sannolikheten för att tekniken blir självförsörjande. Även om UniPro stöds av ett antal stora företag och att UniPro-inkubationstiden är mer eller mindre i linje med jämförbara tekniker ( USB , Internetprotokoll , Bluetooth , nät i fordon) antas antagandet vara den största oro för tekniken. . Detta gäller särskilt eftersom mobilindustrin praktiskt taget inte har några meritlistor för hårdvarustandarder som gäller produktens interna delar.

En viktig drivkraft för UniPro-antagande är JEDEC Universal Flash Storage (UFS) v2.0 som använder MIPI UniPro och M-PHY som grund för standarden. Det finns flera implementeringar av standarden som förväntas träffa marknaden

Tillgång till applikationsprotokoll

Driftskompatibilitet kräver mer än bara inriktning mellan UniPro-enheterna på protokolllagret L1-L4: det betyder också att man anpassar sig till mer applikationsspecifika dataformat, kommandon och deras betydelse och andra protokollelement. Detta är ett känt egentligt olösligt problem i alla designmetoder: du kan komma överens om standard och återanvändbar "VVS" (lägre hårdvara / mjukvara / nätverkslager), men det ger dig inte automatiskt anpassning till den detaljerade semantiken till och med ett trivialt kommando som ChangeVolume (värde) eller formatet för en mediaström.

Praktiska tillvägagångssätt kräver alltså en blandning av flera tillvägagångssätt:

  • Om den tidigare generationens samtrafik fungerade fanns det någon form av lösning. Överväg att återanvända / tunnla / porta den med minimala förändringar.
  • Det finns många återanvändbara applikationsspecifika branschstandarder (som kommandon för att styra en radio, ljudformat, MPEG ).
  • Tunnel viktig teknik över UniPro. Om du interagerar med IP-världen är det klokt att tillhandahålla IP-over-UniPro.
  • Använd programspecifika programdrivrutiner. Detta fungerar bara för begränsade datahastigheter och driver interoperabilitetsproblemet till ett internt programvarus interoperabilitetsproblem, men är ett välförstått tillvägagångssätt.
  • Förvandla befintliga mjukvarugränssnitt till protokoll. I vissa fall kan omvandlingen vara enkel eller till och med automatiserad om de ursprungliga API: erna har rätt arkitektur.

Licensiering

Medlemskapsavtalet för MIPI Alliance specificerar licensvillkoren för MIPI-specifikationer för medlemsföretag. Royaltyfria licensvillkor gäller inom MIPI Alliance: s huvudsakliga måldomän, mobiltelefoner och kringutrustning, medan RAND-licensvillkor gäller på alla andra domäner.

Se även

Referenser

externa länkar