verilog HDL中在进行测试的时候可以例化两个及两个以上的模块吗?

2024-11-05 02:13:35
推荐回答(3个)
回答1:

我自己写的东西,给你看一下吧,其实
例化很多都是可以的
module DUC(clk,rstn,datain,dataout);

input clk;
input rstn;
input [15:0] datain;
output [15:0] dataout;

wire clk100k_en;
wire clk50k_en;
wire clk25k_en;

wire [15:0] HBF1_OUT;
wire [15:0] HBF2_OUT;
wire [15:0] SHAPE_OUT;
wire [15:0] HBF3_OUT;
wire [15:0] HBF4_OUT;

DIVIDER DIVIDER(
.clk(clk),
.rstn(rstn),
.clk100k_en(clk100k_en),
.clk50k_en(clk50k_en),
.clk25k_en(clk25k_en)
);

HBF1 HBF1(
.clk(clk),
.rstn(rstn),
.clk100k_en(clk100k_en),
.clk50k_en(clk50k_en),
.datain(datain),
.dataout(HBF1_OUT)
);

HBF2 HBF2(
.clk(clk),
.rstn(rstn),
.clk50k_en(clk50k_en),
.clk25k_en(clk25k_en),
.datain(HBF1_OUT),
.dataout(HBF2_OUT)
);

SHAPE SHAPE(
.clk(clk),
.rstn(rstn),
.clk25k_en(clk25k_en),
.datain(HBF2_OUT),
.dataout(SHAPE_OUT)
);

HBF3 HBF3(
.clk(clk),
.rstn(rstn),
.clk50k_en(clk50k_en),
.clk25k_en(clk25k_en),
.datain(SHAPE_OUT),
.dataout(HBF3_OUT)
);

HBF4 HBF4(
.clk(clk),
.rstn(rstn),
.clk50k_en(clk50k_en),
.clk100k_en(clk100k_en),
.datain(HBF3_OUT),
.dataout(HBF4_OUT)
);

CIC CIC(
.clk(clk),
.rstn(rstn),
.clk100k_en(clk100k_en),
.datain(HBF4_OUT),
.dataout(dataout)
);

endmodule

回答2:

两个模块之间是有信号连接的咯?
那写个顶层模块,在顶层模块中同时调用两个模块,就可以了啊

回答3:

so easy 多看点书就搞定了。。。字节百度一下吧