生成 Verilog

EasterCache由Chisel3开发,因而使用sbt调用Chisel3模块来生成 verilog。下面的命令

mkdir target && sbt 'runMain cache.Cache --target-dir target'

能够生成Cache的verilog代码,保存在target/文件夹中。

注意项目中使用BlackBox封装了用Block Memory Generator生成的RAM Xilinx IP。IP名称分别为bank_ramdata_bank_ram。使用生成的verilog代码时,需要在工程中对应定制。

参数配置

修改src/main/scala/cache/Cache.scala文件中

object Cache extends App {
  new ChiselStage execute(args, Seq(ChiselGeneratorAnnotation(
    () =>
      new Cache(new CacheSettings(
        new CacheConfig(wayNum = 2, setWidth = 7, transNum = 1), new CacheConfig(wayNum = 2, setWidth = 7), vcacheDepth = 16
      )))))
}

的相关参数,即可以改变Cache配置。重新生成则得到新的Cache代码。