Núcleo de processador RISC-V de alto desempenho e código aberto, escrito em Scala com Chisel e desenvolvido pelo projeto XiangShan.
enjoy-digital/litex
Framework Python para criar cores e SoCs personalizados em FPGA, com barramentos, periféricos, integração de CPUs e suporte à simulação.
- Estrelas
- 4,190
- Forks
- 767
- Issues abertas
- 103
- Último commit
- ontem
O que é?
LiteX é uma ferramenta Python para criar SoCs em FPGAs. Ela oferece os blocos de construção comuns necessários para montar um sistema completo em um FPGA: interconexões de barramentos e streams (Wishbone, AXI, Avalon-ST), cores simples como RAM, ROM, timers, UART e JTAG, além de bridges para depuração do SoC em execução pelo host.
O framework é baseado no Migen e se conecta a um ecossistema mais amplo de cores independentes, incluindo LiteDRAM, LitePCIe, LiteEth e LiteSATA. Ele oferece suporte a várias soft CPUs, como VexRiscv, Rocket, LM32 e PicoRV32, e pode ser combinado com código VHDL, Verilog ou SystemVerilog existente. Os projetos podem ser compilados com toolchains de FPGA de fornecedores ou simulados com Verilator, sem hardware.
LiteX é indicado para engenheiros de hardware que querem reutilizar IP cores em um fluxo de trabalho baseado em scripts, e para desenvolvedores de software que querem começar a trabalhar com FPGAs usando Python.
Recursos principais
- 01Interconexões de barramentos e streams Wishbone, AXI e Avalon-ST.
- 02Cores prontos, incluindo RAM, ROM, timer, UART e JTAG.
- 03Suporte a várias soft CPUs, como VexRiscv, Rocket e PicoRV32.
- 04Integração de linguagens mistas com VHDL, Verilog e SystemVerilog.
- 05Simulação de SoCs com Verilator, sem placa FPGA.
- 06Backends de compilação para toolchains de FPGA open source e de fornecedores.
Casos de uso
- Montar um SoC personalizado em FPGA com uma soft CPU e periféricos.
- Reutilizar cores PCIe, Ethernet ou SATA existentes em um fluxo de trabalho HDL tradicional.
- Simular um SoC completo em um computador antes de executá-lo no hardware.
- Aprender design de FPGA usando um fluxo de trabalho baseado em Python.
Início rápido
- 1
Instale Python 3.7+ e as ferramentas do fabricante de FPGA e/ou o Verilator
- 2
Baixe o script litex_setup.py
wget https://raw.githubusercontent.com/enjoy-digital/litex/master/litex_setup.py - 3
Torne o script executável
chmod +x litex_setup.py - 4
Instale Migen, LiteX e o conjunto padrão de núcleos
./litex_setup.py --init --install --user --config=standard
Antes de usar
- Para gerar bitstreams reais de FPGA, é necessário instalar separadamente as toolchains do fabricante ou o Verilator.
- A lógica digital é descrita com Migen, que o próprio projeto aponta como a base atual.
Em coleções
Tópicos
Perguntas frequentes
- O que é litex?
- Framework Python para criar cores e SoCs personalizados em FPGA, com barramentos, periféricos, integração de CPUs e suporte à simulação. LiteX é uma ferramenta Python para criar SoCs em FPGAs. Ela oferece os blocos de construção comuns necessários para montar um sistema completo em um FPGA: interconexões de barramentos e streams (Wishbone, AXI, Avalon-ST), cores simples como RAM, ROM, timers, UART e JTAG, além de bridges para depuração do SoC em execução pelo host.
- litex é gratuito? Qual é a licença?
- litex é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
- litex ainda é mantido?
- Manutenção ativa. O último commit de litex foi em 6 de nov. de 2026.
- Para que posso usar litex?
- Montar um SoC personalizado em FPGA com uma soft CPU e periféricos. Reutilizar cores PCIe, Ethernet ou SATA existentes em um fluxo de trabalho HDL tradicional. Simular um SoC completo em um computador antes de executá-lo no hardware. Aprender design de FPGA usando um fluxo de trabalho baseado em Python.
- Como instalar litex?
- Instale Python 3.7+ e as ferramentas do fabricante de FPGA e/ou o Verilator Baixe o script litex_setup.py: wget https://raw.githubusercontent.com/enjoy-digital/litex/master/litex_setup.py Torne o script executável: chmod +x litex_setup.py Instale Migen, LiteX e o conjunto padrão de núcleos: ./litex_setup.py --init --install --user --config=standard
- Onde consigo litex?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/enjoy-digital/litex
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Uma linguagem de descrição de hardware de código aberto integrada ao Scala para criar geradores de circuitos digitais parametrizáveis que emitem Verilog.
Um núcleo de CPU RISC-V de 64 bits em SystemVerilog que inicializa o Linux em uma placa FPGA Arty A7, com RTL, verificação e documentação escritos com Claude Code.
SDK Python e plataforma de apps para o Reachy Mini, um robô de mesa expressivo e open source para desenvolvedores e criadores de IA.
Um emulador open source de ESP32 em Rust que executa firmware real no computador ou no navegador, sem precisar de hardware.