Module 我无法将值强制输入到“thereg”注册表文件中

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

我需要将值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