L’industria dell’elaborazione embedded sta per introdurre COM-HPC, ovvero lo standard di prossima generazione per il progetto di sistemi modulari. Trattandosi di uno standard complesso e che potrebbe dare adito ad alcune incomprensioni, le informazioni relative a COM-HPC devono essere le più chiare e precise possibili.
di Christian Eder – Direttore Marketing (congatec)
Chairman di PICMG COM-HPC Subcommittee
Alcuni ritengono che questo standard rilasciato dal consorzio PICMG sia una piattaforma completamente nuova destinata ad applicazioni anch’esse completamente nuove.
Questa è almeno l’opinione di coloro che operano nel settore dei server edge embedded, che devono gestire carichi di lavoro particolarmente onerosi in condizioni operative difficili.
Poi ci sono gli attuali utilizzatori di COM Express. Questi ultimi sono meno interessati ai moduli server e la loro attenzione è essenzialmente rivolta ai moduli di tipo client previsti dal nuovo standard COM-HPC.
Tra di loro serpeggia anche un po’ di scetticismo nei riguardi del nuovo standard.
D’altra parte vogliono proteggere gli investimenti fatti su COM Express e si pongono tutta una serie di domande, peraltro logiche, relative alla disponibilità nel tempo di COM Express, alle tempistiche più idonee per il passaggio al nuovo standard COM-HPC e ai vantaggi che quest’ultimo potrà garantire ai loro clienti.
Per gli attuali utilizzatori di COM Express è fondamentale comprendere i vantaggi che i moduli COM-HPC Client saranno in grado di offrire e le differenze di questi ultimi rispetto ai moduli COM Express.
Come si può evincere da quanto detto finora, COM-HPC si rivolge a due categorie ben distinte, ciascuna con le proprie specifiche necessità ed esigenze.
A questo punto è utile iniziare a esaminare le potenzialità delle due differenti versioni (client e server, appunto) previste dallo standard COM-HPC e in cosa differiscono.
Una piattaforma basata su uno standard aperto per server embedded
COM-HPC Server è il primo “vero” standard aperto per lo sviluppo i progetti di server rack embedded modulari e di box server destinati all’uso in ambienti gravosi.
Attualmente nel settore dei server è abbastanza raro il ricorso a moduli processori “application-ready”, anche se un approccio di questo tipo offre numerosi vantaggi.
Per esempio, permette di soddisfare in modo molto semplice requisiti specifici in termini di dimensioni e di I/O.
Gli sviluppatori devono solamente progettare la scheda carrier idonea per la specifica applicazione considerata, mentre i principali (e complessi) componenti come processore, memoria RAM e interfacce ad alta velocità sono reperibili in un modulo standardizzato.
Poiché il progetto di una scheda carrier risulta senza dubbio meno oneroso di un progetto full custom, un approccio di questo tipo può essere adottato per piccoli lotti di produzione, dove il ricorso a prodotti standard spesso rappresenta un compromesso insoddisfacente ma comunque inevitabile.
Oltre a ciò, un approccio di natura modulare consente di ridurre considerevolmente i costi legati all’aggiornamento delle prestazioni.
Rispetto alla completa sostituzione di un sistema rack 1U o 3U, il ricorso a un server modulare permette di ridurre all’incirca del 50% i costi di aggiornamento, poiché l’unica sostituzione richiesta riguarda il modulo.
Un approccio di questo tipo consente di migliorare sia la sostenibilità dell’investimento sia la disponibilità sul lungo termine e il ritorno dell’investimento (ROI) delle soluzioni, in quanto possono essere impiegate per un periodo di tempo più lungo.
Più unità di elaborazione supportate da un unico standard
Oltre ai vantaggi insiti nel concetto di modularità, COM-HPC Server si distingue anche per alcune migliorie dal punto di vista tecnico che in precedenza non erano disponibili per moduli di questo tipo.
Lo standard COM-HPC, ad esempio, non è limitato solamente ai processori in architettura x86, ma prevede esplicitamente la possibilità di usare processori in architettura RISC, FPGA e GPGPU.
I primi campioni equipaggiati con queste unità di elaborazione alternative sono state presentate presso lo stand di PCMIG durante la più recente edizione di Embedded World.
Per la prima volta, quindi, sarà possibile sviluppare e implementare server di natura eterogenea che utilizzano una pluralità di unità di elaborazione e di accelerazione in conformità a specifiche ufficiali e supportate da un ecosistema standardizzato.
Per semplificare tutto ciò, le nuove specifiche supportano per la prima volta modalità slave per questi moduli.
Per gli OEM ciò si traduce in una maggiore semplicità ed efficienza in fase di integrazione (design-in), senza dimenticare i vantaggi derivati la possibilità di riutilizzare il know-how acquisito in maniera più efficace.
Spazio alle prestazioni
Uno degli obiettivi dei moduli COM-HPC Server è consentire, in tutte le applicazioni che prevedono l’utilizzo di server edge e server fog, di sfruttare appieno la potenza di elaborazione dei nuovi processori per server edge embedded di prossima introduzione sul mercato.
Il power budget massimo specificato per i moduli COM-HPC Server, pari a 300 W, rappresenta già una chiara indicazione delle prestazioni previste, almeno sul medio periodo.
Per fare un confronto, il massimo power budget dei Server-on-Module in formato COM Express con pinout Type 7 a più alte prestazioni al momento disponibili è pari a 100 W.
Tenuto conto di ciò e considerando il sensibile aumento previsto a livello di prestazioni, è evidente che un server basato su COM-HPC sarà in grado di gestire carichi di lavoro veramente ingenti.
Oltre a queste potenzialità a livello di prestazioni, è importante considerare lo spazio che i moduli mettono a disposizione per i processori o le unità di elaborazione alternative.
Si tratta di un aspetto da non sottovalutare, considerando le attuali CPU ad alte prestazioni di Intel e AMD che possono ospitare anche più di 16 processori o gli FPGA di fascia alta, le cui dimensioni possono essere assimilate a quelle del palmo di una mano.
Per poter ospitare dispositivi di questo tipo lo standard COM-HPC Server prevede due tipi di moduli, con dimensioni pari a 200 x 160 mm (size E) e 160 x 160 mm (size D), come riportato in figura 2.
Questi formati, di dimensioni relativamente grandi, semplificano anche la dissipazione del calore in quanto consentono di montare dissipatori di calore di maggiori dimensioni, in grado di distribuire il calore disperso in maniera più efficiente.
Prestazioni al top per la memoria
I formati di maggiori dimensioni che contraddistinguono i moduli COM-HPC hanno riflessi favorevoli anche sulle prestazioni della memoria, mettendo a disposizione lo spazio necessario per ospitare moduli di memoria DIMM che soddisfano i requisiti, in termini capacità e ampiezza di banda, dei server micro, edge e fog.
Il formato E permette di montare fino a 8 zoccoli DIMM per una capacità totale di memoria fino a 1 Terabyte.
Nel formato di dimensioni inferiori (D), è invece possibile integrare un massimo di 4 zoccoli DIMM per una capacità complessiva di memoria di 512 Gigabyte.
Prestazioni di I/O migliorate
Per la connessione con la scheda carrier, COM-HPC Server mette a disposizione 8 porte 25 GbE, oltre a 65 canali (lane) PCI Express Gen 4.0 e Gen 5.0 (si faccia riferimento alla figura 1).
Uno di questi canali è riservato alla comunicazione con un controllore BMC (Board Management Controller) opzionale, mentre gli altri 64 possono essere impiegati per il collegamento di periferiche.
Da ciò si evince che COM-HPC mette a disposizione ampie risorse di connettività ad alte prestazioni, utili per collegare ulteriori acceleratori di elaborazione come GPGPU, FPGA e ASIC – ad esempio sotto forma di moduli COM-HPC accoppiati, oppure supporti di memorizzazione basati su NVMe.
In totale, i progetti basati su COM-HPC server possono garantire prestazioni di I/O fino a 256 Gbyte/s attraverso i canali PCIe.
Sono anche previste 2 interfacce USB 4.0 (basate su tecnologia Thunderbolt 3.0), in grado di supportare trasferimenti a 40 Gbit/s, oltre a 2 interfacce USB 3.2 da 20 Gbit/s.
Il corredo di interfacce USB dei moduli COM-HPC Server è completato da ulteriori 4 interfacce USB 2.0.
Oltre a 2 porte SATA native, tali moduli contemplano 1 porta eSPI, 2 SPI, 1 porta SMB, 2 porte I2C, oltre a 2 UART e 12 GPIO per l’integrazione di semplici periferiche e interfacce di comunicazione standard, da utilizzare, ad esempio, per scopi di servizio.
Una porta 10 GbE aggiuntiva mette a disposizione un canale di comunicazione dedicato che può essere utilizzato per la gestione remota e fuori banda (out-of-band).
Gestione della scheda di classe server ottimizzata
Un’ulteriore novità introdotta da COM-HPC è l’interfaccia dedicata alla gestione del sistema.
Attualmente questa interfaccia è in fase di sviluppo da parte del sotto-comitato PICMG preposto (PICMG Remote Management Subcommittee).
L’obiettivo è rendere disponibile una versione ridotta dell’insieme di caratteristiche della più complessa interfaccia IPMI (Intelligent Platform Management Interface) per la gestione remota dei moduli server impiegati alla periferia della rete.
Oltre alla funzione slave, COM-HPC metterà a disposizione maggiori risorse di comunicazione per la gestione remota.
Grazie a queste nuove funzionalità, OEM e utilizzatori saranno in grado di garantire funzionalità RAMS (Reliability, Availability, Maintainability, Security), un insieme di requisiti molto comune per i server.
Per soddisfare singole esigenze, questa funzione può essere estesa attraverso il controllore per la gestione della scheda (BMC) sulla scheda carrier.
Gli OEM possono così sfruttare una base uniforme per la gestione remota modificabile in base a specifiche necessità.
COM-HPC Client: un balzo in avanti
Mentre le specifiche COM-HPC Server sono state espressamente concepite per lo sviluppo di progetti di server edge di nuova concezione, non bisogna certamente dimenticare i tradizionali sistemi embedded ad alte prestazioni, che fino a oggi sono stati realizzati in conformità con lo standard COM Express con pinout Type 6.
A tal proposito gli OEM si domandano se l’introduzione di COM-HPC decreterà l’obsolescenza dei loro progetti basati su COM Express, quale sarà il momento più opportuno per adottare il nuovo standard COM-HPC e quali vantaggi comporterà l’adozione di quest’ultimo per i loro clienti.
Per rispondere a tutti questi interrogativi è importante conoscere le potenzialità dei moduli COM-HPC Client e quali sono le differenze rispetto ai moduli COM Express con pinout Type 6.
Tre formati
Sotto molti aspetti, le somiglianze tra i due standard superano le differenze.
Al pari di COM Express, COM-HPC Client prevede tre differenti versioni per i moduli: 120 x 160 mm (size C), 120 x 120 mm (size B) e 120 x 95 mm (size A).
Ciò significa che il più piccolo modulo COM-HPC Client è praticamente identico, a livello dimensionale, a un modulo in formato COM Express Basic, che misura 125 x 95 mm.
Ciò significa che i moduli COM-HPC Client si posizionano a un livello superiore rispetto ai moduli in formato COM Express e sono quindi destinati ad applicazioni per le quali non è possibile ricorrere a quest’ultimo formato (fig. 3).
Migliori prestazioni
Grazie a un power budget che può arrivare a 200 W, i moduli COM-HPC client possono garantire prestazioni circa tre volte superiori rispetto a quelle dei più potenti moduli COM Express con pinout Type 6 attualmente disponibili.
Per quel che concerne la memoria, anche se sia COM-HPC sia COM Express utilizzano moduli SO-DIMM oppure memorie saldate, il primo può ospitare fino a 4 moduli SO-DIMM.
In ogni caso COM Express attualmente può supportare fino a 96 Gbyte di memoria, una capacità sufficiente per supportare i requisiti di memorizzazione delle odierne applicazioni di fascia alta.
Interfacce più numerose e veloci
Dal punto di vista del layout, la principale differenza tra i moduli COM Express e COM-HPC riguarda il connettore e il numero di pin di segnale che collegano il modulo alla scheda carrier “application-specific” (si faccia riferimento alla figura 4).
COM-HPC utilizza un nuovo connettore progettato per supportare le più recenti interfacce ad alta velocità e già specificato per garantire la compatibilità con le elevate velocità di clock di PCIe Gen. 5 e di Ethernet a 25 Gb/s.
Al momento attuale COM Express garantisce il supporto solo con le interfacce PCIe Gen 3.0/4.0 in modalità di compatibilità.
Naturalmente, i processori embedded con interfacce PCI Gen 4.0 devono in primo luogo essere disponibili.
Al pari di COM Express, anche COM-HPC prevede due connettori, ciascuno dei quali con 400 pin.
Grazie agli 800 pin, COM HPC dispone di un numero di pin quasi doppio rispetto a COM Express con pinout Type 6 che ne prevede 440.
La disponibilità di un maggior numero di pin, ovviamente, permette la connessione di un numero decisamente superiore di interfacce.
I moduli COM-HPC Client utilizzano tali pin per 49 canali PCIe per la connessione con la scheda carrier, uno dei quali riservato per la comunicazione con il controllore BMC della scheda carrier, un numero più che doppio rispetto ai 24 canali (max.) dei moduli COM Express con pinout Type 6.
Le specifiche dei moduli COM-HPC Client prevedono anche due interfacce 25 GbE KR e fino a due interfacce Ethernet 10 GbE BaseT, mentre COM Express Type 6 supporta un’interfaccia GbE, anche se è prevista un’opzione per implementare ulteriori interfacce di rete attraverso la scheda carrier.
Gestione di un massimo di 4 display
I moduli COM-HPC Client, al pari d’altronde dei moduli COM Express con pinout Type 6, supportano la parte grafica e ciò li distingue dai Server-on Module COM Express e dai moduli COM-HPC Server che sono invece di tipo headless (ovvero privi di interfaccia utente grafica).
Entrambi gli standard sono in grado di gestire fino a 4 display attraverso tre interfacce DDI (Digital Display Interface) e una porta eDP (embedded Display Port).
Per quanto concerne la parte multimediale, nello standard COM-HPC l’interfaccia HDA disponibile con COM Express è sostituita con SoundWire.
Quest’ultima, standardizzata dal consorzio MIPI, richiede solo due linee (clock e dati) e opera a frequenze fino a 12,288 MHz.
E’ possibile collegare fino a un massimo di quattro codec audio in parallelo su queste due linee e ogni codec riceve il proprio ID per consentire la valutazione.
Porte USB con maggior ampiezza di banda e interfaccia MIPI-CSI
Progettato con un occhio rivolto al futuro anche per quanto concerne gli standard USB, COM-HPC Client specifica fino a un massimo di 4 interfacce USB 4.0 e altrettante porte USB 2.0.
I moduli COM Express Type 6, dal canto loro, prevedono fino a 4 porte USB 3.2 e 8 porte USB 2.0.
Anche se il numero di porte USB 2.0 di COM HPC Client è la metà di quello di COM Express Type 6, il primo mette a disposizione un’ampiezza di banda decisamente superiore in quanto lo standard USB 4.0 garantisce velocità di trasferimento dati di 40 Gbps.
Un’altra caratteristica decisamente interessante dei moduli COM-HPC Client è il supporto di un massimo di due interfacce MIPI-CSI grazie alle quali è possibile collegare in modo economico telecamere utili in un gran numero di applicazioni, tra cui quelle che richiedono la comprensione del contesto operativo (situational awareness) e la robotica collaborativa.
COM-HPC Client dispone inoltre di due interfacce SATA per il collegamento dei tradizionali SSD e HDD (che oggigiorno possono essere quasi considerati come dispositivi legacy), oltre alle tipiche interfacce industriali quali 2 UART e 12 GPIO.
La dotazione di interfacce è completata da 2 porte I2C, oltre a 1 porta SPI e una eSPI
In definitiva si può affermare che tutte queste caratteristiche sono confrontabili con quelle di COM Express Type 6, anche se per quest’ultimo è disponibile un’opzione per il supporto del bus CAN attraverso il connettore.
In base alle differenze fin qui delineate, si può a ragion veduta affermare che gli OEM che utilizzano progetti basati su COM Express potranno continuare a fare affidamento su questo standard ancora per parecchi anni.
Questa previsioni si basa anche sul fatto che le specifiche COM-HPC Client non introducono un nuovo bus di sistema e ciò rappresenta una sostanziale differenza rispetto ai precedenti passaggi da ISA a PCI e da PCI a PCI Express.
A tal proposito è utile ricordare che i moduli COM Express hanno acquisito la maggior quota di mercato rispetto ai moduli ETX (peraltro ancora oggi disponibili) solo nel 2012, ovvero 11 anni dopo l’introduzione dello standard ETX.
Le varie generazioni di interfacce PCIe sono compatibili tra di loro, per cui i progetti che prevedono l’uso di interfacce PCIe 3.0 possono conservano la loro validità per lungo tempo anche nel momento in cui tutti le classi di processori supporteranno le interfacce PCIe 4.0.
Per tutti questi motivi non è necessario passare a COM-HPC se le specifiche relative alle interfacce soddisfano le esigenze di progetto.
Viceversa, tutti i progettisti con esigenze specifiche, necessità di un numero di canali PCIe superiore a 32, dell’ampiezza di banda supportata da PCI 4.0, di un maggior numero di porte UB 4.0, di interfacce Ethernet a 25 Gbit/s e/o di funzionalità avanzate di gestione remota, dovrebbero sicuramente considerare il passaggio al nuovo standard COM-HPC.
In tutti gli altri casi si potrebbe adottare una strategia tanto semplice quanto efficace: un sistema che funziona non si cambia.
Cronologia degli standard per moduli COM ad alte prestazioni | |||
Anno | Tappe fondamentali | ||
2001 | Fondazione di ETX-IG e introduzione del primo standard per moduli indipendente dai produttori | ||
2005 | PICMG pubblica le specifiche COM Express 1.0 | ||
2010 | Specifiche COM Express 2.0 | ||
2012 | Le vendite dei moduli COM Express superano quelle dei moduli ETX | ||
2012 | Specifiche COM Express 2.1 | ||
2018 | Costituzione del comitato PICMG COM-HPC | ||
2019 | Rilascio del pinout di COM-HPC | ||
2020 | Lancio delle specifiche COM-HPC | ||
Fig. 5 – Gli standard per moduli COM (Computer-on-Module) aperti e indipendenti dai produttori assicurano cicli di vita di svariati decenni per le applicazioni. Oggigiorno gli OEM possono ancora acquistare nuovi moduli in formato ETX, nonostante questi standard sia basato esclusivamente su bus “legacy”. Grazie alla compatibilità tra le differenti generazioni, gli standard basati su PCIe saranno disponibili per un tempo ancora più lungo.