You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
676 B
25 lines
676 B
4 months ago
|
/* This function wraps around the fixed 8-bit encoder, performing the
|
||
|
* basis transformations necessary to meet the CCSDS standard
|
||
|
*
|
||
|
* Copyright 2002, Phil Karn, KA9Q
|
||
|
* fixed bug Aug 2007
|
||
|
* May be used under the terms of the GNU Lesser General Public License (LGPL)
|
||
|
*/
|
||
|
#include "ccsds.h"
|
||
|
#include "fec.h"
|
||
|
|
||
|
void encode_rs_ccsds(data_t *data,data_t *parity,int pad){
|
||
|
int i;
|
||
|
data_t cdata[NN-NROOTS];
|
||
|
|
||
|
/* Convert data from dual basis to conventional */
|
||
|
for(i=0;i<NN-NROOTS-pad;i++)
|
||
|
cdata[i] = Tal1tab[data[i]];
|
||
|
|
||
|
encode_rs_8(cdata,parity,pad);
|
||
|
|
||
|
/* Convert parity from conventional to dual basis */
|
||
|
for(i=0;i<NROOTS;i++)
|
||
|
parity[i] = Taltab[parity[i]];
|
||
|
}
|