Forum Discussion
Altera_Forum
Honored Contributor
9 years agoFor a 72x300 matrix you could use a rom with 128 by 512 addresses (64k). The Upper 7 bit is your first axis, the lower 9 addresses is your second axis in this case.
Depending on the data width this will be a big RAM, at least for a FPGA onchip Memory. Assuming that your double value has 64bit you need 512kByte. The 7 by 7 matrix needs 64 adresses with 128bit each:
module array (
input x_i,
input y_i,
output re_o,
output im_o
);
reg array;
initial
begin
array = {64'h00000000deadbeef, 64'h00000000affedead};
array = {64'h0000000000000000, 64'h0000000011111111};
array = {64'h0000000011111111, 64'h0000000022221111};
end
assign re_o = array;
assign im_o = array;
endmodule
Though i don't know your exact requirements i would recommend to use the Altera altsyncram with a initialization .mif File. And a big enough FPGA.