FFT Shift (fft_shift_f)
Shift the output fft array center frequency to the middle of the array. Component primarily used to center FFT array but could be used for any input array. Array size determined by inout message size.
Function
The first half and seond half of the array are swapped.
The mathematical representation of the component function is given in (8).
In (8):
\(x[n]\) is the input values.
\(y[n]\) is the output values.
Skeleton, etc.,
A block diagram representation of the component function is given in Figure 223:.
Figure 223: Caption text.
Interface
<?xml version="1.0"?>
<componentspec>
<port name="input" producer="false" protocol="float_timed_sample-prot"/>
<port name="output" producer="true" protocol="float_timed_sample-prot"/>
</componentspec>
Opcode Handling
All opcodes, other than samples, received are passed to output unmodified.
Properties
None.
Ports
Inputs:
input: Primary input samples port.Protocol:
float_timed_sample-protOptional:
False
Outputs:
output: Primary output samples port.Protocol:
float_timed_sample-protOptional:
False
Implementations
fft_shift_f(RCC)Skeleton outline: Optional summary of the implementation of this worker. Anything before the next heading will be included as worker summary on component documentation page.
Example Application
<?xml version="1.0"?>
<application done="file_write">
<instance component="ocpi.core.file_read" connect="fft_shift_f">
<property name="filename" value="input.bin"/>
</instance>
<instance component="ocpi.examples.components.fft_shift_f" connect="file_write">
</instance>
<instance component="ocpi.core.file_write">
<property name="filename" value="output.bin"/>
</instance>
</application>
Dependencies
The dependencies to other elements in OpenCPI are:
None
Limitations
Limitations of fft_shift_f are:
None
Testing
Tested platforms: None