WSJT-X/doc/source/app-a-functional-procedures.txt
Joe Taylor d6cf422315 Split the asciidoc source for WSJT-X User's Guide into many
smaller files, by section and sub-section.  

Also extensive editing up through section 7.  Sections 6.2, 8, and
beyond definitely need work.  Other polishing is also desirable, and
maybe also some additions and/or changes.



git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3656 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-01-23 20:12:12 +00:00

40 lines
1.8 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// Status=review
.Algorithms and Source Code
- For those wishing to study the programs algorithms and source code,
perhaps with an eye toward future improvements, the blocks are labeled
here with the names of functional procedures in the code:
.Block Steps
[width="80%",cols="<2,60",options="header",valign="middle"]
|========
|Block/Step|Functional Procedure
|sync9:|Use sync symbols to find candidate JT9 signals in the specified frequency range. +
Then, at the frequency of each plausible candidate
|downsam9:|Mix, filter and down-sample to 16 complex samples/symbol
|peakdt9:|Using sync symbols, time-align to start of JT9 symbol sequence
|afc9:|Measure frequency offset and any possible drift
|twkfreq:|Remove frequency offset and drift
|symspec2:|Compute 8-bin spectra for 69 information-carrying symbols, using the +
time- and frequency-aligned data transform to yield 206 single-bit soft symbols
|interleave9:|Remove single-bit symbol interleaving imposed at the transmitter
|decode9:|Retrieve a 72-bit user message using the sequential ``Fano'' algorithm +
for convolutional codes
|unpackmsg:|Unpack a human-readable message from the 72-bit compressed format
|========
:shannonfano: http://en.wikipedia.org/wiki/Shannon%E2%80%93Fano_coding[ Fano Algorithm]
- With marginal or unrecognizable signals the sequential {shannonfano}
can take exponentially long times to completion.
- If the first step in the above sequence finds many seemingly worthy
candidate signals, and if many of them turn out to be undecodable, the
decoding loop could take a very long time.
- For this reason the decode9 step is programmed to “time out” and
report failure if it takes too long.
- The choice Fast | Normal | Deepest on the Decode menu provides a
three-step control of this timeout limit.