Untitled - MRTC
Untitled - MRTC
Untitled - MRTC
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Intern realtidskommunikation i framtida Svenska satelliter sid 39<br />
Martin Normark<br />
att passa EDF-CAN-controldesignen kördes samtliga tester med lyckat resultat. Dessutom skapades<br />
nya tester (test 5.1 och test 6.1) vars syfte var att testa funktionen hos initialvärdet (här kallat ”PRIO”),<br />
räknaren (”counter”) och EDF-ID-biten (här kallat”ID_bit_28”). VHDL-koden för testerna 5.1 och 6.1<br />
finns återgivna i Appendix D.<br />
Test 6.1<br />
Nedan (fig 7.6 och 7.7) visas urklipp ur testet 6.1 där CAN-Shellets beteende vid övergång från<br />
nodens lågprio- till högrio-område testas:<br />
Figur 7.6 Simulering av CAN-Shell<br />
• Vid tiden 59300 ns laddas samtliga ID-, Kontroll- och databitar från CAN-Shellet till CAN-<br />
Kärnan i och med att signalen ”load_shift_reg_int” går hög. Observera att vid detta tillfälle är<br />
EDF-biten (”ID_bit_28”) hög vilket innebär att noden jobbar i sitt lågprio-område. Detta<br />
illustreras även med att ”send_identfiier” har värdet ”1000011…”.<br />
• En klockcykel senare vid tiden 59450 beordras CAN-Kärnan, medelst ”tx_request” =1, att<br />
försöka sända det nyss laddade meddelandet på CAN-bussen.<br />
• Vid tiden 60200 är bussen ledig och CAN-Kärnan går ut och arbitrerar på CAN-bussen. Detta<br />
indikeras med att insignalen ”transmitter” sätts hög av CAN-Kärnan.<br />
• ”transmitter” =1 triggar CAN-Shellet att byta state till ”cur_state” = ”0010” –<br />
”Sending_or_Receiving”. Detta leder till att räknaren, ”counter”, räknas ned ett steg till<br />
”0001100b”. Observera att räknarens värde numera överensstämmer med initialvärdets (”PRIO”)<br />
”01100b”