Skip to content

Some common RADAR signal and data processing algorithms Implementation in Vivado HLS with detailed explanation and math modelling (Python)

License

Notifications You must be signed in to change notification settings

sumitdarak/radar-hls-python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

High-Level Synthesis implementation of Radar SIgnal and Data Processing Algorithms

Some common Radar Signal and Data Processing Algorithms Implementation in Vivado HLS with detailed explanation and math modelling (Python). The lessons show how to do for some basic algorithms:

  • mathematical modelling in Python for verification of simulation output and hardware design consideration
  • Vivado High-Level Synthesis simulation, implementation and hardware design optimization

The lessons are very useful for understanding Radar Signal and Data processing fundamentals, FPGA hardware design and implementation by using advantage of high-level synthesis.

  1. Ordered-Statistic CFAR (Sorting Algorithm)
  2. FFT decimation-in-time (Linear Algorithm)

Structure of the repository

Folders and files of the repository

+-- doc\   
|   |
|   +-- fft-hls-python.md   -- main documentation 
|   +-- cfar-hls-python.md  -- main documentation
|	+-- images\
|
+-- py_scripts\   
|   |
|   +-- fft_generator.py 	-- complex data generator for RTL simulation and fft_model.py
|   +-- fft_model.py        -- math model of FFT DIT algorithm for int16
|   +-- cfar_generator.py 	-- data generator for RTL simulation and cfar_model.py
|   +-- cfar_model.py       -- math model of OS-CFAR algorithm
|
+-- hls_src\                -- Vivado HLS sources
|   |
|	+-- fft\                
|   |	|
|   |	+-- fft_hls.cpp
|   |	+-- fft_hls.h
|   |	+-- fft_hls_tb.cpp
|   |	+-- fft_hls_tb.h
|	|
|	+-- cfar\
|   |   |
|   |	+-- cfar_hls.cpp
|   |	+-- cfar_hls.h
|   |	+-- cfar_hls_tb.cpp
|   |	+-- cfar_hls_tb.h
|
+-- tcl\              		-- tcl script for compiling Vivado HLS
|   |
|   +-- run_cfar_hls.tcl
|   +-- run_fft_hls.tcl
|
+-- Makefile                -- Makefile for building Vivado HLS project
|
+-- README.md
|
+-- LICENSE

How to work with the repository

  1. Create synthetic signal with the fft_generator.py script
python3 py_scripts/fft_generator.py 1024 3 40
  1. In the repository root directory run make command for building and launching Vivado HLS project
make fft_accel
  1. Run fft_model.py script for cheking Vivado HLS simulation result
python3 py_scripts/fft_model.py

About

Some common RADAR signal and data processing algorithms Implementation in Vivado HLS with detailed explanation and math modelling (Python)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published