tests: fix blockrom.v driver conflict

This commit is contained in:
Emil J. Tywoniak 2024-12-02 16:56:42 +01:00
parent 98b4affc4a
commit c26966e3db
1 changed files with 6 additions and 2 deletions

View File

@ -10,8 +10,11 @@ module sync_rom #(parameter DATA_WIDTH=8, ADDRESS_WIDTH=10)
reg [WORD:0] data_out_r; reg [WORD:0] data_out_r;
reg [WORD:0] memory [0:DEPTH]; reg [WORD:0] memory [0:DEPTH];
integer i,j = 64'hF4B1CA8127865242; integer i,j;
initial // Initialize in initial block as a workaround for
// https://github.com/YosysHQ/yosys/issues/4792
initial begin
j = 64'hF4B1CA8127865242;
for (i = 0; i <= DEPTH; i++) begin for (i = 0; i <= DEPTH; i++) begin
// In case this ROM will be implemented in fabric: fill the memory with some data // In case this ROM will be implemented in fabric: fill the memory with some data
// uncorrelated with the address, or Yosys might see through the ruse and e.g. not // uncorrelated with the address, or Yosys might see through the ruse and e.g. not
@ -21,6 +24,7 @@ module sync_rom #(parameter DATA_WIDTH=8, ADDRESS_WIDTH=10)
j = j ^ (j << 25); j = j ^ (j << 25);
j = j ^ (j >> 27); j = j ^ (j >> 27);
end end
end
always @(posedge clk) begin always @(posedge clk) begin
data_out_r <= memory[address_in]; data_out_r <= memory[address_in];