Вы находитесь на странице: 1из 8

Dual Core System on a Chip Design to Support Inter-Satellite Communications

DUAL CORE SYSTEM ON A CHIP DESIGN TO


SUPPORT INTER-SATELLITE
COMMUNICATIONS
Amit Kumar Banarasi
Student, B.Tech. 4th year,
Department of Electronics & Communication Engineering,
SRMCEM, Lucknow-227105
(U.P. Technical University, Lucknow)
banarasi.amit@gmail.com

Abstract

The next generation of satellites for distributed satellite missions will exploit the
latest computing and wireless technologies for intersatellite connectivity. These
missions enable opportunities in multiple-point sensing, greater communications
capabilities and spacecraft redundancy. Requirements for processing and network
capabilities have risen dramatically to meet strict needs of the end user and overcome
various space disturbances and perturbations once in orbit. One such problem lies
with a ‘cluster’ of satellites that have been deployed from the same launcher where they
will be close together so ad-hoc technologies allow satellite communication. This
paper addresses the hardware and software requirements for distributedcomputing
opportunities using intersatellite connectivity. A system-on-a-chip design is proposed;
including a general purpose processor core and a dedicated Java processing core
to adapt and reconfigure the topology using real-time software Agent applications.
This will make the network resilient to various space perturbations and ensure mission
longevity. Integration of these two non-heterogeneous cores in a picosatellite
technology demonstrator testbed and network topology reconfigurability procedures
are also outlined.

1. Introduction perform a mission;


•Virtual Satellite Missions (also called
Distributed satellite systems (DSS) aim fractionated missions) where a satellite has
at offering a number of unique mission its subsystems divided onto multiple craft
advantages including redundancy, lower to perform a mission. E.g. one craft for
cost, flexibility, multi-point sensing and computing, one craft for imaging, etc.
greater communication capabilities. There
are many types of DSS including: But these advanced missions have some
• Formation Flying where a very strict very challenging functional requirements
formation is required to perform a mission, including attitude and orbit control,
such as that found in synthetic aperture radar intersatellite links and flexible on-board
(SAR); computing.
• Clustering Missions where satellites A distributed satellite mission in low
are loosely coupled around each other to Earth orbit (LEO) is considered where

Deptt. of Electronics & Communication Engg., SRMCEM. 1


Dual Core System on a Chip Design to Support Inter-Satellite Communications

multiple very small satellites are deployed poor and intermittent with large periods
at the same time in multiple planes and in a ‘disconnected’ environment. If the
orbits to form a cluster of satellites. server satellite is no longer the optimal
These satellites can then form an ad-hoc central satellite or if the server satellite
network for multiple-point sensing ofEarth’s is damaged/ cannot perform its role, a new
atmosphere; analogous to a ‘wireless satellite or configuration is needed. To solve
sensornetwork’ (WSN) . Like a WSN, this problem, a dual-core processor with
there is typically one communications link network reconfigurability functionality is
or ‘sink’ to an end user, in this case, a proposed for distributed computing
groundstation. The need for a cluster of operations[2].
satellites here is to ensure data an be
recorded from multiple payloads at a The network and distributed computing data
specific time at various non-specific local requirements for the chosen cluster
locations. An example scenario is found in scenario can be summarized as follows:
Fig. 1 and can be expanded to include tens
or even hundreds of satellites, as Node Level Functionality Requirements
envisioned by NASA’s ANTs Mission[1]. (individual satellite level):

•Distributed computing platform


•Storing and forwarding of data using
distributed computing paradigms; including:
o‘High Data’ or ‘High Priority’
Applications using a Client/ Server
paradigm – Payload data through the
network such as imaging data, larger
science payloads & data aggregation.
o‘Low Data’ Applications using a Peer-
to-Peer (P2P) paradigm Telemetry,
location and velocity changes such as
telemetry, “byte” size payload data (GPS,
science payload measurements) & network
Figure 1. An example Cluster Scenario management data.

Satellite drift along with other Network Level Functionality


perturbations such as Earth’s geophysical Requirement(multiple satellite level):
forces,variations in Earth’s atmosphere and
solar radiation pressure greatly affect the •Ad-hoc intersatellite networking
relative distances between the satellites capabilities for initial formation
and thus the network’s connectivity and •Adaptable and redundant ground-link
topology over time. When initially communication schemes, i.e. main ‘sink’ to
deployed from the launcher the satellite ground.
network will be close together with good •Proactive and reactive topology schemes to
connectivity. A ‘server’ satellite is mobility.
typically predefined and other ‘client’
satellites can connect to it. But over many The development of an effective space
orbits, perturbations will affect the satellite network will also require other
network’s connectivity by their relative characteristics from mobile ad-hoc
distances and the network topology so networks (MANETs) including network
that the server satellite may not be the mobility and scalability.The latest
most central to the network. At this terrestrial distributed and networked
point, connectivity to ground can be

Deptt. of Electronics & Communication Engg., SRMCEM. 2


Dual Core System on a Chip Design to Support Inter-Satellite Communications

systems are now using Agent systems to time mission-critical embedded systems
cope with large scale remotely located due to problems with large standard
services and systems. Relevant Agents libraries, a slow and undeterminable
systems are included in groundstations to execution model, and dynamic class
aid in image signal processing and on- loading execution times; to name a few
board satellites for in- situ autonomous reasons[3]. However, in recent years,
behaviours . Agents are a higher improvements in library size and memory
abstraction of programming to deal with technologies have enabled Java on
complex computing problems. By mobile phones and PDAs (without
executing behaviorally and assigning an floating point support and other Java
agent a ‘role’, communication interactions functionalities). But these tools are still
and autonomous actions become easier to not real-time or time predictable. To
realize. This allows them to work counter this problem, a deterministic Java
‘proactively’ and ‘reactively’ to their processor is targeted to run Agents for
environment and to any given task. They can real-time applications.
be proactive when finding new
communications routes in a networked 2. Picosatellite Demonstrator Design
environment and reactive to
disconnections, low bandwidths or high Embedded hardware technology is now
latencies. Unlike a typical distributed available for designing, building and
computing platform that typically has launching picosatellites. This project aims
fixed network characteristics, agents could at using the standard picosatellite
be employed to overcome and discover platform CubeSat . For fast prototyping,
their given network situation. On a satellite, commercial-off-the-shelf(COTS)
as few assumptions as possible should components/boards are chosen, to develop a
be made for the connection reliability technology demonstrator testbed. Parts used
over inter-satellite links (bandwidth, in the design include:
latencies, number of connections, etc).
An agent could be designed to discover •Flight OBC and satellite chassis from
these characteristics and make the Pumpkin
software and network operations more •Power module from Clyde-Space
reliable and robust. •SGR-05 GPS module from SSTL
In practical experiments, the JavaAgent •MHX transceiver from Microhard Systems
DEvelopment framework and the Light
•PF5100 Virtex-4 FPGA FX60 Board for
Extensible Agent Platform (JADE-LEAP)
SoC
is adopted to communicate over an ad-hoc
•IEEE 802.11 PC/104 Board from Elcard
IEEE 802.11 wireless link using a number of
protocols over multiple laptops. JADE-
LEAP is a Java based Agent Development
The CubeSat platform is a 10 x 10 x 10
environment middleware for embedded
cm standard bus structure weighing at 1
devices and other resources constrained
kg, which is compatible with the PC104
devices using wireless links to develop
format. The CubeSat bus also comes in
Agent systems and novel application areas
double (2U) and triple unit (3U) sizes to
such as web or service orientated
conform to the P-POD deployment
computing. The JADE-LEAP platform is
mechanism. The CubeSat Kit platform
used here due to
provides a standard COTS solution to
its light-weight footprint, its conformity to
develop new technologies[4]. Research
the Foundation of Intelligent and Physical
into all current CubeSat missions shows
Agents (FIPA) specifications and a large
that reliability and simplicity are key
community of users.Agent systems are
requirements to ensure success, whilst
written in Java, which is unsuited to real-

Deptt. of Electronics & Communication Engg., SRMCEM. 3


Dual Core System on a Chip Design to Support Inter-Satellite Communications

having more complex systems as separate that treats the FPGA board, the IEEE
payloads. This design follows trends to 802.11 communications board and a
ensure that our satellite can camera as payloads, shown in Fig. 3.
achievemultiple objectives: from
successful deployment, establishing
communications and turning on/ off
experimental payloads. The current
demonstrator design can be seen in Fig. 2,
with the Flight Module, IEEE 802.11
PC/104 board and FPGA Board attached
on the left, for integration, and the
structure on the right, depicting the final
satellite[5].

Figure 3. Demonstrator Satellite Architecture

This new COTS architecture is primarily


controlled by the Flight Module board
(FM430 OBC) and uses the SoC design to
act as a hardware and software mediator
for differing payload modes in the
mission. These differing modes can
include soft resets or various sleep modes
but also hard resets and on/off switching
for varying duty cycles in orbit. This
Figure 2. CubeSat Platform with Flight will ensure that payloads can be precisely
Module,IEEE802.11 Board and FPGA Board controlled. Due to the COTS nature of
the design, the SoC board is also used to
The picosatellite nodes must be interface between various buses such as
computationally able to run code on the I2C, SPI, PCI and Ethernet for this
satellite to optimize the network’s ability demonstrator[7].
to perform the mission (e.g. make
decisions from complex algorithms to 3. Dual-Core Processor Design
decide which satellite has the resources
to communicate to ground) using The proposed solution for this computing
intersatellite links. This will require problem is a dual-core system to provide
additional hardware such as CPU, storage node level and network level functionality.
and RAM memory, along with added The node level functionality is achieved
software resources such as an operating using the LEON3 processor ; a general
system, distributed computing environment purpose soft-core processor from Gaisler
and applications; all constrained in the Research which is a fully compliant
CubeSat dimensions[6]. SPARC V8 architecture with various
functionality through an extensive IP
For a ‘technology demonstration’ mission, library. The LEON3 processor, adopted by
the payload ESA as the main CPU for future on-
design must include all the necessary board computers since the end of 2006, is
components for the complete distributed used for typical processing and ‘number
computing platform, with communication crunching’ capabilities such as image
capabilities, power systems and payloads. compression. As previously described, to
To ensure reliability in space, a new COTS accommodate an agent computing
based satellite bus architecture is proposed environment, a Java Virtual Machine

Deptt. of Electronics & Communication Engg., SRMCEM. 4


Dual Core System on a Chip Design to Support Inter-Satellite Communications

(JVM) or Java Runtime Environment must retain coherency and in the event of a
(JRE) is required to provide a heterogeneous core failure, the other must be able to act for
platform on which to realise a a soft recovery or even reconfigure in the
communication medium between various event of a single effect upsets or latch-
platforms. ups (SEUs and SELs respectively)

Connection Limited Device configuration


(CLDC) and PersonalJava (pjava) are
designed for the devices with intermittent
network connections, slow processors and
limited memory such as mobile phones,
two-way pagers and PDAs – making them
ideal to run in real-time on the JOP
processor. These devices require either
16-or 32-bit CPUs and a minimum of
Figure 4. Overview of LEON3 and JOP Design 128 KB to 512 KB of RAM for the Java
platform implementation and associated
As ‘Just in Time’ (JIT) compilation at applications. The full JRE 1.4 requires over
runtime is far from time deterministic for 15 MB alone and is a major deterrent for
embedded real-time critical systems, this using Java on embedded devices but
work also presents the use of an open-source dynamic class parsers are now available
Java specific processor called Java to help minimize the application to a very
Optimised Processor (or JOP) to enable small size. From Table 1, it can be seen
real-time Java functionality on-board that the third option offers the smallest
satellite systems. JOP is chosen as it is the memory footprint whilst retaining real-
smallest and fastest Java core to date. time functionality. Here, pjava, CLDC
JOP is a RISC and stack based 1.0, JADE-LEAP and designed Agents has
architecture used to execute Java been reduced to 1.1 MB.
bytecodes using microcode instructions.
By utilizing JOP in an FPGA along with 3.2. Shared Memory and Caches :
the LEON3 processor, the benefits
include moving software to hardware Multi-core system designs use shared
(reducing the memory footprint with memory for a fast form of IPC between the
increased FPGA utilisation and increased cores. Once the memory has been mapped,
speedup) and enabling Java applications, core synchronization is required between
such as Agents, for real-time applications. the processes for storing or fetching data
The system architecture can be seen in Fig. to and from shared memory. The
4 where JOP is integrated for a synchronization is implemented using the
communications co-processor with the open-source AMBA2 Bus from ARM ; and
LEON3 using the AMBA bus. more specifically, the Advanced High-
Performance (AHB) Bus. The AHB Bus acts
3.1. Design Considerations : as the backbone in many SoC cores and is
adopted here to provide connection
between the cores, on-chip memories and
In the FPGA, there must be a memory off-chip external memory interfaces from
sharing system between the two cores for various memory vendors. The AHB Bus
access to external RAM. To reflect the operates bus arbitration to AHB Masters
multi-layered software design.A clearly and Slaves where the core is first
defined inter process communication (IPC) requested, addressed, granted access, and
or bus scheme is also required. In locked for use before finally being
software, caches between the two cores released to the arbiter.

Deptt. of Electronics & Communication Engg., SRMCEM. 5


Dual Core System on a Chip Design to Support Inter-Satellite Communications

designs.
The LEON3 system implements a
standard data and instruction cache but
JOP implements a ‘stack’ cache for
instructions which is designed for real-time
worst case execution time (WCET) analysis.
JOP’s unique design, a hardware
implementation of a JRE (at v 1.1)
implements a simplified garbage
collection (GC) model using the Real-
Time Specification for Java (RTSJ) which
schedules a GC thread for automatic
memory management. JOP’s 512 KB cache
size was determined by a previous analysis
of JRE 1.1 method lengths being 98% <
512 KB.The fault tolerant version of
Figure 5. System on a Chip
LEON3 has a configurable cache and
memory system designed to be tolerable
to SEUs or SELs in the space 4. Dual-Core Processor
environment with protected on-chip Implementation
memories using triple modular redundancy
(TMR), parity checking or duplication . As The advantage of using multiple cores on
an enhancement to JOP’s functionality, one configurable device is that a mix of
the existing JRE must be upgraded to a technologies can be used,making the design
minimum of version 1.4 to run the very versatile with differing memory
JADE-LEAP Agent environment. To systems and IP cores but with high time and
achieve this, new methods of the CLDC design costs.This is why the JOP core is
Stack have been added to JOP’s integrated in such a way that it can be added
instruction set at a simulation level to to the Gaisler IP core library.Integration thus
better support networking. An analysis of far has included the JOP processor as an
JADE-LEAP methods was performed to AHB bus mater wrapped for interfacing
check the heap usage, specifically the purpose and connec a reduceLEON3 with
DRAM allocated for the application, to only necessary IP core via the AHB arbiter
show that JADE-LEAP requires between and AHB bus.
750 KB to 2.1 MB of memory . As this
memory size cannot be implemented on- Integration Configuration :
chip, off-chip solutions are required. The
current SoC solution can be seen in Fig. The implemented SOC solution includes the
7. where the cores implemented and following important cores implemented in
memories have been determined.The the design:
virtex-4 FPGA FX60 board is target at it is 1- LEON3central processing unit
used in the CubeSat design.Distribution the 2- AMBA bus:AHB (High Speed) &
cache and memory can have two major APB (Peripheral)
benefits. 3- Debug Support Unit (DSU) &
JTAG debug UART
1 : Scaling the memory bandwidth 4- JOP wrapper
2 : A reduction in access time to local 5- ESA memory controller
memory The LEON3 is used as the main controller in
This method is typically used to support the FPGA. The AHB bus provided high
larger processor counts such as with speed communication between internal
multiple LEON3 or network on chip cores.The APB bus provides communication

Deptt. of Electronics & Communication Engg., SRMCEM. 6


Dual Core System on a Chip Design to Support Inter-Satellite Communications

to external peripherals,such as memory and 6. Conclusions


other I/O. The DSU and debug UART The unique problem presented in this paper
provide useful debugging information from is to overcome ‘disconnected’ and high
the FPGA device. The JOP wrapper has the mobile space requirement for distributed
main Jop core, an AHB slave to computing in satellite network for scenarios
communicate with the LEON3 processor such as event monitoring, space vehicle
and an AHB slave for memory and I/O inspection and even deed space exploration.
communication.The memory controller To enable the latest agent based distributed
allows the synchronization between the SOC computing systems, a dual-core SOC design
signals and external components. is proposed for real-time java functionality
on board the constrained Picosatellite
5. Network Topology Reconfiguration CubeSat platforms. With strict system
and Procedure requirement of low memory footprint, Java
functionality and hard real-time operation,
In this section, a novel dual-core startup preliminary results of the dual-core
procedure is presented to deal with processor design are presented with general
situations that require a hard reset,soft reset purpose functions using the LEON3 IP core
and network topology change.The stages are Java specific functions using the JOP IP
described below: core.An autonomous agent based network
topology reconfigurability procedure is also
Stage 1: Startup FPGA System &LEON3: presented which takes in to account the
current state of the satellite cluster at
Upon startup,each AMBA core sends its network level and any local resources or
‘Plug & Play’ signals to the AHB controller loads at node level for the future distributed
which then decodes the values and generates satellite management operations.
the correct signals.The LEON3 is started
where the core identificationand system 7. Acknowledgements
memory along with starting tasks can be
discovered. I would like to acknowledge Mr. Vikrant
Bhateja (Asst. Professor, Deptt. of
Stage 2: Startup JOP & JADE-LEAP: Electronics, SRMCEM)for his constant
support in this work and Mr. Christopher P.
Jop codes the main memory microcode from Bridges & Mrs. Tanya Vladimirova, Surrey
flash and then the boot() method is to Space Centre, Deptt. of Electronics Engg.,
invoked to start the running java programs. University of Surrey whose paper presented
The memory is then measured, GC is on NASA/ESA Conference on Adaptive
performed to clean the cache and initialize Hardware and Systems(Dual core System on
internal data structures. a Chip) and T. Vladimirova for his thesis on
‘Enabling Technologies for Distributed
Stage 3: Network Topology Refresh : Picosatellite missions in LEO’.

To initialize, check or change the network 8. References


topology, An IPC scheme is used that can
Soft-Reset JADE-LEAP in differing [1] T. Vladimirora, X. Wu, K. Sidibeh, D.
configurations with differing services.An Barnhart and A.H. Jallad, “Enabling
agent can discover local data and identify Technology for Distributed Picosatellite
services and existing interfaces or Missions in LEO”, Proceeding of 1st
functionalities that the satellite has to offer NASA/ESA conference, on Adaptive
the network. Hardware and Systems(AHS 2006), p.p.330-
333,IEEE computer society.

Deptt. of Electronics & Communication Engg., SRMCEM. 7


Dual Core System on a Chip Design to Support Inter-Satellite Communications

[2] D.J. Barnhart, T. Vladimirova, “Very


Small Satellite Design for Distributed
Satellite Missions”, AIAA Journal of
Spacecraft and Rocket, Vol.44, No.6,
November-December 2007.

[3] F.Bellifemine, G. Caire, A. Poggi, G.


Rimassa, “JADE white paper”.
http://jade.tlab.com/papers/2003/whitepaper
JADEEXP.pdf

[4] C.P. Bridges and T. Vladimirova,


“Autonomous agents in Wireless Embedded
Systems”. Proceedings of 3rd UK Embedded
Forum(UKEF07),p.167,April 2007, Durham
IET

[5] J. Gaisler and S. Habinc, “FPGA Design


Using the LEON3 Fault Tolerant Processor
Core”, proceeding of 8th Military and
Aerospace Programmable Logic Devices
(MAPLD05), 7-9September 2005,
Washington DC.

[6] PF5100 Virtex-4 FPGA FX60 Datasheet,


http://www.derivation.com/products/pf5100.
html

[7] IEEE 802.11 PC/104 Board from Eclard


WIB250A67 Series PC/104+802.11ag
WLAN Module Datasheet,
http://www.eclard.fi/pdfs/DSWIB250A67-
02.pdf

Deptt. of Electronics & Communication Engg., SRMCEM. 8

Вам также может понравиться