- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This entire question is in the context of an Avalon Streaming Interface where readLatency = 0 and readAllowance = 0.
The AXI4-Stream specification explicitly states that:
- the master/source cannot wait for the slave/sink to assert ready before it (the master/source) asserts valid
- once the master/source asserts valid it must keep it asserted until the slave/sink asserts ready
- the slave/sink is permitted to deassert ready at any time
The Avalon Streaming specification doesn't seem to explicitly define the restrictions or allowances on the valid and ready signals. Are there any?
The two specific cases I am wondering about are:
- Suppose that ready is low, is it okay for the source to assert and deassert valid, even though ready is low the whole time?
- Suppose that valid is low, is it okay for the sink to assert and deassert ready, even though valid is low the whole time?
I realize that the behaviour of valid and ready in these cases is rather strange (as if the source and sink are changing their minds), but I'd like to know if it's allowed in Avalon Streaming. The second case is allowed in AXI4-Stream.
Thanks
- Tags:
- avalon
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
For readLatency = 0 and readAllowance = 0.
ready signal need to be asserted before valid data-transfer, is the only requirement.
- Source can assert valid at any time.
- Sink can deassert ready at any time (after that slave can't capture the data).
- Sink captures the data from source only when ready = 1.
Let me know if this has helped resolve the issue you are facing or if you need any further assistance.
Best Regards,
Anand Raj Shankar
(This message was posted on behalf of Intel Corporation)
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
For readLatency = 0 and readAllowance = 0.
ready signal need to be asserted before valid data-transfer, is the only requirement.
- Source can assert valid at any time.
- Sink can deassert ready at any time (after that slave can't capture the data).
- Sink captures the data from source only when ready = 1.
Let me know if this has helped resolve the issue you are facing or if you need any further assistance.
Best Regards,
Anand Raj Shankar
(This message was posted on behalf of Intel Corporation)
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page