Skip to content

Update mvdr_beamforming FPGA design with code to support real IO Pipes#476

Merged
mdbtucker merged 27 commits into
oneapi-src:masterfrom
mdbtucker:mvdr_dev_master
Apr 22, 2021
Merged

Update mvdr_beamforming FPGA design with code to support real IO Pipes#476
mdbtucker merged 27 commits into
oneapi-src:masterfrom
mdbtucker:mvdr_dev_master

Conversation

@mdbtucker
Copy link
Copy Markdown
Contributor

@mdbtucker mdbtucker commented Apr 16, 2021

Description

The mvdr_beamforming design is intended to illustrate how to create a design that uses IO Pipes for streaming. The design has two modes of operation, one which uses 'fake' IO pipes where data is transferred to/from host memory, and one which uses real IO pipes.

Since the BSP with real IO pipes is not available in the dev cloud, the real IO pipes version of the code requires obtaining a suitable board and BSP from Intel PSG CEG. Explanations of all of this are provided in the readme file.

Other changes included in this PR:

  • enabled all warnings during compilation and cleaned up code to eliminate any warnings
  • added an Input Demux which accpets all data from a single source, processes the headers, and then splits the data to two separate pipes, to better model a real world radar system where all data would come in through a single pipe
  • added transpose functionality for the training data in the fpga, rather than doing the transpose in the host, again to better model a real world radar system

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)

How Has This Been Tested?

Tested with PSG HLD team regression test infrastructure against SYCL 2021.2 release code.
Tested emulation and report generation compiles.
Tested fpga generation compiles and tested result in real hardware.

mdbtucker and others added 24 commits April 12, 2021 16:22
…82a62 on gitlab.devtools.intel.com:29418/hld-das/oneapi_streaming.git
…eb872 on gitlab.devtools.intel.com:29418/hld-das/oneapi_streaming.git
…now 480 MHz with a single while(1) loop with II 1. Code still needs some cleanup.
Rewrote transpose kernel to eliminate fmax bottleneck, and ran clang-format on all files.
…t num_matricies <= 0 to mean use the default value (currently 1024). Updated the .vcxproj.user file to use the new command line argument format. Updated the .vcxproj file with the correct list of source files.
…design)

Waiting for respond from Josh about the TODO section.
README updates for real IO pipe version
Signed-off-by: mtucker <mike.d.b.tucker@intel.com>
Increased depth of xrx data pipe to improve throughput
JoeOster
JoeOster previously approved these changes Apr 19, 2021
Copy link
Copy Markdown

@pmpeter1 pmpeter1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall good. Some questions on "k_" prefix variables for consistent naming.

Comment thread DirectProgramming/DPC++FPGA/ReferenceDesigns/mvdr_beamforming/src/Beamformer.hpp Outdated
@mdbtucker mdbtucker requested a review from pmpeter1 April 20, 2021 01:52
Signed-off-by: mtucker <mike.d.b.tucker@intel.com>
Signed-off-by: mtucker <mike.d.b.tucker@intel.com>
@mdbtucker mdbtucker merged commit 01a7076 into oneapi-src:master Apr 22, 2021
@mdbtucker mdbtucker deleted the mvdr_dev_master branch April 22, 2021 00:30
Copy link
Copy Markdown
Contributor

@JoeOster JoeOster left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

approved for ci to run

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants