Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
17 years ago

local_burstbegin on DDR2 HP

I'm debugging an issue where in simulation, my system can read/write to DDR2 via the DDR2 HP controller, however on a Stratix II GX chip, it cannot (specifically, the pci express dev kit).

Looking at the examples in the user guide, everything appears right. When I read, I get an rdata valid signal assertion, but the read data is "0xFFFFFFFF". Previously, I wrote 0's to the same address. I don't know if the issue is reading, or writing, but there is something wrong.

In the user guide for the IP core, it says that the local_burstbegin signal only needs to be used for local_size >= 2. In my implementation, local_size = 1 always. I'm using the Avalon-MM interface.

In order for the simulation to work, I have to have local_burstbegin asserted whenever I do a read/write. Based on what I read in the user guide, I shouldn't be using local_burstbegin at all.

Does anyone know if local_burstbegin actually needs to be used for local_size = 1? Or, have any suggestions as to what the problem could be? Timing passes (no violations at all). Testbench works fine.

Thanks,

baver

1 Reply

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    local_burstbegin needs to be used no matter what the burst size. Look at the avalon spec :www.altera.com/literature/manual/mnl_avalon_spec.pdf

    If the user guide says it only needs to be used for bl > 2 then it is wrong. burstbegin needs to be asserted for the first clock cycle of the xfer, and only for 1 clock cycle, even if the ready signal goes low at the start of an xfer. You need to make your interface look exactly the same as the spec says for it to work.

    Kevin