120 likes | 322 Views
SpaceWire Standard: Low Speed Signalling Rates. Chris McClements, Steve Parkes Space Technology Centre University of Dundee. Agenda. Introduction Context Operation at 2 Mbit/s Results Conclusion Future Work. Introduction. SpaceWire Standard indicates link speed from 2-400 Mbit/s
E N D
SpaceWire Standard: Low Speed Signalling Rates Chris McClements, Steve Parkes Space Technology Centre University of Dundee
Agenda • Introduction • Context • Operation at 2 Mbit/s • Results • Conclusion • Future Work
Introduction • SpaceWire Standard indicates link speed from 2-400 Mbit/s • Start-up Link Speed = 10 Mbit/s • Disconnect period = 850 ns • Bepi-Columbo MMO mission data processor requirements • Low power budget • SpaceWire interfaces operate at 2 MBit/s • Start-up rate of 10Mbit/s is not implemented (non-compliant)
Context (State Machine) • SpaceWire State Machine
Context (Timeouts) • Link initialisation • Both ends exchange NULL characters • Both ends exchange FCT characters • NULL: Started -> Connecting • 12.8 μs timeout • FCT: Connecting -> Run • 12.8 μs timeout • Lower limit for timeout period • 11.64 μs (128 * (10 MHz + 10%)) • Disconnection Period • No transitions on Data/Strobe for 850 ns • 727 ns - 1 us upper limit (9 * (10 MHz + 10%))
Operation at 2Mbit/s • Timeout period at 10 Mbit/s • 1 NULL = 800 ns, 1 FCT = 400 ns • Approximately 14 complete NULL characters can be transmitted in 11.43 μs • Sufficient time to decode NULLs and FCTs and initiate start-up • Timeout period at 2 Mbit/s • 1 NULL = 4 μs, 1 FCT = 2 µs • Approximately 2 complete NULL characters transmitted in 11.43 μs • Time to receive and decode NULLs is greater than 11.43 μs • Link start-up continuously fails
Operation at 2 Mbit/s • Worst case • EndA is Link-Start, EndB is Auto-Start 21 us 19 us
Operation at 2Mbit/s • 850 ns disconnection period • 727 ns lower limit (8 * (10MHz + 10%)) • 1000 ns upper limit (9 * (10MHz - 10%)) • 500 ns (2MHz) clock period cannot meet the specification • Must adjust the disconnection timeout period • For example • 2 * (2MHz + 10%) = 909.09 ns • 3 * (2MHz – 10%) = 1,666 ns • Device still capable of operating at 2 Mbit/s (clock period = 500 ns)
Results • For link initialisation to occur • Both ends exchange NULL characters • Then exchange FCT characters • At 2 Mbit/s it takes longer to encode, send, receive and decode NULLs, FCTs. • Minimum timeout periods become • Started -> Connecting: 21 µs • Connecting -> Run: 19 µs • ErrorReset and ErrorWait do not change • ErrorReset = 6.4 µs, ErrorWait = 12.8 µs
Conclusion • SpaceWire operates from 2-400 Mbit/s with a start-up rate of 10 Mbit/s • SpaceWire link cannot be compliant at speeds less than 10 Mbit/s without a clock to generate the 10Mbit/s start-up rate • Adjusting the state machine Started and Connecting timeout periods ensure link start-up can occur • Error Recovery time does not change
Future Work • Minimum clock speed before: • SpaceWire link fails to start • SpaceWire link cannot meet disconnect timeout • Power saving on SpaceWire link logic at 2Mbit/s • Support for lower bit rates than 2 Mbit/s