Week 10 Universal Serial Bus (USB)

1. Basics

To implement USB at the Verilog level is complicated. The Basys 3 board has a PIC24FJ128 microcontroller that provides USB HID host capability. We will use this option to develop the HDL projects here. Specifically, we will focus on interfacing a keyboard to Basys3 board since the PIC24FJ128 chip available on the board converts the USB input to standard PS/2 signals to communicate with a mouse or keyboard. Here, the Basys3 board will be the receiver. The keyboard will be the transmitter. Therefore, we will focus only on the USB-receiving module next.





The demonstration:



2. Send the Scan Code to a seriial terminal

We can combine the UART tx module here to display the key values on the serial monitor.

Draw the system diagram helps the desgin of the RTL:



Here is the video demonstration.





---------------
Tasks:
1. Repeat the work in Section 1. (10 points)
2. Design the testbench and the scan code to ASCII converter to display key values on the serial monitor. (90 points)




--------------
Reference:
1. Digilent USB and Keyboard