|
| virtual void | set_alpha (const double alpha, const size_t chan)=0 |
| |
| virtual double | get_alpha (const size_t chan) const =0 |
| |
| virtual void | set_beta (const double beta, const size_t chan)=0 |
| |
| virtual double | get_beta (const size_t chan) const =0 |
| |
| virtual void | set_delay (const uint16_t delay, const size_t chan)=0 |
| |
| virtual uint16_t | get_delay (const size_t chan) const =0 |
| |
| virtual uint16_t | get_max_delay (const size_t chan) const =0 |
| |
| | ~noc_block_base () override |
| |
| std::string | get_unique_id () const override |
| | Unique ID for an RFNoC block is its block ID. More...
|
| |
| size_t | get_num_input_ports () const override |
| | Number of input ports. Note: This gets passed into this block from the. More...
|
| |
| size_t | get_num_output_ports () const override |
| | Number of output ports. Note: This gets passed outto this block from the. More...
|
| |
| noc_id_t | get_noc_id () const |
| |
| const block_id_t & | get_block_id () const |
| |
| double | get_tick_rate () const |
| |
| size_t | get_mtu (const res_source_info &edge) |
| |
| size_t | get_chdr_hdr_len (const bool account_for_ts=true) const |
| |
| size_t | get_max_payload_size (const res_source_info &edge, const bool account_for_ts=true) |
| |
| uhd::device_addr_t | get_block_args () const |
| |
| uhd::property_tree::sptr & | get_tree () const |
| | Return a reference to this block's subtree. More...
|
| |
| uhd::property_tree::sptr & | get_tree () |
| | Return a reference to this block's subtree (non-const version) More...
|
| |
| std::shared_ptr< mb_controller > | get_mb_controller () |
| |
| | node_t () |
| |
| virtual | ~node_t () |
| |
| virtual std::string | get_unique_id () const |
| | Return a unique identifier string for this node. In every RFNoC graph,. More...
|
| |
| virtual size_t | get_num_input_ports () const =0 |
| |
| virtual size_t | get_num_output_ports () const =0 |
| |
| std::vector< std::string > | get_property_ids () const |
| |
| template<typename prop_data_t > |
| void | set_property (const std::string &id, const prop_data_t &val, const size_t instance=0) |
| |
| void | set_properties (const uhd::device_addr_t &props, const size_t instance=0) |
| |
| template<typename prop_data_t > |
| const prop_data_t & | get_property (const std::string &id, const size_t instance=0) |
| |
| virtual void | set_command_time (uhd::time_spec_t time, const size_t instance) |
| |
| virtual uhd::time_spec_t | get_command_time (const size_t instance) const |
| |
| virtual void | clear_command_time (const size_t instance) |
| |
| | register_iface_holder (register_iface::sptr reg) |
| |
| virtual | ~register_iface_holder ()=default |
| |
| register_iface & | regs () |
| |
|
| using | sptr = std::shared_ptr< noc_block_base > |
| |
| using | make_args_ptr = std::unique_ptr< make_args_t > |
| | Opaque pointer to the constructor arguments. More...
|
| |
| enum class | forwarding_policy_t {
ONE_TO_ONE
, ONE_TO_FAN
, ONE_TO_ALL_IN
, ONE_TO_ALL_OUT
,
ONE_TO_ALL
, DROP
, USE_MAP
} |
| | Types of property/action forwarding for those not defined by the block itself. More...
|
| |
| using | resolver_fn_t = std::function< void(void)> |
| |
| using | resolve_callback_t = std::function< void(void)> |
| |
| using | action_handler_t = std::function< void(const res_source_info &, action_info::sptr)> |
| |
| using | forwarding_map_t = std::unordered_map< res_source_info, std::vector< res_source_info > > |
| |
| using | prop_ptrs_t = std::unordered_set< property_base_t * > |
| |
| | noc_block_base (make_args_ptr make_args) |
| |
| void | set_num_input_ports (const size_t num_ports) |
| | Update number of input ports. More...
|
| |
| void | set_num_output_ports (const size_t num_ports) |
| | Update number of output ports. More...
|
| |
| void | set_tick_rate (const double tick_rate) |
| |
| void | set_mtu_forwarding_policy (const forwarding_policy_t policy) |
| |
| void | set_mtu (const res_source_info &edge, const size_t new_mtu) |
| |
| property_base_t * | get_mtu_prop_ref (const res_source_info &edge) |
| |
| virtual void | deinit () |
| |
| void | register_property (property_base_t *prop, resolve_callback_t &&clean_callback=nullptr) |
| |
| void | add_property_resolver (prop_ptrs_t &&inputs, prop_ptrs_t &&outputs, resolver_fn_t &&resolver_fn) |
| |
| void | set_prop_forwarding_policy (forwarding_policy_t policy, const std::string &prop_id="") |
| |
| void | set_prop_forwarding_map (const forwarding_map_t &map) |
| |
| template<typename prop_data_t > |
| void | set_property (const std::string &id, const prop_data_t &val, const res_source_info &src_info) |
| |
| template<typename prop_data_t > |
| const prop_data_t & | get_property (const std::string &id, const res_source_info &src_info) |
| |
| void | register_action_handler (const std::string &id, action_handler_t &&handler) |
| |
| void | set_action_forwarding_policy (forwarding_policy_t policy, const std::string &action_key="") |
| |
| void | set_action_forwarding_map (const forwarding_map_t &map) |
| |
| void | post_action (const res_source_info &edge_info, action_info::sptr action) |
| |
| virtual bool | check_topology (const std::vector< size_t > &connected_inputs, const std::vector< size_t > &connected_outputs) |
| |
| virtual void | shutdown () |
| |
| void | update_reg_iface (register_iface::sptr new_iface=nullptr) |
| |
| static dirtifier_t | ALWAYS_DIRTY |
| | A dirtifyer object, useful for properties that always need updating. More...
|
| |
Vector IIR Block Control Class
The Vector IIR Block is an RFNoC block that implements an infinite impulse filter with a variable length delay line. The transfer function is defined as follows:
beta
H(z) = ---------------------— 1 - alpha * z ^ -delay
where
- beta is the feedforward tap
- alpha is the feedback tap
- delay (a.k.a. vector length) is the feedback tap delay