From 9918b9e87d61b1154fa3d2db7bb729dcccedb1a1 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Wed, 27 Jan 2016 01:23:04 +0000 Subject: [PATCH] A few (last-minute?) edits and corrections. git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6444 ab8295b8-cf94-4d9e-aec4-7959e3be5d79 --- lib/ftrsd/ftrsd_paper/ftrsd.lyx | 266 ++++++++++++++++++-------------- 1 file changed, 148 insertions(+), 118 deletions(-) diff --git a/lib/ftrsd/ftrsd_paper/ftrsd.lyx b/lib/ftrsd/ftrsd_paper/ftrsd.lyx index 9a11fb165..d55006e15 100644 --- a/lib/ftrsd/ftrsd_paper/ftrsd.lyx +++ b/lib/ftrsd/ftrsd_paper/ftrsd.lyx @@ -163,8 +163,8 @@ JT65 uses timed transmitting and receiving sequences one minute long. Messages are short and structured so as to streamline minimal exchanges between two amateur operators over potentially difficult radio paths. Most messages contain two callsigns and a grid locator, signal report, - acknowledgment, or sign-off; one of the tokens ``CQ'', ``QRZ'', or ``DE'' - may be substituted for the first callsign. + acknowledgment, or sign-off; one of the tokens CQ, QRZ, or DE may be substitute +d for the first callsign. Alternatively, a message may contain up to 13 Latin characters of arbitrary text. All messages are efficiently compressed into exactly 72 bits of digital @@ -182,7 +182,11 @@ key "jt65_protocol" . For a concise description of the overall process of transmitting and receiving - a JT65 message, see the accompanying sidebar. + a JT65 message, see the accompanying sidebar +\series bold +JT65 Message Processing +\series default +. \end_layout \begin_layout Standard @@ -211,7 +215,8 @@ ly. The JT65 code is properly described as a short block-length, low-rate Reed-Solo mon code based on a 64-symbol \emph on -alphabet +alphabet. + \emph default \begin_inset CommandInset nomenclature @@ -221,7 +226,6 @@ description "A sequence of possible symbol values used for signaling. JT65 uses \end_inset -. Characters in this alphabet are mapped onto 64 different frequencies for transmission. @@ -230,8 +234,8 @@ description "A sequence of possible symbol values used for signaling. JT65 uses \begin_layout Standard Reed Solomon codes are widely used to ensure reliability in data transmission and storage. - In hardware implementations, decoding is generally accomplished with an - algorithm such as the Berlekamp-Massey (BM) algorithm, based on + In hardware implementations, decoding is generally accomplished with a + procedure such as the Berlekamp-Massey (BM) algorithm, based on \emph on hard decisions \emph default @@ -299,7 +303,7 @@ MAP65 WSJT-X \emph default , widely used for amateur weak-signal communication using JT65 and other - specialized digital modes. + specialized digital protocols. These programs are open-source, freely available \begin_inset CommandInset citation LatexCommand cite @@ -313,13 +317,13 @@ key "wsjt" \begin_layout Standard The JT65 protocol specifies transmissions that start one second into a UTC minute and last for 46.8 seconds. - Receiving software therefore has up to several seconds to decode a message - before the start of the next minute, when the operator sends a reply. - With today's personal computers, this relatively long available time encourages - experimentation with decoders of high computational complexity. - As a result, the FT algorithm can extend the decoding threshold on a typical - fading channel by many dB over the hard-decision BM decoder, and by a meaningfu -l amount over the KV decoder. + Receiving software therefore has as much as ten seconds to decode a message + before the start of the next minute, when the operator will send a reply. + With today's personal computers, this relatively long time encourages experimen +tation with decoders of high computational complexity. + With time to spare, the FT algorithm lowers the decoding threshold on a + typical fading channel by many dB over the hard-decision BM decoder, and + by a meaningful amount over the KV decoder. In addition to its excellent performance, the new algorithm has other desirable properties, not least of which is its conceptual simplicity. Decoding performance and computational complexity scale in a convenient @@ -339,13 +343,13 @@ The remainder of this paper is organized as follows. Section 3 provides statistical motivation for the FT algorithm, and Section 4 describes the algorithm in full detail. Material in these two sections is important because it documents our approach - and underlines its fundamental technical contribution. - It is heavier in formal mathematics than common in + and underlines its fundamental technical contributions. + These sections are heavier in formal mathematics than common in \emph on QEX \emph default -; for this reason, some readers may choose to skip or skim sections 3 and - 4 and proceed more quickly to the results. +; for this reason, some readers may choose to skip or skim them and proceed + more quickly to the results. Most readers will benefit by reviewing the original paper on the JT65 protocol \begin_inset CommandInset citation @@ -377,8 +381,11 @@ WSJT-X \emph default . Section 7 summarizes some on-the-air experiences with the new decoder. - You may Refer to the sidebar Glossary for brief definitions of some specialized - terms. + Refer to the sidebar +\series bold +Glossary +\series default + for brief definitions of some specialized terms. \end_layout \begin_layout Section @@ -427,7 +434,7 @@ description "For the JT65 code, a vector of 63 symbol values each in the range 0 \end_inset , the number of message symbols conveyed by the codeword; and the transmission - alphabet or number of possible values for each symbol in the codewords. + alphabet, or number of possible values for each symbol in the codewords. The codeword length and the number of message symbols are specified with the notation \begin_inset Formula $(n,k)$ @@ -474,8 +481,8 @@ description "The Hamming distance between two codewords, or between a received w \end_inset - is used as a measure of the lack of agreement between different codewords, - or between a received word + is used as a measure of disagreement between different codewords, or between + a received word \begin_inset CommandInset nomenclature LatexCommand nomenclature symbol "{\\bf Received word: }" @@ -486,7 +493,7 @@ description "A vector of symbol values, possibly accompanied by soft information and a codeword. Hamming distance is the number of code symbols that differ in two words being compared. - Reed-Solomon codes have minimum Hamming distance + Reed-Solomon codes have guaranteed minimum Hamming distance \begin_inset Formula $d$ \end_inset @@ -513,7 +520,7 @@ With . With 72 information bits in each message, JT65 can transmit any one of -\begin_inset Formula $2^{72}$ +\begin_inset Formula $2^{72}\approx4.7\times10^{21}$ \end_inset possible messages. @@ -522,8 +529,12 @@ With \end_layout \begin_layout Standard -A received word containing some incorrect symbols (errors) can be decoded - into the correct codeword using a deterministic +A received word containing some +\emph on +errors +\emph default + (incorrect symbols) can be decoded into the correct codeword using a determinis +tic, \begin_inset CommandInset nomenclature LatexCommand nomenclature symbol "{\\bf Deterministic algorithm: }" @@ -531,7 +542,7 @@ description "A series of computational steps that for the same input always prod \end_inset -, algebraic algorithm provided that no more than + algebraic algorithm provided that no more than \begin_inset Formula $t$ \end_inset @@ -561,7 +572,7 @@ For the JT65 code \end_inset errors. - In the unlikely event that the location of every error is known and if + In the unlikely event that the location of every error is known, and if no correct symbols are accidentally labeled as errors, the BM algorithm can correct up to \begin_inset Formula $d-1=n-k$ @@ -801,9 +812,9 @@ GNU Octave \emph default as function \family typewriter -hygepdf +hygepdf(x,N,X,s) \family default -(x,N,X,s). +. The cumulative probability that at least \begin_inset Formula $\epsilon$ \end_inset @@ -979,7 +990,7 @@ Examples 1 and 2 show that a random strategy for selecting symbols to erase \begin_inset Formula $N=53$ \end_inset - less reliable symbols. + less reliable ones. If \begin_inset Formula $s=45$ \end_inset @@ -1075,8 +1086,8 @@ Example 3 shows how statistical information about symbol quality should Once erasure probabilities have been assigned to each of the 63 received symbols, the FT algorithm uses a random number generator to decide whether or not to erase each symbol, according to its assigned erasure probability. - The list of erased symbols is then submitted to the BM decoder which either - produces a codeword or fails to decode. + The list of erased symbols is then submitted to the BM decoder, which produces + either a codeword or a flag indicating failure to decode. \end_layout @@ -1091,20 +1102,16 @@ candidate \emph default . Our next task is to find a metric that can reliably select one of many - proffered candidates as the codeword actually transmitted. + proffered candidates as the codeword that was actually transmitted. \end_layout \begin_layout Standard The FT algorithm uses quality indices made available by a noncoherent 64-FSK demodulator (see the sidebar -\begin_inset Quotes eld -\end_inset - -JT65 Information Processing -\begin_inset Quotes erd -\end_inset - +\series bold +JT65 Message Processing +\series default ). The demodulator computes binned power spectra for each signaling interval; the result is a two-dimensional array @@ -1149,7 +1156,7 @@ JT65 Information Processing \begin_inset Formula $p_{1}$ \end_inset --rank, the rank +-rank (the rank \begin_inset Formula $\{1,2,\ldots,63\}$ \end_inset @@ -1161,13 +1168,14 @@ JT65 Information Processing \begin_inset Formula $p_{1}$ \end_inset - values, and the ratio + values) and the ratio \begin_inset Formula $p_{2}/p_{1}$ \end_inset . - Note that high ranking symbols have larger signal-to-noise ratio than those - with lower rank; and when + High ranking symbols have larger signal-to-noise ratio than those with + lower rank. + When \begin_inset Formula $p_{2}/p_{1}$ \end_inset @@ -1176,13 +1184,21 @@ JT65 Information Processing \end_layout \begin_layout Standard -We use 3-bit quantization of these two metrics to index the entries in an - +We use 3-bit quantization of the metrics +\begin_inset Formula $p_{1}$ +\end_inset + +-rank and +\begin_inset Formula $p_{2}/p_{1}$ +\end_inset + +to index the entries in an \begin_inset Formula $8\times8$ \end_inset - table of symbol error probabilities derived empirically from a large data - set of received words that were successfully decoded. + table of symbol error probabilities. + The probabilities were derived empirically from a large data set of received + words that were successfully decoded. The table provides an estimate of the \emph on a priori @@ -1196,7 +1212,7 @@ a priori \end_inset . - This table is a key element of the algorithm, as it will define which symbols + This table is a key element of the algorithm, as it determines which symbols are effectively protected from erasure. The \emph on @@ -1296,8 +1312,8 @@ In practice we find that \begin_inset Formula $u$ \end_inset -, the average signal-plus-noise power in all symbols according to a candidate - codeword's symbol values: +, the average signal-plus-noise power in all received symbols according + to a candidate codeword's symbol values: \end_layout \begin_layout Standard @@ -1345,7 +1361,7 @@ The correct JT65 codeword produces a value for \end_inset for the correct codeword has expectation value (average over many random - realizations) + realizations) given by \end_layout \begin_layout Standard @@ -1422,11 +1438,7 @@ i.e. \end_inset where the subscript -\begin_inset Quotes eld -\end_inset - -i -\begin_inset Quotes erd +\begin_inset Formula $i$ \end_inset is an abbreviation for @@ -1480,7 +1492,7 @@ If \begin_inset Formula $y$ \end_inset - is too small for decoding to be possible, or the correct codeword is never + is too small for decoding to be possible or the correct codeword is never presented as a candidate, the ratio \begin_inset Formula $r=u_{2}/u_{1}$ \end_inset @@ -1547,9 +1559,9 @@ As with all decoding algorithms that generate a list of possible codewords, \begin_inset Formula $r