He compilado el núcleo IP de la biblioteca en Modelsim. La biblioteca de Xilinx está instalado en mi ordenador y también los he creado una ROM de uso de las herramientas de Xilinx. Sin embargo, cuando me simular el IP core me parece que la obtención de datos de la ROM que se va a retrasar la simulación de un ciclo de reloj. ¿Cómo puedo lidiar con él?
No quiero escribir un segundo conjunto de código, uno para la simulación y uno para la descarga en el Spartan-3E. I programa en Verilog y el siguiente es el banco de pruebas para el IP core:
`timescale 1ps / 1ps
module InstrMem_tb ;
reg clka ;
reg [31:0] dina ;
reg [7:0] addra ;
wire [31:0] douta ;
reg [0:0] wea ;
InstrMem
DUT (
.dina (dina ) ,
.addra (addra ) ,
.douta (douta ) ,
.wea (wea ) ,
.clka (clka ) );
initial begin
wea = 0;
dina = 0;
addra = 0;
clka = 0;
end
always
#50 clka = ~clka;
endmodule
Sólo puedo recuperar los datos en la dirección en la central IP con nombre InstrMem en la segunda posedge.