Programa do Curso
Fundamentos de Arquitetura RISC-V e Visão Geral do Ecossistema
Paisagem da ISA RISC-V e Adoção na Indústria
- Filosofia de ISA aberta e a paisagem de padronização da RISC-V International
- Modelo Mental do RISC-V: Arquitetura Load-Store, Arquivo de Registradores, Ordenação de Bytes
- Comparação com ARM, x86 e POWER: Compromissos para arquiteturas de computação heterogênea
- Avaliação de maturidade do ecossistema: SiFive, T-Head, Western Digital e a comunidade crescente de silício open-source
- Interfaces padronizadas: ISA Privilegiada RISC-V, Camada de Abstração de Software Máquina (MSBL)
Modelos de Memória e Conformidade com ABI
- Especificação de Arquitetura Não Privilegiada: mapa de CSR, tratamento de exceções e hierarquias de memória
- Conjuntos de instruções RV32I / RV64I e conformidade com ABI para portabilidade de binários entre plataformas
- Convenções de ordenação de memória e instruções de barreira para sistemas multiprocessor
Programação em Assembly RISC-V e Ferramentas de Compilação
Programação de Instruções de Baixo Nível
- Extensões de instruções inteiras base (I), Multiplicação/Divisão (M) e operações atômicas (A)
- Estratégias de programação conscientes da bitagem para alvos RISC-V de 32 e 64 bits
- Convenções de chamada e gerenciamento de quadros de pilha para sistemas de software embarcados e tempo real
Competência em Ferramentas de Compilação
- Ferramentas de compilação baseadas em LLVM: Clang, LLVM, Binutils para compilação cruzada RISC-V
- Scripts de linker, seções e configuração de layout de memória para ambientes bare-metal e RTOS
- Intrínsecos do compilador, níveis de otimização e ajuste de código dirigido por profiling
- Fluxos de trabalho de desenvolvimento de ferramentas open-source: construção, teste e empacotamento de ferramentas GCC/Clang personalizadas
Desenvolvimento de Sistemas Embarcados e Sistemas Operativos em Tempo Real
Programação Bare-Metal e RTOS
- Programação de sistemas em Rust para RISC-V: abstrações de custo zero, gerenciamento de memória inseguro e desenvolvimento bare-metal
- Ambientes No-Std: linkers personalizados, desenvolvimento de drivers de dispositivos e E/O mapeado em memória
- Zephyr RTOS e desenvolvimento de BSP com Buildroot para alvos RISC-V
- Interface com periféricos: programação de GPIO, I2C, SPI, UART e controladores DMA
Otimização de Potência e Desempenho
- Gate de clock, gerenciamento de domínios de potência e otimização de modos de baixo consumo
- Análise de desempenho precisa por ciclo com perfis de simulação e contadores de desempenho de hardware
- Ajuste da latência de interrupções em tempo real para aplicações críticas à segurança
Desenvolvimento de Kernel Linux e Bootloader para RISC-V
Ecossistema de Firmware de Boot e Bootloader
- OpenSBI (implementação da especificação SBI): desenvolvimento de firmware de bootloader
- UEFI/EDK II no RISC-V: desenvolvimento de pilha moderna de boot de firmware
- Portabilidade do Coreboot e U-Boot para computadores de placa única RISC-V
Integração do Kernel Linux
- Contribuições para o kernel RISC-V principal: overlays de device tree, topologia de CPU e desenvolvimento de drivers de controlador de interrupção (AIA)
- Desenvolvimento de BSP de vendor e configuração do kernel para plataformas SoC personalizadas
- Suporte a sistemas de arquivos, pilha de rede e suporte a containerização (Docker, Kubernetes) em sistemas host RISC-V
Design de SoC RISC-V e Prototipagem com FPGA
Arquitetura e Integração de SoC Multicore
- Metodologias de design de Network-on-Chip (NoC) para processadores multicore RISC-V
- Coerência de cache Axi4/CHI e protocolos de comunicação inter-processador
- Integração de IP open-source: OpenCores, ChIPS Framework e componentes RTL de vendor
- Design de matriz de barramento e integração de controlador de memória (DDR, SRAM, eMMC, PCIe)
Prototipagem de Processadores Baseados em FPGA
- Síntese e implementação em FPGA do núcleo RISC-V (ex.: BOOM, VexRiscv, PULP)
- Aserções SystemVerilog (SVA) e metodologia de verificação funcional baseada em UVM
- Ferramentas de verificação formal e testes baseados em propriedades para validação de núcleo RISC-V
Extensões Vetoriais RISC-V e Aceleração Específica de Domínio
Visão Detalhada da Extensão RVV (RISC-V Vector)
- Load/store vetorial, multiplicação-adicionação vetorial fundida (VFMA) e aceleração de computação de matrizes
- Operações vetoriais de comprimento variável (VL, VLEN) para execução SIMD otimizada para trabalho
- Operações de máscara vetorial, controle de segmento e flexibilidade de tipos de dados para cargas de trabalho DSP e ML
Design de Instruções Específicas de Domínio e DSP Personalizado
- Design de aceleradores específicos de domínio através de extensões personalizadas e interfaces de operandos baseadas em CBAR
- Modificações no frontend do compilador para geração de instruções personalizadas e emissão de código
- Estratégias de particionamento hardware-software para integração de aceleradores em SoCs de produção
Aceleração de IA e Aprendizado de Máquina na Borda com RISC-V
Design e Integração de NPU para Processadores RISC-V
- Arquitetura de Unidade de Processamento Neural: arrays sistólicos, núcleos de tensor e compressão de pesos para aceleração de IA no chip
- Técnicas de quantização de modelo (INT8, INT4, FP8) para implantação na borda em RISC-V
- Compatibilidade de frameworks: TensorFlow Lite Micro, ONNX Runtime e PyTorch Edge em alvos RISC-V
Computação Heterogênea para Cargas de Trabalho de IA
- Co-design da CPU host RISC-V com NPU aceleradora de IA para pipelines de inferência em tempo real
- Otimização do subsistema de memória: gerenciamento de largura de banda HBM/DDR para pesos e ativações de modelos de ML
- Orçamento térmico e de potência para sistemas de inferência de IA na borda
Segurança de Hardware e Computação Confidencial em RISC-V
Proteção de Memória Física e Execução Confiável
- Proteção de Memória Física (PMP) e mecanismos de segurança do walker de tabela de páginas
- Arquiteturas de Enclave Seguro/TEE para RISC-V: integração OP-TEE, ambientes de execução confiável classe SEV
- Segurança da cadeia de boot: raiz de confiança, boot seguro e atestação de inicialização medida
Aceleração Criptográfica
- Extensões criptográficas RISC-V (Zk, Zkr, K): aceleração SHA, AES, RSA, RSA-PSS e ECC
- Integração de criptografia pós-quântica (PQC) para processadores RISC-V de próxima geração
- Técnicas de mitigação de ataques de canal lateral: programação de tempo constante, mascaramento e geradores de números aleatórios de hardware
Arquitetura Personalizada Avançada e Design de Extensões de ISA
Arquitetura Específica de Domínio e Extensões de Instruções Personalizadas
- Metodologia de design de extensões de ISA: codificação, tabelas de codificação, análise de impacto em ABI e processo de submissão de especificação para a RISC-V International
- Design de arquivo de registradores personalizado com CBAR (Custom Base Address Registers) para despacho de operandos
- Pipelining de instruções, detecção de hazards e modificações de pipeline para extensões personalizadas
Verificação e Aprovação de Modificações de Arquitetura Personalizada
- Design de testbench para extensões personalizadas: geração de estímulos direcionados vs. aleatórios com restrições
- Frameworks de teste de regressão e verificação dirigida por cobertura para modificações de arquitetura
- Testes de interoperabilidade: garantindo que instruções personalizadas funcionem dentro das restrições estabelecidas de ABI
Aplicações RISC-V Críticas à Segurança e Automotivas
Segurança Funcional e Conformidade com Padrões Automotivos
- Conformidade com segurança funcional ISO 26262 para processadores RISC-V automotivos
- Classificação ASIL-Q e desenvolvimento de manual de segurança para IP de silício RISC-V
- Tratamento determinístico de interrupções, pares de núcleos lockstep e proteção de memória para sistemas RISC-V críticos à segurança
Aplicações de Tempo Real Industrial e Computação na Borda
- Conformidade SIL IEC 61508 e agendamento determinístico em plataformas multicore RISC-V
- Desenvolvimento de gateway de IIoT com RISC-V: conectividade, análise na borda e sistemas de atualização de firmware OTA
Projeto Final: Desenvolvimento de Sistema RISC-V de Ponta a Ponta
Projeto de Ciclo Completo
- Especificação de arquitetura: design de extensões de ISA e configuração de núcleo para um caso de uso definido
- Implementação RTL em SystemVerilog com testbenches UVM e cobertura de verificação formal
- Prototipagem em FPGA, desenvolvimento de firmware de boot e integração de pilha de drivers bare-metal
- BSP Linux e customização de ferramentas para o núcleo RISC-V personalizado
- Implantação de carga de trabalho de IA: integração NPU, quantização de modelo e benchmarking de desempenho
- Validação de segurança: aplicação PMP, boot seguro e benchmarking de aceleração criptográfica
- Documentação de arquitetura técnica, análise de estratégia de IP e apresentação de equipe multifuncional
Requisitos
Nenhum.
Testemunhos de Clientes (3)
Observar as diferentes dimensões da geração de ideias, especialmente durante a atividade em que primeiro listamos ideias ruins e, em seguida, criamos a lista de boas ideias. Percebi que, de fato, ajuda a colocar as ideias ruins de lado, pois isso me colocou no ritmo de formular ideias, independentemente de serem boas ou ruins.
William Boscher - Bank Julius Baer Guernsey
Curso - Design Thinking: Innovation & Creative Problem Solving
Máquina Traduzida
As explicações e a interatividade do instrutor realmente trouxeram o assunto à vida; mesmo eu provavelmente não sendo experiente o suficiente, ainda aprendi muito com isso!
Pieter Bruynseels - Spot Buy Center BV
Curso - Design Patterns
Máquina Traduzida
Gostei da plataforma que usamos. Era realmente agradável e fácil de usar. Achei interessante a seção sobre TypeScript, especialmente as partes sobre namespaces e módulos.
Robert - DB Global Technology
Curso - JavaScript - Advanced Programming
Máquina Traduzida