How can I compute the delay applied to the Delay block inside the viterbi decoder subsystem in the demo "dvbt_sim.mdl" in Communications Blockset 3.3 (R2006a)?

2 views (last 30 days)
In "dvbt_sim.mdl", there is viterbi decoder subsystem. Inside this subsystem there is a Delay block which is set to "584+69". How is this delay value determined?

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 28 Jun 2010
The total delay being introduced in the Inner Interleaver and the Inner Deinterleaver subsystems due to the Buffer blocks is :-
2176-to-756 = 756 (in single-tasking mode)
756-to-9072 = 9072
9072-to-756 = 0 (as 756*12=9072)
756-to-2176 = 2176
which totals 12004.
We then take mod(12004,2176) where 2176 is the input to the Viterbi Decoder, this gives us 1124. For 4/3 decoding, this is a total delay of 1124*3/4 = 843 samples.
With a traceback depth of 136, the Viterbi decoder also adds a further delay of 136, bringing the total delay to 843+136 = 979.
Now to align the actual codewords before feeding into the Convolutional Deinterleaver we have to add in an extra delay of 1632-979 = 653 samples.
Note that the “584+69” is an artifact of an earlier version of the demo.

More Answers (0)

Products


Release

R2006a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!