IV - Extra » History » Version 12

DUHAUTOIS, Brice, 12/16/2015 03:17 PM

1 3 COLIN, Tony
h1. IV - Extra
2 2 COLIN, Tony
3 7 COLIN, Tony
{{>toc}}
4 7 COLIN, Tony
5 8 COLIN, Tony
h2. 1. CubeSat performances.
6 1 COLIN, Tony
7 5 COLIN, Tony
h3. 1.1 Measurement of encoding/decoding time.
8 5 COLIN, Tony
9 9 COLIN, Tony
h4. 1.1.1 In simulation.
10 9 COLIN, Tony
11 12 DUHAUTOIS, Brice
The following program measures the time taken by the devise 16-bit dsPIC33FJ256GP710 in order to apply the encoding process, the decoding process and the whole encoder/decoder RS process.
12 12 DUHAUTOIS, Brice
13 12 DUHAUTOIS, Brice
The function clock() returns the number of clock ticks elapsed since the program was launched. Thus, the calling of clock just before and after the encoding process or the decoding process reveals the number of clock ticks elapsed during their execution. Thereafter, the value of the variable  CLOCKS_PER_SEC, combined with the results of the precedent functions, gives the time elapsed during the execution of encoding and decoding process.
14 12 DUHAUTOIS, Brice
15 4 COLIN, Tony
POSIX requires that CLOCKS_PER_SEC equals 1000000 independent of the actual resolution.
16 4 COLIN, Tony
17 4 COLIN, Tony
p=. !Clock1.png!
18 4 COLIN, Tony
*1000 ticks per milliseconds*
19 4 COLIN, Tony
20 4 COLIN, Tony
p=. !Clock2.png!
21 4 COLIN, Tony
*Time measurement of data encoding*
22 4 COLIN, Tony
23 4 COLIN, Tony
p=. !Clock3.png!
24 4 COLIN, Tony
*Printing clock data*
25 4 COLIN, Tony
26 4 COLIN, Tony
p=. !Time_RS_resized.PNG!
27 4 COLIN, Tony
*Chart of Reed Solomon time measurement*
28 1 COLIN, Tony
29 9 COLIN, Tony
h4. 1.1.2 With Floating-Point OPeration (FLOP)
30 4 COLIN, Tony
31 4 COLIN, Tony
p=. !FLOPs2.png!
32 4 COLIN, Tony
33 4 COLIN, Tony
34 1 COLIN, Tony
Hence, encoding stands for *O(nbytes x NPAR)* with _nbytes_ is the codeword length, _NPAR_ the number of parity bits.
35 1 COLIN, Tony
Since it is a systematic code _nbytes = information_word_length + NPAR_ encoding stands for *O(information_word_length)* with NPAR constant.
36 9 COLIN, Tony
37 9 COLIN, Tony
Note that a more accurate way would be to consider processor speed and Salvo function OSGetTiks :
38 10 COLIN, Tony
p=. !OSGetTiks.PNG!
39 5 COLIN, Tony
40 5 COLIN, Tony
h3. 1.2 Busy memory on CubeSat.
41 5 COLIN, Tony
42 5 COLIN, Tony
p=. !Memory.png!
43 5 COLIN, Tony
44 5 COLIN, Tony
---
45 1 COLIN, Tony
46 7 COLIN, Tony
h2. 2. Current topics.
47 6 COLIN, Tony
48 6 COLIN, Tony
For the purpose of reliability for Land Mobile Satellite (LMS) channel, a solution is discussed about error correcting code on the Transport layer [1]. Regarding new trends of erasure codes related to satellites [2], an efficient way to perform encoding over LMS channel is to consider _Non-Binary codes_ such as Reed-Solomon code (studied in [[III - Advanced Project]] chapter) or Non-Binary LDPC code (which is highly complex to implement). The Non-Binary characteristic would be to consider a whole packet or a sliced packet as a symbol in order to decrease the error probability of packets. 
49 11 COLIN, Tony
A possible continuity to this project could be to integrate the OpenFEC code available on "OpenFEC - Downloads":http://openfec.org/downloads.html in the CubeSat Kit. This would be easily done by following chapter [[II - Tutorial - Simple project on CubeSat Kit|II - Tutorial]] and [[III - Advanced Project|III - Advanced Project]] that could be a integration pattern for any CubeSat project.
50 6 COLIN, Tony
51 1 COLIN, Tony
Research papers proposed on IEEE Website :
52 6 COLIN, Tony
[1] "Transport layer coding for the land mobile satellite channel":http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=1391458&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D1391458
53 6 COLIN, Tony
[2] "Erasure Codes for Space Communications: Recent Findings and New Challenges":http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=6333092&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D6333092
54 6 COLIN, Tony
55 6 COLIN, Tony
---