Module 我无法将值强制输入到“thereg”注册表文件中
我需要将值1s和0s强制输入到thereg注册表文件中,并在时钟的正边缘从中读取两次,在时钟的负边缘从中写入一次。但是,我无法强制执行任何值。我单击“强制”,什么也不会发生,但是,我可以将值强制到其他所有内容中。有什么想法吗?在testbench中,您将只能访问输入/输出端口,而不能访问wire/reg。更好的满足您需求的方法是在每个负边缘强制输入端口writedata的值,您将在输出端口readdata1和readdata2的连续正时钟边缘获得相同的数据。您是否创建了一个测试台来驱动值,而不是从波形窗口强制值?Module 我无法将值强制输入到“thereg”注册表文件中,module,verilog,clock,cpu-registers,modelsim,Module,Verilog,Clock,Cpu Registers,Modelsim,我需要将值1s和0s强制输入到thereg注册表文件中,并在时钟的正边缘从中读取两次,在时钟的负边缘从中写入一次。但是,我无法强制执行任何值。我单击“强制”,什么也不会发生,但是,我可以将值强制到其他所有内容中。有什么想法吗?在testbench中,您将只能访问输入/输出端口,而不能访问wire/reg。更好的满足您需求的方法是在每个负边缘强制输入端口writedata的值,您将在输出端口readdata1和readdata2的连续正时钟边缘获得相同的数据。您是否创建了一个测试台来驱动值,而不是
module myRegister
(input clk,
input [3:0] write,
input [3:0] read1,
input [3:0] read2,
input [3:0]writedata);
reg[3:0]thereg[7:0];
reg [3:0]readdata1;
reg [3:0]readdata2;
always @(posedge clk) begin
readdata1=thereg[read1];
readdata2=thereg[read2];
end
always @(negedge clk) begin
thereg[write]=writedata;
end
endmodule