用verilog写的程序老是出错,求大神帮解决
这是我的毕业设计,使用adderF_F.v和multFXF.v实现浮点数的加法和乘法用butter_2.v实现2点蝶形算子,用fft_16.v实现十六点FFT运算,前面三个都编译通过,并用MODELSIM进行了仿真,但是把前几个综合到一起是fft.v就老是说文件过大,不能编译通过并提示:Error:Out of memotu in module quartus_map.exe(2132 megabytes used),才开始觉得是因为计算机内存不足,可是加了一个内存条以后仍然无法编译通过(大概编译到20%就停了),下面是fft_16.v的代码,大神帮忙看一下,感激不尽!!!!!!module fft_16 (
clk,
rst,
butt16_real0,
butt16_imag0,
butt16_real1,
butt16_imag1,
butt16_real2,
butt16_imag2,
butt16_real3,
butt16_imag3,
butt16_real4,
butt16_imag4,
butt16_real5,
butt16_imag5,
butt16_real6,
butt16_imag6,
butt16_real7,
butt16_imag7,
butt16_real8,
butt16_imag8,
butt16_real9,
butt16_imag9,
butt16_real10,
butt16_imag10,
butt16_real11,
butt16_imag11,
butt16_real12,
butt16_imag12,
butt16_real13,
butt16_imag13,
butt16_real14,
butt16_imag14,
butt16_real15,
butt16_imag15,
y_real0,
y_imag0,
y_real1,
y_imag1,
y_real2,
y_imag2,
y_real3,
y_imag3,
y_real4,
y_imag4,
y_real5,
y_imag5,
y_real6,
y_imag6,
y_real7,
y_imag7,
y_real8,
y_imag8,
y_real9,
y_imag9,
y_real10,
y_imag10,
y_real11,
y_imag11,
y_real12,
y_imag12,
y_real13,
y_imag13,
y_real14,
y_imag14,
y_real15,
y_imag15,
);
parameter RST_LVL = 1'b0;
input clk;
input rst;
input butt16_real0;
input butt16_imag0;
input butt16_real1;
input butt16_imag1;
input butt16_real2;
input butt16_imag2;
input butt16_real3;
input butt16_imag3;
input butt16_real4;
input butt16_imag4;
input butt16_real5;
input butt16_imag5;
input butt16_real6;
input butt16_imag6;
input butt16_real7;
input butt16_imag7;
input butt16_real8;
input butt16_imag8;
input butt16_real9;
input butt16_imag9;
input butt16_real10;
input butt16_imag10;
input butt16_real11;
input butt16_imag11;
input butt16_real12;
input butt16_imag12;
input butt16_real13;
input butt16_imag13;
input butt16_real14;
input butt16_imag14;
input butt16_real15;
input butt16_imag15;
output y_real0;
output y_imag0;
output y_real1;
output y_imag1;
output y_real2;
output y_imag2;
output y_real3;
output y_imag3;
output y_real4;
output y_imag4;
output y_real5;
output y_imag5;
output y_real6;
output y_imag6;
output y_real7;
output y_imag7;
output y_real8;
output y_imag8;
output y_real9;
output y_imag9;
output y_real10;
output y_imag10;
output y_real11;
output y_imag11;
output y_real12;
output y_imag12;
output y_real13;
output y_imag13;
output y_real14;
output y_imag14;
output y_real15;
output y_imag15;
wire L1_real;
wire L1_imag;
wire L2_real;
wire L2_imag;
wire L3_real;
wire L3_imag;
wire L4_real;
wire L4_imag;
wire factor_real;
wire factor_imag;
assign factor_real =32'd8192;
assign factor_imag = 32'd0;
assign factor_real =32'd7568;
assign factor_imag = 32'd3135;
assign factor_real =32'd5793;
assign factor_imag = 32'd5793;
assign factor_real =32'd3135;
assign factor_imag = 32'd7568;
assign factor_real =32'd0;
assign factor_imag = 32'd8192;
assign factor_real = -32'd3135;
assign factor_imag = 32'd7568;
assign factor_real = -32'd5793;
assign factor_imag = 32'd5793;
assign factor_real = -32'd7568;
assign factor_imag = 32'd3135;
butter_2ButtL1_N1(
.clk (clk ),
.rst (rst ),
.butt2_real0(butt16_real0 ),
.butt2_imag0(butt16_imag0 ),
.butt2_real1(butt16_real8 ),
.butt2_imag1(butt16_imag8 ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L1_real ),
.y0_imag(L1_imag ),
.y1_real(L1_real ),
.y1_imag(L1_imag )
);
butter_2ButtL1_N2(
.clk (clk ),
.rst (rst ),
.butt2_real0(butt16_real4 ),
.butt2_imag0(butt16_imag4 ),
.butt2_real1(butt16_real12 ),
.butt2_imag1(butt16_imag12 ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L1_real ),
.y0_imag(L1_imag ),
.y1_real(L1_real ),
.y1_imag(L1_imag )
);
butter_2ButtL1_N3(
.clk (clk ),
.rst (rst ),
.butt2_real0(butt16_real2 ),
.butt2_imag0(butt16_imag2 ),
.butt2_real1(butt16_real10 ),
.butt2_imag1(butt16_imag10 ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L1_real ),
.y0_imag(L1_imag ),
.y1_real(L1_real ),
.y1_imag(L1_imag )
);
butter_2ButtL1_N4(
.clk (clk ),
.rst (rst ),
.butt2_real0(butt16_real6 ),
.butt2_imag0(butt16_imag6 ),
.butt2_real1(butt16_real14 ),
.butt2_imag1(butt16_imag14 ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L1_real ),
.y0_imag(L1_imag ),
.y1_real(L1_real ),
.y1_imag(L1_imag )
);
butter_2ButtL1_N5(
.clk (clk ),
.rst (rst ),
.butt2_real0(butt16_real1 ),
.butt2_imag0(butt16_imag1 ),
.butt2_real1(butt16_real9 ),
.butt2_imag1(butt16_imag9 ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L1_real ),
.y0_imag(L1_imag ),
.y1_real(L1_real ),
.y1_imag(L1_imag )
);
butter_2ButtL1_N6(
.clk (clk ),
.rst (rst ),
.butt2_real0(butt16_real5 ),
.butt2_imag0(butt16_imag5 ),
.butt2_real1(butt16_real13 ),
.butt2_imag1(butt16_imag13 ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L1_real ),
.y0_imag(L1_imag ),
.y1_real(L1_real ),
.y1_imag(L1_imag )
);
butter_2ButtL1_N7(
.clk (clk ),
.rst (rst ),
.butt2_real0(butt16_real3 ),
.butt2_imag0(butt16_imag3 ),
.butt2_real1(butt16_real11 ),
.butt2_imag1(butt16_imag11 ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L1_real ),
.y0_imag(L1_imag ),
.y1_real(L1_real ),
.y1_imag(L1_imag )
);
butter_2ButtL1_N8(
.clk (clk ),
.rst (rst ),
.butt2_real0(butt16_real7 ),
.butt2_imag0(butt16_imag7 ),
.butt2_real1(butt16_real15 ),
.butt2_imag1(butt16_imag15 ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L1_real ),
.y0_imag(L1_imag ),
.y1_real(L1_real ),
.y1_imag(L1_imag )
);
butter_2ButtL2_1_N1(
.clk (clk ),
.rst (rst ),
.butt2_real0(L1_real ),
.butt2_imag0(L1_imag ),
.butt2_real1(L1_real ),
.butt2_imag1(L1_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L2_real ),
.y0_imag(L2_imag ),
.y1_real(L2_real ),
.y1_imag(L2_imag )
);
butter_2ButtL2_2_N1(
.clk (clk ),
.rst (rst ),
.butt2_real0(L1_real ),
.butt2_imag0(L1_imag ),
.butt2_real1(L1_real ),
.butt2_imag1(L1_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L2_real ),
.y0_imag(L2_imag ),
.y1_real(L2_real ),
.y1_imag(L2_imag )
);
butter_2ButtL2_1_N2(
.clk (clk ),
.rst (rst ),
.butt2_real0(L1_real ),
.butt2_imag0(L1_imag ),
.butt2_real1(L1_real ),
.butt2_imag1(L1_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L2_real ),
.y0_imag(L2_imag ),
.y1_real(L2_real ),
.y1_imag(L2_imag )
);
butter_2ButtL2_2_N2(
.clk (clk ),
.rst (rst ),
.butt2_real0(L1_real ),
.butt2_imag0(L1_imag ),
.butt2_real1(L1_real ),
.butt2_imag1(L1_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L2_real ),
.y0_imag(L2_imag ),
.y1_real(L2_real ),
.y1_imag(L2_imag )
);
butter_2ButtL2_1_N3(
.clk (clk ),
.rst (rst ),
.butt2_real0(L1_real ),
.butt2_imag0(L1_imag ),
.butt2_real1(L1_real ),
.butt2_imag1(L1_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L2_real ),
.y0_imag(L2_imag ),
.y1_real(L2_real ),
.y1_imag(L2_imag )
);
butter_2ButtL2_2_N3(
.clk (clk ),
.rst (rst ),
.butt2_real0(L1_real ),
.butt2_imag0(L1_imag ),
.butt2_real1(L1_real ),
.butt2_imag1(L1_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L2_real ),
.y0_imag(L2_imag ),
.y1_real(L2_real ),
.y1_imag(L2_imag )
);
butter_2ButtL2_1_N4(
.clk (clk ),
.rst (rst ),
.butt2_real0(L1_real ),
.butt2_imag0(L1_imag ),
.butt2_real1(L1_real ),
.butt2_imag1(L1_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L2_real ),
.y0_imag(L2_imag ),
.y1_real(L2_real ),
.y1_imag(L2_imag )
);
butter_2ButtL2_2_N4(
.clk (clk ),
.rst (rst ),
.butt2_real0(L1_real ),
.butt2_imag0(L1_imag ),
.butt2_real1(L1_real ),
.butt2_imag1(L1_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L2_real ),
.y0_imag(L2_imag ),
.y1_real(L2_real ),
.y1_imag(L2_imag )
);
butter_2ButtL3_1_N1(
.clk (clk ),
.rst (rst ),
.butt2_real0(L2_real ),
.butt2_imag0(L2_imag ),
.butt2_real1(L2_real ),
.butt2_imag1(L2_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L3_real ),
.y0_imag(L3_imag ),
.y1_real(L3_real ),
.y1_imag(L3_imag )
);
butter_2ButtL3_2_N1(
.clk (clk ),
.rst (rst ),
.butt2_real0(L2_real ),
.butt2_imag0(L2_imag ),
.butt2_real1(L2_real ),
.butt2_imag1(L2_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L3_real ),
.y0_imag(L3_imag ),
.y1_real(L3_real ),
.y1_imag(L3_imag )
);
butter_2ButtL3_3_N1(
.clk (clk ),
.rst (rst ),
.butt2_real0(L2_real ),
.butt2_imag0(L2_imag ),
.butt2_real1(L2_real ),
.butt2_imag1(L2_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L3_real ),
.y0_imag(L3_imag ),
.y1_real(L3_real ),
.y1_imag(L3_imag )
);
butter_2ButtL3_4_N1(
.clk (clk ),
.rst (rst ),
.butt2_real0(L2_real ),
.butt2_imag0(L2_imag ),
.butt2_real1(L2_real ),
.butt2_imag1(L2_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L3_real ),
.y0_imag(L3_imag ),
.y1_real(L3_real ),
.y1_imag(L3_imag )
);
butter_2ButtL3_1_N2(
.clk (clk ),
.rst (rst ),
.butt2_real0(L2_real ),
.butt2_imag0(L2_imag ),
.butt2_real1(L2_real ),
.butt2_imag1(L2_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L3_real ),
.y0_imag(L3_imag ),
.y1_real(L3_real ),
.y1_imag(L3_imag )
);
butter_2ButtL3_2_N2(
.clk (clk ),
.rst (rst ),
.butt2_real0(L2_real ),
.butt2_imag0(L2_imag ),
.butt2_real1(L2_real ),
.butt2_imag1(L2_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L3_real ),
.y0_imag(L3_imag ),
.y1_real(L3_real ),
.y1_imag(L3_imag )
);
butter_2ButtL3_3_N2(
.clk (clk ),
.rst (rst ),
.butt2_real0(L2_real ),
.butt2_imag0(L2_imag ),
.butt2_real1(L2_real ),
.butt2_imag1(L2_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L3_real ),
.y0_imag(L3_imag ),
.y1_real(L3_real ),
.y1_imag(L3_imag )
);
butter_2ButtL3_4_N2(
.clk (clk ),
.rst (rst ),
.butt2_real0(L2_real ),
.butt2_imag0(L2_imag ),
.butt2_real1(L2_real ),
.butt2_imag1(L2_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L3_real ),
.y0_imag(L3_imag ),
.y1_real(L3_real ),
.y1_imag(L3_imag )
);
butter_2ButtL4_1_N1(
.clk (clk ),
.rst (rst ),
.butt2_real0(L3_real ),
.butt2_imag0(L3_imag ),
.butt2_real1(L3_real ),
.butt2_imag1(L3_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L4_real ),
.y0_imag(L4_imag ),
.y1_real(L4_real ),
.y1_imag(L4_imag )
);
butter_2ButtL4_2_N1(
.clk (clk ),
.rst (rst ),
.butt2_real0(L3_real ),
.butt2_imag0(L3_imag ),
.butt2_real1(L3_real ),
.butt2_imag1(L3_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L4_real ),
.y0_imag(L4_imag ),
.y1_real(L4_real ),
.y1_imag(L4_imag )
);
butter_2ButtL4_3_N1(
.clk (clk ),
.rst (rst ),
.butt2_real0(L3_real ),
.butt2_imag0(L3_imag ),
.butt2_real1(L3_real ),
.butt2_imag1(L3_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L4_real ),
.y0_imag(L4_imag ),
.y1_real(L4_real ),
.y1_imag(L4_imag )
);
butter_2ButtL4_4_N1(
.clk (clk ),
.rst (rst ),
.butt2_real0(L3_real ),
.butt2_imag0(L3_imag ),
.butt2_real1(L3_real ),
.butt2_imag1(L3_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L4_real ),
.y0_imag(L4_imag ),
.y1_real(L4_real ),
.y1_imag(L4_imag )
);
butter_2ButtL4_5_N1(
.clk (clk ),
.rst (rst ),
.butt2_real0(L3_real ),
.butt2_imag0(L3_imag ),
.butt2_real1(L3_real ),
.butt2_imag1(L3_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L4_real ),
.y0_imag(L4_imag ),
.y1_real(L4_real ),
.y1_imag(L4_imag )
);
butter_2ButtL4_6_N1(
.clk (clk ),
.rst (rst ),
.butt2_real0(L3_real ),
.butt2_imag0(L3_imag ),
.butt2_real1(L3_real ),
.butt2_imag1(L3_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L4_real ),
.y0_imag(L4_imag ),
.y1_real(L4_real ),
.y1_imag(L4_imag )
);
butter_2ButtL4_7_N1(
.clk (clk ),
.rst (rst ),
.butt2_real0(L3_real ),
.butt2_imag0(L3_imag ),
.butt2_real1(L3_real ),
.butt2_imag1(L3_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L4_real ),
.y0_imag(L4_imag ),
.y1_real(L4_real ),
.y1_imag(L4_imag )
);
butter_2ButtL4_8_N1(
.clk (clk ),
.rst (rst ),
.butt2_real0(L3_real ),
.butt2_imag0(L3_imag ),
.butt2_real1(L3_real ),
.butt2_imag1(L3_imag ),
.factor_real(factor_real),
.factor_imag(factor_imag),
.y0_real(L4_real ),
.y0_imag(L4_imag ),
.y1_real(L4_real ),
.y1_imag(L4_imag )
);
assign y_real0 = L4_real;
assign y_imag0 = L4_imag;
assign y_real1 = L4_real;
assign y_imag1 = L4_imag;
assign y_real2 = L4_real;
assign y_imag2 = L4_imag;
assign y_real3 = L4_real;
assign y_imag3 = L4_imag;
assign y_real4 = L4_real;
assign y_imag4 = L4_imag;
assign y_real5 = L4_real;
assign y_imag5 = L4_imag;
assign y_real6 = L4_real;
assign y_imag6 = L4_imag;
assign y_real7 = L4_real;
assign y_imag7 = L4_imag;
assign y_real8 = L4_real;
assign y_imag8 = L4_imag;
assign y_real9 = L4_real;
assign y_imag9 = L4_imag;
assign y_real10 = L4_real;
assign y_imag10 = L4_imag;
assign y_real11 = L4_real;
assign y_imag11 = L4_imag;
assign y_real12 = L4_real;
assign y_imag12 = L4_imag;
assign y_real13 = L4_real;
assign y_imag13 = L4_imag;
assign y_real14 = L4_real;
assign y_imag14 = L4_imag;
assign y_real15 = L4_real;
assign y_imag15 = L4_imag;
endmodule
页:
[1]