We hebben veel PCIe-hacks gezien op Hackaday, en een flink aantal daarvan komt neer op hackers die PCIe ergens vandaan halen waar het niet de bedoeling was. Tegenwoordig kunnen we routinematig PCIe x1-, x2- en x4-links in onze technologie vinden, dankzij de proliferatie van zaken als NVMe SSD’s en krachtige goedkope SoC’s waardoor PCIe binnen handbereik lijkt.
In de PCIe For Hackers-serie hebben we het gehad over PCIe en hoe cool het is, en alle voordelen die het heeft voor hackers, waardoor je indeling En interconnectieregels, en ging zelfs in op dingen als PCIe-switches en bifurcatie. Er is echter één onderwerp waar we niet veel over hebben gesproken, en dat zijn externe PCIe-links.
Vandaag wil ik je er graag over vertellen OCuLink – een standaard die hackers misschien nog niet kennen als een optie wanneer we PCIe buiten uw projectbox moeten halen, en die momenteel steeds populairder wordt in de eGPU-ruimte. In wezen is OCuLink voor PCIe wat eSATA is voor SATA, en als je dat wilt een eGPU of een externe “PCIe-socket”, zou OCuLink wonderen voor u kunnen doen.
Respectabele capaciteiten
Internet als elke hogesnelheidsstandaard stelt PCIe een aantal strenge eisen als het snel gaat. Ook al is bekend dat PCIe dat is niet zo gevoelig voor hyperlinks van lagere kwaliteit vanwege de linktraining en de mogelijkheid om generaties te downgraden, kunnen bij hogere linksnelheden zelfs through-hole versus SMD-sockets een verschil maken. Dus als u hoge doorvoer wilt, heeft u goede bekabeling en connectoren nodig, bedoeld voor gebruik buiten het chassis – en OCuLink biedt u dit allemaal. tegen een lage prijs.
OCuLink is behoorlijk ongekend als het gaat om officieel ondersteunde {hardware} voor het extern trekken van PCIe-links. Er is natuurlijk Thunderbolt, maar die moet PCIe omzetten in pakketten op een Thunderbolt-link, dus je kunt geen no-nonsense directe bedrading uitvoeren en je hebt eigen technologie nodig, waardoor je aan elk uiteinde van de hyperlink $ 100 of meer moet uitgeven. Je SoC heeft waarschijnlijk geen Thunderbolt-ondersteuning, en dat is maar goed ook, gezien de grote ommuurde tuin die het nog steeds is.
OCuLink kan u een 4x of 8x PCIe-link bieden met respectievelijk 4i- en 8i-opties, met goedkope connectoren, betrouwbare kabels en een levendig en groeiend ecosysteem. Het is ook een goede demonstratie van wat je nodig hebt om PCIe buiten de comfortabele behuizingen te halen waarin het doorgaans zit, en het is een redelijk open standaard voor alles wat het biedt. Laten we erin graven!
Toegankelijke mechanica
Allereerst is wat je voor zo’n standaard nodig hebt een goed gedefinieerde pin-out, een gebruiksvriendelijke connector en een overvloed aan connectoren en kabels in de echte wereld. OCuLink bereikt al deze punten, en er is een schat aan {hardware} op plaatsen als AliExpress en Amazon. Als je een M.2 M-key-aansluiting hebt met een vrije 4x hyperlink, kun je deze eenvoudig uit je apparaat trekken by way of een OCuLink-kabel. Er zijn M.2-kaarten van $ 20 met OCuLink-aansluitingen erop. Hetzelfde geldt voor desktop PCIe-slots – er is geen tekort aan goedkope adapters.
Zo te zien zou je niet je eigen OCuLink-kabel willen krimpen – en dat hoeft ook niet. Er zijn ook gemakkelijk on-line kabels verkrijgbaar, in verschillende lengtes en verbindingsbreedtes – SFF-8611 en SFF-8612 zijn goede trefwoorden voor alles wat OCuLink doet. Ze zijn erg goedkoop, je kunt er een krijgen voor $ 10- $ 20. De kabels zijn een stuk stijver dan USB-C Thunderbolt-compatibele kabels. Niettemin zijn ze gemakkelijk te gebruiken, en er zijn zelfs vergrendelbare connectoren voor het geval je niet plotseling de verbinding wilt verbreken.
OCuLink-connectoren lijken een beetje op DisplayPort en zijn gemakkelijk on-line te vinden. Internet als USB-C hebben ze twee zijden, boven en onder, en de pinafstand maakt het een vereiste om een connector met twee rijen te maken. Helaas zul je geen SMD + THT-versie zien zoals we vaak krijgen met USB-C-aansluitingen – je zult “pads below the package deal” stenciling en reflow moeten doen. Dat gezegd hebbende, het ligt ruim binnen het bereik van een standaard heteluchtpistool en een beetje pasta, of misschien zelfs alleen maar ijzeren vertinde pads en wat vloeimiddel!
Wat further circuits
Er zitten geen stroomrails in de OCuLink-pinout, wat logisch is – dat zou een heel konijnenhol zijn geweest, gezien hoe gevarieerd PCIe-apparaten kunnen zijn. Je zult de stroom aside willen regelen, en hetzelfde zou wel eens het geval kunnen zijn voor het REFCLK-klokpaar – het is niet inbegrepen in de standaard pin-out. Het is mogelijk om REFCLK by way of OCuLink-kabels te krijgen, en er zijn pinouts die VSP-pinnen gebruiken voor de klok, dus als je downstream-apparaat de klok niet kan herstellen van PCIe-gegevens, is dat wat je uiteindelijk zou kunnen doen.
Als je PCIe over een langere afstand wilt trekken en het hotplug-vriendelijker wilt maken, zul je dat ook willen een PCIe-retimer. Het reconditioneert uw PCIe-signaal en helpt het te herstellen van eventuele verliezen veroorzaakt door de kabel en de betrokken connectoren. Vaak biedt een retimer ook wat ESD-bescherming als bonus. Als je hotplug wilt doen, onthoud dan dat PCIe in de regel rechtstreeks naar een CPU/chipset/SoC gaat en meestal minder sterke ESD-diodes heeft, wat het een mooie oplossing maakt. ESD-gevoelig onderdeel van een systeem!
Er is ook documentatie van PCI-SIG zelf als je het wilt – de OCuLink-documenten zijn grotendeels open, afgezien van enkele nieuwere onderdelen zoals de 8-baans specificaties; aan de praktische kant zijn er wel veel door de gemeenschap geaggregeerde bronnen. Bovendien maken mensen doe-het-zelf OCuLink-adapters meer En meer, En de afgebeelde adapter is open supply, zelfs! Ik hoop dat degene die dit leest ervoor zorgt dat zijn projecten open supply zijn – referentieontwerpen zijn altijd nuttig en stellen iedereen in staat steeds coolere dingen te bouwen!
Steeds groeiend en de moeite waard om te weten
In productie, OCuLink wordt veel gebruikt in moderne servers, waar het niet ongewoon is om PCIe op een halve meter afstand van de chipset te willen hebben, aangesloten op zoiets als een bay vol NVMe-schijven. Naarmate de technologie doorsijpelt, wordt het ook steeds meer geaccepteerd in de laptopwereld! Momenteel wordt het gebruikt door eGPU-knutselaars, waarbij mensen OCuLink-sockets toevoegen aan apparaten zoals GPD mini-laptops, of volledige laptops zoals de Lenovo Thinkbook, waarbij de laatste een adapteroptie van derden heeft die een Logitech-ontvangersocket kaapt die Lenovo heeft toegevoegd.
Je kunt nog steeds PCIe by way of USB3-, HDMI- en USB-C-kabels plaatsen – dat is wat we vóór OCuLink deden! En als je een referentie wilt over hoe je dit op de juiste manier kunt doen, aangeleerd door een fashionable ecosysteem dat verbinding met hoge bandbreedte tot stand brengt zonder te zweten, wordt de lijst met OCuLink-projecten alleen maar groter – en daarom verdient het om erover te weten als een optie.