shaiko
Advanced Member level 5
Hello,
In the following document:
https://www.altera.com/content/dam/...US/pdfs/literature/hb/external-memory/emi.pdf
Page #797 - description of "avl_burstbegin":
The combination of #1 and #2 confuses me.
If we assert "avl_burstbegin" independently of "avl_ready" (1), yet the core samples this signal only when "avl_write_req" is asserted (2) - then there might be a case when the core fails to capture "avl_burstbegin".
This is because Avalon specifications dictate that "avl_write_req" must be low when "avl_ready" is low...
In other words if we assert "avl_burstbegin" (for a single cycle) when "avl_ready" is low, yet we don't assert "avl_write_req".
According to the spec in that case "avl_burstbegin" won't be captured !
Am I wrong?
In the following document:
https://www.altera.com/content/dam/...US/pdfs/literature/hb/external-memory/emi.pdf
Page #797 - description of "avl_burstbegin":
The Avalon burst begin strobe, which indicates the beginning of an
Avalon burst. Unlike all other Avalon-MM signals, the burst begin
signal is not dependant on avl_ready (1).
For write transactions, assert this signal at the beginning of each
burst transfer and keep this signal high for one cycle per burst
transfer, even if the slave deasserts avl_ready. The IP core samples
this signal at the rising edge of phy_clk when avl_write_req is
asserted (2). After the slave deasserts the avl_ready signal, the master
keeps all the write request signals asserted until avl_ready signal
becomes high again.
The combination of #1 and #2 confuses me.
If we assert "avl_burstbegin" independently of "avl_ready" (1), yet the core samples this signal only when "avl_write_req" is asserted (2) - then there might be a case when the core fails to capture "avl_burstbegin".
This is because Avalon specifications dictate that "avl_write_req" must be low when "avl_ready" is low...
In other words if we assert "avl_burstbegin" (for a single cycle) when "avl_ready" is low, yet we don't assert "avl_write_req".
According to the spec in that case "avl_burstbegin" won't be captured !
Am I wrong?