2015-10-14 32 views
2

當我通過合成產生鑿一個Verilog的模塊,我有這種類型的警告(很多!):如何刪除由鑿子verilog後端生成的無用寄存器?

Warning (10036): Verilog HDL or VHDL warning at Polynomial.v(26): object "T98" assigned a value but never read 

有沒有當我生成刪除這種類型的「無用」的信號選項verilog代碼?

我生成的Verilog與Scala代碼此選項:

object PolynomialMain { 
    def main(args: Array[String]): Unit = { 
    chiselMain(Array("--backend", "v"),() => Module(new Polynomial())) 
    } 
} 

在這裏,我built.sbt:

libraryDependencies += "edu.berkeley.cs" %% "chisel" % "2.3-SNAPSHOT" 

scalaVersion := "2.11.6" 

scalacOptions ++= Seq("-deprecation", 
         "-feature", 
         "-unchecked", 
         "-language:reflectiveCalls") 

回答

2

我不這麼認爲(現在還沒有,那是)。

鑿子在底層工具上撐起很多重物。例如,您的綜合工具將高興地忽略額外的,未使用的寄存器,並且它使鑿子更簡單,而不會自己進行分析。

但是,這絕對是未來應該解決的問題,因爲生成具有如此多警告的代碼是一種糟糕的形式!