module memory_module (input clk,input[0:6] address,input [0:7]data_input,
input read_write,output [0:7] data_output,input enable,output ready);
reg ready;
reg [0:7] data_output;
reg [0:7] memory [127:0];
initial
begin
ready=0;
end
always @(posedge clk)
begin
if(enable)
begin
ready=0;
if(read_write)
begin
data_output[0:3]= memory[address][0:3];
data_output[4:7]= memory[address][4:7];
end
else
begin
memory[address][4:7]=data_input[4:7];
memory[address][0:3]=data_input[0:3];
end
ready=1;
end
else
ready=0;
end
endmodule
Вот мой простой Verilog код для дизайна модуля памяти (я хочу, чтобы мой код более эффективным)как я могу уменьшить размер мультиплексора
Кроме того, когда я пишу data_output [0: 7] = память [ адрес] [0: 7]; он создает 8x1 мультиплексор
пути написания
data_output[0:3]= memory[address][0:3];
data_output[4:7]= memory[address][4:7];
я уменьшив их размер или нет мультиплексора ???
;
Могу ли я уменьшить размер мух. – TLE
Нет, если вы хотите построить 128-элементный драм с мультиплексорами. Почему вы хотите уменьшить размер? – Tim
Так что я могу сделать 2-мерный массив моей памяти, такой как 32X8 – TLE