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.

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)

1. Digilent USB and Keyboard