Il computer industriale sta su una scheda

Il controllo industriale, ma anche altri campi applicativi di natura industriale, come la comunicazione e l’automotive, richiedono sistemi basati su computer particolarmente robusti, compatti, a basso consumo e costo, e allo stesso tempo ad alte prestazioni. A questi requisiti si aggiunge anche l’esigenza di rendere custom l’applicazione, sia relativamente alla funzionalità interna, sia relativamente alla funzionalità esterna. Oltre al controllo industriale, altri campi industriali cui i single board computer trovano applicazione sono soprattutto quello del controllo e della navigazione nell’avionica, dei radar, delle telecomunicazioni, dei sistemi di imaging medicali, dei sistemi di misura ed ispezione, dell’automotive, ecc. Gli Sbc (Single board computer) sono sistemi di elaborazione delle informazioni completamente assemblati su singola scheda che non richiedono sistemi di raffreddamento attivi (ventole). Questa loro caratteristica li distingue dai computer multi-schede per la particolare compattezza che li connota, quindi per la migliore corrispondenza ai requisiti applicativi dei sistemi embedded, particolarmente ricorrenti nelle applicazioni industriali. Queste sono applicazioni di elevata complessità che allo stesso tempo richiedono un livello di embedding molto elevato. Le prestazioni computazionali richiedono architetture di computing avanzate e capaci di eseguire efficientemente le applicazioni embedded con sistemi operativi real-time. La gamma di potenza dei processori va dai 400 a oltre 1500 Mips.

Robustezza, affidabilità e compattezza
Un single board computer industriale si caratterizza per l’elevate prestazioni in rapporto al costo e ai consumi di potenza elettrica. La realizzazione su scheda è tale da garantire una particolare resistenza e affidabilità, tanto da soddisfare i requisiti stringenti delle applicazioni industriali. Il formato della scheda può seguire uno standard proprietario o aperto (industry standard) come per esempio Vme, Com Express, Micro e Advanced Tca, PC/104, ecc., e tale da essere montabile in rack per l’interconnessione con altri moduli. I computer single board sono dei veri e propri sistemi su scheda o SoB (System-on-board), l’equivalente, in scala macroscopica, dei sistemi su chip o SoC (System-on-chip), la frontiera più avanzata della tecnologia del computing per applicazioni industriali.
La tecnologia dei computer single board si è sviluppata in conseguenza dei requisiti applicativi caratteristici proprio delle applicazioni industriali, in particolare i requisiti di robustezza, affidabilità e soprattutto compattezza, oltre al basso consumo di potenza elettrica. Derivati dai computer multi schede, i computer single board si caratterizzano per l’elevatissima integrazione, ottenuta anche grazie a tecnologie di microcomputing di ultima generazione basate soprattutto sulla logica programmabile, in particolare quella Fpga (Field Programmable Gate Array). I computer single board infatti, oltre ad ospitare uno o più processori, integrano anche la logica programmabile che consente di realizzare quella funzionalità specifica dell’applicazione target che diversamente richiederebbe l’utilizzo di schede aggiuntive.
L’offerta di computer single board è molto ampia in conseguenza dell’ampia disponibilità, da parte dei system integrator, di processori per applicazioni embedded caratterizzati da prestazioni molto varie, oltre ad un’altrettanto ampia offerta di componenti periferici ad elevata integrazione. La scelta del computer single board più adatto alle esigenze di sviluppo dell’applicazione industriale target è quindi molto legata alle conoscenze del processore e delle specifiche periferiche supportate sulla scheda. Ciò implica anche la conoscenza delle prestazioni richieste dall’applicazione, soprattutto quelle che implicano un elevata potenza computazionale, tipicamente richiesta da applicazioni di natura grafica (soprattutto quelle di natura 3D) e da applicazioni di natura real-time. Ovviamente, le periferiche, soprattutto quelle intelligenti, sono una parte importante del computer su singola scheda, in quanto possono svolgere funzionalità molto complesse (tipicamente il controllo del display grafico) senza impegnare il processore in maniera rilevante.

Single board computer basati su Fpga
Le esigenze applicative in ambito industriale no si limitano ad architetture di computing che utilizzano solo microcontrollori o microprocessori, ma richiedono anche l’integrazione sulla stessa scheda di logica programmabile, in particolare quella Fpga. La parte più importante e più strettamente proprietaria dell’applicazione industriale spesso viene implementata su logica programmabile, facendo ricorso soprattutto a IP proprietarie già realizzate e integrate su dispositivi Fpga. Il supporto della logica programmabile sulla SBC industriale diventa quindi sempre più ricorrente in questi prodotti. La scheda CHAMP-FX2 di Curtiss-Wright Controls Embedded Computing è una piattaforma di computing basata su Fpga che utilizza il form factor 6U VPX-REDI per mettere a disposizione dello sviluppatore una potenza di computing estremamente elevata derivata dalla combinazione di due Fpga Xilinx Virtex-5 con il processore PowerPC a doppio core 8641D di Freescale. Le elevate prestazioni sono anche dovute alla flessibilità del Serial RapidIO switching fabric. La scheda integra anche un’ampia quantità di DDR2 Sram e blocchi Sram fast QDR-II+, garantendo oltre 13 Gbyte/sec di banda di memoria per la Fpga.
Un altro esempio di utilizzo di logica programmabile su scheda Sbc per supportare le esigenze di sviluppo proprietarie è l’F11S di MEN Mikro Elektronic, un single board computer in formato 3U (Eurocard) CompactPCI basato su Atom ed Fpga. Grazie alla logica Fpga su scheda, è possibile per lo sviluppatore, implementare interfacce custom specifiche oppure funzioni di processing intensive come quelle richieste nella conversione di formato di dati e dei protocolli di comunicazione. Grazie all’architettura low power del processore Atom di Intel, questa SBC limita i consumi a massimo 5-7 Watt con un clock massimo di 1.6 GHz, quindi soddisfa i requisiti di consumo di potenza di applicazioni industriali come quelle del mobile e dell’infotainment. Questa scheda dispone fino a 2 GByte di memoria su scheda, 2 MByte di memoria Sram e una SPI boot flash. Oltre a queste risorse di memoria on board, vengono supportate interfacce verso memorie di massa come Sata, Compact Flash e microSD. La comunicazione è supportata sia da link Pci Express Intel System Controller Hub US15WP e dalla Fpga-controlled Fast Ethernet via RJ45. La Fpga può essere programmata dallo sviluppatore nella componente custom sia per gli aspetti di comunicazione, sia per quelli di funzionalità di sistema specifiche dell’applicazione, come per esempio i convertitori di protocollo, i touch controller, ecc. Prima del boot di sistema, la Fpga viene caricata dalla Flash di boot. È possibile aggiornare la Fpga accedendo direttamente alla Flash di boot mentre il sistema è attivo. Gli aggiornamenti diventano effettivi dopo lo spegnimento del sistema. La Fpga onboard è una Cyclone III EP3C16 di Altera dotata di 119088 logic elements e di 516096 bit di Ram. I pin disponibili sono 66 e sono accessibili tramite il connettore posteriore di I/O.

Un formato compatto e diffuso
I single board computer in formato PC104 si caratterizzano soprattutto per la compattezza del formato e per la considerevole diffusione dello standard. La Sbc PC104 Manx di VersaLogic si caratterizza oltre per la compattezza anche per la robustezza, dovuta anche all’assenza di parti mobili. L’uso del processore a bassissimo consumo Geode LX 800 di Amd consente l’impiego di questo Sbc in applicazioni industriali particolarmente sensibili come il controllo in automotive e l’elettronica medicale. Importante, per questo tipo di Sbc sono le funzionalità integrate su scheda, come il supporto di video ad alte prestazioni, una 10/100 Ethernet, quattro Usb port, 3 Com port, una LPT port e una interfaccia IDE. Il basso consumo di questa Sbc è garantito dalle caratteristiche di basso consumo del processore Geode LX 800 e dalla modalità di sospensione su Ram che consente di mettere la scheda in una condizione di bassissimo consumo (0,2 watt) tra una sessione attiva e l’altra. Manx può operare come Sbc stand-alone, ma anche in combinazione con altre schede di formato PC/104, grazie al sistema di connessione pass-through che permette di aggiungere in maniera compatta e robusta alla scheda Sbc altre schede di formato PC/104 sia custom, sia disponibili sul mercato, per la realizzazione di funzionalità non supportate direttamente dalla Sbc. La Sbc supporta il Bios embedded di Phoenix Technologies Embedded Bios. Questo è riprogrammabile, quindi modificabile dallo sviluppatore per operatività aggiuntive come il remote booting e altre funzioni software pre-OS. Sono supportati i più diffusi sistemi operativi oltre a Windows, Linux, VxWorks e QNX.

Sicurezza e robustezza a livello di software di sistema
I single board computer per applicazioni critiche, come per esempio quelle avioniche, oltre alle prestazioni di sistema operativo real-time, richiedono soprattutto sicurezza e robustezza a livello di software di sistema. Una particolare peculiarità di una certa classe di sistemi operativi Rtos è quella che garantisce anche prestazioni di sicurezza, come per esempio il “safe and secure” Integrity Rtos di Green Hills high-performance modular computing. L’esigenza a livello di integratore di sistema è quella di disporre contemporaneamente della soluzione hardware e della soluzione software per costruire un sistema embedded basato su singola scheda. Uno dei requisiti in applicazioni basate su Sbc è la garanzia del real-time (hard real-time). Questo aspetto in parte dipende dall’hardware (caratteristiche del sistema di interruzione e risposta all’interruzione del processore), dall’altra da un software di sistema particolarmente ottimizzato per questi requisiti. Il sistema operativo Integrity è in grado di gestire la risposta alle interruzioni in pochi nanosecondi. Tutti i servizi del sistema operativo Integrity sono stati ottimizzati per minimizzare il sovraccarico delle chiamate di sistema. Queste possono essere sospese per consentire alle altre chiamate di essere eseguite. Viene utilizzato uno scheduler real-time effettivo, capace di supportare livelli multipli di priorità e di abilitare controlli completi sulle percentuali di allocazione della Cpu. I servizi di sistema operativo più frequenti hanno la massima priorità di interruzione e minima latenza assoluta. Per garantire tale prestazione, il kernel non maschera, nè blocca mai le interruzioni. Viene evitato anche che le istruzioni con latenze lunghe possano temporaneamente bloccare le interruzioni su alcuni sistemi.

LASCIA UN COMMENTO

Inserisci il tuo commento
Inserisci il tuo nome