| 1 | = COST-Terra Summer School Demo = |
| 2 | |
| 3 | We describe in this page how to download the OFDM transmitter demo we presented at COST-Terra Summer School 2012. |
| 4 | |
| 5 | Main Features: |
| 6 | * Bandwidth 2-20 MHz |
| 7 | * FFT size 128-2048 points |
| 8 | * Turbo-encoding |
| 9 | * Cyclic-Prefix |
| 10 | * Run-time reconfiguration |
| 11 | * E2E Latency: '''4 ms''' (constant and non-random) |
| 12 | * Distributed processing (tested with 2 processors and GigaEthernet) |
| 13 | * GUI: signal visualization, execution time monitoring, etc. |
| 14 | |
| 15 | == Download and install == |
| 16 | |
| 17 | 1) Prerequisites: |
| 18 | * Linux operating (tested on Ubuntu) |
| 19 | * Only the 'readline' and 'termcap' libraries are required to install ALOE. Ask your OS vendor how to install these libraries. |
| 20 | If you want to use the USRP, make sure you have the UHD drivers is installed before installing ALOE. |
| 21 | |
| 22 | 2) Download the latest ALOE unstable version from http://flexnets.upc.edu/downloads/aloe-ctss-demo-1.5.0.tar.gz |
| 23 | |
| 24 | 3) Untar, uncompress and cd into created directory |
| 25 | |
| 26 | 4) Configure, compile and install |
| 27 | {{{ |
| 28 | ./configure |
| 29 | make |
| 30 | sudo make install |
| 31 | }}} |
| 32 | |
| 33 | 5) Add the following lines to /etc/sysctl.conf file |
| 34 | {{{ |
| 35 | kernel.msgmnb=1048576 |
| 36 | kernel.msgmax=10485760 |
| 37 | kernel.msgmni=128 |
| 38 | }}} |
| 39 | |
| 40 | and run |
| 41 | {{{ |
| 42 | sudo sysctl -p |
| 43 | }}} |
| 44 | |
| 45 | == Running the Demo application == |
| 46 | |
| 47 | 1) Run core framework. Requires root privileges to set real-time scheduler |
| 48 | {{{ |
| 49 | sudo runcf |
| 50 | }}} |
| 51 | |
| 52 | 2) In the CMDMAN prompt, run |
| 53 | {{{ |
| 54 | load ofdm128 |
| 55 | init ofdm128 |
| 56 | run ofdm128 |
| 57 | }}} |
| 58 | |
| 59 | to load, initialize and run the OFDM-128 application. Now you can check the waveform is running with the command |
| 60 | {{{ |
| 61 | execinfo ofdm128 |
| 62 | }}} |
| 63 | |
| 64 | 3) The OFDM bandwidth can be modified at run-time with: |
| 65 | {{{ |
| 66 | statset ofdm128 source fftsize 256 |
| 67 | statset ofdm128 source fftsize 512 |
| 68 | }}} |
| 69 | |
| 70 | Which set the fft size to 256 and 512 tones respectively (4 and 8 MHz bandwidth). By default, the framework will use one processor only from your computer. If you have a multi-core processor, edit the 'nof_cores' option in /usr/local/etc/platform.conf file. In our tests, the OFDM application runs perfectly in a 2.5 GHz Intel processor using one core only. The 512 mode produces frequent real-time faults (printed stdout). This mode works correctly in a dual-processor environment. |
| 71 | |
| 72 | == Using the USRP == |
| 73 | |
| 74 | If the UHD driver is installed before running ALOE's configure script, the option dac=uhd in /usr/local/etc/platform.conf file allows ALOE to send samples to the USRP. Just edit the platform.conf file and run the OFDM-128 waveform from the ALOE command man. The device sampling frequency is automatically configured by ALOE. Since not all devices can work with the same sampling frequencies, the execution period (time-slot) can differ slightly from one set-up to another. |
| 75 | |
| 76 | You may experience with different sampling frequencies and time-slots editing the file /usr/local/etc/usrp.conf. By setting different sampling frequencies |
| 77 | |
| 78 | == Distributed Processing == |
| 79 | |