Go Back

Source code


Name: spacewire_light
Created: Jun 6, 2010
Updated: Nov 1, 2013
SVN Updated: May 4, 2013

Other project properties

Category: Communication controller
Language: VHDL
Development status: Beta
Additional info: Design done
WishBone Compliant: No
License: GPL


SpaceWire Light is a SpaceWire encoder-decoder with FIFO interface.
It is synthesizable for FPGA targets (up to 200 Mbit on Spartan-3).
An optional AMBA bus interface can be used to implement the core in
LEON3-based designs.


The goal is to provide a complete, reliable, fast implementation of a SpaceWire encoder-decoder according to ECSS-E-50-12C. The core is "light" in the sense that it does not provide additional features such as RMAP, routing etc.

SpaceWire Light supports two application interfaces. One interface provides FIFO-style access to RX/TX buffers in the core (spwstream). This interface can be easily integrated into most digital designs.

Alternatively, an AMBA bus interface (spwamba) may be used to integrate SpaceWire Light into a LEON3 embedded system. This interface supports DMA-based data transfers. The code for the AMBA interface depends on GRLIB, a VHDL library from Aeroflex Gaisler. The source of GRLIB must be downloaded separately from http://www.gaisler.com/ .

See the manual for detailed information: Manual.pdf .


This core is complete and fully functional. It has been tested on Xilinx Spartan-3 and Virtex-5 FPGA boards, with a SpaceWire link connected to a commercial SpaceWire product.


SpaceWire Light is used for VIBANASS, an image-based navigation sensor system developed by Kayser-Threde, co-funded by the German Aerospace Center.