Multi stream buffer using akgmartin his methodology and base cell library.
The following instructions explain how to obtain the prerequisites for this project.
Download the base
ready-valid cell library from akgmartin here.
The simulation script present in the tools
folder supports both Linux and macOS. For either operating system, you need to install icarus-verilog
(Verilog compiler) and gtkwave
to act as a wave viewer.
Before starting a simulation, the sim.sh
script found in the tools
folder needs to have executable permissions.
chmod+x ./tools/sim.sh
Also make sure that the path to the base library, which was installed earlier, is set correctly in sim.sh
. This is done with the BASE
parameter.
The module to be simulated (usually a testbench) is given as an argument to the sim.sh
script.
To start the simulation, execute the following command from your preferred shell.
cd tools
./sim.sh <MODULE NAME>
The source code is compiled and gtkwave is started with the corresponding wave configuration file.
- Andrew Martin for his amazing design methodology.
If this project has helped you in any way, please consider to cite it.
@mastersthesis{mulder2018feeding,
author = {Mulder, Y.T.B.},
title = {Feeding High-Bandwidth Streaming-Based FPGA Accelerators},
school = {Delft University of Technology},
year = 2018,
address = {Mekelweg 4, 2628 CD Delft, The Netherlands},
month = 1
}
A PDF is available here. A GitHub repository is available here.