在位 SystemVerilog 之间交织 0

Intertwine 0s betweeen bits SystemVerilog

我想在变量的位之间插入 0。例如,假设我有一个变量 a 如下

a = 1101

那么,我想得到下面的结果

b = 1_000000_1_000000_0_000000_1

这是 a 的每一位之间交织 6 个 0 的结果。我想知道在 SystemVerilog 中是否有任何优雅的方法可以做到这一点。感谢任何帮助。

b = 0;
foreach (a[i]) b[i*7] = a[i];