Hi Jonathon,
Are you able to share your state machine that moves data from 10 GbE to
DRAM? Sounds useful!

Thanks,
Glenn

On Tue, Mar 10, 2015 at 5:04 PM, Gard, Johnathon D. <[email protected]
> wrote:

>  Hello Everyone,
>
>
>  Just an update on what I have worked out. Thank you Wesely New for the
> idea, that worked once I got the correct multipliers and dividers in the
>
> instantiation of the MMCM. To get the correct numbers, I created an ISE
> project and IP Core project (you may not need the ISE project to create the
> IP Core project, but I am just starting with ISE) and created an MMCM IP
> core and pulled the values out of that. For instance, we are running the
> MKID ADC/DAC board at 512 MHz, the clock we are syncing to is half of that,
> 256MHz , so we want a 1 to 1 MMCM:
>
> CLKFBOUT_MULT_F = 8.00
>
> DIVCLK_DIVIDE = 2
>
> CLKIN1_PERIOD = 4.00
>
> CLKOUT0_DIVIDE_F = 4.00
>
> CLKOUT1_DIVIDE = 4
>
> CLKOUT2_DIVIDE = 4
>
> CLKOUT3_DIVIDE = 4
>
>
>  I hope this helps. I have done a loop test of sending a signal into the
> ADC and then just passing it through the FPGA back out to the DAC and on a
> oscilloscope I do not see anything unusual except for the digitization
> noise.
>
>
>  Running the entire firmware to 480MHz is rather impressive. I would
> imagine you are running into timing issues beyond that which is not at all
> surprising. Unless you meant the ADC/DAC running at 480MHz and the FPGA
> itself being clocked at 240MHz.
>
>
>  At the moment I have written a state machine to interface between the
> 10Gbe rx port and the DDR3 DRAM block. This is a work around for the PPC to
> DRAM interface. I guess it also opens up the ability to send data to the
> ROACH2 over the 10Gbe link. Our link is only sending data to the PC it is
> connected to.
>
>
>  I hope this helps.
>
>
>  Johnathon Gard
>
> National Institute of Standards and Technology
>
> Quantum Sensors Project​​
>
>
>
>  ------------------------------
> *From:* Nishanth Shivashankaran <[email protected]>
> *Sent:* Friday, March 6, 2015 11:20 AM
> *To:* Brad Dober
> *Cc:* Wesley New; Gard, Johnathon D.; [email protected];
> [email protected]
> *Subject:* Re: [casper] ROACH2 MKID Block and DDR3 DRAM
>
>    Hi All,
>
>     I have replaced the DCM with the MMCM, and the firmware works till
> about 480MHz. I tried to play with other multipliers and dividers values, I
> get it to compile for higher frequencies but the ADC data gets clipped when
> I set the value of the DIVCLK_DIVIDE greater than 1. If anyone can tell me
> why the ADC samples has a clipped waveform when I set it to greater than 1,
> I would really appreciate it. Currently, I am trying to figure out a way to
> use two MMCM's and play with 2 sets of multiplier and divider to see if it
> gets rid of the weird clipping problem so that I can clock it greater than
> 500Mhz.
>
> The files attached has the value of DIVCLK_DIVIDE set to 1 and the
> Firmware codes compile to about 480 MHz and there is no clipping observed.
>
>  Warm regards,
>  Nishanth
>
> On Fri, Mar 6, 2015 at 9:48 AM, Brad Dober <[email protected]> wrote:
>
>> Nishanth at ASU has been working on getting the MKID ADC/DAC working on
>> the ROACH2.
>>
>>  The DAC is fully functional, and the ADC works up to CLK frequency of
>> 480 MHz, then some NCO clock errors pop up.
>>
>>  We are also interested in the PPC interface to the DRAM.
>> Feel free to contact Nishanth and I to talk about this further.
>>
>>
>>  Brad Dober
>> Ph.D. Candidate
>> Department of Physics and Astronomy
>> University of Pennsylvania
>> Cell: 262-949-4668
>>
>> On Fri, Mar 6, 2015 at 2:56 AM, Wesley New <[email protected]> wrote:
>>
>>> Hi Johnathan.
>>>
>>>  I can point you in the right direction for the first issue you are
>>> having. It seems that no one has used that ADC on a ROACH2 before so you
>>> will need to migrate the core to support Virtex 6. This is probably just a
>>> replacement of the DCM with and MMCM, but there may be other issues.
>>>
>>>  You will need to edit this file:
>>>
>>>
>>> https://github.com/casper-astro/mlib_devel/blob/master/xps_base/XPS_ROACH2_base/pcores/adc_mkid_interface_v1_00_a/hdl/vhdl/adc_mkid_interface.vhd
>>>
>>>  The DCM is at the end of the file.
>>>
>>>  You can see how the MMCM has been setup in the MKADC here:
>>>
>>>
>>> https://github.com/casper-astro/mlib_devel/blob/master/xps_base/XPS_ROACH2_base/pcores/mkadc_interface_v1_00_a/hdl/vhdl/adc5g_dmux1_interface.vhd
>>>
>>>  For more info on the MMCM see the Xilinx Clocking Resource users guide.
>>>
>>>  Regards
>>>
>>>  Wesley
>>>
>>>
>>>    Wesley New
>>> South African SKA Project
>>> +2721 506 7300
>>> www.ska.ac.za
>>>
>>>
>>>
>>> On Fri, Mar 6, 2015 at 2:54 AM, Gard, Johnathon D. <
>>> [email protected]> wrote:
>>>
>>>>   Hello Everyone,
>>>>
>>>> I have a series of questions concerning the ROACH2 system and tool flow.
>>>>
>>>> OS = Ubuntu 14.04.2 LTS
>>>>
>>>> Tool flow = ISE 14.7, MATLAB R2012b, mlib-devel-master (casper-astro
>>>> git clone)
>>>>
>>>> Hardware = MUSIC ADC/DAC board and MUSIC IF_Board from Techne
>>>> Instruments (Rich Raffanti)
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> First thing, syncing the FPGA clock to the ADC/DAC clock. Using the
>>>> mkid adc or dac blocks from the xps library and selecting any one of the
>>>> adc0_clk, adc1_clk, dac0_clk, or dac1_clk settings in the xsg_core_config
>>>> results in errors in the compilation. There are usually one of two errors
>>>> the come up “Cannot retarget DCM to MMCM” because of VCO frequencies being
>>>> out of range or an input period of 0.00ns for the DCM. Looking at the
>>>> Xilinx forums, they generally do not recommend letting the toolflow upgrade
>>>> the DCM to a MMCM. There are a lot of complications that arise from this. I
>>>> was wondering if anyone has a block set were they have already fixed this
>>>> problem and have been able to use an external clock from the ZDOK
>>>> connectors.
>>>>
>>>>
>>>>
>>>> I, at one point, found an email on the CASPER archive about this same
>>>> problem and downloaded the attached block set. However this did not work
>>>> either. I really wish I could find this email again.
>>>>
>>>>
>>>>
>>>> Another question I had was about the DDR3 DRAM.
>>>>
>>>>
>>>>
>>>> http://www.mail-archive.com/casper%40lists.berkeley.edu/msg04323.html
>>>>
>>>>
>>>>
>>>> I was if anyone has tried to change the IDELAYCTRL frequency so that
>>>> the RAM can run at a higher clock speed. This work may be able to be tied
>>>> into the PPC interface work or error free work from the following email.
>>>>
>>>>
>>>>
>>>> http://www.mail-archive.com/casper%40lists.berkeley.edu/msg05670.html
>>>>
>>>>
>>>>
>>>> I would be more than happy to try and help with this. I have an
>>>> interest in the PPC interface but error free operation is more critical.
>>>>
>>>>
>>>>
>>>> Johnathon Gard
>>>>
>>>> National Institute of Standards and Technology
>>>>
>>>> Quantum Sensors Project​
>>>>
>>>>
>>>>
>>>
>>
>
>
> --
>  Nishanth Shivashankaran
> Arizona State University
> Phone:-480-246-6866
> Email:[email protected]
>

Reply via email to