如何在Chisel3中使用实验功能?

时间:2018-12-07 09:12:12

标签: scala hdl chisel

我想使用this chisel wiki page中描述的功能从文件加载内存。 但这是一项实验性功能,导入命令:

import chisel3.util.experimental.loadMemoryFromFile

给出构建错误:

[error] /Vamps/src/main/scala/vamps/mivamps.scala:5:21: object experimental is not a member of package chisel3.util
[error] import chisel3.util.experimental.loadMemoryFromFile

我的build.sbt config文件中有这些版本(来自凿模板):

// Provide a managed dependency on X if -DXVersion="" is supplied on the command line.
val defaultVersions = Map(
  "chisel3" -> "3.1.+",
  "chisel-iotesters" -> "1.2.5+"
  )

1 个答案:

答案 0 :(得分:2)

我们目前没有支持此(chisel3.util.experimental.loadMemoryFromFile)功能的正式版本。

您的选择是:

  • 克隆GitHub master分支,从源代码构建,以及 publishLocal凿子组件
  • 使用最近发布的凿子组件的SNAPSHOT版本

在任何一种情况下,您都需要使用Chisel组件的兼容版本,并且请注意,这些版本可能与组件的正式发行版本不兼容。主分支和已发布的SNAPSHOT可能包含API重大更改,用于即将发布的主要版本。

从源代码进行构建可以使您获得最大的控制权,但也需要更熟悉Chisel开发环境,并使您面临各种Chisel存储库中潜在不兼容的更改:我们试图使存储库的主分支保持同步,但是无法保证这一点。所需的更新可能会延迟(通常少于几天),才能恢复对存储库套件的兼容性。

使用已发布的SNAPSHOT并不是那么前沿:已知已发布的SNAPSHOT版本彼此兼容(但可能与正式发布的版本不兼容)。

要使用已发布的快照,请将您的默认版本更新为:

val defaultVersions = Map(
  "chisel3" -> "3.2-SNAPSHOT",
  "chisel-iotesters" -> "1.3-SNAPSHOT"
)

我们将整理一个维基页面,以更详细地描述此过程。