【问题标题】:Can we have variables in a Yosys script?我们可以在 Yosys 脚本中包含变量吗?
【发布时间】:2017-03-28 18:16:08
【问题描述】:

我想通过分解出常见参数来使我的 Yosys 脚本更加 DRY,例如在以下示例中:

read_liberty -lib  /long/path/to/lib/file
...
dfflibmap -liberty  /long/path/to/lib/file
...
abc  -liberty   /long/path/to/lib/file

我还没有找到声明或取消引用变量的方法,有没有像 TCL (set lib_file /long/path/to/lib/file) 或 Bash (export lib_file=/long/path/to/lib/file) 中的方法?

【问题讨论】:

    标签: yosys


    【解决方案1】:

    您可以使用 TCL。有关详细信息,请参阅yosys -h tcl。使用 yosys -c <script_file> 运行 TCL 脚本(而不是 yosys -s <script_file> 用于原生 Yosys 脚本。)

    我现在在提交 b8d7f57 中添加了 .tcl 文件的前端检测。所以从 b8d7f57 开始你也可以使用yosys <script_file> 来运行 TCL 脚本,如果<script_file>.tcl 结尾。

    【讨论】:

    • 非常感谢,这简化了一些事情。为了他人的利益:除了使用 -c 选项运行 Yosys 之外,您还需要在脚本顶部添加行 yosys -import 以使所有 Yosys 命令可用于 TCL 解释器并重命名 proc调用procs,因为proc 是TCL 保留字。
    最近更新 更多