2017-03-28 71 views
3

我想使我的Yosys脚本更加干燥通过分解出常见的参数,如下面的例子:我们可以在Yosys脚本中使用变量吗?

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)的任何方式?

回答

4

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

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

+0

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

相关问题