Reply by Lasse Langwadt Christensen May 19, 20212021-05-19
torsdag den 20. maj 2021 kl. 02.06.49 UTC+2 skrev John Larkin:
> On Wed, 19 May 2021 21:03:53 +0300, Dimiter_Popoff <d...@tgi-sci.com> > wrote: > > >On 5/19/2021 20:41, jla...@highlandsniptechnology.com wrote: > >> On Wed, 19 May 2021 19:55:24 +0300, Dimiter_Popoff <d...@tgi-sci.com> > >> wrote: > >> > >>> On 5/19/2021 19:12, jla...@highlandsniptechnology.com wrote: > >>>> On Wed, 19 May 2021 08:46:08 -0700 (PDT), rj dee > >>>> <rjdgro...@gmail.com> wrote: > >>>> > >>>>> Hi guys. > >>>>> The last time I put ddr2 on an fpga was with virtex 4 and I was able to terminate ras/cas etc internally. I want to do the same with an artix device and I can't find any documentation except the mig user guide which says that I can't do it. Does anyone have any experience with this, it will be a single ddr so I don't need to "stub series terminate" the signals with external VTT from an SI point of view. > >>>>> > >>>>> Thanks in advance, Rob > >>>> > >>>> We recently did a DDR3 onto an XC7A15. It just worked. > >>>> > >>>> https://www.dropbox.com/sh/9lui60l07xygepn/AABpQ4v54OyVacYh3NnN3-o2a?dl=0 > >>>> > >>>> We only terminated the differential clock. > >>>> > >>>> Single-chip ddr rams are fairly easy. > >>>> > >>>> > >>>> > >>>> > >>> > >>> What data rate did you manage? I am sort of planning something with > >>> Artix and ddr3, I wonder how long a burst their DDR controller can do > >>> (I have had - not one an FPGA - DDR controllers which are pretty limited > >>> on that, about half the time they spend on preparing the burst). > >> > >> I'll ask my FPGA pro; he did the Artix design. > >> > >> This is waveform memory for a 400 Hz power source, so we didn't need > >> supercomputer sorts of speed. > >> > >> It's easy to interface one DDR chip. More makes routing and > >> termination difficult. > >> > >> > >> > > > >Thanks, please do ask them. > >I'll have much worse than this DDR3 on this board (64 bit DDR4 via a > >SODIMM connector - I was advised to prefer that to soldering DDR parts > >like I have done before for DDR1). The DDR3 I need just as display > >framebuffer memory, hence the need for speed. I considered using some > >static RAM but the figures come out pretty tragic, the least tragic > >part being the SRAMs will cost well in excess of $100. If I can manage > >to do at least say 64 clock bursts things should be fine I guess. > >I am (still after a very long time) at the headscratching phase, > >hopefully soon I'll manage to get around to doing it. > I asked but nobody remembers and would have to do some poking around > to find out. > > Artix doesn't have dedicated DDR3 hardware, so the interface is > compiled from the fabric. It's probably slow. I doubt that it can do > the dynamic fine delay tuning that fast DDR needs.
Artix doesn't need dedicated DDR3 hardware because it is fast enough to do it in the fabric it does all the fine delay tuning or it wouldn't work, at 1.5V a -1 it can run at 400MHz so 800Mbit/s per pin or 1600Mbyte/s for a 16bit RAM I haven't tried but I heard that >80% of that is possible
Reply by John Larkin May 19, 20212021-05-19
On Wed, 19 May 2021 21:03:53 +0300, Dimiter_Popoff <dp@tgi-sci.com>
wrote:

>On 5/19/2021 20:41, jlarkin@highlandsniptechnology.com wrote: >> On Wed, 19 May 2021 19:55:24 +0300, Dimiter_Popoff <dp@tgi-sci.com> >> wrote: >> >>> On 5/19/2021 19:12, jlarkin@highlandsniptechnology.com wrote: >>>> On Wed, 19 May 2021 08:46:08 -0700 (PDT), rj dee >>>> <rjdgroups4567@gmail.com> wrote: >>>> >>>>> Hi guys. >>>>> The last time I put ddr2 on an fpga was with virtex 4 and I was able to terminate ras/cas etc internally. I want to do the same with an artix device and I can't find any documentation except the mig user guide which says that I can't do it. Does anyone have any experience with this, it will be a single ddr so I don't need to "stub series terminate" the signals with external VTT from an SI point of view. >>>>> >>>>> Thanks in advance, Rob >>>> >>>> We recently did a DDR3 onto an XC7A15. It just worked. >>>> >>>> https://www.dropbox.com/sh/9lui60l07xygepn/AABpQ4v54OyVacYh3NnN3-o2a?dl=0 >>>> >>>> We only terminated the differential clock. >>>> >>>> Single-chip ddr rams are fairly easy. >>>> >>>> >>>> >>>> >>> >>> What data rate did you manage? I am sort of planning something with >>> Artix and ddr3, I wonder how long a burst their DDR controller can do >>> (I have had - not one an FPGA - DDR controllers which are pretty limited >>> on that, about half the time they spend on preparing the burst). >> >> I'll ask my FPGA pro; he did the Artix design. >> >> This is waveform memory for a 400 Hz power source, so we didn't need >> supercomputer sorts of speed. >> >> It's easy to interface one DDR chip. More makes routing and >> termination difficult. >> >> >> > >Thanks, please do ask them. >I'll have much worse than this DDR3 on this board (64 bit DDR4 via a >SODIMM connector - I was advised to prefer that to soldering DDR parts >like I have done before for DDR1). The DDR3 I need just as display >framebuffer memory, hence the need for speed. I considered using some >static RAM but the figures come out pretty tragic, the least tragic >part being the SRAMs will cost well in excess of $100. If I can manage >to do at least say 64 clock bursts things should be fine I guess. >I am (still after a very long time) at the headscratching phase, >hopefully soon I'll manage to get around to doing it.
I asked but nobody remembers and would have to do some poking around to find out. Artix doesn't have dedicated DDR3 hardware, so the interface is compiled from the fabric. It's probably slow. I doubt that it can do the dynamic fine delay tuning that fast DDR needs.
Reply by Lasse Langwadt Christensen May 19, 20212021-05-19
onsdag den 19. maj 2021 kl. 22.34.02 UTC+2 skrev rjdgro...@gmail.com:
> On Wednesday, May 19, 2021 at 5:56:29 PM UTC+1, lang...@fonz.dk wrote: > > onsdag den 19. maj 2021 kl. 17.46.12 UTC+2 skrev rjdgro...@gmail.com: > > > Hi guys. > > > The last time I put ddr2 on an fpga was with virtex 4 and I was able to terminate ras/cas etc internally. I want to do the same with an artix device and I can't find any documentation except the mig user guide which says that I can't do it. Does anyone have any experience with this, it will be a single ddr so I don't need to "stub series terminate" the signals with external VTT from an SI point of view. > > > > > > Thanks in advance, Rob > > why DDR2 and not DDR3 ? > I really need a few other pins on a 1v8 bank, I have none spare and 400MHz easily gives me the bandwidth I need.
how much bandwidth do you need? I have only used DDR3 on Artix it takes quite a lot of resources
Reply by Dimiter_Popoff May 19, 20212021-05-19
On 5/19/2021 23:44, rj dee wrote:
> >>> >> Thanks, please do ask them. >> I'll have much worse than this DDR3 on this board (64 bit DDR4 via a >> SODIMM connector - I was advised to prefer that to soldering DDR parts >> like I have done before for DDR1). The DDR3 I need just as display >> framebuffer memory, hence the need for speed. I considered using some >> static RAM but the figures come out pretty tragic, the least tragic >> part being the SRAMs will cost well in excess of $100. If I can manage >> to do at least say 64 clock bursts things should be fine I guess. >> I am (still after a very long time) at the headscratching phase, >> hopefully soon I'll manage to get around to doing it. > > I've designed broadcast quality realtime HD mpeg transcoders with DDR3 memories easily keeping up with the bandwidth required. Also used for 4K but each transcoder only doing a quarter of the image. >
Sounds encouraging, thanks. Was it with an Atrix? Did you manage 32 bpp at 60Hz frame rate, 1920x1080 (which is what I am aiming at)? I will need say 1.5 what it takes to do the above, twice would be better - the processor will need time to write to the framebuffer, too (via PCIe). Hopefully I can soon get to doing it, have been wanting to for over a year now.
Reply by rj dee May 19, 20212021-05-19
> > > Thanks, please do ask them. > I'll have much worse than this DDR3 on this board (64 bit DDR4 via a > SODIMM connector - I was advised to prefer that to soldering DDR parts > like I have done before for DDR1). The DDR3 I need just as display > framebuffer memory, hence the need for speed. I considered using some > static RAM but the figures come out pretty tragic, the least tragic > part being the SRAMs will cost well in excess of $100. If I can manage > to do at least say 64 clock bursts things should be fine I guess. > I am (still after a very long time) at the headscratching phase, > hopefully soon I'll manage to get around to doing it.
I've designed broadcast quality realtime HD mpeg transcoders with DDR3 memories easily keeping up with the bandwidth required. Also used for 4K but each transcoder only doing a quarter of the image.
Reply by rj dee May 19, 20212021-05-19
On Wednesday, May 19, 2021 at 5:56:29 PM UTC+1, lang...@fonz.dk wrote:
> onsdag den 19. maj 2021 kl. 17.46.12 UTC+2 skrev rjdgro...@gmail.com: > > Hi guys. > > The last time I put ddr2 on an fpga was with virtex 4 and I was able to terminate ras/cas etc internally. I want to do the same with an artix device and I can't find any documentation except the mig user guide which says that I can't do it. Does anyone have any experience with this, it will be a single ddr so I don't need to "stub series terminate" the signals with external VTT from an SI point of view. > > > > Thanks in advance, Rob > why DDR2 and not DDR3 ?
I really need a few other pins on a 1v8 bank, I have none spare and 400MHz easily gives me the bandwidth I need.
Reply by Dimiter_Popoff May 19, 20212021-05-19
On 5/19/2021 20:41, jlarkin@highlandsniptechnology.com wrote:
> On Wed, 19 May 2021 19:55:24 +0300, Dimiter_Popoff <dp@tgi-sci.com> > wrote: > >> On 5/19/2021 19:12, jlarkin@highlandsniptechnology.com wrote: >>> On Wed, 19 May 2021 08:46:08 -0700 (PDT), rj dee >>> <rjdgroups4567@gmail.com> wrote: >>> >>>> Hi guys. >>>> The last time I put ddr2 on an fpga was with virtex 4 and I was able to terminate ras/cas etc internally. I want to do the same with an artix device and I can't find any documentation except the mig user guide which says that I can't do it. Does anyone have any experience with this, it will be a single ddr so I don't need to "stub series terminate" the signals with external VTT from an SI point of view. >>>> >>>> Thanks in advance, Rob >>> >>> We recently did a DDR3 onto an XC7A15. It just worked. >>> >>> https://www.dropbox.com/sh/9lui60l07xygepn/AABpQ4v54OyVacYh3NnN3-o2a?dl=0 >>> >>> We only terminated the differential clock. >>> >>> Single-chip ddr rams are fairly easy. >>> >>> >>> >>> >> >> What data rate did you manage? I am sort of planning something with >> Artix and ddr3, I wonder how long a burst their DDR controller can do >> (I have had - not one an FPGA - DDR controllers which are pretty limited >> on that, about half the time they spend on preparing the burst). > > I'll ask my FPGA pro; he did the Artix design. > > This is waveform memory for a 400 Hz power source, so we didn't need > supercomputer sorts of speed. > > It's easy to interface one DDR chip. More makes routing and > termination difficult. > > >
Thanks, please do ask them. I'll have much worse than this DDR3 on this board (64 bit DDR4 via a SODIMM connector - I was advised to prefer that to soldering DDR parts like I have done before for DDR1). The DDR3 I need just as display framebuffer memory, hence the need for speed. I considered using some static RAM but the figures come out pretty tragic, the least tragic part being the SRAMs will cost well in excess of $100. If I can manage to do at least say 64 clock bursts things should be fine I guess. I am (still after a very long time) at the headscratching phase, hopefully soon I'll manage to get around to doing it.
Reply by Jim Jackson May 19, 20212021-05-19
On 2021-05-19, Rick C <gnuarm.deletethisbit@gmail.com> wrote:
> On Wednesday, May 19, 2021 at 11:46:12 AM UTC-4, rjdgro...@gmail.com wrote: >> Hi guys. The last time I put ddr2 on an fpga was with virtex 4 and I >> was able to terminate ras/cas etc internally. I want to do the same >> with an artix device and I can't find any documentation except the >> mig user guide which says that I can't do it. Does anyone have any >> experience with this, it will be a single ddr so I don't need to >> "stub series terminate" the signals with external VTT from an SI >> point of view. >> >> Thanks in advance, Rob > > What Larkin said. If you keep your traces short enough you don't need > to worry about transmission line effects. I believe 8 inches (4 cm)
^^^^^^^^^^^^^^^???? 8 in is aprox 20cm or 4cm is aprox 1 9/16th inch
> is about a ns on a circuit board. How fast are the edges? You will > want to terminate the clock line to prevent double clocking and > preserve the waveform shape and timing. Otherwise an optimal layout > can handle the data lines, no? >
Reply by May 19, 20212021-05-19
On Wed, 19 May 2021 19:55:24 +0300, Dimiter_Popoff <dp@tgi-sci.com>
wrote:

>On 5/19/2021 19:12, jlarkin@highlandsniptechnology.com wrote: >> On Wed, 19 May 2021 08:46:08 -0700 (PDT), rj dee >> <rjdgroups4567@gmail.com> wrote: >> >>> Hi guys. >>> The last time I put ddr2 on an fpga was with virtex 4 and I was able to terminate ras/cas etc internally. I want to do the same with an artix device and I can't find any documentation except the mig user guide which says that I can't do it. Does anyone have any experience with this, it will be a single ddr so I don't need to "stub series terminate" the signals with external VTT from an SI point of view. >>> >>> Thanks in advance, Rob >> >> We recently did a DDR3 onto an XC7A15. It just worked. >> >> https://www.dropbox.com/sh/9lui60l07xygepn/AABpQ4v54OyVacYh3NnN3-o2a?dl=0 >> >> We only terminated the differential clock. >> >> Single-chip ddr rams are fairly easy. >> >> >> >> > >What data rate did you manage? I am sort of planning something with >Artix and ddr3, I wonder how long a burst their DDR controller can do >(I have had - not one an FPGA - DDR controllers which are pretty limited >on that, about half the time they spend on preparing the burst).
I'll ask my FPGA pro; he did the Artix design. This is waveform memory for a 400 Hz power source, so we didn't need supercomputer sorts of speed. It's easy to interface one DDR chip. More makes routing and termination difficult. -- John Larkin Highland Technology, Inc The best designs are necessarily accidental.
Reply by Lasse Langwadt Christensen May 19, 20212021-05-19
onsdag den 19. maj 2021 kl. 17.46.12 UTC+2 skrev rjdgro...@gmail.com:
> Hi guys. > The last time I put ddr2 on an fpga was with virtex 4 and I was able to terminate ras/cas etc internally. I want to do the same with an artix device and I can't find any documentation except the mig user guide which says that I can't do it. Does anyone have any experience with this, it will be a single ddr so I don't need to "stub series terminate" the signals with external VTT from an SI point of view. > > Thanks in advance, Rob
why DDR2 and not DDR3 ?