Forum Discussion
Altera_Forum
Honored Contributor
12 years agoThe readdatavalid signal is only used when you are doing pipelined reads, i.e. when the maximumPendingReadTransactions parameter on your avalon MM master interface is not 0.
When you aren't doing pipelining read, you should use the waitrequest signal instead. When you start reading, put the read signal to 1 and keep it there. Wait for the waitrequest signal to be 0. When it is 0, put the read signal back to 0 and read the data value. Alternatively you can keep your code and set maximumPendingReadTransactions to 1 instead, I think it should work.