System Details | Pactor Operation | Memory ARQ |
PACTOR (PT), specially designed for operation in noisy and fluctuating channels, is an improved half-duplex synchronous ARQ system combining the reliability of PR with the fixed AMTOR time frame.
Principal design considerations
PACTOR comprises all important AMTOR or PR (2-way) characteristics:
As a novelty in Amateur RTTY, some additional powerful features have been realized:
1. Timing
The basic PT transmission frame is very similar to AMTOR; blocks (packets)
containing data information are acknowledged by short control signals (CS)
sent out by the receiving station.
Shift levels are toggled with every cycle in order to support memory ARQ
(see below). Since the shift polarity is clearly definined at
synchronization time, any conventions concerning 'mark/space' become
obsolete.
Change of transmission speed only alters the internal packet structure; all other timing parameters remain constant.
2. Packets
General packet structure:
/header/..20 (8) data bytes at 200 (100) baud../status/CRC/CRC/
header : This byte enables fast synchronization and delivers auxiliary
information (memory ARQ, listen mode)
data : arbitrary binary information
status : system control byte (2 bit packet number, tx-mode, break-in
request, QRT)
CRC : 16 bit cyclic redundancy check based on CCITT polynomial
X^16+x^12+x^5+1, calculated over the entire packet (except header)
3. Control signals (CS)
Four CS are used. As a compromise between reliability and fast detection, a CS length of 12 bit was chosen.
CS1: 4D5 CS2: AB2 CS3: 34B CS4: D2C (all hex numbers, LSB right)
The mutual Hamming distance is 8 bit, thus minimizing the chance of receiving a false CS. CS1/2 and CS3/4 form symmetrical pairs (bitreverse patterns). CS1..3 have the same function as their AMTOR counterparts; CS4 serves as the speedchange control. In contrast to AMTOR, CS3 is transmitted as head portion of a special changeover packet (see below).
The calling station ('master') sends special synchronization packets: /head (100 bd)/..address (8 bytes, 100 bd)../..address (8bytes, 100 bd) Normally, the receiver only uses the 100-baud-section to achieve a fast synchronization. The 200-baud-section supplies additional information about the channel quality: if it is received correctly, the first CS will be CS4, otherwise CS1 is sent. After in turn having synchronized a CS4 or CS1, the master will continue with sending normal data packets at 200 or 100 baud, respectively. The first transmitted characters contain the 'system level number' (PACTOR software-version), followed by the master address (callsign).
5. Changing the transmission direction
Similar to AMTOR, the receiving station (RX) can change the transmission direction whenever it has received a valid packet. For this purpose a special changeover-packet is transmitted, starting at the CS time frame. The transmitting station (TX) will switch to RX mode immediately after it has received the CS3 which forms the first section of the changeover- packet. It then reads in the rest of that packet and transmits a CS (CS1 and CS3 = acknowledge, CS2 = reject) timed at the last three bytes of the former packet frame.To force a break in, the TX sets the BK-status-bit (this corresponds to AMTOR '+ ?').
6. Speedchange
Speeddown only being useful in poor conditions or at low data input rates (e. g. manual typing), both directions are treated unsymmetrically.
i) Speeddown
The RX may request speeddown after any incorrectly received packet by sending CS4, which immediately forces the TX to build up 100-baud-packets (any unconfirmed 200 baud information is repeated at low speed).
ii) Speedup
Any valid packet may be confirmed with CS4, forcing a TX speedup. In case the following high-speed-packet is not acknowledged after a number of tries, the TX will automatically perform a speeddown. (For more details, refer to 'PT-Handbook' by WAA Research Group).
7. Termination of a PACTOR contact
Cutting an ARQ link inevitably leads to the problem that information has to be transmitted without final acknowledgement (Second WAA theorem). PT applies special QRT packets, providing an expensive but rather effective solution. These packets contain an active QRT status bit and he RX address in byte-reverse order (low speed pattern). If this address is found during the standby synchronization procedure, the RX responds with a single transmission of the final CS (The timing relations before stby are stored). This method will always guarantee a well-defined QRT.
8. Data Compression
Character frequency analysis of typical english or german texts shows that the average amount of information per character does not exceed 4 bits. For that reason, ASCII text transmissions often carry a redundancy of 50%, which could be avoided by using a vriable length code matched to the character distribution.The most popular example of such a code is the Morse code; PACTOR data compression mode applies Huffman coding with nearly optimum efficiency, yielding up to 100% speed gain. Every packet contains a compressed data string; character code lengths vary from 2 to 15 bits.
9. Memory ARQ
In conventional ARQ systems the TX has to repeat a packet until it has been received completely error-free. It is evident that the probability of receiving a complete packet dramatically decreases with lower S/N ratio. The only way to maintain the contact in that case is to shorten packet length and/or to apply error correcting codes which in turn will greatly reduce maximum traffic speed when conditions are good. The method chosen by WAA Research Group is to sum up corresponding bit samples of subsequent packets and to test if the mean value (reduced to a 0/1-decision) passes the CRC. To keep quantizing errors small, the samples are taken from the FSK-demodulator low-pass-filter output by means of an 8-bit AD-converter. Assuming white Gaussian noise, this accumulation method - also known as 'memory ARQ' - will obviously converge even at a WA4EGT, QRA WA2MFY/SYS1: low S/N ratio. Furthermore, since shift levels are toggled with every transmission, constant interfering signals within the receiver passband will not affect the resulting mean value. To prevent accumulation of old request packets, the header is inverted with every new information packet, thus serving as a RQ indicator (similarity test).
10. Listen Mode (Monitor)
This mode resembles Packet Radio monitoring: the receiver scans for valid packets which are detected by CRC match. This 'brute force' method was chosen in order to ensue maximum flexibility, although it consumes a considerable amount of the available CPU capacity.
11. FEC Transmissions
CQ and bulletin transmissions are supported by means of a special non- protocol mode. Packets are transmitted with one or more repetitions; the CS receive gap is omitted. Since the listen mode does not require synchronization, the transmitting station possesses great freedom of selecting packet repetition rateand speed.
12. Practical Aspects
The first PACTOR programs were running on 'breadboarded' Z80 singleboard- computers. These early experiments led to the development of a stand-alone 'PACTOR- Controller' with built-in modem and tuning-display.The conven- tional operating modes BAUDOT and AMTOR were added in order to maintain compatibility and - what might be more interesting - to allow easy comparisons. Assuming typical conditions, PACTOR traffic can be expected to run 4 times faster than over a AMTOR link.