
This project implements a 2x2 matrix multiplier that communicates via UART. The design receives two 2x2 matrices through UART serial communication, performs matrix multiplication, and transmits the result back via UART.
Matrix Multiplication Process:
Where:
Communication Protocol:
State Machine:
Required Setup:
Testing Procedure:
Connect UART interface:
Send test matrices: Send 8 bytes in sequence representing matrices A and B:
Example: A = [[1,2],[3,4]], B = [[5,6],[7,8]]
Send bytes: 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08
Receive results: The chip will respond with 4 bytes representing the result matrix C:
Expected result: C = [[19,22],[43,50]]
Received bytes: 0x13, 0x16, 0x2B, 0x32
Monitor parallel outputs:
Test Cases:
Required:
Optional:
Connection Setup:
Computer Setup:
UART Settings:
Usage:
Credits
| # | Input | Output | Bidirectional |
|---|---|---|---|
| 0 | UART RX | Matrix Result C00[7:0] | UART TX |
| 1 | Matrix Result C01[7:0] | ||
| 2 | Matrix Result C10[7:0] | ||
| 3 | Matrix Result C11[7:0] | ||
| 4 | |||
| 5 | |||
| 6 | |||
| 7 |