IV - Extra » History » Version 12

« Previous - Version 12/15 (diff) - Next » - Current version
DUHAUTOIS, Brice, 12/16/2015 03:17 PM


IV - Extra

1. CubeSat performances.

1.1 Measurement of encoding/decoding time.

1.1.1 In simulation.

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.

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.

POSIX requires that CLOCKS_PER_SEC equals 1000000 independent of the actual resolution.


1000 ticks per milliseconds


Time measurement of data encoding


Printing clock data


Chart of Reed Solomon time measurement

1.1.2 With Floating-Point OPeration (FLOP)

Hence, encoding stands for O(nbytes x NPAR) with nbytes is the codeword length, NPAR the number of parity bits.
Since it is a systematic code nbytes = information_word_length + NPAR encoding stands for O(information_word_length) with NPAR constant.

Note that a more accurate way would be to consider processor speed and Salvo function OSGetTiks :
p=.

1.2 Busy memory on CubeSat.


2. Current topics.

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.
A possible continuity to this project could be to integrate the OpenFEC code available on OpenFEC - Downloads in the CubeSat Kit. This would be easily done by following chapter II - Tutorial and III - Advanced Project that could be a integration pattern for any CubeSat project.

Research papers proposed on IEEE Website :
[1] Transport layer coding for the land mobile satellite channel
[2] Erasure Codes for Space Communications: Recent Findings and New Challenges