Introduction to PSK31
So
what is PSK31 all about? This page is not intended as a complete tutorial
covering all facets of PSK. It’s an overview of PSK, enough for you to
understand the terminology and concepts, and give you a head start towards further
research.
What
is PSK?
PSK
stands for Phase Shift Keying. In the context of amateur radio, it describes a
family of operating modes (each of which has a slight variation in the
signaling parameters) that are used for keyboard-to-keyboard contacts.
Where
did PSK31 come from?
Phase
Shift Keying has been around as a digital modulation in the commercial and
military world for many decades. Hams (notably SP9VRC) realized in the late
1990s that computer technology, including the ubiquitous sound card, had
progressed to the point where simple software could be used to modulate a PSK
signal at an audio IF, which could then be upconverted
to RF and transmitted using a conventional SSB transmitter. (The receive
process is the reverse—the SSB receiver downconverts
the incoming PSK signal to the audio IF, and the computer/soundcard demodulate
it.) Peter Martinez (G3PLX) established the signaling parameters (bit rates,
coding schemes, etc) and called his product PSK31. This included two variants:
BPSK31 and QPSK31. Binary PSK transmits one bit at a time, using one of two
possible phase states. Quaternary (or Quadrature) PSK
sends two bits at a time, using one of four possible phase states. Both send
the same number of phase transitions per second, so QPSK can send twice as many
bits as BPSK.
Others
have developed extensions of the PSK31 concept to enhance its capability for
specific applications. For example, if you want higher text speeds, you could
try PSK63 and PSK125. For operation at lower SNRs,
there is PSK10. All of these, and even the original QPSK31 variant, are much
less common on the air than BPSK31.
How
does PSK work?
The
generation of a PSK31 signal can best be described in the following sequence of
four steps. Actual implementations may not follow precisely this sequence, but
the result is the same.
1.
Each
individual keyboard character is encoded into a string of bits. This is done
using a lookup table that implements what Peter Martinez called a Varicode, which is a variable-length encoding scheme.
2.
PSK31
is defined to operate at 31 baud, which corresponds to 31 bps for BPSK. If the
operator is not typing fast enough to create a string of characters that generates
bits at this rate, “fill bits” are inserted.
3.
The
31 bps stream is then used to PSK-modulate an audio “carrier.” (Technically,
PSK31 uses Differential PSK, where the “difference” between successive bits
defines the transmitted phase. [For logic levels, if the two bits are the same,
the difference is zero. If the two bits are different, the difference is one.]
This allows for a simpler receiver, as it need not establish a phase reference
other than the immediately previous bit.) The signal generated is then a
carrier whose phase “shifts” 180° when the next bit is the same as the previous
bit, and doesn’t shift at all when the next bit is different from the previous
bit. (This may seem backwards compared to the definition, but it forces phase
transitions even when the bit sequence is continuous “fill” bits, allowing the
receiver to stay in sync.)
4.
The
final step is an amplitude modulation that reduces the amplitude to zero at the
phase transitions. (The amplitude is not reduced if the phase is not shifted.)
This has two benefits. First is that this serves as a timing reference for the
receiver, providing an easy way to determine when the transmitted signal is
“shifting.” Second is that instantaneous phase shifts produce many harmonics;
reducing the amplitude to zero at precisely that instant suppresses these
sidebands.
Reception
of the PSK31 waveform follows these steps in reverse.
1.
The
amplitude modulation is recovered to determine the timing reference.
2.
The
phase of the signal is sampled based on this reference, and the phase shift
sequence is recovered.
3.
The
fill bits are removed.
4.
The
remaining bits are translated into text using the Varicode
lookup table.
How
is PSK31 generated (by an amateur station)?
The
classic PSK hardware configuration is a computer with sound card, an SSB
transceiver, and an interface between the two (for audio signals and sometimes
PTT). The computer generates the PSK signal as an audio signal—effectively the
audio serves as the first IF of the transmitter chain. The output from the
computer sound card then feeds an SSB transmitter which is used only as an upconverter—the audio signal is simply translated to the RF
spectrum. The translated frequency is equal to the sum of the transmitter
frequency plus the “audio IF” for USB, and the transmitter frequency minus the
“audio IF” for LSB.
PTT
can be enabled in multiple ways, depending on how your interface is configured.
Some radios can use their internal VOX functions, especially when using the MIC
input. (This is often not available with DATA inputs.) Some interfaces received
“trigger” signals via a conventional serial port, or a USB port, and perform
the level conversion necessary to “close” a PTT switch, either in the MIC jack
or on a DATA jack. Some interfaces have internal VOX-type circuits, so the
software doesn’t have to do anything special, but the interface closes the PTT
switch itself. And some software/interface combinations use CAT commands, the
same type of signals used for computer control of the radio. Examples of these
can be found on the PSK
Hardware/Software page.
What
is the Audio Offset?
“Audio
Offset” is another term for the audio frequency at which the PSK signal is
generated. It’s called this because it’s the “offset” between your transmitter
dial frequency and the actual frequency at which your PSK signal appears in the
RF spectrum. Additional information on this can be found on the PSK Frequencies
page.
So
what’s different about QPSK31?
The
QPSK31 format transmits two bits per phase state, and transmits one of four
phase states each time. (If you think about it, there are four possible
combinations of two bits, and each of these combinations is assigned a unique
phase.) This allows twice as many bits to be sent in the same period of time
(and bandwidth) as with BPSK.
This
adds a step in the transmission process—generation of the
coded bitstream—after the insertion of fill
bits. It also adds a corresponding step in the receive process. After the bits
are recovered from the phase transition, a Viterbi**
decoder removes the redundancy inserted by the code, corrects bit errors (up to
a point), and recovers the original bit stream for translation of the Varicode.
One
interesting note is that while the BPSK31 signal is phase-symmetric, QPSK31 is
not. This means that if you are using BPSK, it doesn’t matter if you are USB or
LSB—the signal is the same. If you are using QPSK, both stations must be using
the same sideband, or one must use the “invert” function in their software.
*
“rate-1/2, constraint length 5 convolutional code” –
This is a particular form of a forward-error-correcting (FEC) code. Rate-1/2
means that the actual information that can be transmitted is one-half the
channel rate. (In other words, the code doubles the length of any message sent
by sending a pair of bits for every input bit.) A convolutional
code means that bits are “spread out”—each bit in the input message affects
multiple bit pairs transmitted, and each transmitted bit depends on multiple
input bits. Constraint length 5 means that the “spread” in the encoding is five
bits long—each transmitted bit pair depends on the five previous input bits.
**
"Viterbi decoder" - Named for Andrew J. Viterbi, who postulated the algorithm that now bears his
name in his seminal article "Error
bounds for convolutional codes and an asymptotically
optimum decoding algorithm," published in IEEE Transactions on
Information Theory in April 1967.
What
is the emission
designator for PSK?
This
is actually a topic that is somewhat controversial. The bandwidth (the first
four characters, 60H0) is not in question, but the last three characters are.
Some folks (including the ARRL)
believe that it should be based on SSB modulation and define the first
character as J. This ignores the fact that all RTTY signals (which are
fundamentally frequency-shift keying) are classified as F (frequency-shift)
even when created as audio FSK. Others only look at the name (“phase shift”)
and define it as a G, ignoring the amplitude modulation (which does depend on
the data, as only phase transitions create the amplitude reduction). Some
(especially those looking at it as SSB) view the audio signal as a subcarrier,
and use a 2 as the second character. Some view the bit stream as data, and put
a D in the third place.
My
opinion is that the emission designator should be defined by the signal itself,
not the hardware implementation that creates it. Therefore, I come up with D1B.
-
D means that both amplitude and angle (phase) modulation are used. This is
obvious from the definition above.
-
1 means a single channel with digital data and no subcarrier.
-
B means telegraphy (i.e., text) for automated reception, which is correct since
the PSK software translates the signal directly to text.
Videos
Randy
K7AGE has produced numerous ham radio videos for YouTube. Four of
these are an Introduction to PSK31:
Return
to 070 Club FAQ Page
Return
to 070 Club Home Page
Page
author: W3HF
Page
last updated 28 February 2008