Merge branch 'upstream' into dfsg-orig
[debian/gnuradio] / gr-atsc / README.signal_flow
diff --git a/gr-atsc/README.signal_flow b/gr-atsc/README.signal_flow
new file mode 100644 (file)
index 0000000..879cb2c
--- /dev/null
@@ -0,0 +1,41 @@
+This describes the signal flow through the gnuradio-0.9 ATSC Transmitter
+and Receiver programs.
+
+ATSC Transmitter
+================
+
+module                  input                         output                       notes
+--------------------    ----------------              -------------------          --------
+VrFileSource            "MPEG transport stream"       atsc_mpeg_packet
+GrAtscRandomizer        atsc_mpeg_packet              atsc_mpeg_packet_no_sync     whiten data with LFSR
+GrAtscRSEncoder         atsc_mpeg_packet_no_sync      atsc_mpeg_packet_rs_encoded  Reed-Soloman encoder
+GrAtscInterleaver       atsc_mpeg_packet_rs_encoded   atsc_mpeg_packet_rs_encoded  convolutional interleaver
+GrAtscTrellisEncoder    atsc_mpeg_packet_rs_encoded   atsc_data_segment            trellis encoder
+GrAtscFieldSyncMux      atsc_data_segment             atsc_data_segment            add in field syncs
+GrAtscSymbolMapper      atsc_data_segment             float                        map [0,7] to +/- {1,3,5,7} and add pilot    
+GrWeaverModHead         float                         float,float                  front half of Weaver VSB modulator
+GrFIRfilterFFF (2x)     float                         float                        low pass root raised cosine (matched filter)
+GrWeaverModTail         float,float                   short                        back half of Weaver VSB modulator
+VrFileSink              short                         "16-bit passband data"
+
+
+ATSC Receiver
+=============
+
+module                    input                        output                       notes         
+--------------------      ----------------             -------------------          -------
+VrFileSource              "16-bit passband data"       short
+GrConvertSF               short                        float                        convert short to float
+GrFIRfilterFFF            float                        float                        band pass root raised cosine centered at IF freq (matched filter)
+GrAtscFPLL                float                        float                        carrier tracking freq and phase lock loop with down converting mixer
+GrFIRfilterFFF            float                        float                        low pass to kill unwanted mixer image
+GrRemoveDcFFF             float                        float                        remove DC offset prior to symbol timing module
+GrAtscBitTimingLoop3      float                        float,syminfo                track symbol & segment timing and do fractional interpolation
+GrAtscFieldSyncChecker    float,syminfo                float,syminfo                look for field sync patterns
+GrAtscEqualizer           float,syminfo                float,syminfo                LMS equalizer
+GrAtscFieldSyncDemux      float,syminfo                atsc_soft_data_segment       remove field syncs and pack into data segments
+GrAtscViterbiDecoder      atsc_soft_data_segment       atsc_mpeg_packet_rs_encoded  Viterbi decoder (12 seg delay)
+GrAtscDeinterleaver       atsc_mpeg_packet_rs_encoded  atsc_mpeg_packet_rs_encoded  convolutional de-interleaver (52 seg delay)
+GrAtscRSDecoder           atsc_mpeg_packet_rs_encoded  atsc_mpeg_packet_no_sync     Reed-Solomon decoder
+GrAtscDerandomizer        atsc_mpeg_packet_no_sync     atsc_mpeg_packet             de-whiten with LFSR
+VrFileSink                atsc_mpeg_packet             "MPEG transport stream"