摘要 |
<p>A universal serial bus (USB) device (174) or host (218) provides a universal serial bus (USB) controller (146) with a direct memory access (DMA) mode. In a DMA mode, a universal serial bus (USB) transmit endpoint (212 or 216) may be programmed for a direct memory access (DMA) transmit channel (202 or 206), or a universal serial bus (USB) receive endpoint (210 or 214) may be programmed for a direct memory access (DMA) receive channel (204 or 208). For a USB device (174), a DMA transmit channel (202 or 206) performs data transfer to a universal serial bus (USB) host (218), and a DMA receive channel (204 or 208) handles data transfer from the USB host (218). For a USB host (218), a DMA transmit channel (202 or 206) performs data transfer to the USB device (174), and a DMA receive channel (204 or 208) handles data transfer from the USB device (174). A universal serial bus transmit protocol and a universal serial bus receive protocol for the DMA mode of the USB controller (146) permit a maximum packet size of universal serial bus (USB) data to be programmed to a value greater than the physical size of a USB transmit or receive buffer of a USB transmit or receive endpoint. A USB controller (146) with a DMA mode thus allows for a significant reduction in the buffer size of a USB transmit or receive buffer. A USB device (174) having a controller with a DMA mode handles USB data as fast as the USB host (218) can request USB data.</p> |