Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
21612 Discussions

functional simulation + STA = gate level simulation?

Altera_Forum
Honored Contributor II
2,285 Views

Hi: 

Is "functional simulation" + "STA" = "gate level simulation"? 

I designed a project,and run the functional simulation successfully,at the same time,the timequest timing analysis has no warning.So,need I run the gate level simulation? and why? 

 

thank u!
0 Kudos
6 Replies
Altera_Forum
Honored Contributor II
1,214 Views

No in general you don't need to run a gate level simulation, except if you have a bug on the running design that you think is linked to the compilation or a timing problem and want to track in down in the simulator. 

If you are confident in your timing requirements specification, then the functional simulation and the Timequest report are enough.
0 Kudos
Altera_Forum
Honored Contributor II
1,214 Views

Most people do not do timing/gate sims, just RTL + STA, as you describe. If you're doing funky circuits(non-synchronous and not recommended), timing sims may be helpful. They also might catch an incorrect timing constraint, such as a multicycle that really isn't. In general, STA is better thought since it covers a range of timing, i.e. all timing corners, while the timing simulations only do a specific one.  

And in reality, the testing is RTL Sim + STA + Running in FPGA. That last one is key, and why ASIC designers might still do timing sims while FPGA designers usually do not.
0 Kudos
Altera_Forum
Honored Contributor II
1,214 Views

thanks a lot!it helps me a lot!

0 Kudos
Altera_Forum
Honored Contributor II
1,214 Views

ok.got it.Thanks a lot!

0 Kudos
Altera_Forum
Honored Contributor II
1,214 Views

I usually also go directly from RTL to FPGA testing, when TimeQuest gives the green flag. 

 

That said, there are a few caveats to keep in mind. 

- You may have gotten your constraints wrong. 

 

- There may be subtle inconsistenties between what you describe in HDL and what the synthesis tool produces. 

 

Consider this trivial piece of VHDL when x is 'X' 

y <= '1' when x = '1' else '0'; 

In RTL simulation, y will become '0'; post synthesis, y will become 'X'. 

I don't recall ever coming across trouble with this when designing for FPGAs, only for ASICs. Best beware. 

 

- There may be bugs/limitations in the synthesis tools and STA tools. 

Ie, once upon a time in an old design, TimeQuest was missing a timing failure in totally normal register to register transfer in the same clock. But the bug showed up in gate level simulation (and in the FPGA). 

 

PS: I have a very degree of confidence in TimeQuest. Don't want to start any flame war but I would not extend the same degree of confidence to lesser STA tools such as Altera's Classical Timing Analyzer or Xilinx's TRACE.
0 Kudos
Altera_Forum
Honored Contributor II
1,214 Views

thank u for your advice,I'm confident with TQ ,too.

0 Kudos
Reply