Grazie per aver inviato la tua richiesta! Uno dei nostri team membri ti contatterà a breve.
Grazie per aver inviato il tuo prenotazione! Uno dei nostri team membri ti contatterà a breve.
Struttura del corso
Fondamenti dell’architettura RISC-V e panoramica sull’ecosistema
Architettura ISA di RISC-V e sua adozione nel settore
- La filosofia delle ISA aperte e il ruolo di RISC-V International nella standardizzazione
- Il modello concettuale di RISC-V: architettura load-store, file dei registri e ordinamento dei byte
- Confronto con ARM, x86 e POWER: vantaggi e svantaggi nell’utilizzo in ambienti di calcolo eterogenei
- Valutazione della maturità dell’ecosistema: ruolo di SiFive, T-Head, Western Digital e delle comunità open source di progettazione hardware
- Interfacce standardizzate: RISC-V Privileged ISA e Machine Software Abstraction Layer (MSBL)
Modelli di memoria e conformità ABI
- Specifiche architetturali non privilegiate: mappa dei registri CSR, gestione delle eccezioni e gerarchie di memoria
- Conformità ABI degli insiemi di istruzioni RV32I/RV64I per garantire la portabilità binaria tra piattaforme diverse
- Convenzioni di ordinamento della memoria e istruzioni di sincronizzazione per sistemi multiprocessore
Programmazione in Assembly RISC-V e strumenti di compilazione
Programmazione a basso livello con le istruzioni RISC-V
- Istruzioni aritmetiche base (estensione I), moltiplicazione/divisione (M) e operazioni atomiche (A)
- Strategie di programmazione adattabili alle piattaforme a 32 o 64 bit RISC-V
- Gestione delle convenzioni di chiamata e dei frame dello stack per sistemi embedded e in tempo reale
Padroneggiamento degli strumenti di compilazione
- Utilizzo del toolchain LLVM: Clang, LLVM e Binutils per la cross-compilazione RISC-V
- Configurazione dei linker script, delle sezioni e dello schema di allocazione della memoria in ambienti bare-metal o con RTOS
- Ottimizzazione del codice tramite intrinseci compilatore, livelli di ottimizzazione e analisi delle prestazioni
- Gestione dei flussi di lavoro per lo sviluppo degli strumenti open source: creazione, test e distribuzione personalizzata di GCC/Clang
Sviluppo di sistemi embedded e sistemi operativi in tempo reale
Programmazione bare-metal e con RTOS
- Sviluppo in Rust su piattaforme RISC-V: astrazioni efficienti, gestione sicura della memoria e programmazione diretta sull’hardware
- Ambienti No-Std: definizione di linker personalizzati, sviluppo di driver per dispositivi e I/O mappato in memoria
- Utilizzo del RTOS Zephyr e dello strumento Buildroot per la creazione di BSP specifici per RISC-V
- Interfacciamento con periferiche: GPIO, I2C, SPI, UART e programmazione dei controller DMA
Ottimizzazione delle prestazioni e del consumo energetico
- Gestione intelligente del clock, dei domini di alimentazione e ottimizzazione delle modalità a basso consumo
- Analisi precisa delle prestazioni tramite profilatori di simulazione e contatori hardware dedicati
- Ritardo minimo nell’elaborazione delle interruzioni in sistemi ad alta sicurezza
Sviluppo del kernel Linux e dei bootloader per RISC-V
Boot firmware e gli ambienti di avvio
- Sviluppo di firmware bootloader con OpenSBI, conforme alle specifiche SBI
- Implementazione di stack di avvio UEFI/EDK II su piattaforme RISC-V
- Migrazione dei sistemi Coreboot e U-Boot su computer single-board basati su RISC-V
Integrazione nel kernel Linux
- Contributi al kernel principale: definizione di overlay per il device tree, gestione della topologia CPU e sviluppo dei driver per i controller interrupt AIA
- Creazione di BSP proprietari e configurazione del kernel per piattaforme SoC personalizzate
- Supporto a file system, stack di rete e containerizzazione (Docker, Kubernetes) su sistemi host RISC-V
Progettazione di SoC RISC-V e prototipazione FPGA
Architettura multinucleo e integrazione dei componenti
- Metodologie progettuali per i Network-on-Chip (NoC) nei processori RISC-V a più core
- Gestione della coerenza di cache tramite protocolli Axi4/CHI e comunicazione inter-nucleo
- Integrazione di IP open source: OpenCores, ChIPS Framework e componenti RTL forniti da produttori terzi
- Progettazione della matrice di bus e integrazione di controller per memoria (DDR, SRAM, eMMC, PCIe)
Prototipazione hardware tramite FPGA
- Sintesi e implementazione dei core RISC-V in FPGA (ad esempio BOOM, VexRiscv, PULP)
- Metodologie di verifica funzionale basate su asserzioni SystemVerilog (SVA) e framework UVM
- Utilizzo di strumenti di verifica formale per validare il comportamento dei core RISC-V
Estensioni vettoriali di RISC-V e accelerazione applicativa specialistica
Approfondimento sull’estensione RVV (RISC-V Vector)
- Operazioni di caricamento/scaricamento vettoriale, moltiplicazione-somma combinata (VFMA) e accelerazione dei calcoli matriciali
- Gestione dinamica della lunghezza dei vettori (VL, VLEN) per ottimizzare le prestazioni SIMD in base alle esigenze operative
- Controllo avanzato dei mascheri vettoriali, segmentazione e flessibilità tipologica per applicazioni DSP e di machine learning
Disegno di acceleratori specialistici e istruzioni dedicate
- Progettazione di acceleratori personalizzati tramite estensioni software e interfacce CBAR per il trasferimento dati
- Modifiche del frontend compilatore per generare codice basato su istruzioni specifiche del sistema
- Strategie di partizionamento hardware-software finalizzate all’integrazione efficace degli acceleratori nei futuri SoC
Accelerazione AI e intelligenza artificiale su piattaforma RISC-V
Progettazione di unità NPU integrate nei processori RISC-V
- Architettura delle Neural Processing Unit: array sistolici, core tensoriali e tecniche di compressione dei pesi per un’elaborazione AI ottimizzata
- Tecniche di quantizzazione (INT8, INT4, FP8) per facilitare l’integrazione su dispositivi edge
- Compatibilità con framework noti: TensorFlow Lite Micro, ONNX Runtime e PyTorch Edge sulle piattaforme RISC-V
Calcolo eterogeneo per carichi di lavoro AI
- Sviluppo congiunto di un CPU RISC-V e di una NPU acceleratrice per implementare pipeline di inferenza in tempo reale
- Ottimizzazione delle risorse di memoria: gestione della larghezza di banda HBM/DDR al fine di memorizzare efficacemente i pesi e le attivazioni dei modelli
- Bilanciamento termico ed energetico nei sistemi di inferenza AI implementati in ambienti edge
Sicurezza hardware e calcolo confidenziale su RISC-V
Protezione fisica della memoria ed esecuzione affidabile
- Mecanismi di protezione della memoria tramite Physical Memory Protection (PMP) e controlli sulla tabella delle pagine
- Architetture Secure Enclave/TEE: integrazione con OP-TEE, ambienti di esecuzione sicura paragonabili a SEV
- Garanzie di affidabilità durante il boot: gestione della Root of Trust, avvio sicuro e attestazione delle misure di lancio del sistema
Accelerazione crittografica integrata
- Sfruttamento delle estensioni criptografiche native (Zk, Zkr, K): ottimizzazione per funzioni SHA, AES, RSA e ECC
- Integrazione di algoritmi post-quantistici adatti alle future generazioni di processori RISC-V
- Tecniche avanzate contro gli attacchi laterali: programmazione a tempo costante, mascheramento dei dati e utilizzo di generatori hardware casuali
Progettazione avanzata di architetture personalizzate ed estensioni ISA
Disegno di architetture specialistiche ed estensioni software
- Fasi fondamentali della progettazione delle nuove estensioni: codifica binaria, tabelle di mappatura e analisi dell’impatto sull’ABI, con procedure per la registrazione presso RISC-V International
- Realizzazione personalizzata dei file dei registri tramite CBAR (Custom Base Address Registers) per lo smistamento efficiente degli operandi
- Modifiche alla pipeline di esecuzione, rilevamento e gestione degli hazard logici in funzione delle nuove istruzioni introdotte
Verifica sistematica ed approvazione tecnica per le modifiche architetturali
- Creazione di testbench dedicati: stimoli predefiniti e tecniche casuali vincolate per validare il corretto funzionamento delle estensioni
- Sviluppo di framework di regression testing e analisi della copertura per verificare ogni modifica introdotta all’architettura complessiva
- Test di interoperabilità: accertarsi che le nuove istruzioni non violino i vincoli ABI stabiliti dal consorzio RISC-V
Applicazioni critiche per la sicurezza e nel settore automotive con RISC-V
Sicurezza funzionale e conformità alle norme automobilistiche
- Rispetto degli standard ISO 26262 nella progettazione dei processori RISC-V destinati ai veicoli
- Classificazione secondo le categoria ASIL-Q e redazione di manuali tecnici per garantire la sicurezza delle implementazioni hardware RISC-V
- Gestione deterministica degli interrupt, utilizzo di coppie di core lockstep e protezione efficace della memoria nei sistemi automotive ad alta sicurezza
Sistemi industriali in tempo reale e applicazioni edge computing
- Rispetto degli standard IEC 61508 SIL per la creazione di ambienti deterministi su piattaforme RISC-V a più core
- Realizzazione di gateway IoT industriali basati su RISC-V: connettività, analisi dei dati in loco e sistemi moderni di aggiornamento firmware OTA
Progetto finale: sviluppo completo di un sistema RISC-V
Sviluppo su tutto il ciclo di vita del prodotto
- Definizione preliminare dell’architettura e delle estensioni ISA necessarie in base al caso d’uso previsto
- Implementazione RTL tramite SystemVerilog accompagnata da testbench UVM ed elaborazioni di verifica formale
- Prototipazione su FPGA, sviluppo del boot firmware e realizzazione di una pila driver bare-metal funzionante
- Personalizzazione del BSP Linux e creazione di un toolchain adeguato al core RISC-V progettato
- Integrazione e test di carichi di lavoro AI: collocamento della NPU, ottimizzazione quantitativa dei modelli ed analisi approfondita delle performance ottenute
- Valutazione degli aspetti di sicurezza: controllo tramite PMP, verifica dell’integrità del boot e benchmarking delle capacità di accelerazione crittografica
- Documentazione dettagliata dell’architettura, strategia di tutela della proprietà intellettuale e presentazione multidisciplinare davanti a un team eterogeneo di stakeholder
Requisiti
Nessuno.
21 ore
Recensioni (2)
Le spiegazioni e l'interattività del formatore erano davvero ottime; anche se probabilmente non ero abbastanza esperto, ho comunque imparato molto!
Pieter Bruynseels - Spot Buy Center BV
Corso - Design Patterns
Traduzione automatica
Mi è piaciuta la piattaforma che abbiamo utilizzato. Era davvero bella e facile da usare. Mi è piaciuta la sezione su TypeScript, in particolare la parte sui nomipazi e i moduli.
Robert - DB Global Technology
Corso - JavaScript - Advanced Programming
Traduzione automatica