Macros Specman-如何在宏中将exp定义为字符串?
我有以下定义(及更多): 我有以下宏:Macros Specman-如何在宏中将exp定义为字符串?,macros,specman,Macros,Specman,我有以下定义(及更多): 我有以下宏: define <force_and_check'action> "force_and_check <signal_f'exp> <signal_c'exp> <ip_name'exp> <val_signal_f'num> <init_val_signal_f'num>" as { force <signal_f'exp> = <val_signal_f'nu
define <force_and_check'action> "force_and_check <signal_f'exp> <signal_c'exp> <ip_name'exp> <val_signal_f'num> <init_val_signal_f'num>" as {
force <signal_f'exp> = <val_signal_f'num>;
wait[2];
check that <signal_c'exp>_s == <val_signal_f'num> else dut_errorf("%s Connectivity Error! %s is %b, but should be %b" ,<ip_name'exp>, **<signal_c'exp>**, <signal_c'exp>_s, <val_signal_f'num>);
force <signal_f'exp> = <init_val_signal_f'num>;
};
将“定义为”{
力量;
等等[2];
检查else dut_errorf(“%s连接错误!%s为%b,但应为%b”,**);
力量;
};
使用宏的示例:
强制检查“adc”事件[4]“adc0”咖啡馆1'b1 1'b0
我想将dut_errorf中的(粗体****)表示为字符串(对于eample表示为d_buff1_en_adc0_s)…我该怎么做?(不是表示为define in hexa的值)只要将它作为字符串的一部分放在双引号内即可:
check that <signal_c'exp>_s == <val_signal_f'num>
else dut_errorf("%s Connectivity Error! <signal_c'exp> is %b, but should be %b", <ip_name'exp>, <signal_c'exp>_s, <val_signal_f'num>);
检查一下
else dut_错误(“%s连接错误!,);
check that <signal_c'exp>_s == <val_signal_f'num>
else dut_errorf("%s Connectivity Error! <signal_c'exp> is %b, but should be %b", <ip_name'exp>, <signal_c'exp>_s, <val_signal_f'num>);