Kommersielle, «new space» romfartsprosjekter fremtvinger en standardisering av kommunikasjonsprotokoller.

Samarbeid innen «New Space»

Standardisering av kommunikasjonsprotokoller: Norske selskap utvikler teknologisystemer for fremtidens rom- og forsvarskommunikasjon.

Publisert Sist oppdatert

Denne artikkelen er 2 år eller eldre

Romsektoren har vært i sterk vekst siste årene, og hundrevis av småsatellitter blir årlig plassert i lavbane for å levere nye tjenester. Samarbeid på tvers av institusjoner og land har vært helt avgjørende for gjennomføringen av mange av prosjektene, noe som vil fortsette å øke med fremveksten av kommersiell romfartsindustri, også kjent som New Space.

Mangel på standarder

Moderniserer radiosystem

I tillegg til CCSDS USLP-prosjektet, støtter Emlogic med FPGA programmeringen i moderniseringen av EIDEL RCS (Radio Control System). Dette er et radiofjernstyringssystem som er en sentral del av SISAM (SIkkert SAMband) og som har vært benyttet av Luftforsvaret siden sent 1980-tallet. Sammen med radarer og linksystemer er SISAM et av de viktigste verktøyene Norge har når det gjelder militær overvåking av norsk luftrom.

Historisk har romteknologi blitt utviklet av myndigheter og vitenskapelige miljøer gjennom forskning i ikke-kommersielle prosjekter. Her har standardisering ofte ikke har vært en prioritet, som igjen fører til unødvendig kompleksitet når nye og ulike miljøer jobber sammen på nye prosjekter. Ett av områdene som det nå jobbes med å forenkle, er kommunikasjon mellom rom- og bakkesystemer og ulike romsystemer.

Forenkling av kommunikasjon

Til nå har aktører under hver sine nasjonale og regionale romfartsorganisasjoner benyttet egne kommunikasjonsprotokoller for dataoverføring mellom sine respektive bakkestasjoner, romfartøy og satellitter. Man har derfor sett behovet for konsolidering og standardisering av disse.

For å dra en parallell til mer jordnære forhold var standardiseringen av nettverksteknologi, topologier og protokoller som ble utviklet for mer enn 30 år siden helt avgjørende for utviklingen og utbredelsen av internett slik vi kjenner det i dag.

Internasjonalt samarbeid

CCSDS (Consultative Committee for Space Data Systems), et multinasjonalt forum for utvikling av standarder for rom-myndigheter, har ledet utviklingen og standardisering av nye kommunikasjonsprotokoller for fremtidens romoppdrag. Både for bruk av satellitter i bane rundt jorda, men også for kommunikasjonssystemer for romfartøy på oppdrag lenger ut i solsystemet.

Figur 1. USLP og sammenhengen med OSI-modellen.

Romprotokoll

CCSDS USLP (Unified Space Link Protocol) blir utviklet for å være fremtidens kommunikasjonsprotokoll for romfart, og vil konsolidere protokollene tidligere benyttet av NASA, ESA og JAXA, slik at fremtidens romfartøy og bakkestasjoner enklere kan snakke sammen. CCSDS USLP vil i tillegg støtte høyere dataoverføringskapasitet enn de som benyttes i dag og ha utvidede adressefelt for å støtte flere romsystemer og undersystemer med unike identifikasjonsnummer.

Norske aktører

Det norske selskapet Eidsvoll Electronics AS (EIDEL) har på oppdrag fra den europeiske romfartsorganisasjonen ESA, startet utviklingen av en USLP-enkoder og -dekoder IP prototype. EmLogic AS er underleverandør til EIDEL og leverer støtte i forbindelse med FPGA-utvikling.

Figur 2. Oversikt over noen av tjenestene som er nevnt i artikkelen.

FPGA-basert

Prototypen som utvikles består av to deler; Et utviklingskort med en SoC FPGA (EUP) og en bærbar datamaskin som har programvare for å kunne verifisere at IP-ene oppfører seg i henhold til spesifikasjonen (DVTE). EUP og DVTE er koplet sammen via JTAG (over USB) og Ethernet. DVTE programmerer EUP med JTAG og kan deretter skrive til kontrollregistre og lese fra statusregistre i FPGAen over Ethernet, og sende og motta data for alle de forskjellige tjenestene i USLP. FPGAen har en hard prosessorkjerne som oversetter data som går mellom IP-ene og DVTE slik at USLP-rammer og konfigurasjon/status kan sendes som nyttelast i IPv4-pakker mellom EUP og DVTE.

USLP

Figur 3. Oversikt over USLP Encoder/Decoderen VHDL IPenes plassering i USLP valideringssystemet, der DVTE er Design Validation and Test Environment.

USLP hører til i datalink-laget i OSI-modellen. En USLP-ramme kalles for en USLP Transfer Frame, og hver Transfer Frame kan være bærer av en eller flere nyttelaster fra nettverkslaget. Nyttelastene fra nettverkslaget kan eksempelvis være Space Packets, Encapsulation Packets, byte-streams eller egendefinerte pakker.En Transfer Frame kan enten være av typen fast lengde eller variabel lengde og sammensetningen til de forskjellige nyttelastene vil variere avhengi av disse. For variabel lengde er det kun én pakke per Transfer Frame, men for fast lengde kan det være enten én- eller flere pakker, og pakker kan bli delt opp over flere Transfer Frames. Dette er en utfordring både mtp. å konstruere på sendesiden og dele opp på mottakersiden.

Minnebruk

En stor utfordring er den store maksstørrelsen på en USLP-ramme, 64 kB. Dette medfører høyt minneforbruk dersom man må lagre rammer. Lagring av rammer foregår blant annet i forbindelse med støtte for CCSDS COP-1. COP-1 er en protokoll for å kunne garantere leveranse av USLP-rammer i riktig rekkefølge, uten å miste eller duplisere rammer. For å oppnå dette må man lagre hver USLP-ramme i en buffer inntil mottaker har kvittert ut rammen. Hvor stort bufferen må være avhenger av dataraten og tiden det tar før det blir meldt fra at noe har gått galt. I prototypen blir en ekstern DDR3 RAM brukt som buffer.

Dynamiske tjenesteparametere

Utvikler koder/dekoder for den nye «rom-protokollen» USLP: Robin Bjørkli (t.h.) fra Eidel og Daniel Blomkvist fra EmLogic.

USLP består av flere forskjellige tjenester. Hver av tjenestene skal transporteres i USLP Transfer Frames og skal kunne konfigureres. Noen av tjenestene støtter et generisk antall aksesspunkter, det vil si at brukeren av IP-ene konfigurerer opp hvor mange aksesspunkter det skal være for tjenestene. Det er altså veldig mange måter å konfigurere opp IP-ene på, både når de blir satt inn i et design, men også dynamisk når de kjører. Hver tjeneste har et stort sett med parametere («Managed Parameters») som skal kunne settes dynamisk. Disse parameterne skal kunne settes unikt for hvert aksesspunkt. For å oppnå dette må måtte det designes en registerbank med variabelt antall registre avhengig av hvor mange aksesspunkter det skal være i et enkelt tilfelle.

Verifikasjon med UVVM

For å verifisere disse IP-ene brukes VHDL-biblioteket UVVM. UVVM er et verifikasjonsbibliotek med åpen kildekode. I dette prosjektet brukes UVVM for å lage et VHDL testmiljø med et generisk antall verifikasjonskomponenter, for å lage testcaser med logging og alarmer, og for å kunne bekrefte at alle kravene i kravspesifikasjonen har blitt testet. Ved å bruke verifikasjonskomponenter fra UVVM er det mye enklere å verifisere at kombinasjoner av antall aksesspunkter for USLP-tjenester fungerer slik det skal.

Verifikasjonskomponenter

Det blir generert opp én verifikasjonskomponent per aksesspunkt og deretter kommandere verifikasjonskomponentene til å sende data eller forvente data. Hvilke data som skulle sendes og forventes ble definert av flere lag med testprosedyrer. Trafikkdata inn og ut gikk over Avalon Stream (Avalon-ST), så da stod det Bitvis Avalon-ST verifikasjonskomponenter på inngangene og utgangene.

Dynamiske køer

Det neste laget var prosedyrer for å generere USLP Transfer Frames, med parametere for alle feltene i en Transfer Frame, deriblant flere forskjellige USLP-tjenester. Laget over der igjen var for eksempel Space Packets, hvor det ble brukt dynamiske køer i VHDL for å holde styr på hvor mange Space Packets som var blitt sendt og hvor mange som gjensto. Dynamiske køer hjalp med å holde styr på Space Packets relatert til Transfer Frames ettersom en Space Packet kunne være mye lengre enn en Transfer Frame og dermed måtte deles opp, eller at det kunne være flere Space Packets per Transfer Frame. I nyere tid har UVVM fått støtte for hierarkiske verifikasjonskomponenter, noe som ville ha vært nyttig dette prosjektet med tanke på sending av USLP Transfer Frames over Avalon-ST.

Utfordringer

Oppsummert har de største utfordringene vært å inkludere funksjonalitet fra flere eksisterende CCSDS-protokoller, lage forbedringer til de eksisterende protokollene, designe funksjonalitet for COP-1 i begge retninger (f.eks både til og fra et romsystem), statisk eller dynamisk konfigurering av antall aksesspunkter samt alle konfigurasjonsparametre, og den store maksimale rammestørrelsen på 64 kB. I tillegg kan det nevnes at USLP-standarden ikke er ferdig utarbeidet, noe som fører til endringer underveis i prosjektet.

Prototypene som EIDEL utvikler med støtte fra EmLogic er planlagt ferdigstilt i løpet av 2022.

Artikkelen er basert på en tekst utarbeidet av Alexander Høiberget og Robin Bjørkli, EIDEL AS, og Daniel Blomkvist, EmLogic AS.

Powered by Labrador CMS