Write the registers and vector length and accumulator value (optional) into the chip's registers using the read and write opcodes, then run the system with the run opcode. The vectors will be multiplied and summed together in two clock cycles and output an 8-bit word.
Input words are 4 bits wide. Write the length of the 4-bit vectors you want to multiply into address 0. The vectors should be in words 1-32. Word 1 will be multiplied by word 17, etc. The result will be accumulated into words 33-34 (8 bits).
You can run the testbench tests in the test dir.
Will be programmed by RP2040. No other external hardware.
# | Input | Output | Bidirectional |
---|---|---|---|
0 | addr[0] | out[0] | data[0] |
1 | addr[1] | out[1] | data[1] |
2 | addr[2] | out[2] | data[2] |
3 | addr[3] | out[3] | data[3] |
4 | addr[4] | out[4] | state[0] |
5 | addr[5] | out[5] | state[1] |
6 | op[0] | out[6] | |
7 | op[1] | out[7] |