Hi Tim, Could you send out a link to the github page when you do post it?
Thanks, Brad Dober Ph.D. Candidate Department of Physics and Astronomy University of Pennsylvania Cell: 262-949-4668 On Thu, Apr 16, 2015 at 11:11 AM, Madden, Timothy J. <[email protected]> wrote: > I will get on github soon. Argonne and Nist are sharing stuff already. > > T > > ------------------------------ > *From:* Jack Hickish [[email protected]] > *Sent:* Thursday, April 16, 2015 10:08 AM > *To:* Madden, Timothy J.; [email protected] > *Subject:* Re: [casper] Regarding dram: Moving from ROACH1 to ROACH2 > > Hi Tim, > > If you don't mind sharing your design, I'll put it up on the Casper wiki, > where i think it would be useful for others trying to use the dram. > > Cheers, > Jack > > On Thu, 16 Apr 2015 7:19 am Madden, Timothy J. <[email protected]> > wrote: > >> Folks >> >> After reverse engineering the dram on ROACH2 here is what one should know. >> >> 1. The dram on roach2 is different from roach1. >> On roach1, the user can read and write 144 size words to the dram with >> the buss set not to 288 bits. >> On roach2, the data buss is always 288 bits, regardless of the "use >> wide buss" setting. >> 2. Of one wants to stream dram data to a DAC on a roach 1, for MKID >> applications we do this: >> Read every other clock cycle by toggling cmd ack on each clock. >> 144 bit words will steam out every clock that can drive the DAC. >> >> On roach2, we read 288 bit words every other clock cycle by toggling >> cmd ack on every clock. >> Then we use a mux to convert the 288 bit words down to a series of >> 144 bit words on every clock. >> >> The dram should be set to 200MHz, not 240MHz or something else. The CORE >> generator has all its constraints >> set up for 200MHz. Note that this 200MHz has nothing to do with your >> fabric clock, as it comes >> from a different PLL on the FPGA. The yellow block does not interface to >> the dram itself, but simply FIFOs. >> When you write to the dram yellow block, you write to FIFOs that cross >> the clock domains. For streaming >> 144 bit data to DACs, you are reading 288 bit data from the dram at 1/2 >> your fabric clock rate. This gives >> lots of time for the FIFOs to read from the dram in little 8 word bursts >> and still deal with the dram refresh. >> >> I post this because we got confused by the documentation on the casper >> website. Also, we are moving from >> ROACH to ROACH2, and did not know the little differences in the dram. >> Also, it is natural to assume that the >> yellow block talks directly to the xilinx ddr3 controller and the ports >> correspond to the UI interface >> documented in the xilinx memory generator docs. This is not the case. The >> yellow block reads and writes >> fifos, and the ddr stuff is all hidden. >> >> The dram is a nice design by the way. I am just pointing out some details >> to save other folks some time. >> >> Tim Madden >> Argonne Lab >> >>

