Generating SAIF file

Status
Not open for further replies.

dayana42200

Junior Member level 3
Joined
Feb 9, 2018
Messages
31
Helped
0
Reputation
0
Reaction score
1
Trophy points
6
Activity points
315
Hello everyone.

Im wanted to generate the SAIF file from ISIM. Im using Xilinx ISE Design Suite 14.7

Ive found the method to generate SAIF file. Please also refer to the attach figure.

1. Implement the top module

2. Generate post-place and route simulation model.

3. Now change to simulation mode then change to post route and click the
generate post-place and route simulation model.

4. Click simulate post-place and route model.

However, there is an error.


Please help me to solve the error or any other method to generate SAIF
file.

Thank you very much.
 

Attachments

  • 2018-12-03_9-12-16.jpg
    99.9 KB · Views: 90
  • 2018-12-03_9-13-14.jpg
    62.5 KB · Views: 80

ERROR:Simulator:778 - Static elaboration of top level Verilog design unit(s) in library work failed

Can you confirm that the design simulates successfully?
 

Yup for behavioral simulation

 


what is in the isim.cmd (batch) file?

To run a simulation with any primitives you need to have glbl called out as a separate design on the simulator command line (at least that is how it works with Vivado simulator and modelsim (haven't used isim much). glbl has a bunch of globals and drives the GSR net that is in the primitives to generate the power-on reset when a simulation starts.

It has to be loaded in parallel with your testbench, not as part of the design. e.g. for modelsim you would have vsim -L simprims tb_and_design_with_primitives glbl

Did you `include glbl or instantiate it?
 

I couldnt find .cmd file inmy project directory

I do have glbl file. I am confuse which file to simulate. The testbench or glbl file? Please refer to the attachment.

- - - Updated - - -

@ads-ee

I found whats in the isim.cnd file

onerror {resume}
saif open -scope ProcessingElement_inst -allnets -file "C:/Users/User/Desktop/Design/Local/ProcessingElement/ProcessingElement/xpower_time_sim.saif";
wave add /
run 1000 ns;
saif close;
 

Attachments

  • 2018-12-03_9-13-14.jpg
    62.5 KB · Views: 74

You simulate your testbench not the glbl. glbl is for globals that are necessary to simulate designs which included Xilinx unisims/simprims primitives.

e.g. here is a snippet from the unisims FDCE primitive

Code Verilog - [expand]
1
2
3
4
5
6
7
8
9
module FDCE #(
...
);
 
...
    reg [0:0] IS_D_INVERTED_REG = IS_D_INVERTED;
 
    tri0 glblGSR = glbl.GSR;
...


and in glbl GSR is initialized with the following:

Code Verilog - [expand]
1
2
3
4
5
6
7
8
9
10
11
assign (strong1, weak0) GSR = GSR_int;
    assign (strong1, weak0) GTS = GTS_int;
    assign (weak1, weak0) PRLD = PRLD_int;
 
    initial begin
    GSR_int = 1'b1;
    PRLD_int = 1'b1;
    #(ROC_WIDTH)
    GSR_int = 1'b0;
    PRLD_int = 1'b0;
    end


as you can see glbl is hierachically referenced as a top-level simulation file, hence my previous post about it being called out on a simulator command line along with the testbench.
 
@ads-ee

Thank you for the explanation. Ive tried to simulate the testbench and it works.
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…