cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Adventurer
Adventurer
1,188 Views
Registered: ‎08-03-2018

How to find Fast Process Corner and Slow Process Corner speed file values ?

Hi 

In UG612 document named "Timing Closure User Guide" , in page 151 , chapter 6 , Timing Analysis :

It says : The Fast Process Corner and Slow Process Corner speed file values are based upon the
characterization data.

My question is : How can i find/creat speed file values in ISE v14.7 ??

My device is Spartan-6.

And how can i do Fast Process Corner and Slow Process Corner analys ?

Thank you.

doc.png
0 Kudos
21 Replies
Highlighted
Guide
Guide
1,164 Views
Registered: ‎01-23-2009

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

Some of the timing information is available in the datasheet - for the Spartan-6 this is DS162.

If you want the full list, then you can use the "speedprint" command that comes with ISE - take a look at the "Command Line Tools User Guide (UG628)" for the speedprint command.

Be aware that ISE does not to true "min case" timing analysis for all paths - noteably it has no mechanism of doing min case analysis for output paths...

Avrum

Highlighted
Teacher
Teacher
1,157 Views
Registered: ‎07-09-2009

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

You can produce a "data sheet" report for your design,

https://www.xilinx.com/support/documentation/sw_manuals/help/iseguide/mergedProjects/timingan/html/ta_p_ar_data_sheet_report.htm

I dont know if you relaise, but the tools take care of the process corners for you, 

   When you run the tools, they run to meet yourr timing constraints, over the full Process, Temprature range and Voltage range specifed for the design,

 

QED, if you have constrained , and your design passes timming, then Xilinx garuntee over the full PVT , your design will work, 

 

 

<== If this was helpful, please feel free to give Kudos, and close if it answers your question ==>
Highlighted
Guide
Guide
1,141 Views
Registered: ‎01-23-2009

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

if you have constrained , and your design passes timming, then Xilinx garuntee over the full PVT , your design will work,

There is a caveat in ISE (not in Vivado). In ISE, there is no mechanism to specify the minimum OFFSET OUT (or the equivalent of a hold check on output ports); it cannot be specified and the tools do no checking. This is the only static timing that cannot be done through the tool - you have to verify the output hold times manually.

Avrum

Highlighted
Adventurer
Adventurer
1,056 Views
Registered: ‎08-03-2018

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

Hi
You said that : Be aware that ISE does not to true "min case" timing analysis for all paths - noteably it has no mechanism of doing min case analysis for output paths...

Do you mean that i can not find the minimum delay of a path or net ?

Thank you for your reply.
0 Kudos
Highlighted
Adventurer
Adventurer
1,051 Views
Registered: ‎08-03-2018

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

Hi
Imagine that i have a design and there is a "BUFGMUX" in my design.
According to "Spartan-6 FPGA Data Sheet: DC and Switching Characteristics" in page 56,table 48, BUFGMUX delay from I0/I1 to O in speed grade -3 is 0.21 ns . In simulation , Isim , i measured this delay and it was 209 ps so it was very close to what data sheet said [210 ps].
My Challenge is : What would have happened if temperature change ?
Is 210 ps fix or not ?
At what temperature is this delay measured?
How can i change temperature in ISE/Isim so that i can see this effect on delay ?

Thank you for your reply.
0 Kudos
Highlighted
Adventurer
Adventurer
1,046 Views
Registered: ‎08-03-2018

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

Hi
Imagine that i have a design and there is a "BUFGMUX" in my design.
According to "Spartan-6 FPGA Data Sheet: DC and Switching Characteristics" in page 56,table 48, BUFGMUX delay from I0/I1 to O in speed grade -3 is 0.21 ns . In simulation , Isim , i measured this delay and it was 209 ps so it was very close to what data sheet said [210 ps].
My Challenge is : What would have happened if temperature change ?
Is 210 ps fix or not ?
At what temperature is this delay measured?
How can i change temperature in ISE/Isim so that i can see this effect on delay ?

Thank you for your reply.

0 Kudos
Highlighted
Teacher
Teacher
987 Views
Registered: ‎07-09-2009

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

Thats where your going wrong,
you can not see the variations in delay over PVT in the simulator,

With the provisions mentioned above, The tools take care of the PVT variations, provided you tell them your timings,
<== If this was helpful, please feel free to give Kudos, and close if it answers your question ==>
Highlighted
Adventurer
Adventurer
979 Views
Registered: ‎08-03-2018

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

Hi dear
Ok ... you are right about PVT in the simulator...
But can i do Slow Process Corner and Fast Process Corner analysis?
0 Kudos
Highlighted
Teacher
Teacher
972 Views
Registered: ‎07-09-2009

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

Take step back,
why do you want to do PVT analysis ?
what are you going to do that the tools don;t already cover for you?
<== If this was helpful, please feel free to give Kudos, and close if it answers your question ==>
0 Kudos
Highlighted
Adventurer
Adventurer
963 Views
Registered: ‎08-03-2018

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

I have a "BUFG" in my design . According to Datasheet , maximum delay in speed grade -3 is 210 ps and i measured this delay and it was 209 ps , so close to what data sheet said.
My question is : 209 ps delay at what temperature and voltage ??
If temperature is maximum (80 c) , How much is that delay in lower temperature?
Can i simulate it?
0 Kudos
Highlighted
933 Views
Registered: ‎06-21-2017

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

The only answer is somewhere between the minimum and maximum delays from the data sheet.  In practice, the delay is probably less than maximum at a lower temperature, but there are no guarantees.

0 Kudos
Highlighted
Teacher
Teacher
893 Views
Registered: ‎07-09-2009

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

Im confused as to why you want to simulate a bufg ?
If you cab tell us some more what your trying to do and we can try to point you at a normal solution,

Timing is a very big part of any design, its great your so interested,
<== If this was helpful, please feel free to give Kudos, and close if it answers your question ==>
Highlighted
Adventurer
Adventurer
784 Views
Registered: ‎08-03-2018

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

Hi 

I want to see the effect of PVT on my design ... i mean the effect of changing tempurater and voltage ...

As i seaid, according to datasheet a BUFG has 210ps delay at speed gread of -3 ...

In simulation i measured it 209 ps...

In what situation this delay is 209 ps ? What tempurater and voltage ? 

If voltage is minimume , 1.14 v, how can i change it ? How about  tempurater ?

 

Thank you.

0 Kudos
Highlighted
Teacher
Teacher
764 Views
Registered: ‎07-09-2009

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

Is your aim to do what the tools already do for you ?
<== If this was helpful, please feel free to give Kudos, and close if it answers your question ==>
Highlighted
Adventurer
Adventurer
724 Views
Registered: ‎08-03-2018

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

yes ... in simulation but i don't want to implement it on a real device... i want to do it in simulator...Ise and Isim... post&rout mode...
0 Kudos
Highlighted
Teacher
Teacher
671 Views
Registered: ‎07-09-2009

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

as far as I know, in ISE simulation, that's not possible , directly,

I guess post P&R , it might be possible to put a set of constraints for max corners, and do a simulation,
And then a separate set of constraints for min corners, and run a simulation.

Im not to certain what it will tell you more than the constraints already cover though,

As a way around, 


I seem to remember that you could set a temperature and voltage in ISE when you do a P&R, I found this
https://www.xilinx.com/support/answers/53120.html

this might be of use, run multiple P&R , at different temps and voltages and then run simulations,

but bottom line, your fighting the tools, which is IMHO, is often set as a project in academia, but not a fight I'd take on in a commercial environment,




<== If this was helpful, please feel free to give Kudos, and close if it answers your question ==>
0 Kudos
Highlighted
Adventurer
Adventurer
669 Views
Registered: ‎08-03-2018

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

I realized that simulation (Isim) shows results in Slow Process Corner . I used SpeedPrint command in TCL and for that BUFG the result  is :

-----------------------------------------------------------------------------------------------------------------------------

Fast Corner                                                           Slow Corner

Min/Max, Min/Max(when applicable)                    Min/Max, Min/Max(when applicable)

BUFG

Tgi0o     (59/63)                                                     (197/209)

-----------------------------------------------------------------------------------------------------------------------------

In Isim i measured it 209 ps , so according to simulation and speed print command , simulation is runnig on Slow Corner . 

How can i run it on Fast Corner ???

Please help me.

Thank you.

0 Kudos
Highlighted
Adventurer
Adventurer
659 Views
Registered: ‎08-03-2018

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

It is not posible to change voltage and temperature for Spartan-6 family because i try this in ISE : 

Timing --> Run Analysis --> Device settings 

here you can change voltage and temperature BUT this option is NOT active for Spartan-6 !!

so i thought that i can simulate in Fast Corner mode but i don,t know how to do that ... 

 

0 Kudos
Highlighted
Adventurer
Adventurer
626 Views
Registered: ‎08-03-2018

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

Is it posible to run simulator only in Fast Process Corner mode ??

Thank you.

0 Kudos
Highlighted
Teacher
Teacher
610 Views
Registered: ‎07-09-2009

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

Not that I know of,
But must admit it never occurred to us to us simulator for timimg , an interesting idea I'm keeping an eye on. Hence my questions about why, its not often we see new ideas on the forums .
<== If this was helpful, please feel free to give Kudos, and close if it answers your question ==>
0 Kudos
Highlighted
Guide
Guide
552 Views
Registered: ‎01-23-2009

Re: How to find Fast Process Corner and Slow Process Corner speed file values ?

Regarding simulating with min delays - yes, it is possible. I don't know how it is done through the GUI (I haven't use the ISE GUI in a while), but I know that ISE can do it - for netlist simulation the netlist and SDF (which annotates the delay) are generated by the "netgen" program. The -s option of the netgen specifies the speed, and "-s min" specifies to use the min delays (see the Developer's Reference Guide, UG628 under "netgen" - page 50 for the options).

But you can only do the max delay corner (in any speedgrade) or the min delay corner.

The process of getting timing information (either through speedprint or STA) at operating conditions other than the worst case or best case corners is called "Process Derating". The ISE tool does support process derating, but only if the library for the device family does, and no Xilinx family since Virtex-4 (I think) has supported this. So, for all newer families (including Spartan-6), the only timing information available is the max and min corner.

As others have asked - why do you care about this? The timing numbers of a cell are almost irrelevent in an FPGA since timing is almost entirely dominated by routing delays. Furthermore, the only reason timing is usually important is to ensure that the device meets static timing analysis (STA) at a given frequency - the entire toolchain is based around STA... So - again - what are you trying to do that you think you need this kind of detailed information?

Avrum