diff options
author | Aaron Rossetto <aaron.rossetto@ni.com> | 2020-05-27 14:56:23 -0500 |
---|---|---|
committer | Aaron Rossetto <aaron.rossetto@ni.com> | 2020-05-28 15:04:05 -0500 |
commit | eba658881bf552b70f960fb894a1e29fa50b7c92 (patch) | |
tree | d309075fdfe4610aae7a3fcc07acc24c0fffa31b /host/include | |
parent | 5134b6caea58da825c4da1888a4d26888acc126a (diff) | |
download | uhd-eba658881bf552b70f960fb894a1e29fa50b7c92.tar.gz uhd-eba658881bf552b70f960fb894a1e29fa50b7c92.tar.bz2 uhd-eba658881bf552b70f960fb894a1e29fa50b7c92.zip |
rfnoc: Add Add/Sub RFNoC block support
Diffstat (limited to 'host/include')
-rw-r--r-- | host/include/uhd/rfnoc/CMakeLists.txt | 1 | ||||
-rw-r--r-- | host/include/uhd/rfnoc/addsub_block_control.hpp | 29 | ||||
-rw-r--r-- | host/include/uhd/rfnoc/defaults.hpp | 3 |
3 files changed, 32 insertions, 1 deletions
diff --git a/host/include/uhd/rfnoc/CMakeLists.txt b/host/include/uhd/rfnoc/CMakeLists.txt index f86c04850..9c389af03 100644 --- a/host/include/uhd/rfnoc/CMakeLists.txt +++ b/host/include/uhd/rfnoc/CMakeLists.txt @@ -30,6 +30,7 @@ UHD_INSTALL(FILES res_source_info.hpp traffic_counter.hpp # Block controllers + addsub_block_control.hpp block_control.hpp ddc_block_control.hpp duc_block_control.hpp diff --git a/host/include/uhd/rfnoc/addsub_block_control.hpp b/host/include/uhd/rfnoc/addsub_block_control.hpp new file mode 100644 index 000000000..7f73610af --- /dev/null +++ b/host/include/uhd/rfnoc/addsub_block_control.hpp @@ -0,0 +1,29 @@ +// +// Copyright 2020 Ettus Research, a National Instruments Brand +// +// SPDX-License-Identifier: GPL-3.0-or-later +// + +#pragma once + +#include <uhd/config.hpp> +#include <uhd/rfnoc/noc_block_base.hpp> + +namespace uhd { namespace rfnoc { + +/*! Add/Sub Block Control Class + * + * The Add/Sub RFNoC block takes in two streams of sc16-formatted data and + * performs addition and subtraction on the data in the stream, creating two + * output streams consisting of the sum and difference of the input streams. + * The block assumes that the input and output packets are all of the same + * length. + * + */ +class UHD_API addsub_block_control : public noc_block_base +{ +public: + RFNOC_DECLARE_BLOCK(addsub_block_control) +}; + +}} // namespace uhd::rfnoc diff --git a/host/include/uhd/rfnoc/defaults.hpp b/host/include/uhd/rfnoc/defaults.hpp index ba9907a11..e44e3fa49 100644 --- a/host/include/uhd/rfnoc/defaults.hpp +++ b/host/include/uhd/rfnoc/defaults.hpp @@ -72,12 +72,13 @@ static const device_type_t N320 = 0x1320; static const device_type_t X300 = 0xA300; // block identifiers -static const noc_id_t RADIO_BLOCK = 0x12AD1000; +static const noc_id_t ADDSUB_BLOCK = 0xADD00000; static const noc_id_t DUC_BLOCK = 0xD0C00000; static const noc_id_t DDC_BLOCK = 0xDDC00000; static const noc_id_t FIR_FILTER_BLOCK = 0xf1120000; static const noc_id_t FOSPHOR_BLOCK = 0x666F0000; static const noc_id_t SPLIT_STREAM_BLOCK = 0x57570000; +static const noc_id_t RADIO_BLOCK = 0x12AD1000; static const noc_id_t VECTOR_IIR_BLOCK = 0x11120000; }} // namespace uhd::rfnoc |