Moduli multi-funzione per il medicale

sistemi embedded presenti nei sistemi medicali intelligenti, dalle pompe per infusione alle apparecchiature per il riconoscimento morfologico del paziente, sono chiamati ad assolvere un gran numero di compiti differenti: controllo del dispositivo, elaborazione dei dati, visualizzazione dei dati generati e possibilità di usufruire di interfacce utente grafiche. A causa della diffusione dell’utilizzo di IoT in campo medicale, essi devono anche fornire un maggior numero di funzionalità di comunicazione e di connettività. La concessione di licenze basate sull’utilizzo di dispositivi medicali è una tendenza derivata dall’adozione del concetto di IoT. I vantaggi sono ovvi: le strutture ospedaliere possono ridurre gli investimenti e i costi operativi fissi; i fornitori possono trarre vantaggi dall’aumento delle vendite. In ogni caso, la connettività IoT impone l’adozione di misure di protezione dei dispositivi contro minacce esterne e perdita dei dati.

Separazione: l’approccio tradizionale

L’impiego di risorse di elaborazione dedicate per lo svolgimento di tutti questi differenti compiti è una metodologia collaudata e tradizionalmente utilizzata per separare il software legato alla sicurezza dalle componenti non legate a questo aspetto come ad esempio l’interfaccia utente. Una suddivisione di questo tipo contribuisce a semplificare sia il processo d’ingegnerizzazione sia la certificazione di conformità dei dispositivi alle normative vigenti in ambito medicale. In un progetto dove tutto il software gira su un unico sistema operativo, tutte le componenti devono soddisfare l’insieme delle normative relative alla sicurezza. Ciò può contribuire ad aumentare i costi di sviluppo e di certificazione annullando in parte i benefici di tipo economico legati al consolidamento dell’hardware. Oltre a ciò, nel caso sia richiesto un comportamento in real-time, ad esempio per il controllo di un dispositivo o per elaborazioni particolarmente critiche, una separazione tra le funzioni real-time e quelle non real-time può contribuire a migliorare il comportamento deterministico del dispositivo. In questo caso è possibile garantire il funzionamento in real-time anche quando è massimo il workload di altre funzionalità del sistema o in presenza di un blocco di tali funzioni. Tale separazione è anche utile nel caso di operazioni “non trusted” condotte su Internet perchè, in teoria, attraverso la Rete è possibile accedere ai dispositivi medicali connessi a IoT come accade per un qualsiasi Pc. In questo modo si possono verificare accessi indesiderati a dati confidenziali, oltre all’introduzione di virus, malware e minacce di vario genere. Per questo motivo gli Oem devono “rafforzare” le difese dei loro dispositivi contro queste minacce. Un’opzione efficace prevede la separazione del dispositivo tramite un sistema di sicurezza dedicato che instradi tutte le comunicazioni da/verso il mondo esterno e che agisca alla stregua di un firewall o di un gateway dedicato, proteggendo il dispositivo medicale contro le violazioni alla sicurezza.

Integrazione: un approccio più efficace

Tuttavia, la separazione basata sull’hardware è costosa e tutte le funzioni, possono essere integrate su un unico hardware nel caso in cui si possa disporre di una piattaforma abbastanza potente e in grado di supportare una tecnologia hypervisor sicura e in real-time, capace di separare le applicazioni utilizzando solamente il software. Un ottimo punto di partenza per implementare sistemi embedded multi-funzione per applicazioni medicali sono le Apu R-Series e G-Series di Amd. Si tratta di SoC perfettamente scalabili che forniscono elevate prestazioni in termini di elaborazione Gpu o Gpgpu (General-purpose computing on graphics processing unit), e sfruttano la tecnologia grafica Radeon abbinata alla tecnologia hypervisor di Real-time Systems ideata per garantire la sicurezza di dispositivi per uso industriale e medicale che richiedano funzionalità real-time.

Alte prestazioni per applicazioni medicali

Le Apu multi-core G-Series e R-Series di Amd dispongono di una potenza di elaborazione più che sufficiente per gestire tutti questi task utilizzando un singolo processore multi-core. Essi integrano anche un’unità grafica programmabile ad alte prestazioni all’interno di un unico chip di silicio. Ciò consente a queste Apu di elaborare differenti strutture dati nel modo più efficiente possibile: i carichi di lavoro seriali sono gestiti dai core x86, mentre quelli paralleli, ad esempio relativi all’elaborazione delle immagini, sono gestiti dall’unità grafica, la Gpu. Per tale motivo le Apu di Amd integrano un gran numero (dalle centinaia alle migliaia) di unità di elaborazione nella Gpu. Come implica il nome stesso, questi engine Simd (Single instruction multiple data) possono elaborare una pluralità di elementi di dati in parallelo utilizzando una singola istruzione. Nelle applicazioni di imaging, per esempio, è possibile effettuare tutti i calcoli necessari per una linea o un frame completo di un’immagine o di una registrazione video. Una linea d’immagine formata da 4.096 pixel con informazioni di colore a 16 bit richiede circa 8,5 cicli di clock per linea e circa 17.700 cicli di clock per un’immagine completa. A una frequenza di clock di 800 MHz, un’operazione relativa a un’immagine 4K può essere eseguita in 22 microsecondi.

Elevate prestazioni Gpgpu

I processori SoC R-Series, ovvero le Apu più potenti di Amd, garantiscono prestazioni (a livello teorico) di 819 Gflop. Ciò consente di effettuare fino a 92.570 operazioni al secondo su un’immagine completa con risoluzione 4K (4.096 x 2.160 pixel). Oltre a questi dati numerici, che si riferiscono alle prestazioni, è interessante notare che i nuovi SoC R-Series sono caratterizzati da un Tdp (Thermal design power) scalabile da 12 a 35 W grazie al quale è possibile sviluppare progetti completamente chiusi e privi di ventole, che risultano quindi igienici e particolarmente robusti. Un ulteriore vantaggio è rappresentato dal fatto che le Gpu Radeon di Amd sono anche disponibili sotto forma di soluzione a singolo core in modo da poter adeguare le prestazioni in base alle esigenze dei processi di acquisizione dati. L’elaborazione Gpgpu, inoltre, non fa ricorso a software proprietari come Cuda, ma supporta gli standard openCL, sostenuti da diversi fra i più importanti produttori.

Tecnologia hypervisor per sistemi multi-funzione

Il secondo elemento necessario per la realizzazione di un sistema embedded multi-funzione per applicazioni medicali è la disponibilità di un hypervisor sicuro e in grado di garantire prestazioni real-time. Esso esegue l’allocazione delle singole risorse hardware della piattaforma di elaborazione embedded ai diversi computer virtuali, ciascuno dei quali è in grado di far girare i propri sistemi operativi, separando in tal modo le diverse funzioni del dispositivo le une dalle altre. Un processore quad-core G-Series o R-Series di Amd, ad esempio, può essere suddiviso in quattro computer virtuali completamente indipendenti, su cui girano in maniera indipendente sistemi operativi real-time e general purpose. L’hypervisor in real-time di Rts, ampiamente diffuso nel mondo delle applicazioni embedded, fornisce tutti gli elementi base necessari per lo sviluppo di dispositivi medicali connessi e multi-funzione. La più recente release (4.6) supporta tutte le Apu G-Series e R-Series di Amd. Ciò consente agli sviluppatori di utilizzare la totalità delle funzioni hardware, senza restrizione alcuna. Poiché il set-up risulta particolarmente semplice, gli sviluppatori possono avviare le loro macchine virtuali nel giro di pochi minuti. L’hypervisor real-time di Rts consente il funzionamento simultaneo di sistemi operativi real-time come VxWorks di Wind River o Neutrino Rtos di Qnx, nonché dei più diffusi sistemi operativi di tipo general purpose come ad esempio quelli della famiglia Windows di Microsoft, compreso Windows 10 IoT, e Linux su una singola Apu. Tutti i sistemi virtualizzati girano separatamente gli uni dagli altri ed è anche prevista la possibilità di effettuare il reboot di un sistema senza influenzare o interferire con il funzionamento degli altri sistemi. Si tratta di un aspetto importante per i dispositivi medicali safety-critical da cui dipendono le cure di un paziente. Insieme alla funzionalità di sicurezza disponibili, come interfacce Api per l’avvio, l’arresto o il monitoraggio dei singoli sistemi operativi, l’hypervisor di Rts non solo rappresenta la piattaforma ideale per dispositivi medicali sicuri, ma anche per tutte le applicazioni embedded in cui la separazione e la sicurezza in tempo reale rivestono un’importanza critica.

I CoM semplificano la fase di integrazione

I Computer-on-Module in formato Com Express semplificano l’integrazione delle Apu G-Series e R-Series nei dispositivi medicali con l’hypervisor di Rts. Poichè questi moduli Com mettono a disposizione un core di elaborazione “application-ready”, gli sviluppatori non sono più costretti a progettare e configurare i loro dispositivi embedded a partire da zero. Essi devono solamente scegliere il modulo più adatto, integrare la carrier board specifica per la particolare applicazione considerata e definire le espansioni richieste e un’interfaccia esterna. L’adozione di un approccio basato su questi moduli consente di ridurre in modo significativo le risorse e il tempo necessari per la progettazione rispetto a quelli richiesti da un progetto “full custom”. I collaudi e le richieste di certificazione sono notevolmente semplificati, poiché il core di elaborazione viene fornito già collaudato e pre-validato in conformità alle più importanti normative riconosciute su scala internazionale. Eventuali problematiche legate alla fine della disponibilità di determinato processore o all’introduzione di processori di nuova generazione possono essere risolte con la semplice sostituzione del modulo Com. La standardizzazione dei moduli Com Express comporta ulteriori vantaggi: i progettisti, ad esempio, possono sfruttare le stesse interfacce per lo sviluppo di nuovi prodotti e si possono avvalere del supporto di un gran numero di produttori. Ampio e articolato, l’ecosistema di accessori disponibili, che spazia dalle soluzioni di raffreddamento “application ready” alle schede carrier, permette di scegliere i componenti a prezzi competitivi e persino di riutilizzare layout di terze parti per minimizzare i costi di Nre. Il fattore di forma utilizzato, ampiamente diffuso e supportato, viene migliorato e aggiornato su base continuativa. In qualità di ente di standardizzazione indipendente, Picmg si occupa della definizione delle specifiche di Com Express e supporta attivamente la community degli sviluppatori nell’attività di promozione di questo standard per favorirne l’adozione al posto di soluzioni di natura proprietaria. I progettisti di apparecchi medicali possono trarre vantaggio dal fatto che il know-how specifico resta all’interno dell’azienda mentre le realtà specializzate nel settore dell’elaborazione embedded come congatec sviluppano e producono i core di elaborazione “application ready”. Questi sono corredati di tutti i Bsp (Board support package) e i driver necessari, oltre a integrare tecnologie come l’hypervisor di Rts e le più recenti Api per applicazioni IoT, rilasciate da congatec per tutte le piattaforme di nuova introduzione. Esse si propongono come una soluzione affidabile per il monitoraggio del sistema grazie a cui è possibile aggiornare, monitorare e controllare da remoto un dispositivo medicale. Gli Oem possono sfruttare queste informazioni per numerosi scopi: manutenzione predittiva, gestione degli asset e dell’inventario, aggiornamenti software e tracciamento dell’utilizzo. Grazie al valore aggiunto fornito da congatec, gli utenti possono disporre di moduli multi-funzione “application-ready” che semplificano notevolmente l’uso delle tecnologie embedded. Senza dimenticare il supporto all’integrazione personalizzata di congatec, grazie al quale gli utenti hanno a disposizione un unico contatto dedicato in grado di rispondere “in toto” alle loro richieste.

Pubblica i tuoi commenti