Actions
RefactoringPage » History » Revision 4
« Previous |
Revision 4/5
(diff)
| Next »
Anonymous, 04/22/2017 04:04 PM
Minor change to clarify intent.
= Refactoring OP25 =
The top-level tasks here are to:- Split the classes for a block into an impl/interface and use the new namespace rules.
This is pretty straightforward and documented [[http://gnuradio.org/redmine/projects/gnuradio/wiki/BlocksCodingGuide here]]. - Implement the common P25 functionality within the OP25 library.
This covers bit interleaving/de-interleaving, forward error-correction and insertion/extraction of audio and other message payload. - Expose more of our components at a lower level because we can use GNURadio to schedule execution across multiple threads/CPUs.
We already have some of the C4FM demod/mod, DQPSK demod/mod, vocoder and so on but we need to expose the bit correlator, framer, forward error correction, vocoder and so on. - Ensure that all blocks have unit tests, are properly documented and can be used in GRC.
- Modulator/demodulator blocks for C4Fm and pi/4 DQPSK (we already have most of this).
- A P25 correlator to detect training sequences (requiring a signal from the framer to reset to the scannning state).
- A P25 framer to construct packets from the bit stream (and signal the correlator).
- Blocks to compute and apply forward error correction.
- A block to do the p25cai encapsulation.
- A vocoder block modeled on those in the GNURadio core.
Updated by about 7 years ago · 4 revisions