Electrical – USB UART Interface on Silicon/FPGA

fpgauartusb

We are trying to realize a simple processor in silicon by using semiconductor IP cores. And one part is to have a USB port interfaced using UART. I have been looking into some semiconductor IP cores that I can use to interface USB using UART and I've found this project to be useful.

I've studied this project and the codes behind it and understood how UART works. The UART serves just an interface between the processor/FPGA and USB but I was wondering if I plan to interface a USB Flash drive, how would I show that it's working? That the USB UART interface that I borrowed from an IP Core is working and that I can transmit and receive data to the USB Flash drive?

edit: I think my question should be first: What are good examples of things that can be easily interfaced using UART and that can also be easily tested and verified? Also, I should be looking for a controller, I guess.

Best Answer

And one part is to have a USB port interfaced using UART.

This is, frankly, a highly questionable design. USB does not map well onto an asynchronous serial stream, and most UARTs will have difficulty running at a speed suitable for even USB 1.1 (12 Mbit/sec). More importantly, using a UART here does not solve any real design problem; the complexity of a USB controller does not lie in its interface with the host processor.

I have been looking into some semiconductor IP cores that I can use to interface USB using UART and I've found this project to be useful.

That project does not implement any aspect of USB. (The name is incorrect.) It's simply a UART, and not even a particularly good one -- the author's notes indicate that they were unable to get it to work reliably above 115.2 kBaud. It cannot be used to interface with a USB device.

Related Topic