Az USB szabvány már a kezdetektől, a legelső verziótól kezdve képes volt a rá csatlakozó perifériákat elektromos teljesítménnyel ellátni, amely 5 V feszültségben és <1,5 A-ben korlátozódott. Ezzel a korlátozással a korábbi generációs, Type-A és Type-B típusú csatlakozókkal szerelt, kis méretű és kis teljesítményű elektronikus perifériákra (billentyűzetek, USB-s adathordozók, mobiltelefon-akkumulátorok csepptöltése stb.) korlátozódott a tápellátási támogatás. Az USB-C interfésszel együtt megérkezett a Power Delivery (PD) szabvány, amely lehetővé teszi, hogy 5 ... 20 V feszültségszinteken, 100 W teljesítménnyel bezárólag forrásként vagy nyelőként viselkedjen az interfész. Ez azt jelenti, hogy a filigrán USB-C csatlakozó a korábbi USB-generációknál sokkal több periféria energizálására képes, amelyek között külső adattárak, nagy teljesítményű telefonok, komplett számítógépek, orvosi eszközök, szerszámok stb. is megtalálhatók. A 100 W rendelkezésre álló teljesítmény oly nagy, hogy akár egy teljesen elektromos személyautó bármely elektronikai rendszere meghajtható róla (kivéve természetesen a hajtásláncot, amiért ezúton is elnézést kérünk).
A számítógép- és okostelefonipar gyorsan fel is karolta az USB-C szabványt, és mára már számtalan végtermékbe eljutott ez a szabvány, elegendő csak a fiatalabb generációjú laptopokra vagy okostelefonokra gondolni. Az is hozzátartozik az igazsághoz, hogy kezdetben az USB-C és Power Delivery-megoldások áramköri szinten elég bonyolultak voltak, és működésükhöz számos külső alkatrészre és szoftverre is szükség volt, azonban a félvezetőipar hihetetlen teljesítmény;nek köszönthetően ez mára pozitív irányban jelentősen megváltozott, egyszerűbbé téve az USB-C-alapú tervezést. Nézzük meg tehát, hogy mire van szükség ahhoz, hogy USB-C csatlakozótípust implementáljunk megoldásunkban!
Mire van szükség egy USB-C PD-kompatibilis fejlesztéshez?
Minden termékfejlesztésre igaz, hogy első lépésben az elvárt szolgáltatáskínálatot kell alaposan definiálni. Ez természetesen igaz az USB-C-kompatibilis, Power Deliveryt támogató rendszerekre is, hiszen a PD-funkcionalitás implementálása jelentős hatással lehet a rendszerköltségre nézve. A PD önmagában költségnövelő hatású, ezért csak akkor érdemes fontolgatni az implementálását, ha a kihasználhatósága szempontjából a pluszköltségek indokoltak a végtermékben.
Az USB-C univerzális és sokoldalú, az alap-USB mellett specifikus adattípusokat is támogat, ezért a teljes rendszer megértése elengedhetetlen ahhoz, hogy a megfelelő USB-C alkatrészeket kiválogathassuk. Ha a termékünk egy adattároló vagy akkumulátortöltő, nincs szükségünk arra, hogy a rendszertervünket bonyolítsuk és megdrágítsuk az Alt Mode videointerfész-implementáció firmware-ével és pluszalkatrészeivel. Ez persze ellenkező irányban is igaz, tehát: ha a termékünk – mondjuk – egy monitor, ami egy laptop DisplayPort csatlakozójáról kapná a jelet, a rendszertervbe feltétlenül fel kell vennünk bizonyos portvezérlőket és a hozzájuk szükséges alkatrészeket. Mivel az USB-C port elemei közé soroljuk a PD/USB protokollokat, adatot és teljesítményt, a rendszerhez szükség lesz egy USB-C Power Delivery portvezérlőre, illetve analóg és teljesítményvezérlő alkatrészekre.
Az egyik legegyszerűbb USB-C implementáció a csak töltésre alkalmas port. Ebben az esetben a rendszer semmi másra nem alkalmas, mint a csatlakozó túlvégén lévő eszköz tápfeszültséggel való ellátására és/vagy akkumulátorának töltésére. Erre egy példaalkalmazás a személyautó hátsó üléssorában helyet foglalók számára elérhető telefontöltő vagy otthoni fali elektromos töltőkimenet.
Ebben a példában az anyaglista (BOM – Bill Of Materials) USB-C implementációhoz szükséges legfőbb elemei az alábbiak:
- USB-C portvezérlő: a logikai és teljesítményátviteli csatlakozás vezérléséhez,
- DC/DC átalakító: a bemeneti feszültség átalakítása a PD-vezérlés számára szükséges VBUS buszfeszültségre,
- terheléskapcsoló: csatlakozáskor 5 V feszültséget juttat a VBUS-ra, a PD-kapcsolat létrejötte után a megfelelő VBUS feszültséget kapcsolja. Néha a DC/DC konverter részeként érhető el,
- LDO: a portvezérlő feszültségének szabályozása, mivel a DC/DC átalakítónak az 5 ... 20 V tartományban kell szolgáltatnia,
- USB-C csatlakozó.
Ebben a példában olyan portvezérlő kiválasztására van szükség, amely az eszközillesztéssel kapcsolatos minden logikai egyeztetésre képes. A modern vezérlők, mint amilyenek a Microchip kínálatában is elérhetők, legalább az alábbi szolgáltatásokat képesek kínálni:
- USB-C csatlakozótípus támogatása csatlakozásdetektálással és vezérléssel,
- USB Power Delivery 3.0-kompatibilis közeghozzáférés-vezérlés,
- előprogramozott Power Delivery firmware,
- a standard Power Delivery profilok támogatása (15, 27, 45, 60, 100 W),
- bizonyos analóg alkatrészek integrált jelenléte, amivel a BOM-költség és -tervezési bonyolultság csökkenthető, például:
- programozható áramérzékelés túláramvédelemhez,
- feszültségmérés túlfeszültség-védelemhez,
- zárlatosakkumulátor-lezárás,
- VCONN FET-ek Rp/Rd-kapcsolással,
- a célalkalmazás hőmérséklet-tartományának támogatása.
Mivel ebben a példában egy, csak töltésre alkalmas rendszert írtunk le, nincs szükség semmilyen más vezérlő implementálására. Jóllehet néhány alkatrészgyártó programozható eszközt ajánlana erre a célra is, a csak töltésre alkalmas rendszerbe a logikus választást egy előprogramozott, semmilyen szoftverkövetelményt nem támasztó megoldás jelenti. Amennyiben a vezérlő PD 3.0-kompatibilis, a felhasználó az összes standard PD profilhoz hozzáfér (15, 27, 45, 60, 100 W).
A DC/DC konverter vonatkozásában az optimális konvertertípust leginkább a bemeneti feszültség alapján lehet meghatározni. A teljes PD-kompatibilitáshoz szükséges, hogy a tápegység mindig képes legyen 5 ... 20 VDC kimeneti feszültséget szolgáltatni. Egy 24 VDC bemenetű (vagy 20 VDC-t meghaladó bemenetű) rendszerben egy egyszerű feszültségcsökkentő topológiájú tápegység lehet a legköltségkímélőbb megoldás, de kisebb feszültségű, egyenáramú vagy offline, AC-táplálású rendszereknél alternatív topológiákra lehet szükség.
Az 1. ábrán látható rendszer egy módosított változata látható a 2. ábrán. Ebben az esetben a fejlesztő úgy döntött, hogy USB2-kompatibilis gazdatámogatást is implementál adatátviteli célból, mivel a meglévő termékében már van egy natív USB2-támogatású mikrovezérlő. (Figyeljük meg, hogy a portvezérlőnek nincs szüksége az USB2 adatvonalra csatlakozni!) Pluszalkatrészekre nincs szükség, továbbá az USB-C port anyaglistája megegyezik a csak töltésre alkalmas rendszerével. Az USB3 egy USB3-kompatibilis multiplexer hozzáadásával implementálható, amennyiben a mikrokontroller vagy rendszervezérlő rendelkezik USB3-támogatással. Ebben a példában az egyedülálló USB-C előprogramozott portvezérlő jelenti a legegyszerűbb megoldást arra, hogy USB-C porttal ruházzuk fel a korábbról származó rendszerünket.
Az USB-architektúra csúcsa környékén tanyázik a 3. ábrán látható, elosztóalapú rendszer. Ez jelenti az USB-architektúrában a legnagyobb rugalmasságot és teljesítményt, levéve a kommunikáció okozta terhet a központi processzorról. Ez a rendszertípus gyakran megtalálható számítógépes dokkolóállomásokban, monitorokban, gépjárművek fedélzeti fejegységeiben és minden más olyan helyen, ahol több USB csatlakozó áll rendelkezésre.
A korábbi példákhoz hasonlóan ebben az esetben is az elvárt funkciók definiálásával kell kezdenünk. Ha egy személyi számítógépet veszünk, az USB-C porton jó eséllyel fordulhatnak elő videójelek, amelyhez az USB-C implementációnknak támogatnia kell az Alt Mode protokollt. Ezért, ha ezt a követelményt összehasonlítjuk az első példában mutatott, csak töltésre alkalmas, illetve a 2. példában ismertetett, töltésre és adatátvitelre alkalmas esetekkel, olyan portvezérlőre van szükségünk, amely támogatja az Alt Mode-funkcionalitást és rendelkezik azokkal a szükséges áramköri elemekkel, amelyek képesek az Alt Mode-csatornákon áthaladó forgalom irányának kezelésére és a megfelelő értelmezésre.
A multiportos, ún. SmartHub használata a 3. ábrán látható rendszerben hatékonyabb rendszerszintű tervezést segít elő. Noha valóban van lehetőség arra, hogy a fejlesztő inkább egy funkciókban gazdagabb (és drágább) portvezérlő mellett voksoljon és meghagyja a különfunkciókat, az elosztón belül használt kontroller használata portvezérlőként csökkenti a költségeket és a feldolgozási többletterhelést. Ez különösen igaz a multiportos rendszerekre, amelyeknél az adatmozgás vezérlése és a teljesítménymenedzsment nagyobb jelentőségű.
A 3. ábrán látható rendszer a portvezérlés egy magasabb szintjét képviseli, amely egyre elterjedtebb lesz azzal, hogy az USB-C egyre nagyobb teret nyer natív támogatás szintjén az új vezérlőkben és processzorokban. Minden USB-C funkció (mint például Port Policy Management, Power Delivery, Alt Mode, Billboard) az elosztóban kap helyet. Ebben az architektúrában az egyedülálló portvezérlőt az adó-vevő váltja ki, amely tartalmazza az USB-C interfész fizikai rétegét (az ethernethálózatokhoz hasonló módon).
Az Alt Mode-funkció támogatása érdekében a rendszerterv tartalmaz egy külső crossbar multiplexert, amely a videoadatokat a DisplayPort csatlakozóra átirányítva támogatást biztosít külső megjelenítőkhöz. A blokkdiagram jól példázza az USB Type-A és Type-C csatlakozók egy rendszerben történő használatát is, amely igencsak jellemző napjaink rendszereire.
Manapság a biztonsági kérdések is rendkívül kényes kérdéseket vetnek fel az adatok és a hálózati kommunikáció biztonságát illetően, ezért a rendszertervben szerepel egy biztonsági áramkör is, amely támogatja a rendszer-firmware biztonságos frissítését. Az olyan nagy biztonságú áramkörök, mint a Microchip ECC608A kriptográfiai IC, a kódbiztonságot NIST, SHA-256 és HMAC hash-támogatással, AES-128 titkosítással szavatolják anélkül, hogy a gyártó valaha is tudomást szerezne a tulajdonos titkosítási kulcsáról.
A 3. ábrán látható rendszerterv esetében a BOM további elemei az alábbiak lennének:
- USB multiport SmartHub: tartalmazza a vezérlőt és több USB csatlakozást,
- crossbar multiplexer: a különböző adatcsatornák forgalmának különböző csatlakozókra történő elirányítása,
- DisplayPort csatlakozó: képmegjelenítő csatlakoztatására,
- Type-A csatlakozók,
- Type-A energiaforrás,
- biztonsági IC: biztonságos programkódfrissítés az elosztó számára,
- USB-C adó-vevők minden egyes porthoz,
- DC/DC-átalakító minden egyes USB-C PD porthoz.
Az integrált Power Delivery-támogatású USB SmartHub használata további rendszerszintű funkciók előtt nyitja meg a lehetőséget. A haladó funkcionalitású rendszereknél találkozhatunk a HostFlex technológiával, amelyben valamennyi Type-C portos eszköz betöltheti a rendszergazda szerepét, új szintre emelve a rugalmasságot olyan lehetőségekkel, mint a kijelzők és más kimeneti funkciók felhasználói átvétele, tekintet nélkül arra, hogy melyik milyen portra csatlakozik. A másik haladó funkció, a Power Balancing szintén a rugalmasságot hivatott növelni azáltal, hogy a rendszer számára elérhető teljesítmény elemzésével dönt felhasználói algoritmus alapján annak felosztásáról. A felhasználó lényegében eldöntheti, hogy a teljesítmény a csatlakozás sorrendjében, eszköztípustól függően vagy a rendszerre csatlakozó eszközök számától függően kerüljön-e felosztásra, esetleg ezek kombinációjaként. Mindezen funkciók hátterében a Microchip SmartHub áll, ami platformszintű USB-C PD portcsatlakozás-menedzsmentet valósít meg minden pillanatban. A Microchip több ízben prezentálta már a HostFlex, MultiHost és Power Balancing technológiákat az integrált Power Delivery-támogatású USB 3.1 multiport SmartHub megoldásaival.
Összefoglalás
Az USB-C „személyében” olyan csatlakozótípust tisztelhetünk, amely alkalmas többféle adattípus értelmezésére és egyben különböző teljesítményszintek kezelésére, egyetlen fizikai csatlakozón keresztül. A SmartHub design-ban könnyedén implementálhatók olyan haladó szolgáltatások, mint a HostFlex és Power Balancing, míg az alap-töltőáramköröket egyszerű portvezérlőkkel is meg tudjuk oldani. A jövőben megjelenő portvezérlőknél egész biztosan még egyszerűbb implementációs lehetőségekre és gazdagabb integrációra lehet számítani.
Láthattuk, hogy a kezdő fejlesztőknek igazán nincs miért tartaniuk az USB-C implementációtól, mivel az élvonalbeli félvezetőgyártók, élen a Microchippel, olyan egyedi és nagy teljesítményű portvezérlőket, adóvevőket, DC/DC konvertereket stb. kínálnak erre a célra megfelelő szakmai támogatás mellett, ami mellett a munka már nem is lehetne egyszerűbb és kockázatmentesebb.