EO_504

ELETTRONICA OGGI 504 - SETTEMBRE 2022 52 DIGITAL PROGRAMMABLE DEVICES sul campo rispetto ai dispositivi con funzionalità interna fissa e cablati dal produttore. Includono risorse logiche come Flip-Flop, memorie RAM, unità moltiplicatrici e accumulatrici, DSP e microprocessori. Hanno anche diversi componenti di terze parti come controller MAC Ethernet, interfaccia video digitale, I/O seriali ad alta velocità e così via. I dispositivi FPGA hanno caratteristiche notevoli di basso consumo, sono insensibili alle radiazioni, sono a bassa potenza e alte prestazioni, sono disponibili da diversi fornitori del settore come Xilinx (AMD), Microsemi , Altera (Intel) , Lattice e così via. L’obiettivo principale dell’utilizzo degli FPGA nell’implementazione degli algoritmi nell’hardware è ridurre al minimo il divario tra algoritmi e sviluppo del sistema embedded. Il vantaggio dell’impiego degli FPGA è la riconfigurabilità, i bassi costi di progettazione e il ridotto tempo di inserimento sul mercato. Negli ultimi anni, i moderni FPGA sono disponibili con core di processore embedded software e hardware per consentire al progettista di creare applicazioni embedded complesse. Per aumentare la velocità di esecuzione dell’algoritmo, sono stati sviluppati acceleratori hardware coprocessori dedicati e interfacciati con il processore in piattaforme System on Chip (SoC). In figura 1 un esempio di dispositivo FPGA. Le caratteristiche principali dei dispositivi FPGA Gli aspetti positivi Flessibilità estremamente elevata. Grazie al chip completamente riconfigurabile, l’FPGA non è limitato dal set di istruzioni come la CPU. Il suo limite è la non elevata disponibilità di blocchi logici primitivi. Insieme all’elevato numero di porte I/O disponibili, i chip possono essere utilizzati laddove gli standard cambiano molto velocemente. Elevata velocità di elaborazione. Una volta programmato, l’FPGA agisce come un dispositivo autosufficiente altamente specializzato con latenze piuttosto basse. Basso consumo energetico. Gli FPGA hanno unamaggiore efficienza delle CPU. Dimensioni ridotte. I chip FPGA possono essere piuttosto piccoli per le prestazioni che offrono grazie ad un’elevata specializzazione. Gli aspetti negativi Codifica costosa. Ci sono molti più sviluppatori di software nel mondo rispetto a quelli che hanno familiarità con i linguaggi HDL (hardware description language). Ecco perché i codificatori HDL sono più costosi. Per questo motivo, è in rapida crescita l’adozione della sintesi di alto livello, un processo che aiuta a configurare gli FPGA utilizzando linguaggi di programmazione di alto livello. Mancanza di retrocompatibilità. In alcuni casi, i vecchi programmi non funzioneranno sui dispositivi più recenti senza essere rielaborati. Costo elevato. Nonostante il basso consumo, gli FPGA possono essere piuttosto costosi in produzione. Ottimizzazione dell’algoritmo basato su FPGA-SoC Un esempio di accelerazione di un algoritmo specifico o di elaborazione dei dati utilizzando FPGA-SoC, è l’implementazione hardware personalizzata di sistemi RTOS (sistemi operativi in tempo reale) basata su più registri di pipeline e architettura MIPS32 (Microprocessor without Interlocked Pipeline Stages - Architettura per microprocessori RISC 32 bit). L’implementazione di RTOS richiede diversi meccanismi come il contesto dell’attività di operazioni di commutazione, sincronizzazione tra task o comunicazione dati. Implementazioni software di funzioni specifiche di RTOS possono generare ritardi significativi influendo negativamente sulle scadenze richieste per particolari applicazioni. Questo esempio prevede l’implementazione di un processore dedicato con architettura MIPS32, basata su più registri di pipeline e supporto hardware per uno schedulatore dinamico con prestazioni migliorate, garantendo operazioni di controllo in tempo reale, con maggiore robustezza ed elevate prestazioni di questa architettura rispetto ai più comuni approcci al microprocessore. Unaltrocasodiottimizzazioneimplementaunserveradalte prestazioni per sistemi su chip FPGA. L’implementazione di un server a basso costo con protocollo di rete utilizza hardware programmabile che può facilmente adattarsi a chip programmabili FPGA di basso range. Le novità più importanti introdotte sono costituite da un hardwareottimizzato, implementazionedi algoritmi veloci e configurazione automatica della rete. L’architettura modulare implementata in un FPGA a basso costo può raggiungere tutti i requisiti di tempo previsti e fornire prestazioni simili a quelle di altre soluzioni senza questa implementazione hardware. Applicazioni AI e ML con le nuove architetture FPGA-SoC Una delle nuove architetture per applicazioni specifiche basate su soluzioni FPGA-SoC prevede l’applicazione di dispositivi SoC nella robotica mobile. In particolare, si tratta della progettazione e implementazione di un sistema in tempo reale per la navigazione robotica che integra algoritmi di controllo neurale in un sistema Xilinx SoC, elaborazione delle immagini (Machine Vision

RkJQdWJsaXNoZXIy Mzg4NjYz