连接2个数组

时间:2016-12-12 13:38:28

标签: arrays concatenation system-verilog

我在交易中有以下成员:

bit [31:0] data [$];

界面有以下输入:

 logic [31:0] WDATA

在驱动程序中,我想将事务数据的串联分配给自身。 例如,如果数据包含FFFFFFFF,我必须将FFFFFFFF连接到FFFFFFFF,然后将其分配给虚拟接口

伪代码:

vif.DATA <= trx.data[i] (concatenation) trx.tata[i]

我该怎么做?

1 个答案:

答案 0 :(得分:1)

使用连接运算符vif.DATA <= {trx.data[i], trx.tata[i]} (请参阅IEEE Std 1800-2012,第11.4.12节“连接运算符”):

int strcasecmp(const char *a, const char *b)
{
    size_t i;
    for (i = 0; tolower((unsigned char)a[i]) == tolower((unsigned char)b[i]) && a[i]; ++i);
    return tolower((unsigned char)a[i]) - tolower((unsigned char)b[i]);
}