mirror of https://github.com/drowe67/codec2.git
adjusted clipper in C & octave, regerenerated curves
parent
23a7d60bf8
commit
7f6188ccce
|
@ -146,7 +146,7 @@ These modes use an OFDM modem with powerful LDPC codes and are designed for send
|
|||
| DATAC3 | 500 | 321 | 126 | (2048,1024) | 3.19 | 74/100 at 0dB | Forward link data (low SNR) |
|
||||
| DATAC4 | 250 | 87 | 56 | (1472,448) | 5.17 | 90/100 at -4dB | Forward link data (low SNR) |
|
||||
| DATAC13 | 200 | 64 | 14 | (384,128) | 2.0 | 90/100 at -4dB | Reverse link ACK packets (low SNR) |
|
||||
| DATAC14 | 250 | 58 | 3 | (112,56) | 0.69 | 90/100 at -4dB | Reverse link ACK packets (low SNR) |
|
||||
| DATAC14 | 250 | 58 | 3 | (112,56) | 0.69 | 90/100 at -2dB | Reverse link ACK packets (low SNR) |
|
||||
|
||||
Notes:
|
||||
1. 16 bits (2 bytes) per frame are reserved for a 16 bit CRC, e.g. for `datac3` we have 128 byte frames, and 128-2=126 bytes/frame of payload data.
|
||||
|
@ -246,7 +246,7 @@ This command line demonstrates the effect:
|
|||
```
|
||||
Try adjusting `--clip` and `No` argument of `ch` (noise level) for different modes. Note the SNR estimates returned from `freedv_data_raw_rx` compared to the SNR from the channel simulator `ch`. You will notice clipping also increases the RMS power and reduces the PER for a given channel noise power. CPAPR will also reduce with clipping enabled.
|
||||
|
||||
The following plots illustrate the SNR estimates versus actual channel SNR with and without compression (clipping). Not that even with the uncompressed waveform there is a small offset of around 1dB, possibly due to modem implementation loss or noise in the frequency, phase, or timing estimators.
|
||||
The following plots illustrate the SNR estimates versus actual channel SNR with and without compression (clipping). Note that even with the uncompressed waveform there is a small offset of around 1dB, possibly due to modem implementation loss or noise in the frequency, phase, or timing estimators.
|
||||
|
||||

|
||||

|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 39 KiB |
Binary file not shown.
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 34 KiB |
|
@ -144,7 +144,7 @@ function config = ofdm_init_mode(mode="700D")
|
|||
config.tx_uw(end-24+1:end) = [1 1 0 0 1 0 1 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0];
|
||||
config.amp_est_mode = 1; config.EsNodB = 3;
|
||||
config.state_machine = "data";
|
||||
config.amp_scale = 2.5*300E3; config.clip_gain1 = 1.2; config.clip_gain2 = 1.0;
|
||||
config.amp_scale = 2*300E3; config.clip_gain1 = 2; config.clip_gain2 = 1;
|
||||
config.txbpf_width_Hz = 400;
|
||||
elseif strcmp(mode,"1")
|
||||
Ns=5; config.Np=10; Tcp=0; Tframe = 0.1; Ts = Tframe/Ns; Nc = 1;
|
||||
|
|
|
@ -247,8 +247,8 @@ void ofdm_init_mode(char mode[], struct OFDM_CONFIG *config) {
|
|||
memcpy(config->tx_uw, uw, sizeof(uw));
|
||||
memcpy(&config->tx_uw[config->nuwbits - sizeof(uw)], uw, sizeof(uw));
|
||||
config->data_mode = "streaming";
|
||||
config->amp_scale = 2.5 * 300E3;
|
||||
config->clip_gain1 = 1.2;
|
||||
config->amp_scale = 2.0 * 300E3;
|
||||
config->clip_gain1 = 2.0;
|
||||
config->clip_gain2 = 1.0;
|
||||
config->rx_bpf_en = true;
|
||||
} else {
|
||||
|
|
Loading…
Reference in New Issue