代码之家  ›  专栏  ›  技术社区  ›  geschema

与VHDL记录端口等效的SystemVerilog

  •  2
  • geschema  · 技术社区  · 7 年前

    我的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模块中实现相同的端口/接口?

    1 回复  |  直到 7 年前
        1
  •  5
  •   dave_59    7 年前

    这些是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);