verilog 命令行输入参数

方便进行配置参数的多次遍历

tb的.v文件中

//get RG_huffmantype from simv in shell 
        initial begin
        if($value$plusargs("RG_type=%d", RG_type)) begin
	        RG_HuffmanType = RG_type;
        end
        else 
            RG_HuffmanType = 5'b00000;
        end
//get I_mode from simv in shell 
        initial begin
        if($value$plusargs("win_grad=%d", win_grad)) begin
            I_mode = win_grad;
        end
        else 
            I_mode = 1'b1;
        end

如果命令行中定义了RG_type,$value$plusargs会返回true并把命令行的值赋给RG_type

命令行调用时

./simv -nc +COMPARE +fsdb+parallel \
				   -l ${LOG_SIMV} ${CM} ${CM_DIR} +RG_type=1 +win_grad=1

加入+RG_type=1就可以将RG_type赋值为1。
需要注意的是,当只改变配置参数时并不需要重新执行vcs命令,只需要再执行一遍./simv命令,改变配置参数即可。

本文作者:心比天高xzh

本文链接:https://www.cnblogs.com/xzh-personal-issue/p/17836254.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   心比天高xzh  阅读(37)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起