Interrupt transfers & Isochronous transfers in USB 2.0 & USB 3.0 Group Members Mehwish Awan Mehwish Kiran
Agenda What is isochronous transfer? Use of isochronous transfer Format of isochronous transactions Comparison of transfer in USB 2.0 & USB 3.0 Summary Data Format Transfer Direction Service Period Bandwidth Allocation Transfer Packet Size Power Management
Agenda What is interrupt transfer? Principal Use Handshake Phase Format of Interrupt Transactions Characteristics of interrupt transfer Comparison of transfer in USB 2.0 & USB 3.0 Data Format Transfer Direction Maximum Latency Bandwidth Allocation Packet Size Transfer Completion
Isochronous Transfers Synchronous connection with other devices Timeliness is more important than accurate delivery of data Occur at fixed intervals Special priority during execution of each frame Guaranteed access to USB bandwidth Guaranteed constant data rate No Handshake Phase No retrying attempts in case of delivery failure
Principal Use Typically contain time sensitive information, such as an audio or video stream e.g. microphone, speaker, CD audio etc.
Format of Isochronous IN & OUT Transaction
Data Format USB imposes no data content structure on communication flows for isochronous pipes Streaming pipe
Transfer Direction Isochronous pipes are unidirectional pipes Endpoint descriptor defines the direction of data flow Two endpoints are required for data transfer in both directions This feature is same for USB 2.0 and USB 3.0
Service Period Isochronous transfers is scheduled to be performed regularly during the service period In USB 2.0, service interval is 1 ms for Full Speed endpoints 125µs for High Speed endpoints Isochronous transfers does not support Low Speed endpoints In USB 3.0, service interval for isochronous transfer is 125 µs
Bandwidth Allocation Isochronous transfers along with interrupt transfers can be allocated up to 80% of total bandwidth on SuperSpeed USB 2.0 requires maximum 90% of total available bandwidth for Full Speed endpoints and maximum 80% of total bandwidth for High Speed endpoints
Packet Size In USB 2.0, maximum data payload is 1023 bytes during each frame for Full Speed endpoints and 1024 bytes for High Speed endpoints Maximum data payload size is 1024 bytes during each frame for SuperSpeed
Power Management USB 2.0 does not support low power USB bus state b/w service intervals for isochronous transfers SuperSpeed allows isochronous devices to autonomously enter low power link states b/w service intervals. It defines a PING & PING_RESPONSE mechanism to activate the low power link
Summary USB 3.0 Protocol preserves key characteristics of USB 2.0 Isochronous Protocol i.e., no Retries, Simple protocol PING mechanism to allow Low Power Link States for isochronous devices Software Backward Compatibility Maximum data transferred in 1 service interval is increased to 48K bytes
Interrupt Transfers Interrupt transfers are small data transfers used to communicate information from the USB device to the client software.
Principal Use HID such as mouse, keyboard, joysticks etc. All data transfer requests are initiated by host instead of interrupt requests from input device Host polls the input device periodically
Handshake Phase ACK (acknowledgment) Sent by the host in IN Transactions and by the device in OUT Transactions on successful reception of data NAK(negative acknowledgment) Sent by the device only when it is busy or has no data to send
Handshake Phase Only device sends the STALL STALL can be due to Unsupported Control Transfer Request Control request Failed Endpoint Failed
Format of an Interrupt IN & OUT transaction
Characteristics of Interrupt Transfers High reliability to communicate is required Guaranteed maximum service interval Guaranteed retry of transfer attempts in next service interval Guaranteed bandwidth in each service interval Host waits for ready notification to service the endpoint Handshake Phase exists
Data Format In both USB 2.0 and USB 3.0, no data content structure is imposed on communication flow for interrupt pipes Streaming pipes
Transfer Direction Interrupt pipes are unidirectional pipes Endpoint descriptor defines the direction of data flow Two endpoints are required for data transfer in both directions This feature is same for USB 2.0 and USB 3.0
Maximum Latency Endpoint descriptor specifies the latency or polling interval. For Low Speed devices, the maximum latency varies from 10 ms to 255 ms For Full Speed interrupt transfers, the maximum latency varies from 1 ms to 255 ms For High Speed devices, the maximum latency varies from 125 µs to 4 sec
Bandwidth Allocation In USB 2.0, interrupt transfers & Isochronous transfers can use up to 90% of the total available bandwidth Isochronous & Interrupt transfers can use up to 80% of the total available bandwidth on SuperSpeed
Packet Size Endpoint specifies the maximum data payload size In USB 2.0, data payload size is 8 bytes or less for Low Speed Devices 64 bytes or less for Full Speed Devices 1024 bytes for High Speed Devices In USB 3.0, maximum data payload size is 1024 bytes No data padding in case of less data
Packet Size (cont d) Host ensures that data payload size of any packet is not greater than endpoint s maximum data packet size!
Transfer Completion Interrupt transfer is completed when ühas transferred the exact amount of data expected ütransfers a packet with a payload less than the maximum packet size üresponds with a STALL handshake
Questions??