What happens to the Avalon MM transaction initiated by master when slave asserts its waitrequest signal high forever. Will transaction be timed out or any other phenomena will take place?
(Host = master, agent = slave here)
If the agent is using the waitrequest signal, meaning you can have variable latency controlled by the agent, and that signal is held "forever", then the host must acknowledge that and continue issuing the address and read/write enable (and writedata if its a write) "forever." There is no provision in the spec for a timeout, though there's no reason why if you're designing a host component that you include a timeout in its design (i.e. counter that counts cycles of waitrequest and releases control signals after a set number of cycles).
Hi Nagaraju,
If the waitrequest signal is high(asserted) forever, there will be NO transaction occur. The cycle becomes a wait-state. address, read, write, and byteenable remain constant. The transfers ONLY complete on the rising edge of the first clk after the slave interface (low) deasserts waitrequest signal.
Thanks,
Regards
Hi Nagaraju,
Any other concern regarding the issue?
For more complete information about compiler optimizations, see our Optimization Notice.