>> Hi John,
>>
>> Do you have the coefficients in slices rather than BRAMs? That might
>> be contributing to the high address fanout.
>
> Yes, the "use distributed memory cells for coeffs" is checked.  I'll try
> changing it.  It takes forever to build, but I'll start one and leave it
> go.

This made a significant difference, so much so that I don't trust it.  It
took only a couple of hours to build, and used *many* fewer slices...

I'll keep you posted.  (btw, the "use distributed memory cells" is the
default.)

>
> (note to the list: I sent Henry the mdl file, instead of sending it to the
> list as it's 4.5 MB.  Let me know if you want a look at it.)
>
> John
>
>
>> Thanks,
>> Henry
>>
>> John Ford wrote:
>>>> Hi John,
>>>> I've definitely run into the same issue, but haven't had a chance to
>>>> tackle it yet. It could be a pain, but I would try to hack the design
>>>> to change the PFB coefficients by one LSB or something in one location
>>>> so they can't be optimized together. It might also help to try and
>>>> change whether the coefficient ROMs are implemented in BRAM or
>>>> distributed memory. If it comes down to it, you may have to add a
>>>> delay to one section of the PFB so that the coefficients are off by
>>>> one time step (the optimizer doesn't seem to be smart enough to figure
>>>> that one out), and then add delays elsewhere to get things back in
>>>> step later.
>>>> It seems like there has to be a way to get that optimization turned
>>>> off, but I haven't figured it out.
>>>
>>> Thanks.  These are some good suggestions.  The error is in the counter
>>> that addresses the coefficients, so maybe I can do as Jason suggests
>>> and
>>> add in some delay between the counter and the rest of the system inside
>>> the PFB block.  Maybe I can trick it into thinking the counters are
>>> different, somehow...
>>>
>>> John
>>>
>>>
>>>
>>>> Glenn
>>>>
>>>> On Thu, Nov 6, 2008 at 10:07 AM, John Ford <jf...@nrao.edu> wrote:
>>>>>> Create more coefficient generators and sprinkle them around inside
>>>>>> the
>>>>>> PFB?
>>>>>>
>>>>>> Sorry, I don't have Simulink with me, so can't offer more concrete
>>>>>> advice. But if the problem is with the fanout, why not create
>>>>>> seperate
>>>>>> sources with smaller fanouts?
>>>>> There are separate coefficient generators for every path in the
>>>>> library
>>>>> block, but they seem to get optimized out during the build.  That's
>>>>> the
>>>>> trick, I guess, that I don't know how to get around...
>>>>>
>>>>> Thanks
>>>>>
>>>>> John
>>>>>
>>>>>> Jason
>>>>>>
>>>>>>
>>>>>> On 06 Nov 2008, at 15:46, John Ford wrote:
>>>>>>
>>>>>>> Does anyone have any suggestions for fixing this error?  It seems
>>>>>>> due
>>>>>>> entirely to the large fanout (450!) in the coefficient generator.
>>>>>>>
>>>>>>> We're stuck on this for building our 4K channel 800 MHz pulsar
>>>>>>> machine.
>>>>>>> It is introducing errors into the spectrum.
>>>>>>>
>>>>>>> John
>>>>>>>
>>>>>>>
>>>>>>>> Hi all.  Here's a timing error that appears when building a large
>>>>>>>> (2^^3
>>>>>>>> parallel paths, 2^^13 points, 4 taps 7 bit coefficients, 7 bit
>>>>>>>> input, 14
>>>>>>>> bit output) PFB.  The timing wizard's suggestions are below.  Note
>>>>>>>> that
>>>>>>>> the coeff. generator counter seems to be used for all coeff
>>>>>>>> generator
>>>>>>>> counters in the entire PFB's complement of coeff generators.
>>>>>>>>
>>>>>>>> How can I tell the toolset not to optimize out all the other
>>>>>>>> counters, or
>>>>>>>> alternatively, how can I introduce a delay to fix this problem?
>>>>>>>> I've
>>>>>>>> attached the twx file, but from the timing wizard:
>>>>>>>>
>>>>>>>> This path has a net
>>>>>>>> "b2_gdsp_u1_8k_800_a_nb_xsg_core_config/
>>>>>>>> b2_gdsp_u1_8k_800_a_nb_xsg_core_config/
>>>>>>>> top/pfb_fir_real_4k_ch/pol1_in1_first_tap/pfb_coeff_gen/counter_q(4)"
>>>>>>>> with a high fanout of 450.
>>>>>>>>
>>>>>>>> High fanout suggestions.
>>>>>>>>
>>>>>>>> -Duplicate the net source and direct the synthesis tools not to
>>>>>>>> remove
>>>>>>>> duplicate logic.
>>>>>>>>
>>>>>>>> -Use a specific net fanout control on the problem net if allowed
>>>>>>>> by
>>>>>>>> the
>>>>>>>> synthesis tool.
>>>>>>>>
>>>>>>>> Click Next button if this suggestion does not help.
>>>>>>>>
>>>>>>>> Thanks for any help!
>>>>>>>>
>>>>>>>> John
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>
>>>>>
>>>>>
>>>
>>>
>>>
>>>
>>
>
>



Reply via email to