×

USB port controller with automatic transmit retries and receive acknowledgements

  • US 9,824,045 B2
  • Filed: 04/20/2015
  • Issued: 11/21/2017
  • Est. Priority Date: 10/23/2014
  • Status: Active Grant
First Claim
Patent Images

1. A universal serial bus (USB) controller for interfacing a host processor with a USB port, the USB controller comprising:

  • a USB power connection operable to selectively transfer power between the USB controller and an associated USB compatible device through a USB connector;

    a transceiver operable to selectively transfer data between the USB controller and the via the associated USB compatible device through at least one USB communications line of the USB connector;

    a host communications circuit operable to selectively exchange control and data messages between the USB controller and the host processor; and

    a logic circuit operable to implement a lower protocol layer for interfacing the transceiver with an upper protocol layer of the host processor via the host communications circuit, the logic circuit operable to;

    receive outgoing packet data from the upper protocol layer of the host processor for transmission to the associated USB compatible device;

    transmit an outgoing packet, including the outgoing packet data from the upper protocol layer to the USB communications line of the USB connector via the transceiver; and

    automatically retransmit the outgoing packet at least once independent of the upper protocol layer, if no acknowledgement of receipt of the outgoing packet by the associated USB compatible device is timely received by the transceiver;

    wherein the logic circuit is operable to;

    receive an incoming packet from the associated USB compatible device via the transceiver; and

    automatically send an acknowledgment to the USB communications line indicating receipt of the incoming packet independent of the upper protocol layer, if the incoming packet is valid;

    wherein the logic circuit is operable to send the incoming packet to the upper protocol layer via the host communications circuit after sending the acknowledgment if the incoming packet is valid;

    wherein the logic circuit is operable to;

    receive a transmit control message from the upper protocol layer, the transmit control message specifying a desired outgoing packet type and an integer number K retries for transmitting the outgoing packet data;

    construct and transmit the outgoing packet according to the desired outgoing packet type specified in the transmit control message;

    selectively automatically retransmit the outgoing packet up to K times independent of the upper protocol layer, if no acknowledgment of receipt of the outgoing packet by the associated USB compatible device is timely received by the transceiver; and

    send a transmit failure message to the upper protocol layer if no acknowledgement of receipt of the outgoing packet by the associated USB compatible device is timely received by the transceiver after K retries.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×