由typedef结构定义的Systemverilog net的常用赋值样式,如
test/Spec.hs
是
typedef struct {
real V;
real I;
real R;
} SVAstruct;
// resolution function ommitted
nettype SVAstruct SVAnet with res_SVA;
因此,对网络结构的所有元素同时进行分配。分配如
inout SVAnet P;
assign P = '{Vout,0,0};
给出错误。是否有任何方法可以进行个人作业?
答案 0 :(得分:0)
你做不到。一旦创建了具有特定数据类型的网络类型,每个驱动程序都需要所有类型的字段才能执行其解析功能。
想象一下,如果您想要一个信号来表示物理对象上的力。力是具有幅度和方向的矢量。如果该信号上的每个驱动器代表一个力矢量,则无法在不知道幅度的情况下驱动方向。
您可以创建一个与网络相同类型的变量,然后您可以对该变量的字段进行单独分配。
inout SVAnet P;
...
SVAstruct S
assign P = S;
...
S.R = 100;