Hi! We are BYU Capstone Team 17 (DRGBL)!
We are working on the FPGA High-Bandwidth Memory Interfacing and Monitoring Project!
Our Project Documentation and Background information can be found on our Wiki
We also made a YouTube video detailing our contributions to the LiteX project and our work on High-Bandwidth Memory. You can watch it here: YouTube Link
If you have any questions, please reach out at capstone2022.team17@gmail.com.
The system requirements can be summarized as follows:
- A memory bandwidth generator module that can be applied to each of the 32 available AXI interfaces to the HBM
- Each memory bandwidth generator module has these functionalities
- Continuous reads to HBM of a specified number of bytes a specified number of times.
- Continuous writes to HBM of a specified number of bytes a specified number of times
- A hardware counter records the number of transactions and the number of clock cycles to determine the transaction speed
- A program that communicates with the board over UART to activate the BISTs
As part of this, we have forked 3 different repositories for this project.
- This is where most of the SOC/AXI implementation is located and also where we have implemented new BIOS code.
- This contains all of our project files as a way to put everything together as a seprate module. We ended up giving up on getting that to work becuse it would make it more difficult for the user to use our code.
- This is where most of our code is. Here is the exact file that is being updated for this project. It's called the
xilinx_alveo_u280.py
. We have updated this file to have the cpu dependent on the DRAM and now we have full access to the 32 HBM ports.
We now have working Bandwidth generators and are working on BIOS implementations of their controll. We are also working on data colection and data analysis.
To see a more detailed and individualized tasks check out our project Here.
- rgb_pwm has a basic Migen script that gradually changes the RGB leds to different colors.
- rgb_pwm_withSoC is a basic SoC used to control the rgb leds.