Simulating The Basics Of A Cognitive Radio System
Goal: • To Simulate Cognitive Radio System which is so effective that it can harvest more band-width • in highly desired bands than is currently in • use! • – More than in use by cellular systems • – More than in use by unlicensed bands • – More than in use by private mobile • systems • This represents a paradigm shift in technology!
Why Cognitive Radio? • Today’s radio systems are not aware of their radio spectrum environment and operate in a specific frequency band. • In some locations or some times of the day, 70 percent of the allocated spectrum may be sitting idle. • New bandwidth-intensive wireless services are being offered. • Unlicensed users constrained to a few overloaded bands • Increasing number of users. • This growth requires more • spectral bandwidth to satisfy • the demand.
What is a Cognitive Radio? • Intelligent radio that uses spectrum licensed to other users when they aren't using it. • – ‘Bandwidth Harvesting’ • It is a software-designed radio with cognitive software. • CR can sense the environment. • CR adapts its way of communication to minimize the caused interference. • CR coexists with the primary user (using the same frequency band) in two ways: Concurrent and Opportunistic. Figure:A four-nodes wireless sensor network scenario.
When Will CR Happen? • Full Cognitive Radios do not exist at the moment and are not likely to emerge until 2030. • Requires practical implementation of fully flexible SDR technologies and the intelligence required to exploit them cognitively. • But, true cognition and fully flexible radios may not be needed. • Simple intelligence and basic reconfigurability at the physical layer could provide significant benefits over traditional types of radio. • CR prototypes to emerge within the next five years. • Some devices are already in use like WLANs
Idea: • Dynamic Spectrum Access ( DSA ) • To fill the spectral holes with secondary users’ data.
Our Code: Primary Users: Fc1 = 1000; Fc2 = 2000; Fc3 = 3000; Fc4 = 4000; Fc5 = 5000; Fs = 12000; x1 = cos(2*pi*1000*t); in_p = input('\nDo you want to enter first primary user Y/N: ','s'); if(in_p == 'Y' | in_p == 'y') y1 = ammod(x1,Fc1,Fs); end : : : in_p = input('Do you want to enter fifth primary user Y/N: ','s'); if(in_p == 'Y' | in_p == 'y') y5 = ammod(x1,Fc5,Fs); end y = y1 + y2 + y3 + y4 + y5; Pxx = periodogram(y); Hpsd = dspdata.psd(Pxx,'Fs',Fs); plot(Hpsd);
Our Code: Secondary Users: in_p = input('\nDo you want to enter a secondary user Y/N: ','s'); if(in_p == 'Y' | in_p == 'y') chek1 = Pxx(25)*10000; chek2 = Pxx(46)*10000; chek3 = Pxx(62)*10000; Code Portion Skipped : : : else disp('all user slots in use. try again later,'); end
Our Code: Emptying Slots: inp_t=input('do u want to empty a slot: ','s'); if(inp_t=='Y'|inp_t=='y') inp_t=input('which slot do u want to empty for ur entry: ','s'); switch(inp_t) case ('1') y1=0; disp('slot1 is fired'); y = y1 + y2 + y3 + y4 + y5; case('2') y2=0; disp('slot2 is fired'); y = y1 + y2 + y3 + y4 + y5; : : : otherwise disp('invalid slot entered'); end
Our Code: Adding Noise & Attenuation: inp_t=input('do u want to add noise: ','s'); if(inp_t=='y'|inp_t=='Y') d = input('Enter the SNR in dB: '); figure Y = awgn(y,d); Pxx1 = periodogram(Y); Code Portion Skipped tm = 1-tem; Z = y.*tm; disp('attenuating'); grid on plot(Z);
Results: Data assigned Allocated / Used Spectrum Band Un-allocated Bands / Spectrum Holes
Results: Left over Spectral Gaps Spectral Gap Filled by modulating the new incoming user’s data over it
Applications: • Mobile multimedia downloads which require moderate data rates • Emergency communications services that require a moderate data rate and localized coverage (for example, video transmission from firemen’s’ helmets); • Broadband wireless networking (for example, using nomadic laptops), which needs high data rates, but where users may be satisfied with localized “hot spot” services; • Multimedia wireless networking services (e.g. audio/video distribution within homes) requiring high data rates.
Thank You www.intcube.com/forum for requesting the complete project