Repolode
chipsalliance

chipsalliance/chisel

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.

Estrelas
4,829
Forks
666
Issues abertas
522
Último commit
ontem

O que é?

Chisel (Constructing Hardware in a Scala Embedded Language) é uma linguagem de descrição de hardware para projetar circuitos digitais no nível de transferência entre registradores. Em vez de escrever Verilog manualmente, os designers escrevem código Scala que constrói circuitos, usando construções comuns de programação, como funções, classes e loops, para gerar hardware. A saída é Verilog ou SystemVerilog sintetizável, que pode ser usado em projetos ASIC e FPGA.

A ideia central é o gerador de circuitos: uma classe Scala parametrizada, como um filtro FIR definido por uma lista de coeficientes, pode ser instanciada e reutilizada em diferentes projetos. A biblioteca padrão do Chisel (chisel3.util) oferece componentes reutilizáveis, como filas FIFO, árbitros e interfaces ready-valid. O Chisel usa a representação intermediária FIRRTL e o compilador firtool do CIRCT.

O projeto é licenciado sob Apache 2.0 e desenvolvido pela CHIPS Alliance. O repositório inclui subprojetos para a biblioteca principal, o plugin do compilador e uma biblioteca de simulação svsim, compatível com Verilator e VCS. Tutoriais, um livro didático e um template de projeto estão disponíveis na documentação.

Recursos principais

  • 01Descreve hardware em Scala, reutilizando classes, funções e loops para criar circuitos parametrizáveis.
  • 02Gera Verilog ou SystemVerilog sintetizável por meio de ChiselStage e firtool.
  • 03Oferece uma biblioteca padrão com filas FIFO, árbitros e interfaces ready-valid Decoupled.
  • 04Inclui svsim para executar simulações com Verilator e VCS.
  • 05Usa Mill no processo de build e publica artefatos para projetos que usam sbt.

Casos de uso

  • Escrever blocos IP reutilizáveis e parametrizáveis para projetos ASIC ou FPGA.
  • Criar projetos de processadores ou aceleradores que precisam de código no estilo de geradores.
  • Aprender projeto digital com uma linguagem de programação moderna e tutoriais online.
  • Gerar Verilog a partir de código Scala para fluxos posteriores de síntese e simulação.

Início rápido

  1. 1

    Comece pelo repositório Chisel Template, que oferece um projeto pré-configurado

  2. 2

    Ou configure seu próprio projeto adicionando a dependência do Chisel e o plugin do compilador ao build.sbt

  3. 3

    Experimente o tutorial online Chisel Bootcamp no navegador, sem precisar configurar nada

Antes de usar

  • Requer uma cadeia de ferramentas de Scala e sbt na JVM, o que aumenta o trabalho de configuração.
  • A geração de Verilog depende do compilador firtool; por isso, alguns ambientes online, como o Scastie, não conseguem gerar Verilog.

Tópicos

#hardware-description-language#rtl#scala#verilog#fpga#asic#chip-design#hdl#chip-generator#chisel

Perguntas frequentes

O que é chisel?
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. Chisel (Constructing Hardware in a Scala Embedded Language) é uma linguagem de descrição de hardware para projetar circuitos digitais no nível de transferência entre registradores. Em vez de escrever Verilog manualmente, os designers escrevem código Scala que constrói circuitos, usando construções comuns de programação, como funções, classes e loops, para gerar hardware. A saída é Verilog ou SystemVerilog sintetizável, que pode ser usado em projetos ASIC e FPGA.
chisel é gratuito? Qual é a licença?
chisel é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
chisel ainda é mantido?
Manutenção ativa. O último commit de chisel foi em 6 de nov. de 2026.
Para que posso usar chisel?
Escrever blocos IP reutilizáveis e parametrizáveis para projetos ASIC ou FPGA. Criar projetos de processadores ou aceleradores que precisam de código no estilo de geradores. Aprender projeto digital com uma linguagem de programação moderna e tutoriais online. Gerar Verilog a partir de código Scala para fluxos posteriores de síntese e simulação.
Como instalar chisel?
Comece pelo repositório Chisel Template, que oferece um projeto pré-configurado Ou configure seu próprio projeto adicionando a dependência do Chisel e o plugin do compilador ao build.sbt Experimente o tutorial online Chisel Bootcamp no navegador, sem precisar configurar nada
Onde consigo chisel?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/chipsalliance/chisel

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados

Núcleo de processador RISC-V de alto desempenho e código aberto, escrito em Scala com Chisel e desenvolvido pelo projeto XiangShan.

Outros#risc-v#processor#chisel
7,4 mil+14 esta semana977ScalaMulanPSL-2.0Atualizado há 8 horas

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.

Outros#risc-v#cpu#fpga
168+4 esta semana32SystemVerilogApache-2.0Atualizado há 18 dias