dump
Zilog80 2016-09-23 09:38:10 +02:00
rodzic c0ae41f308
commit 7f4647b674
2 zmienionych plików z 78 dodań i 3 usunięć

Wyświetl plik

@ -93,12 +93,32 @@ Generatorpolynom fuer RS-Code:
X^24 + 0x7A X^23 + 0x76 X^22 + 0xA9 X^21 + 0x46 X^20 + 0xB2 X^19 + 0xED X^18 + 0xD8 X^17 + 0x66 X^16 + 0x73 X^15 + 0x96 X^14 + 0xe5 X^13 + 0x49 X^12
+ 0x82 X^11 + 0x48 X^10 + 0x3D X^9 + 0x2B X^8 + 0xCE X^7 + 0x01 X^6 + 0xED X^5 + 0xF7 X^4 + 0x7F X^3 + 0xD9 X^2 + 0x90 X + 0x75
Decoder:
http://www.ka9q.net/code/fec/
https://en.wikiversity.org/wiki/Reed%E2%80%93Solomon_codes_for_coders
RS92:
RS92
----
HEADER 6
DATA 210
RS-PARITY 24
2a2a2a2a2a10 (header)
6510 (L=2*0x10=32)
e81820204b34393533393334006100083d3d07b342bb3e9809d3bc3f754c963b ebfb
690c (L=2*0x0c=24)
ca2b0fd9670f00670f8c0f11a458111e8810da410d30430d dc84
673d (L=2*0x3d=122)
b01c852167ab07298b3cb05a536e0fffcf4faf7f4f3fff8fcfffffffff7fe5918aef20e8110175879900d0e0e900061f8c048aa393009edea1fe2557dc0019549f04b5160d00ae998b00e12a4200370b8608cacc1900b3e08905bd60040126da9303e1d4b4006d04a00573469700d6a98b00699f120195828f04 6ed7
6805 (L=2*0x05=10)
03030000000000000000 b27d
ff02 (L=2*0x02=4)
02000200
f0be2a40a7cd69b9ed0668ec12182e8560ea6dd0733612a1 (Reed-Solomon parity)
ecc-rs_vaisala.c:
1)
./ecc-rs_vaisala 2a2a2a2a2a106510e81820204b34393533393334006100083d3d07b342bb3e9809d3bc3f754c963bebfb690cca2b0fd9670f00670f8c0f11a458111e8810da410d30430ddc84673db01c852167ab07298b3cb05a536e0fffcf4faf7f4f3fff8fcfffffffff7fe5918aef20e8110175879900d0e0e900061f8c048aa393009edea1fe2557dc0019549f04b5160d00ae998b00e12a4200370b8608cacc1900b3e08905bd60040126da9303e1d4b4006d04a00573469700d6a98b00699f120195828f046ed7680503030000000000000000b27dff0202000200f0be2a40a7cd69b9ed0668ec12182e8560ea6dd0733612a1
RS92
codeword
@ -107,8 +127,18 @@ errors: 0
frame:
2a2a2a2a2a106510e81820204b34393533393334006100083d3d07b342bb3e9809d3bc3f754c963bebfb690cca2b0fd9670f00670f8c0f11a458111e8810da410d30430ddc84673db01c852167ab07298b3cb05a536e0fffcf4faf7f4f3fff8fcfffffffff7fe5918aef20e8110175879900d0e0e900061f8c048aa393009edea1fe2557dc0019549f04b5160d00ae998b00e12a4200370b8608cacc1900b3e08905bd60040126da9303e1d4b4006d04a00573469700d6a98b00699f120195828f046ed7680503030000000000000000b27dff0202000200f0be2a40a7cd69b9ed0668ec12182e8560ea6dd0733612a1
2a)
./rs92gps_rawin -r rs92.wav > rs92raw.txt
cat rs92raw.txt | ./ecc-rs_vaisala > rs92raw_ecc.txt
./rs92gps_rawin --rawin1 -a almanac.txt rs92raw_ecc.txt
2b)
cat rs92raw.txt | ./ecc-rs_vaisala | ./rs92gps_rawin --rawin1 -a almanac.txt
2c)
./rs92gps_rawin -r rs92.wav | ./ecc-rs_vaisala | ./rs92gps_rawin --rawin1 -a almanac.txt
RS41:
RS41
----
HEADER 8
RS-PARITY 48 = 2*24
DATA 264-462 (max 2*231=462)
@ -161,7 +191,8 @@ frame:
8635f44093df1a60421080e56396389c102cf6db9276308a11f9f8792cb620beae0662688bba0eb2c0bdfa3bd10f0368c07ad0ac33c77046f0792888134b343032303234341c00000100000d00007a000732013230323434254e00002c011205b43ca475537a2a95050229fd015be502d931084d2a075b3308ed060228fd015de50200000000000000000000000000000061d67c1e4d07a0ba92170e9003fa01f813b40c921fd811fa0bf504d20af920fa17f765137d59950b3501ffc43086200a1101420000000521008f527605b1b600faa7e10e3b1301acce8e1c78c5ff0de3c41479b6ff48781a09dcfdffa2f1c30d51190150e0e4113d1701e27da60504a4ffdb2511085bd1003f05bd0c8346ffda787b156d2f421735a22f00f88b0b1ea7fe220b23030902112a417ea5d0343030313030303120313036313320202033312e362030363733203033353220303730302031323235312033383030203133343036203535333920313430353820353239332037383030203830323120373334203931392039353533383738203937323839373820343238383338353332362032393032313631203539313039203335303539203637303020333738352034363838203636393920363839392038303030c8e4762e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000bf08
CRC16:
CRC16
-----
./crc_polymod --crc 0000000000000000000000000000000000 ecc7
C7EC
11111111111111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001100011111101100

Wyświetl plik

@ -84,6 +84,46 @@ Bei almanac-Daten 500-1000m Fehler moeglich, rinex-ephemeris deutlich genauer.
8 byte aux-data (z.B. O3)
Error Correction Code
CRC16 / Reed-Solomon
HEADER 6
DATA 210
RS-PARITY 24
2a2a2a2a2a10 (header)
6510 (L=2*0x10=32)
e81820204b34393533393334006100083d3d07b342bb3e9809d3bc3f754c963b ebfb
690c (L=2*0x0c=24)
ca2b0fd9670f00670f8c0f11a458111e8810da410d30430d dc84
673d (L=2*0x3d=122)
b01c852167ab07298b3cb05a536e0fffcf4faf7f4f3fff8fcfffffffff7fe5918aef20e8110175879900d0e0e900061f8c048aa393009edea1fe2557dc0019549f04b5160d00ae998b00e12a4200370b8608cacc1900b3e08905bd60040126da9303e1d4b4006d04a00573469700d6a98b00699f120195828f04 6ed7
6805 (L=2*0x05=10)
03030000000000000000 b27d
ff02 (L=2*0x02=4)
02000200
f0be2a40a7cd69b9ed0668ec12182e8560ea6dd0733612a1 (Reed-Solomon parity)
ecc/ecc-rs_vaisala.c:
1)
./ecc-rs_vaisala 2a2a2a2a2a106510e81820204b34393533393334006100083d3d07b342bb3e9809d3bc3f754c963bebfb690cca2b0fd9670f00670f8c0f11a458111e8810da410d30430ddc84673db01c852167ab07298b3cb05a536e0fffcf4faf7f4f3fff8fcfffffffff7fe5918aef20e8110175879900d0e0e900061f8c048aa393009edea1fe2557dc0019549f04b5160d00ae998b00e12a4200370b8608cacc1900b3e08905bd60040126da9303e1d4b4006d04a00573469700d6a98b00699f120195828f046ed7680503030000000000000000b27dff0202000200f0be2a40a7cd69b9ed0668ec12182e8560ea6dd0733612a1
RS92
codeword
errors: 0
0000000000000000000000000000000000000000000002000202FF7DB2000000000000000003030568D76E048F829501129F69008BA9D60097467305A0046D00B4D4E10393DA26010460BD0589E0B30019CCCA08860B3700422AE1008B99AE000D16B5049F541900DC5725FEA1DE9E0093A38A048C1F0600E9E0D0009987750111E820EF8A91E57FFFFFFFFFCF8FFF3F4F7FAF4FCFFF0F6E535AB03C8B2907AB6721851CB03D6784DC0D43300D41DA10881E1158A4110F8C0F67000F67D90F2BCA0C69FBEB3B964C753FBCD309983EBB42B3073D3D08006100343339333539344B202018E81065A1123673D06DEA60852E1812EC6806EDB969CDA7402ABEF0
frame:
2a2a2a2a2a106510e81820204b34393533393334006100083d3d07b342bb3e9809d3bc3f754c963bebfb690cca2b0fd9670f00670f8c0f11a458111e8810da410d30430ddc84673db01c852167ab07298b3cb05a536e0fffcf4faf7f4f3fff8fcfffffffff7fe5918aef20e8110175879900d0e0e900061f8c048aa393009edea1fe2557dc0019549f04b5160d00ae998b00e12a4200370b8608cacc1900b3e08905bd60040126da9303e1d4b4006d04a00573469700d6a98b00699f120195828f046ed7680503030000000000000000b27dff0202000200f0be2a40a7cd69b9ed0668ec12182e8560ea6dd0733612a1
2a)
./rs92gps_rawin -r rs92.wav > rs92raw.txt
cat rs92raw.txt | ./ecc-rs_vaisala > rs92raw_ecc.txt
./rs92gps_rawin --rawin1 -a almanac.txt rs92raw_ecc.txt
2b)
cat rs92raw.txt | ./ecc-rs_vaisala | ./rs92gps_rawin --rawin1 -a almanac.txt
2c)
./rs92gps_rawin -r rs92.wav | ./ecc-rs_vaisala | ./rs92gps_rawin --rawin1 -a almanac.txt
Bahndaten
@ -107,3 +147,7 @@ http://www.vaisala.com/Vaisala%20Documents/Vaisala%20News%20Articles/VN164/VN164
http://brmlab.cz/project/weathersonde/
http://prohu.altervista.org/convert.pdf (PTU, Haeberli 2001)
Reed-Solomon-Decoder:
http://www.ka9q.net/code/fec/
https://en.wikiversity.org/wiki/Reed%E2%80%93Solomon_codes_for_coders