与VHDL记录端口等效的SystemVerilog

与VHDL记录端口等效的SystemVerilog,vhdl,system-verilog,Vhdl,System Verilog,我的VHDL实体有两个单向记录端口: user2regs : in user2regs_t; regs2user : out regs2user_t 在包中定义如下: type user2regs_t is record status_value : std_logic_vector(31 downto 0); end record; type regs2user_t is record control_led : std_logic_vector(3 dow

我的VHDL实体有两个单向记录端口:

user2regs     : in user2regs_t;
regs2user     : out regs2user_t
在包中定义如下:

type user2regs_t is record
    status_value : std_logic_vector(31 downto 0);
end record;

type regs2user_t is record
    control_led : std_logic_vector(3 downto 0);
end record;

如何在可合成的SystemVerilog模块中实现相同的端口/接口?

这些是SystemVerilog中的结构

typedef struct {
   logic [31:0] status_value;
   } user2regs_t

typedef struct {
   logic [3:0] control_led;
} regs2user_t;

module mod ( input user2regs_t user2regs,
             output regs2user_t regs2user);

你好@dave_59,谢谢你的回答。这就是你在实际的RTL代码中实现它的方式,还是你更愿意使用SystemVerilog接口呢?这就是直接翻译。在SV中使用结构可以帮助您获得更强的类型(请参见上面的内容)。是否使用接口的选择是另一个问题。这取决于接口的可重用性。