Digital modulation and demodulation blocks incur delays between their inputs and outputs that
result in an offset in the arrival time of the received data. Data that enters a modulation or
demodulation block at time *T* appears in the output at time
*T*+delay. Take system delays into account when comparing transmitted data
with received data, such as in overlaid plots or when computing error statistics. As shown here,
the OQPSK modulation-demodulation delay varies depending on the pulse shaping filter,
input/output data setting, and simulation configuration.

Pulse Shape | **Rate Options** | Treat Each Discrete Rate as a Separate Task? | Input/Output Data (*) | End-to-End Delay Incurred by an OQPSK Modulator-Demodulator Block Pair
(in samples) |
---|

`Half sine` or
`Custom` | ```
Enforce single-rate
operation
``` | N/A | `Integer` | 1 |

`Bit` | 2 |

```
Allow multirate
processing
``` | `false` (single tasking) | `Integer` | length(data) + 1 + 1 |

`Bit` | length(data) + 2 + 2 |

`true` (multitasking) | `Integer` | length(data) + 1 + 2 |

`Bit` | length(data) + 2 + 4 |

`Normal raised cosine` or
`Root raised cosine` | ```
Enforce single-rate
operation
``` | N/A | `Integer` |
**Filter span (in symbols)** |

`Bit` | 2***Filter span (in symbols)** |

```
Allow multirate
processing
``` | `false` (single tasking) | `Integer` | length(data) + **Filter span (in symbols)** +
1 |

`Bit` | length(data) + 2***Filter span (in symbols)** +
2 |

`true` (multitasking) | `Integer` | 2*length(data) + **Filter span (in symbols)** +
2 |

`Bit` | 2*length(data) + 2***Filter span (in symbols)** +
4 |

(*) The data type parameter is
**Input type** for modulation and **Output
type** for demodulation. |