【发布时间】:2018-05-02 08:30:03
【问题描述】:
我有以下顺序:
extend CONFIG_ADC_CLK ocp_master_sequence_q {
divide_by : uint(bits:4);
align_by : uint(bits:4);
body()@driver.clock is {
var div : uint(bits:3);
case divide_by {
1 : { div = 0; };
2 : { div = 1; };
4 : { div = 2; };
8 : { div = 3; };
16 : { div = 4; };
default : { dut_error(divide_by," is not a legal Clock division for ADC"); };
};
gad_regs.gad_clk_gen.clk_algn = align_by;
gad_regs.gad_clk_gen.clk_dev = div;
do WR_REG seq keeping {.reg==gad_regs.gad_clk_gen;};
};
};//extend CONFIG_ADC_CLK ocp_master_sequence_q {
在测试中我使用序列: 做 CONFIG_ADC_CLK seq 保持 {.divide_by== 3;.align_by==0;};
由于某种原因,编译器将字段 divide_by 的编号引用为十六进制数而不是十进制数。
我如何确保它将其引用为十进制?
【问题讨论】:
-
您能否澄清一下-“编译器将数字称为十六进制数字”是什么意思?它以什么方式将其称为十六进制?至少
3在十六进制和十进制中的意思是一样的,那么到底哪里出错了? -
或者您的意思是打印数字的方式(作为
dut_error的一部分)? -
@Yuri Tsoglin - 是的,我的意思是数字的打印方式
标签: sequence variable-assignment decimalformat specman