[X]关闭

verilog语法,顶层模块参数列表没有input和output关键字

文档创建者:xjdvuvwn
浏览次数:2287
最后更新:2022-11-01
 
如下面这个例子////////////////////////////////////////////////////////////////////////////////

module axidma_tcp_demo_wrapper
(DDR_addr,
DDR_ba,
DDR_cas_n,
DDR_ck_n,
DDR_ck_p,
DDR_cke,
DDR_cs_n,
DDR_dm,
DDR_dq,
DDR_dqs_n,
DDR_dqs_p,
DDR_odt,
DDR_ras_n,
DDR_reset_n,
DDR_we_n,
FIXED_IO_ddr_vrn,
FIXED_IO_ddr_vrp,
FIXED_IO_mio,
FIXED_IO_ps_clk,
FIXED_IO_ps_porb,
FIXED_IO_ps_srstb,
ad_data,
ad_busy,
first_data,
ad_os,
ad_cs,
ad_rd,
ad_reset,
ad_convsta,
ad_convstb,
ad_range
);
inout [14:0]DDR_addr;
inout [2:0]DDR_ba;
inout DDR_cas_n;
inout DDR_ck_n;
inout DDR_ck_p;
inout DDR_cke;
inout DDR_cs_n;
inout [3:0]DDR_dm;
inout [31:0]DDR_dq;
inout [3:0]DDR_dqs_n;
inout [3:0]DDR_dqs_p;
inout DDR_odt;
inout DDR_ras_n;
inout DDR_reset_n;
inout DDR_we_n;

inout FIXED_IO_ddr_vrn;
inout FIXED_IO_ddr_vrp;
inout [53:0]FIXED_IO_mio;
inout FIXED_IO_ps_clk;
inout FIXED_IO_ps_porb;
inout FIXED_IO_ps_srstb;

input [15:0]ad_data;           
input ad_busy;      
input first_data;         
output[2:0] ad_os;           
output ad_cs;            
output ad_rd;            
output ad_reset;           
output ad_convsta;
output ad_convstb;         
output ad_range;




wire [14:0]DDR_addr;
wire [2:0]DDR_ba;
wire DDR_cas_n;
wire DDR_ck_n;
wire DDR_ck_p;
wire DDR_cke;
wire DDR_cs_n;
wire [3:0]DDR_dm;
wire [31:0]DDR_dq;
wire [3:0]DDR_dqs_n;
wire [3:0]DDR_dqs_p;
wire DDR_odt;
wire DDR_ras_n;
wire DDR_reset_n;
wire DDR_we_n;
wire FCLK_CLK1;
wire FIXED_IO_ddr_vrn;
wire FIXED_IO_ddr_vrp;
wire [53:0]FIXED_IO_mio;
wire FIXED_IO_ps_clk;
wire FIXED_IO_ps_porb;
wire FIXED_IO_ps_srstb;

////////////////////////////////////////////////////////////////////////////////
1   module端口的信号没有   input和output参数,如:DDR_addr
2    module端口中定义了的信号在参数列表,如:inout [14:0]DDR_addr;
3   参数列表中又再次定义,如:wire [14:0]DDR_addr;

     这三种该怎么理解呢,这样写的意义是什么呢
////////////////////////////////////////////////////////////////////////////////
最后这些参数在例化模块的时候传给了子模块
axidma_tcp_demo axidma_tcp_demo_i
    (.DDR_addr(DDR_addr),
     .DDR_ba(DDR_ba),
     .DDR_cas_n(DDR_cas_n),
     .DDR_ck_n(DDR_ck_n),
     .DDR_ck_p(DDR_ck_p),
     .DDR_cke(DDR_cke),
     .DDR_cs_n(DDR_cs_n),
     .DDR_dm(DDR_dm),
     .DDR_dq(DDR_dq),
     .DDR_dqs_n(DDR_dqs_n),
     .DDR_dqs_p(DDR_dqs_p),
     .DDR_odt(DDR_odt),
     .DDR_ras_n(DDR_ras_n),
     .DDR_reset_n(DDR_reset_n),
     .DDR_we_n(DDR_we_n),
     .FCLK_CLK1(FCLK_CLK1),
     .FIXED_IO_ddr_vrn(FIXED_IO_ddr_vrn),
     .FIXED_IO_ddr_vrp(FIXED_IO_ddr_vrp),
     .FIXED_IO_mio(FIXED_IO_mio),
     .FIXED_IO_ps_clk(FIXED_IO_ps_clk),
     .FIXED_IO_ps_porb(FIXED_IO_ps_porb),
     .FIXED_IO_ps_srstb(FIXED_IO_ps_srstb),
     .gpio_rtl_tri_i(gpio_tri_i_0),
     .gpio_rtl_tri_o(gpio_tri_o_0),
     .gpio_rtl_tri_t(gpio_tri_t_0),
         .s_axis_aclk(s_axis_aclk),
     .s_axis_aresetn(s_axis_aresetn),
     .S_AXIS_tdata(S_AXIS_tdata),
     .S_AXIS_tkeep(S_AXIS_tkeep),
     .S_AXIS_tlast(S_AXIS_tlast),
     .S_AXIS_tready(S_AXIS_tready),
     .S_AXIS_tvalid(S_AXIS_tvalid),
     .peripheral_aresetn(peripheral_aresetn));

发表评论已发布 243

fiwhpfnc

发表于 2022-11-1 16:00:00 | 显示全部楼层

提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则