An FPGA-based adaptive forward error correction protocol for cubeSats

Mkhaliphi, Sandile (2017-03)

Thesis (MScEng)--Stellenbosch University, 2017.

Thesis

ENGLISH ABSTRACT: CubeSats have become popular due to their simplified model that reduces development time and costs. The standard, however, suffers from limitations imposed by the small form factor. Research is undertaken at different levels to improve the performance of CubeSats, of which one is on the communication subsystem. The question is how the throughput per satellite-to-ground communication session can be improved using modified error correction methods. Previous work at the ESL proposed a hybrid protocol design of the AX.25 and the FX.25, known as the AFX.25, whose simulation results suggested improved performance over pure protocol implementations. The AX.25 protocol has an error checking functionality but without error correction, so the FX.25 was introduced as a wrapper to the AX.25 to provide for error correction. Inasmuch as the AX.25 is popular among university CubeSat designs, it was necessary that an investigation be done to evaluate if it was the best choice of implementation. The CCSDS Telecommand protocol was chosen for performance evaluation against the AFX.25 due to its functionality which is closer to the FX.25. The evaluation was based on simulation and hardware complexity analysis. SatSim was used as a satellite network simulation environment. The results showed that the AFX.25 is a better choice over the CCSDS TC. The AFX.25 hardware design and implementation was therefore considered on a Field Programmable Gate Array (FPGA). The FPGAs’ parallel processing capability makes them an attractive choice of implementation for error encoding and decoding. The adaptive protocol was designed to switch between no error correction (AX.25) and error correction (FX.25) where the number of correctable errors is 8 using the Reed Solomon code (255, 239). The switching from AX.25 to FX.25 is determined by the packet loss rate while switching from FX.25 to AX.25 is influenced by the packet success rate. The system was implemented on a FusionM1AFS1500 development board interfaced with a half duplex RF board. Tests were carried out successfully on a terrestrial testbench which modelled a typical satellite pass.

AFRIKAANSE OPSOMMING: CubeSats het populêr gewordweens hulle vereenvoudigde model wat beide ontwikkelingskostes en tye verminder. Die CubeSatstandaard het egter beperkings weens die klein formfaktor. Navorsing word op verskeie vlakke uitgevoer om die effektiwiteit van CubeSats te verbeter, met die kommunikasiesubstelsel wat ook aandag geniet. ’n Sleutelvraag is hoe die datadeurset van ’n satelliet tot grondstasie kommunkasie sessies verbeter kan word met spesiale metodes om datafoute te verhoed. Vorige werk by die ESL het ’n hibriedeprotokol ontwerp vir AX.25 en FX.25 voorgestel, bekend as AFX.25 wat se simulasieresultate better gelyk het as die suiwer protokol toepassings. Die AX.25 protokol kan foute optel, maar kan nie hulle regstel nie, dus was FX.25 voorgestel as ’n aanpassing op AX.25 om data ontfouting uit te voer. Alhoewel AX.25 reeds populêr is vir Universiteitstoepassings, is ’n ondersoek ingestel om te bevestig of dit die beste keuse vir implementings is. Die CCSDS protkol is gekies vir hierdie vergelyking teenoor AFX.25 aangesien die protokol se werking soortgelyk aan FX.25 is. Die vergelyking het gebruik gemaak van simulasies en ’n analise van die hardewarekompleksiteit. SatSim was gebruik as die satellietnetwerk simulator. Die resultate het voorgestel dat AFX.25 better resultate lewer as CCSDS TC. Die AFX.25 hardewareontwerp en implementering was dus gedoen vir ’n Field Programmable Gate Array(FPGA). Die vermoë van FPGA’s om parallele verwerking uit te voer maak dit ’n goeie keuse vir fout enkodering en fout dekodering. AFX.25was ontwerpomte skakel dussen ’n protokol sonder data ontfouting (AX.25) en een met data ontfouting (FX.25) waar die hoeveelheid herstelbare foute 8 is deur gebruik temaak van Reed Solomon kode (255, 239). Die oorskakel vanaf AX.25 tot FX.25 word bepaal deur die tempo waarteen pakkies verlore gaan terwyl die oorskakel vanaf FX.25 tot AX.25 word bepaal deur die tempo waarteen pakkies suksesvol gestuur word. Die sisteem was geïmplementeer op ’n Fusion M1AFS1500 ontwikkelingbord wat gewerk hetmet ’n half duplex RF-bord. Toetse is suksesvol uitgevoer op ’n aardstoetsbank wat ’n tipiese satellitekommunkasie sessie gemodelleer het.

Please refer to this item in SUNScholar by using the following persistent URL: http://hdl.handle.net/10019.1/101102
This item appears in the following collections: