International Journal of Advanced Computer Science, Vol. 1, No. 4, Pp. 134-141, Oct. 2011.
SDR Design with Advanced Algorithms for Cognitive Radio Rajeshree D. Raut & Kishore D. Kulat
Manuscript Received: 29, Aug., 2011 Revised: 13, Sep.,2011 Accepted: 25, Sep.,2011 Published: 30, Oct.,2011
Keywords SDR, Cognitive Radio, Optimum data Rate, FHSS (Frequency Hopping Spread Spectrum, Matlab M-File Proramming, Advance Algorithms
Abstract Software Defined Radio (SDR) is one of possibilities to realize the structure of device with a high mobility, flexibility and reconfigurability. This technology can provide the seamless shifting between existed air- interface standards. Extending the flexibility further, a system capable to sense the spectrum space available for communication and adapt to it is Cognitive Radio. Obviously SDR in Cognitive Radio should be configured not only to independent standards, protocols and services but also to the extensively dynamic nature of bandwidth allocation. Moreover this need of dynamic allocation of Spectrum space is a must to cater to its increased demand. Cognitive radio is envisioned as the ultimate system that can sense, adapt and learn from the environment in which it operates. Sensing the available bandwidth an SDR (Software defined radio) in a Cognitive System, tunes the circuits in the System for transferring data at optimum data rates, permissible by the space available. So it is a must for the SDR to accordingly add processing circuits to maintain the System performance at variable working frequencies. This paper discusses the critical issue of designing the SDR for the Cognitive Radio (CR) and also presents some useful results obtained to configure the SDR for higher bandwidth available in Cognitive Radio. Results of Frequency Hopping Spread Spectrum (FHSS) implementation, Codec Algorithm modifications, and decoder iterations variation and performance improvement using OQPSK are depicted in the paper. Further to meet the narrow bandwidth requirements of CR, advance source coding implementation results have also been depicted.
This work was supported by the Research and Development department of Shri Ramdeobaba Kamla Nehru Engineering College, Nagpur, M.S, India. Dr. Rajeshree D. Raut is Asociatet Professor, Department of Electronics & Communication Engineering, SRKNEC, Nagpur, M.S., India.
[email protected]. Dr. Kishore D. Kulat is Professor, Electronics & Computer Science Department, VNIT, Nagpur, M. S., India.
[email protected]
1. Introduction Most part of current research works in the wireless communication technologies focuses on providing many varied services and maintaining high bit rate [1]. The possibility to be reachable in any place and at anytime has also become much demanded. That is why the greatest companies try to find possible solutions to satisfy these requirements. To this end, there is a need to devise the structure which will be able to support the possibility to retune mobile terminals according to the signal reception [2]. Existing approaches assume that a user should purchase a detached device for each standard, because most of them have their own specification of frequencies range, types of modulation, coding scheme, and access to the environment. Therefore, the mobile operator has to provide support for all wireless systems separately. To resolve this problem, the Software Defined Radio (SDR) technology comes in handy [3]. A need to extend the above adaption has aroused over a last couple of years wherein the spectrum demand has increased many folds. Spectrum allocation policy has faced spectrum scarcity in particular spectrum bands. In contrast, a large portion of the assigned spectrum is used sporadically, leading to underutilization of significant amount of spectrum space [4]. Spectral occupancy measurements consistently show that some bands are under-utilized in some areas at some times. The key enabling technology of dynamic spectrum access techniques is Cognitive radio. Joseph Mitola III and Gerald Q. Maguire who first officially presented the idea of Cognitive Radio [5], define it as 8Cognitive radio is an intelligent wireless communication system that is aware of its Radio Frequency (RF) environment, and uses the methodology of understanding- by- building to learn from the environment and adapt its internal states to statistical variation in the environment by making changes to adjustable parameters, namely transmit power, carrier frequency and modulation strategy, all in real Time, [Mitola 1999]. This paper introduces the SDR and Cognitive Radio Technology in Section 2 and 3 respectively. Section 4 explains how to design the SDR for Cognitive radio. Adapting of Advance Source Coding Algorithms to be able to send data when the CR has to tune to narrow bandwidth is proposed. Implementations for the same have been explained in detail. The results of these implementation work carried out using Matlab are depicted in Section 5. The paper concludes
Raut et al.: SDR Design with Advanced Algorithms for Cognitive Radio.
stating the implementable steps to configure the SDR for Cognitive Radio.
2. Software Defined Radio A number of definitions can be found to describe Software Defined Radio, also known as Software Radio or SDR. The SDR Forum [6], working in collaboration with the Institute of Electrical and Electronic Engineers (IEEE) P1900.1 group, has worked to establish a definition of SDR that provides consistency and a clear overview of the technology and its associated benefits. Simply put Software Defined Radio is defined as: "Radio in which some or all of the physical layer functions are software defined" * A radio is any kind of device that wirelessly transmits or receives signals in the radio frequency (RF) part of the electromagnetic spectrum to facilitate the transfer of information. In today's world, radios exist in a multitude of items such as cell phones, computers, car door openers, vehicles, and televisions. Traditional hardware based radio devices limit cross-functionality and can only be modified through physical intervention. This results in higher production costs and minimal flexibility in supporting multiple waveform standards. By contrast, software defined radio technology provides an efficient and comparatively inexpensive solution to this problem, allowing multi-mode, multi-band and/or multi-functional wireless devices that can be enhanced using software upgrades. SDR defines a collection of hardware and software technologies where some or all of the radio’s operating functions (also referred to as physical layer processing) are implemented through modifiable software or firmware operating on programmable processing technologies. These devices include field programmable gate arrays (FPGA), digital signal processors (DSP), general purpose processors (GPP), programmable System on Chip (SoC) or other application specific programmable processors. The use of these technologies allows new wireless features and capabilities to be added to existing radio systems without requiring new hardware.
3. Cognitive Radio Although cognitive radio was initially thought of as a software defined radios extension (Full Cognitive Radio), most of the research work is currently focusing on Spectrum Sensing Cognitive Radio, particularly in the TV bands. The essential problem of Spectrum Sensing Cognitive Radio is in designing high quality spectrum sensing devices and algorithms for exchanging spectrum sensing data between nodes. It has been shown that a simple energy detector cannot guarantee the accurate detection of signal presence, calling for more sophisticated spectrum sensing techniques and requiring information about spectrum sensing to be exchanged between nodes regularly. Increasing the number of cooperating sensing nodes decreases the probability of false detection. Filling free radio frequency bands (Spectrum Holes) International Journal Publishers Group (IJPG) ©
135
adaptively using OFDMA is a possible approach. Timo A. Weiss and Friedrich K. Jondral of the University of Karlsruhe proposed a Spectrum Pooling [7] system in which free bands sensed by nodes were immediately filled by OFDMA sub bands. Applications of Spectrum Sensing Cognitive Radio include emergency network and WLAN higher throughput and transmission distance extensions. Evolution of Cognitive Radio towards Cognitive Networks is under process, in which Cognitive Wireless Mesh Network (e.g. CogMesh) is considered as one of the enabling candidates aiming at realizing this paradigm change. A. Types of Cognitive Radio System Depending on the set of parameters taken into account in deciding on transmission and reception changes, and for historical reasons, we can distinguish certain types of cognitive radio. The main two are: Full Cognitive Radio ("Mitola radio"): In which every possible parameter observable by a wireless node or network is taken into account. Spectrum Sensing Cognitive Radio: In which only the radio frequency spectrum is considered. Work presented here is for Configuring the SDR for Spectrum Sensing Cognitive Radio.
4. Design of SDR for Cognitive Radio To configure the SDR for Spectrum sensing Cognitive Radio we should consider all the situations that the Radio System is likely to face in cognition: 1. Reduction in available Bandwidth for transmission, due to the adoption to a smaller spectrum hole 2. Availability of Higher Bandwidth The first situation needs lossless data compression algorithms to be adopted. Whereas the higher bandwidth available in the second situation may be capitalized in the following two ways: To transmit small packets of data with high accuracy (at low the bit error rate), required in Emergency Services (time bound emergency information should take care of data reduction to minimum possible size so as to utilize low data rates where BER is low). [8], [9]. To transmit bulk data at higher data rate e.g. real time applications like Mobile Services [10]. A. Availability of Higher Bandwidth The formulations of SDR algorithms for capitalizing the higher bandwidth available in cognitive radio has been carried out as a part of the research work for the doctoral degree. B. Transmission with Low BER To transmit small packets of data with high accuracy one must lower down the bit error rate (Bit error rate). The SDR has several options for this. The choice of the
136
International Journal of Advanced Computer Science, Vol. 1, No. 4, Pp. 134-141, Oct. 2011.
algorithm and the modification degree to be adopted depends upon the application over Cognitive Radio and the band of frequencies that the radio system is tuned to [8]-[19],. The algorithms are as follows: 1) RS Encoder: As specified in the standard, the Reed-Solomon encoding is derived from a systematic RS (n=255, k=239, t=8) code using a Galois field specified as GF(28). The primitive and generator polynomials used for the systematic code are expressed as follows: 2) Primitive Polynomial: p(x) = x8 + x4 + x3 + x2 + 1 3) Generator Polynomial: g(x) = (x +M0)(x + M1)(x + M2)...(x +M2t@1 ) The primitive polynomial is the one used to construct the symbol field and it can also be named as field generator polynomial. The code generator polynomial is used to calculate parity symbols and has the form specified as before, where M is the primitive element of the Galois field over which the input message is defined. To make the RS code flexible, i.e. to allow for variable block sizes and variable correction capabilities, the SDR needs to shorten and puncture it. When a block is shortened to k bytes, 239 N k zero bytes are added as a prefix, and, after the encoding process, the 239 N k encoded zero bytes are discarded. Once the process of shortening has been done, the number of symbols going in and out of the RS encoder change, and also the number of symbols that can be corrected (t). With the puncturing, only the first 2t of the total 16 parity bytes shall be employed. Figure 1 shows the RS encoding, shortening, and puncturing process. Figure 2 shows the MATLAB Simulation of RS Encoder-decoder for WiMax.
Fig. 1 Process of shortening and puncturing of the RS code.
4) Convolution Encoder: IEEE WiMax 802.16d standard yields a complex convolutional encoder with a constraint length of 7 (Fig. 3).
Fig. 3 MATLAB Simulation of Convolution Encoder
The generator polynomials for this encoder are g0=171oct and g1=133oct. The encoder can easily be implemented in hardware shift registers. The first step is to represent the input bit string as a polynomial. Any sequence of 0’s and 1’s can be represented as a binary number or a polynomial. The convolutional encoder for WiMax (g0=171oct and g1=133oct) can be represented as follows: •g0 = 1 + D + D2 + D3 + D6 •g1 = 1 + D2 + D3 + D5 + D6 The convolutional encoder basically multiplies the generator polynomials by the input bit string, as follows: •A(x) = g0(x) * I(x) = a b c … g •B(x) = g1(x) * I(x) = P Q R … V Interleaving the two outputs from the convolutional encoder yields E(x) = aPbQcR … gV, which can also be written as: E(x) = (a0 b0 c0 … g0) + (0P0Q0R … 0V) = A(x2) + x*B(x2) Therefore, E(x) = A(x2) + x * B(x2) and A(x2) = g0(x2) * I(x2) and B(x2) = g1(x2) * I(x2), with the following: E(x) = g0(x2) * I(x2) + x * g1(x2) * I(x2) = I(x2) * (g0(x2) + x * g1(x2)) = I(x2) * G(x) where G(x) = g0(x2) + x * g1(x2) i.e. G(x) = 1 + x + x2 + x4 + x5 + x6 + x7 + x11 + x12 + x13. A proper choice of the Generator polynomial by the SDR will lead to lowering of the BER. 5) Turbo Encoder: It consists of two convolutional encoders. The outputs of the turbo encoder are the information sequence, together with the corresponding parity sequence produced by first encoder and the parity sequence produced by the second encoder block, the input to second encoder is through interleaver, which scrambles the data bit sequence. Simulation model of Turbo encoder –decoder is shown in Fig. 4.
Fig. 2 MATLAB Simulation of RS Encoder-decoder for WiMax
International Journal Publishers Group (IJPG) ©
Raut et al.: SDR Design with Advanced Algorithms for Cognitive Radio.
137
better than band limited QPSK. Taking four values of the phase (two bits) at a time to construct a QPSK symbol can allow the phase of the signal to jump by as much as 180° at a time. When the signal is low-pass filtered (as is typical in a transmitter), these phase-shifts result in large amplitude fluctuations, an undesirable quality in communication systems. By offsetting the timing of the odd and even bits by one bit-period, or half a symbol-period as shown below, the in-phase and quadrature components will never change at the same time. This will limit the phase-shift to no more than 90° at a time. This yields much lower amplitude fluctuations than non-offset QPSK and is sometimes preferred in practice. Figure 5 shows the Comparative phase-shifts in QPSK & OQPSK.
Fig. 5 Comparative phase-shifts in QPSK & OQPSK Fig. 4 SIMULINK Model of Turbo Encoder-Decoder
6) Turbo Decoder: Turbo decoder shown above in Fig. 4 uses iterative decoding. The turbo code decoder is based on a modified Viterbi algorithm that incorporates reliability values to improve decoding performance. The turbo decoder consists of M elementary decoders - one for each encoder in turbo encoding part. Each elementary decoder uses the Soft Decision Viterbi Decoding to produce a soft decision for each received bit. After an iteration of the decoding process, every elementary decoder shares its soft decision output with the other M - 1elementary decoders. The SDR should choose the number of decoder iterations based on the value of BER that is tolerable and real time applications must also take into considerations the time required for the decoding. The SDR can use concatenation of RS and Turbo or even LDPC and Turbo for further reduction of the BER. 7) Use of OQPSK: The SDR should use OQPSK, in place of the QPSK modulator-demodulator of the existing Wi-Max System. OQPSK stands for Offset-Quadrature Phase Shift Keying. Here we are using an offset of Q/4. The Q/4 shifted QPSK modulation is a quadrature phase shift keying technique which can be demodulated in a coherent or non-coherent fashion. In Q /4 QPSK, the maximum phase shift is limited to +/- 135 degrees. Hence the band limited Q/4 QPSK signal preserves the constant envelope property International Journal Publishers Group (IJPG) ©
The Comparative results of all the algorithms are depicted in Section 5. 8) Transmission with High data Rate: To transmit bulk data at higher data rate e.g. real time applications like Mobile Services the SDR should make use of Frequency Hoppping Spread Spectrum (FHSS) Techniques. In fact the SDR in the Cognitive Radio has the advantage of the inherent frequency hopping nature of the Cognitive Radio System. Slow or Fast FHSS can be adopted depending upon the availability of Spectrum Holes, feasibility of implementation and the data security needed. The results of Matlab implementation of FHSS are shown in Secrion 5. 9) Tuning to Hole of Smaller Size, Advance Source Coding Algorithms: This demands data compression. However, to ensure intactness of the data, SDR must opt for lossless data compression. Source Coding plays a vital role to compress the data for transmission. Moreover perceiving the nature of the source and the destination one can achieve lossless compression. The SDR can opt for the perceptual coding techniques like Linear Predictive (LPC), Code Excited Linear predictive (CELP), etc which can be further sub-band or Adaptive transform coded. Of these algorithms Sub-band Coding and LPC were implemented being worked on for Matlab implementation.Sub-band coding as implemented by Mr. Siddharth Seth [14] is explained below.
138
International Journal of Advanced Computer Science, Vol. 1, No. 4, Pp. 134-141, Oct. 2011.
Sub-band Coding(SBC) A variety of techniques have been developed to efficiently represent speech signals in digital form for either transmission or storage. Since most of the speech energy is contained in the lower frequencies, we would like to encode the lower-frequency band in more bits than the high-frequency band. Sub-band coding is a method where the speech signal is subdivided into several frequency bands and each band is digitally encoded separately. An example of a frequency subdivision is shown in the Fig. 6. Let us assume that the speech signal is sampled at a rate Fs samples per second. The first frequency subdivision splits the signal spectrum into two equal width segments, a lowpass signal (0