Arithmetic (from Shift Registers) Using the Tang Nano 9K FPGA Board
Вставка
- Опубліковано 30 тра 2024
- This video shows an FPGA project (my first) that interacts with a Raspberry Pi. The FPGA implements registers A, B, and C. It supports serial loading of A and B, the math operation C = C + A*B, and serial reading of C. It uses the educational version of the Gowin IDE, and shows how a parallel-in, parallel-out shift register is synthesized.
Chapters
0:00 FPGA resources to be used.
0:35 Project goals and function.
1:05 Design.
2:43 Hardware setup.
2:57 Pin assignments on FPGA and Raspberry Pi.
3:36 Tour of project running.
5:40 Verilog introduction.
6:22 Serial-in, parallel-out shift register.
7:45 Parallel-in, parallel-out shift register.
10:28 What the PIPO synthesizes to.
15:16 Top-level module design.
16:02 Top-level module Verilog.
18:31 FPGA constraints file (assigns pins)
19:03 C program for the Raspberry Pi
21:03 Wrapping up.
See here for project source codes:
github.com/grughuhler/tang_ma...
See here for my getting started video on the Tang Nano 9K:
• Getting started with t... - Наука та технологія
nice timing, just watched the getting started video and a minute later this is here :)
Thank you. Very nice. Simple interface to an FPGA.
I'd be interested in I2C communication between the RPi and the FPGA as it seems a bit more standardized way of data exchange, I can imagine this on the RPi side, but the FPGA remains a mystery for me ATM... thanks for the tutorial BTW it's really nice
Gowin has some i2c soft ip that might simplify the test, but it looks like the slave was written for a different FPGA than the one on the Tang Nano 9K. I plan to look into it. It may take some time. I think I must figure out bidirectional signals in a simpler context first.