Hi Ryan,

I could get rid of those errors but the tool had hard time in placing
with huge setup timing errors. How much utilization is good to set on
p-blocks ?

Currently, I had 60-70% for different components.

Cheers,
Amit

On 05-Nov-15 9:46 AM, Ryan Monroe wrote:
> Hi Amit,
> 
> FYI, I am CC'ing the CASPER list on all of these emails, so that they
> can be searchable for people in the future.
> 
> The placements I gave you were for my personal design, and may not work
> for yours.  When choosing pblock size, be sure to look at the pblock
> utilization in planahead.  odds are that you had either
> 1. a pblock which was outright too small for the components placed
> within (tools error out almost instantly)
> 2. multiple overlapping pblocks, in such a way that it's impossible to
> satisfy both constraints simultaneously (tools error out after much
> longer).  pblock statistics don't help with this one, but you can bash
> it out by hand with more difficulty.
> 
> look at the error from line 327-561 on your report.  this indicates the
> constraints which caused the issue, as well as some of the components
> involved.  that's a good place to start!
> 
> --Ryan
> 
> On 11/05/2015 12:20 AM, aban...@mpifr-bonn.mpg.de wrote:
>> Hi Ryan,
>>
>> I tried to place the 10gbe pblocks as you suggested. Unfortunately,
>> the tool was unable to place all components. The pblock statistics
>> were more than enough. Do you know how to avoid this problem ? The
>> tool took long time to give out errors (~11 hrs).
>>
>> I have enclosed the map report.
>>
>> Regards,
>> Amit
>>
>> On 04.11.2015 09:37, Ryan Monroe wrote:
>>> np!  the 10gbe core wasn't really intended to run at fast clock
>>> rates.  Be sure to constrain it to the east-ish side of the chip, this
>>> is almost either a
>>> 1. device utilization issue (you are trying to do too much stuff on
>>> the chip), or
>>> 2. placement issue (probably this)-- the tools are terrible at
>>> placing things in the right spots
>>>
>>> Send me any questions you have, but I'm pretty busy and reserve the
>>> right to be bad about answering ;-)
>>>
>>> --Ryan
>>>
>>>
>>>
>>> On 11/04/2015 12:32 AM, Amit Bansod wrote:
>>>> Hi Ryan,
>>>>
>>>> Thanks a lot! I will give this a try!
>>>>
>>>> Cheers,
>>>> Amit
>>>>
>>>> On 04-Nov-15 9:31 AM, Ryan Monroe wrote:
>>>>> Dear Amit,
>>>>>
>>>>> Please consider my memo 50 on the CASPER list: "Performance
>>>>> optimization
>>>>> for Virtex 6 CASPER designs" [1]
>>>>>
>>>>> As it turns out, I have a design open right now, which must close 8
>>>>> 10gbe cores at 312.5 mhz.  Attached is an image of where I placed my
>>>>> tge_tx_inst and tge_rx_inst pblocks, which I hope will be helpful for
>>>>> you.  Wish I had time to do more for you, but such is life :-/
>>>>>
>>>>> Cheers!
>>>>>
>>>>> --Ryan Monroe
>>>>>
>>>>> [1] https://casper.berkeley.edu/wiki/Memos
>>>>>
>>>>> On 11/04/2015 12:17 AM, aban...@mpifr-bonn.mpg.de wrote:
>>>>>> Dear All,
>>>>>>
>>>>>> I am getting following timing errors on 10GbE yellow blocks which
>>>>>> I am
>>>>>> finding it hard to get rid off. I am running my design at 200 MHz. I
>>>>>> have given the device utilization summary if it is useful. I have
>>>>>> also
>>>>>> enclosed the files.
>>>>>>
>>>>>> Best Regards,
>>>>>> Amit
>>>>>>
>>>>>> Timing Errors:
>>>>>> Timing constraint: PERIOD analysis for net
>>>>>> "d_codd_64ch_2_P0_ADC_asiaa_adc5g/d_codd_64ch_2_P0_ADC_asiaa_adc5g/
>>>>>>   mmcm_clkout1" derived from  PERIOD analysis for net
>>>>>> "d_codd_64ch_2_P0_ADC_asiaa_adc5g/d_codd_64ch_2_P0_ADC_asiaa_adc5g/
>>>>>>   adc_clk_div" derived from NET
>>>>>>
>>>>>>
>>>>>> "d_codd_64ch_2_P0_ADC_asiaa_adc5g/d_codd_64ch_2_P0_ADC_asiaa_adc5g/adc_clk"
>>>>>>
>>>>>>
>>>>>>      PERIOD = 2.5 ns HIGH 50%; multiplied by 2.00 to 5 nS and duty
>>>>>> cycle
>>>>>>   corrected to HIGH 2.500 nS
>>>>>>   For more information, see Period Analysis in the Timing Closure
>>>>>> User
>>>>>> Guide (UG612).
>>>>>>
>>>>>>    1594959 paths analyzed, 343705 endpoints analyzed, 63 failing
>>>>>> endpoints
>>>>>>    63 timing errors detected. (63 setup errors, 0 hold errors, 0
>>>>>> component switching limit errors)
>>>>>>    Minimum period is   5.727ns.
>>>>>>
>>>>>>
>>>>>> --------------------------------------------------------------------------------
>>>>>>
>>>>>>
>>>>>>   Slack:                  -0.727ns (requirement - (data path - clock
>>>>>> path skew + uncertainty))
>>>>>>     Source:
>>>>>>
>>>>>> d_codd_64ch_2_10G_10GBE2_gbe00/d_codd_64ch_2_10G_10GBE2_gbe00/tge_tx_inst/app_tx_validR
>>>>>>
>>>>>> (FF)
>>>>>>     Destination:
>>>>>>
>>>>>> d_codd_64ch_2_10G_10GBE2_gbe00/d_codd_64ch_2_10G_10GBE2_gbe00/tge_tx_inst/tx_packet_fifo_inst/BU2/U0/grf.rf/mem/gbm.gbmg.gbmga.ngecc.bmg/blk_mem_generator/valid.cstr/ramloop[1].ram.r/v5_noinit.ram/SDP.SINGLE_PRIM36.TDP
>>>>>>
>>>>>> (RAM)
>>>>>>     Requirement:          5.000ns
>>>>>>     Data Path Delay:      5.721ns (Levels of Logic = 1)
>>>>>>     Clock Path Skew:      0.054ns (2.112 - 2.058)
>>>>>>     Source Clock:         adc0_clk rising at 0.000ns
>>>>>>     Destination Clock:    adc0_clk rising at 5.000ns
>>>>>>     Clock Uncertainty:    0.060ns
>>>>>>
>>>>>>     Clock Uncertainty:          0.060ns  ((TSJ^2 + DJ^2)^1/2) / 2
>>>>>> + PE
>>>>>>       Total System Jitter (TSJ):  0.070ns
>>>>>>       Discrete Jitter (DJ):       0.097ns
>>>>>>       Phase Error (PE):           0.000ns
>>>>>>
>>>>>>     Maximum Data Path at Slow Process Corner:
>>>>>>
>>>>>> d_codd_64ch_2_10G_10GBE2_gbe00/d_codd_64ch_2_10G_10GBE2_gbe00/tge_tx_inst/app_tx_validR
>>>>>>
>>>>>> to
>>>>>>
>>>>>> d_codd_64ch_2_10G_10GBE2_gbe00/d_codd_64ch_2_10G_10GBE2_gbe00/tge_tx_inst/tx_packet_fifo_inst/BU2/U0/grf.rf/mem/gbm.gbmg.gbmga.ngecc.bmg/blk_mem_generator/valid.cstr/ramloop[1].ram.r/v5_noinit.ram/SDP.SINGLE_PRIM36.TDP
>>>>>>
>>>>>>
>>>>>>       Location                Delay type         Delay(ns) Physical
>>>>>> Resource
>>>>>> Logical
>>>>>> Resource(s)
>>>>>>       ----------------------------------------------------
>>>>>> -------------------
>>>>>>       SLICE_X81Y192.CQ        Tcko                  0.337
>>>>>>
>>>>>> d_codd_64ch_2_10G_10GBE2_gbe00/d_codd_64ch_2_10G_10GBE2_gbe00/tge_tx_inst/app_tx_validR
>>>>>>
>>>>>>
>>>>>>
>>>>>> d_codd_64ch_2_10G_10GBE2_gbe00/d_codd_64ch_2_10G_10GBE2_gbe00/tge_tx_inst/app_tx_validR
>>>>>>
>>>>>>
>>>>>>       SLICE_X23Y278.A6        net (fanout=5)        4.173
>>>>>>
>>>>>> d_codd_64ch_2_10G_10GBE2_gbe00/d_codd_64ch_2_10G_10GBE2_gbe00/tge_tx_inst/app_tx_validR
>>>>>>
>>>>>>
>>>>>>       SLICE_X23Y278.A         Tilo                  0.068
>>>>>>
>>>>>> d_codd_64ch_2_10G_10GBE2_gbe00/d_codd_64ch_2_10G_10GBE2_gbe00/tge_tx_inst/tx_packet_fifo_inst/BU2/U0/grf.rf/ram_wr_en
>>>>>>
>>>>>>
>>>>>>
>>>>>> d_codd_64ch_2_10G_10GBE2_gbe00/d_codd_64ch_2_10G_10GBE2_gbe00/tge_tx_inst/tx_packet_fifo_inst/BU2/U0/grf.rf/gl0.wr/ram_wr_en_i1
>>>>>>
>>>>>>
>>>>>>       RAMB36_X1Y54.WEAU3      net (fanout=16)       0.628
>>>>>>
>>>>>> d_codd_64ch_2_10G_10GBE2_gbe00/d_codd_64ch_2_10G_10GBE2_gbe00/tge_tx_inst/tx_packet_fifo_inst/BU2/U0/grf.rf/ram_wr_en
>>>>>>
>>>>>>
>>>>>>       RAMB36_X1Y54.CLKARDCLKU Trcck_WEA             0.515
>>>>>>
>>>>>> d_codd_64ch_2_10G_10GBE2_gbe00/d_codd_64ch_2_10G_10GBE2_gbe00/tge_tx_inst/tx_packet_fifo_inst/BU2/U0/grf.rf/mem/gbm.gbmg.gbmga.ngecc.bmg/blk_mem_generator/valid.cstr/ramloop[1].ram.r/v5_noinit.ram/SDP.SINGLE_PRIM36.TDP
>>>>>>
>>>>>>
>>>>>>
>>>>>> d_codd_64ch_2_10G_10GBE2_gbe00/d_codd_64ch_2_10G_10GBE2_gbe00/tge_tx_inst/tx_packet_fifo_inst/BU2/U0/grf.rf/mem/gbm.gbmg.gbmga.ngecc.bmg/blk_mem_generator/valid.cstr/ramloop[1].ram.r/v5_noinit.ram/SDP.SINGLE_PRIM36.TDP
>>>>>>
>>>>>>
>>>>>>       ----------------------------------------------------
>>>>>> ---------------------------
>>>>>>       Total 5.721ns (0.920ns
>>>>>> logic, 4.801ns route)
>>>>>> (16.1%
>>>>>> logic, 83.9% route)
>>>>>>
>>>>>>
>>>>>> Device Utilization Summary:
>>>>>>
>>>>>> Slice Logic Utilization:
>>>>>>    Number of Slice Registers:               183,328 out of 595,200
>>>>>>  30%
>>>>>>      Number used as Flip Flops:             183,197
>>>>>>      Number used as Latches:                      3
>>>>>>      Number used as Latch-thrus:                  0
>>>>>>      Number used as AND/OR logics:              128
>>>>>>    Number of Slice LUTs:                    155,306 out of 297,600
>>>>>>  52%
>>>>>>      Number used as logic:                   72,780 out of 297,600
>>>>>>  24%
>>>>>>        Number using O6 output only:          43,389
>>>>>>        Number using O5 output only:          10,220
>>>>>>        Number using O5 and O6:               19,171
>>>>>>        Number used as ROM:                        0
>>>>>>      Number used as Memory:                  56,297 out of 122,240
>>>>>>  46%
>>>>>>        Number used as Dual Port RAM:          1,904
>>>>>>          Number using O6 output only:         1,376
>>>>>>          Number using O5 output only:             4
>>>>>>          Number using O5 and O6:                524
>>>>>>        Number used as Single Port RAM:            0
>>>>>>        Number used as Shift Register:        54,393
>>>>>>          Number using O6 output only:        36,882
>>>>>>          Number using O5 output only:             0
>>>>>>          Number using O5 and O6:             17,511
>>>>>>      Number used exclusively as route-thrus: 26,229
>>>>>>        Number with same-slice register load:  9,024
>>>>>>        Number with same-slice carry load:    17,205
>>>>>>        Number with other load:                    0
>>>>>>
>>>>>> Slice Logic Distribution:
>>>>>>    Number of occupied Slices:                53,681 out of 74,400 
>>>>>> 72%
>>>>>>    Number of LUT Flip Flop pairs used:      189,068
>>>>>>      Number with an unused Flip Flop:        38,081 out of 189,068
>>>>>>  20%
>>>>>>      Number with an unused LUT:              33,762 out of 189,068
>>>>>>  17%
>>>>>>      Number of fully used LUT-FF pairs:     117,225 out of 189,068
>>>>>>  62%
>>>>>>      Number of slice register sites lost
>>>>>>        to control set restrictions:               0 out of 595,200
>>>>>>   0%
>>>>>>
>>>>>>    A LUT Flip Flop pair for this architecture represents one LUT
>>>>>> paired
>>>>>> with
>>>>>>    one Flip Flop within a slice.  A control set is a unique
>>>>>> combination of
>>>>>>    clock, reset, set, and enable signals for a registered element.
>>>>>>    The Slice Logic Distribution report is not meaningful if the
>>>>>> design is
>>>>>>    over-mapped for a non-slice resource or if Placement fails.
>>>>>>    OVERMAPPING of BRAM resources should be ignored if the design is
>>>>>>    over-mapped for a non-BRAM resource or if placement fails.
>>>>>>
>>>>>> IO Utilization:
>>>>>>    Number of bonded IOBs:                       233 out of 840   27%
>>>>>>      Number of LOCed IOBs:                      233 out of     233
>>>>>> 100%
>>>>>>      IOB Flip Flops:                            112
>>>>>>      Number of bonded IPADs:                     70
>>>>>>        Number of LOCed IPADs:                    70 out of      70
>>>>>> 100%
>>>>>>      Number of bonded OPADs:                     64
>>>>>>        Number of LOCed OPADs:                    64 out of      64
>>>>>> 100%
>>>>>>
>>>>>> Specific Feature Utilization:
>>>>>>    Number of RAMB36E1/FIFO36E1s:                392 out of 1,064  
>>>>>> 36%
>>>>>>      Number using RAMB36E1 only:                392
>>>>>>      Number using FIFO36E1 only:                  0
>>>>>>    Number of RAMB18E1/FIFO18E1s:                154 out of 2,128   7%
>>>>>>      Number using RAMB18E1 only:                154
>>>>>>      Number using FIFO18E1 only:                  0
>>>>>>    Number of BUFG/BUFGCTRLs:                      9 out of 32   28%
>>>>>>      Number used as BUFGs:                        9
>>>>>>      Number used as BUFGCTRLs:                    0
>>>>>>    Number of ILOGICE1/ISERDESE1s:               141 out of 1,080  
>>>>>> 13%
>>>>>>      Number used as ILOGICE1s:                   77
>>>>>>      Number used as ISERDESE1s:                  64
>>>>>>    Number of OLOGICE1/OSERDESE1s:                35 out of 1,080   3%
>>>>>>      Number used as OLOGICE1s:                   35
>>>>>>      Number used as OSERDESE1s:                   0
>>>>>>    Number of BSCANs:                              0 out of 4    0%
>>>>>>    Number of BUFHCEs:                             0 out of 216    0%
>>>>>>    Number of BUFIODQSs:                           0 out of 108    0%
>>>>>>    Number of BUFRs:                               5 out of 54    9%
>>>>>>      Number of LOCed BUFRs:                       2 out of 5   40%
>>>>>>    Number of CAPTUREs:                            0 out of 1    0%
>>>>>>    Number of DSP48E1s:                          608 out of 2,016  
>>>>>> 30%
>>>>>>    Number of EFUSE_USRs:                          0 out of 1    0%
>>>>>>    Number of FRAME_ECCs:                          0 out of 1    0%
>>>>>>    Number of GTXE1s:                             32 out of 36   88%
>>>>>>    Number of IBUFDS_GTXE1s:                       3 out of 18   16%
>>>>>>    Number of ICAPs:                               0 out of 2    0%
>>>>>>    Number of IDELAYCTRLs:                         4 out of 27   14%
>>>>>>    Number of IODELAYE1s:                         64 out of 1,080   5%
>>>>>>    Number of MMCM_ADVs:                           3 out of 18   16%
>>>>>>    Number of PCIE_2_0s:                           0 out of 2    0%
>>>>>>    Number of STARTUPs:                            1 out of       1
>>>>>> 100%
>>>>>>    Number of SYSMONs:                             0 out of 1    0%
>>>>>>    Number of TEMAC_SINGLEs:                       1 out of 4   25%
> 

Reply via email to