A practical implementation of a PPM/FSK data transmission system using combined spectrum and time spreading

by Karl-Max Wagner and Ikuo Oka

1   Introduction

In the following a practical implementation of a PPM/FSK data transmission system using combined spectrum and time spreading[1] will be described. Due to the complexity of the task the only practicable way is doing all the signal processing in software using a sufficiently fast digital signal processor ( a so called ``softradio'' approach ).

2   Software implementation

2.1   Tool choice

The software was mainly written in C using gcc[2] as a compiler. This compiler has the advantage that it supports a multitude of targets which allows reusing most of the code using for modelling on a workstation for the actual signal processor code.

For the DSP used ( Texas Instruments TMS320C40 [3] ) there is an efficient target implentation available for gcc ( done by Michael Hayes of the University of Caterbury, Christchurch, New Zealand[4] ) as well as an excellent software simulator done by Herman ten Brugge. The existence of the latter is critical because it allows extensive source level debugging, profiling and memory usage examination difficult to do in actual hardware ( the author actually is of the opinion that any well done embedded software project should run as expected for the most part when comitted to actual hardware ).

2.2   Software architecture

The task envisaged actually requires doing most of the work in the frequency domain ( and even higher domains ). Thus, input data are collected into data blocks of the size appropriate for the DFT used. All operations are done on these data sets.

Modularity is always a good idea in such projects - thus most of the functionality is collected in a file containing all kinds of frequently needed operations as functions. In fact, it turned out that the main program consists of these functions exclusively. The whole process is like building an electronic circuit from IC's only. In fact, it seems as if these functions could be used in many other communications projects - at the moment the author is considering whether this is the beginning of a general purpose library for communications research and development purposes.

A crucial part of the software system is a correlating AFC system in the frequency range. It is necessary because good time spread filters are very sensitive to frequency deviations inevitable in practical microwave communications systems.

3   Hardware Implementation

3.1   DSP subsystem

As DSP boards hema's DSP1 and DSP2 [5]boards are used. These are based on the Texas Instruments TMS320C40 digital signal processor [3]with a good amount of external RAM (between 512 kbytes and 4 Mbytes, with the possibility to add up to 16 Mbyte of SDRAM). This is a big boon as due to the extensive use of transforms large data sets have to be stored. External data have to be copied to the processor's on chip memory in time (this is why extensive profiling is required to integrate the required ``hidden DMA'' instructions at the right place into the code).

3.2   Analog Hardware

As analog hardware the well known ``zero IF'' transceivers designed by Prof. Matjaz Vidmar of the University of Ljubljana (Slovenia) have been used. These transceivers are pretty much ideal for DSP use as they output / input an I/Q baseband signal to be transposed directly to the RF signal band. They also are well tried and tested for wideband BPSK packet radio use as well as SSB use using the Weaver method, thus eliminating development and debugging requirements which are not the object of the present research project.

4   Conclusion

It has been shown how the theoretical concept of [1] can be implemented practically. Software implementation specific aspects, aspects of code organisation, tool selection as well as additional subsystems indispensable under realistic conditions have been discussed. It has also been shown how maximum use can be made of already available hardware designs[5][6]to cut down on ancillary hardware design time.

One somewhat surprising result of the project is that the software functions required to implement it are rather general purpose and can be reused for other communications related projects. This might prove useful for future research and development projects.

5   Acknowledgements

We want to express our thanks to the following companies for support:


Jinsong DUAN, Ikuo OKA, Chikato FUJIWARA, ''A Proposal of Simultaneous Spread of PPM in Frequency and Time Axes for Adaptive CDMA'', IEICE Trans. Comm., Vol. E00, No. 1, Jan. 1999

This document was translated from LATEX by HEVEA.