Channel Model 2

Basic channel simulator allowing time-varying frequency and timing inputs. This block implements a basic channel model simulator that can be used to help evaluate, design, and test various signals, waveforms, and algorithms. This model allows the user to set the voltage of an AWGN noise source, an initial timing offset, and a seed to randomize the AWGN noise source. Multipath can be approximated in this model by using a FIR filter representation of a multipath delay profile with the parameter. Unlike Channel Model, this block is designed to enable time-varying frequency and timing offsets.

Since the models for frequency and timing offset may vary and what we are trying to model may be different for different simulations, we provide the time-varying nature as an input function that is user-defined. If only constant frequency and timing offsets are required, it is easier and less expensive to use Channel Model.

Parameters
(R): Run-time adjustable


 * Noise Voltage (R)
 * The AWGN noise level as a voltage (to be calculated externally to meet, say, a desired SNR).


 * Timing Offset (R)
 * Initial condition.


 * Taps (R)
 * Taps of a FIR filter to emulate a multipath delay profile. Default is 1+1j meaning a single tap, and thus no multipath.


 * Seed
 * A random number generator seed for the noise source.


 * Block Tag Propagation
 * If true, tags will not be able to propagate through this block.

Example Flowgraph
Insert description of flowgraph here, then show a screenshot of the flowgraph and the output if there is an interesting GUI. Currently we have no standard method of uploading the actual flowgraph to the wiki or git repo, unfortunately. The plan is to have an example flowgraph showing how the block might be used, for every block, and the flowgraphs will live in the git repo.

Source Files

 * C++ files
 * TODO


 * Header files
 * TODO


 * Public header files
 * TODO


 * Block definition
 * TODO