从 Chisel 代码生成 Verilog 代码的最简单方法

Simplest way to generate Verilog code from Chisel code

从现有的 Chisel 代码生成 Verilog 代码的最简单方法是什么?

我是否必须创建自己的构建文件

例如来自 独立的 scala 文件 (AND.scala) 如下所示..

import Chisel._

class AND extends Module {
  val io = IO(new Bundle {
    val a = Bool(INPUT)
    val b = Bool(INPUT)
    val out = Bool(OUTPUT)
  })
  io.out := io.a & io.b
}

我在 ubuntu 16.4 下安装了完整的 Chisel3 工具链

在这里查看答案:

简而言之,在项目的根目录下创建一个 build.sbt 文件,其中包含以下内容:

scalaVersion := "2.12.13"

resolvers ++= Seq(
  Resolver.sonatypeRepo("snapshots"),
  Resolver.sonatypeRepo("releases")
)

libraryDependencies += "edu.berkeley.cs" %% "chisel3" % "3.4.4"

将此代码添加到 AND.scala

object ANDDriver extends App {
  (new chisel3.stage.ChiselStage).emitVerilog(new AND, args)
}

在项目根目录的命令行中键入 sbt run