Upload
rcollins06181675
View
237
Download
3
Tags:
Embed Size (px)
DESCRIPTION
Perseus Examples Radio420
Citation preview
i
RRaaddiioo442200XX
PPeerrsseeuuss EExxaammpplleess
NNoovveemmbbeerr 22001144
ii
Revision History
Revision Date Comments
1.0 December 2012 First released revision
1.1 February 2013 Page layout and linguistic revision
1.2 February 2013 Section change
1.3 March 2013 Added Linux examples
1.4 March 2013 Modifications following comments from Support
1.5 June 2013 Added MIMO 4x4 Gigabit Ethernet support and PCI Express Record/Playback and streaming examples
1.6 September 2013 Merge Linux and Windows example and simplified example
1.7 June 2014 Added PicoSDR setup section
1.8 November 2014 Added sudo prefix to Linux shell calls
Up to date for Software Tools Release 6.6
iii
Table of Contents
1 Radio420 Loopback Example (BSP) ................................................................................... 1 1.1 Requirements................................................................................................................................................ 2
1.1.1 Software requirements ...................................................................................................................... 2 1.1.2 Hardware requirements .................................................................................................................... 2
1.2 Setup ............................................................................................................................................................. 3 1.2.1 Setup for execution on a PicoSDR ..................................................................................................... 3 1.2.2 Setup for execution in a MicroTCA chassis ........................................................................................ 4 1.2.3 Signal generator setup ....................................................................................................................... 4
1.3 Procedure ..................................................................................................................................................... 4 1.4 Expected Results with the Stand-Alone Application ..................................................................................... 9 1.5 Clock disciplining with PPS Sync module .................................................................................................... 10 1.6 Executing the Calibration ............................................................................................................................ 11 1.7 Modifying the Example ............................................................................................................................... 11
2 Radio420 RTDEx Record/Playback Example (BSDK) for Windows 7 (64 Bits) and Linux (32 and 64 Bits) on Gigabit Ethernet and PCI Express ........................................................... 14 2.1 Pass-through test ........................................................................................................................................ 15 2.2 DDS test ...................................................................................................................................................... 15 2.3 Record test .................................................................................................................................................. 16 2.4 Playback test ............................................................................................................................................... 16 2.5 Streaming to host test ................................................................................................................................ 16 2.6 Streaming from host test ............................................................................................................................ 16 2.7 Requirements.............................................................................................................................................. 17
2.7.1 Software requirements .................................................................................................................... 17 2.7.2 Hardware requirements .................................................................................................................. 17
2.8 Setup ........................................................................................................................................................... 18 2.8.1 Setup for execution on a PicoSDR on an external PC ...................................................................... 18 2.8.2 Setup for execution on a PicoSDR on its embedded PC .................................................................. 19 2.8.3 Setup for execution in a MicroTCA chassis ...................................................................................... 20 2.8.4 Setup for execution in a MicroTCA chassis on an embedded PC .................................................... 21 2.8.5 Setup for execution of MIMO 4x4 example on a PicoSDR4x4 ......................................................... 21 2.8.6 Signal generator setup ..................................................................................................................... 22
2.9 Generating the FPGA configuration file ...................................................................................................... 22 2.10 PCI Express link validation .......................................................................................................................... 22 2.11 Procedure with Visual Studio on Windows ................................................................................................. 22 2.12 Procedure with Makefile on Linux .............................................................................................................. 24 2.13 Procedure with the Nutaq Command-Line Interface on Windows ............................................................ 25 2.14 Procedure with the Nutaq Command-Line Interface on Linux ................................................................... 26 2.15 Expected Results with Visual Studio and Makefile ..................................................................................... 27
2.15.1 PPS Sync results ............................................................................................................................... 30 2.15.2 Calibration results ............................................................................................................................ 31 2.15.3 Pass-through results ........................................................................................................................ 32 2.15.4 DDS results ....................................................................................................................................... 32 2.15.5 Record results .................................................................................................................................. 33 2.15.6 Playback results ............................................................................................................................... 34 2.15.7 Streaming to host results................................................................................................................. 34
iv
2.15.8 Streaming from host results ............................................................................................................ 37 2.16 Expected Results with Nutaq's Command Line Interface ........................................................................... 39
2.16.1 Record results .................................................................................................................................. 39 2.16.2 Playback results ............................................................................................................................... 39 2.16.3 RF calibration results ....................................................................................................................... 40 2.16.4 PPS Sync results ............................................................................................................................... 40
v
List of Figures
Figure 1-1 Radio420X loopback example diagram ........................................................................................................ 1 Figure 1-2 PicoSDR with an external PC ......................................................................................................................... 3 Figure 1-3 Perseus in a MicroTCA chassis, with an external PC ..................................................................................... 4 Figure 1-4 Workspace Launcher dialog box .................................................................................................................. 5 Figure 1-5 Project Explorer tab ..................................................................................................................................... 5 Figure 1-6 Xilinx Board Support Package dialog box ..................................................................................................... 5 Figure 1-7 Import Projects dialog box ........................................................................................................................... 6 Figure 1-8 Acquisition Project menu ............................................................................................................................. 7 Figure 1-9 Program FPGA dialog box ............................................................................................................................ 7 Figure 1-10 Debug Configurations dialog box ............................................................................................................... 8 Figure 1-11 ChipScope Pro window .............................................................................................................................. 9 Figure 1-12 Sample acquisition ................................................................................................................................... 10 Figure 2-1 Radio420X record/playback diagram ......................................................................................................... 14 Figure 2-2 Radio420X RTDEx streaming diagram ........................................................................................................ 15 Figure 2-3 PicoSDR with an external PC ....................................................................................................................... 18 Figure 2-4 PicoSDR with an its embedded PC .............................................................................................................. 19 Figure 2-5 Perseus in a MicroTCA chassis, with an external PC ................................................................................... 20 Figure 2-6 Perseus in a MicroTCA chassis, with an external PC ................................................................................... 21 Figure 2-7 Perseus in a MicroTCA chassis, with an external PC ................................................................................... 21 Figure 2-8: Example start ............................................................................................................................................. 27 Figure 2-9: SISO radio initialization .............................................................................................................................. 27 Figure 2-10: MIMO initialization .................................................................................................................................. 28 Figure 2-11: MIMO 4x4 Initialialization ....................................................................................................................... 29 Figure 2-12: PPS Sync failure ....................................................................................................................................... 30 Figure 2-13: PPS Sync success ...................................................................................................................................... 30 Figure 2-14: SISO calibration results ............................................................................................................................ 31 Figure 2-15: MIMO calibration results ......................................................................................................................... 31 Figure 2-16: MIMO 4x4 Calibration results .................................................................................................................. 31 Figure 2-17: Pass-through expected results ................................................................................................................ 32 Figure 2-18: DDS expected results ............................................................................................................................... 32 Figure 2-19: Record expected results .......................................................................................................................... 33 Figure 2-20: Matlab plot for record test ...................................................................................................................... 33 Figure 2-21: Playback expected results ....................................................................................................................... 34 Figure 2-22: Streaming to host SISO expected results ................................................................................................. 34 Figure 2-23: Streaming to host MIMO expected results.............................................................................................. 34 Figure 2-24: Streaming to host MIMO 4x4 expected results ....................................................................................... 35 Figure 2-25: Streaming to host stats ............................................................................................................................ 35 Figure 2-26: Matlab plot for streaming to host test .................................................................................................... 36 Figure 2-27: Streaming from host SISO expected results ............................................................................................ 37 Figure 2-28: Streaming from host MIMO expected results ......................................................................................... 37 Figure 2-29: Streaming from host MIMO 4x4 expected results .................................................................................. 37 Figure 2-30: Streaming from host stats ....................................................................................................................... 38 Figure 2-31 CLI record expected results ..................................................................................................................... 39 Figure 2-32 CLI playback expected results .................................................................................................................. 39 Figure 2-33 CLI RF calibrate expected results ............................................................................................................. 40 Figure 2-34: CLI PPS Sync expected results .................................................................................................................. 40
vi
Radio420Perseus Examples
1
1 Radio420 Loopback Example (BSP)
This example aims to illustrate how to interface the Perseus with the Radio420X FMC. It demonstrates an RF loopback performed at various frequencies, viewing the TX and RX data signals in ChipScope Pro. The example handles either a SISO configuration (Radio420s) or a MIMO configuration (Radio420m).
Custom Register 1 selects the operating mode of LimeDataMux. When 0, the ADC data is sent back to the DAC, when 1, the DDS 1 output data is sent to the DAC and finally when 4, the sum of DDS1 and DDS2 outputs is sent to the DAC.
Custom Register 0 and Custom Register 2 must be used to set DDS frequencies.
ChipScope Wrapper is used to demultiplex ADC and DAC IQ data. The generated ChipScope user clock is half the rate of the radio design clock and is used to display I and Q data on different ChipScope channels.
FMC 1
FMC 2
Chipscope
ADC I
ADC Q
DAC I
DAC Q
UserClkRadio420 FMC 1
ADC
DAC
IQSel
IQSel
Data
Data
DesignClkOutput
ChipscopeChipscope
Wrapper
ADC I
ADC Q
DAC I
DAC Q
UserClkRadio420 FMC 2
ADC
DAC
IQSel
IQSel
Data
Data
DesignClkInput
Chipscope
Wrapper
LimeDataMux
DDS frequency 1
DDS frequency 2
Mux selector
Clk
ADC data
ADC IQSel
DAC data
DAC IQSel
Custom
Register 1
Custom
Register 2
Custom
Register 0
LimeDataMux
DDS frequency 1
DDS frequency 2
Mux selector
Clk
ADC data
ADC IQSel
DAC data
DAC IQSel
Legend :
Chipscope User Clk
Signals on Chipscope User Clk
Signals on Axi Clk
Radio Design Clk
Signals on Radio Design Clk
Figure 1-1 Radio420X loopback example diagram
2
1.1 Requirements
1.1.1 Software requirements
These are the software requirements to compile and run the example.
Windows example
Xilinxs Platform Studio 13.4
ADP Software Tools TCA edition
1.1.2 Hardware requirements
These are the hardware requirements to run the examples depending on the setup used.
PicoSDR Perseus in a TCA chassis SISO
Perseus in a TCA chassis MIMO
1 PicoSDR (any version)
1 FPGA JTAG pod
2 MMCX to SMA or MMCX to BNC cables
1 MMCX to MMCX cable
1 spectrum analyzer of up to 3.8 GHz
1 signal generator of up to 3.8 GHz
1 PC running Xilinx Platform Studio and handling the JTAG connection
1 Perseus
1 Radio420s
1 MicroTCA chassis with its TCA Carrier Hub (MCH)
2 MMCX to SMA or MMCX to BNC cables
1 FPGA JTAG pod
1 PC running Xilinx Platform Studio and handling the JTAG connection
1 spectrum analyzer of up to 3.8 GHz
1 signal generator of up to 3.8 GHz
1 Perseus
1 Radio420m
1 MicroTCA chassis with its TCA Carrier Hub (MCH)
2 MMCX to SMA or MMCX to BNC cables
1 MMCX to MMCX cable
1 PC running Xilinx Platform Studio and handling the JTAG connection
1 spectrum analyzer of up to 3.8 GHz
1 signal generator of up to 3.8 GHz
Setup to run the example Setup to run the example Setup to run the example
3
1.2 Setup
1.2.1 Setup for execution on a PicoSDR
PicoDigitizer
JTAG
Radio420
2
Signal
Generator
MMCX to SMA (RX)
MMCX to SMA (TX) Spectrum
analyzer
MMCX to SMA (TX)
MMCX to SMA (RX)Radio420
1
Rout
Rin
Figure 1-2 PicoSDR with an external PC
The following procedure must be performed to execute the examples on a PicoSDR system with an external PC.
To set up the example:
1. Connect the FPGA JTAG pod to the computer and then the PicoSDR back panel.
Refer to the PicoSDR Users Guide documents for details about performing this operation.
4
1.2.2 Setup for execution in a MicroTCA chassis
Chassis
Perseus
MCH
JTAGSignal
Generator
MMCX to SMA (TX) Spectrum
analyzer
MMCX to SMA (RX)Radio420
1
SISO
configuration
Chassis
Perseus
MCH
JTAG
Radio420
2
Signal
Generator
MMCX to SMA (RX)
MMCX to SMA (TX) Spectrum
analyzer
MMCX to SMA (TX)
MMCX to SMA (RX)Radio420
1
Rout
Rin
MIMO
configuration
Figure 1-3 Perseus in a MicroTCA chassis, with an external PC
1. If not already done, install the Radio420 card on the Perseus.
2. If not already done, connect the FPGA JTAG pod to the computer and then to the Perseus.
Refer to the FPGA JTAG pod documentation for details about performing this operation.
3. If not already done, insert the Perseus into the TCA chassis.
1.2.3 Signal generator setup
To setup the example:
1. Connect a MMCX to SMA (or MMCX to BNC) cable between the FMCRadio RX connector and the signal generator.
2. Connect a MMCX to SMA (or MMCX to BNC) cable between the FMCRadio TX connector and the spectrum analyzer.
3. If in MIMO configuration, connect the MMCX to MMCX cable between the Radio #1 FMC Rout connector and the Radio #2 FMC Rin connector.
This allows the two cards to use the same clock reference.
4. Turn on the TCA chassis or the PicoSDR.
1.3 Procedure
To perform the test:
1. Open the Platform Studio project file in the ..\perseus6010_radio420x_loopback\edk\ folder.
2. In Platform Studio, on the Project menu, click Project Options. Under General tab select your Target Device matching your Perseus.
3. In Platform Studio, on the Hardware menu, click Generate Bitstream.
4. On the Project menu, click Export Hardware Design to SDK.
5. In the Export to SDK/Launch SDK dialog box, click Export & Launch SDK.
6. In the Workspace Launcher dialog box, next to Workspace, click the Browse button and select [ADPROOT]\\examples_perseus6010\perseus6010_radio420x_loopback\sdk\workspace.
5
Figure 1-4 Workspace Launcher dialog box
7. Click OK.
8. In Xilinx SDK, on the Project Explorer tab, there should be a hardware platform specification project named edk_hw_platform.
Figure 1-5 Project Explorer tab
9. In the Xilinx SDK main window, on the File menu click New and click Xilinx Board Support Package.
10. In the Project name box, type the name of the new board support package:
For example, radio420_bsp.
11. In the Hardware Platform list, make sure that the radio420 hardware platform is selected.
Figure 1-6 Xilinx Board Support Package dialog box
12. Click Finish to create the board support package.
13. In the Board Support Package Settings dialog box, click OK for now to close the settings.
14. Verify that the BSP has built successfully.
6
15. In Xilinx SDK, on the File menu, click Import.
16. In the Import dialog box, in the list, click the General folder, and click Existing Projects into Workspace.
17. Click Next.
18. Select Select root directory and click the Browse button.
19. In the Browse for Folder dialog box, select [ADPROOT]\examples_perseus6010\perseus6010_radio420x_loopback \sdk\workspace and click OK.
Figure 1-7 Import Projects dialog box
20. Under Projects, make sure that the FMCRadioInit project is selected.
21. Click Finish.
The elf file is generated automatically.
At this point it is possible the build fails.
If so, on the Project Explorer tab, right-click the FmcRadioInit project and select Change Referenced BSP. Select your Xilinx Board Support Package as the reference. The FMCRadioInit project will rebuild.
7
Figure 1-8 Acquisition Project menu
22. The following success message should be displayed in the console window:
ELF file: FMCRadioInit.elf
elfcheck passed.
Finished building: FMCRadioInit.elf.elfcheck
23. By default, the example application configures the Radio420X acquisition clock at 40 MHz and the RF carrier clock at 943 MHz and 953 MHz for reception and transmission.
24. Start the Perseus card.
25. In the Xilinx main window, on the Tools menu, click Program FPGA.
26. In the Program FPGA dialog box, click the Program button.
Figure 1-9 Program FPGA dialog box
27. In the main window, in the Project Explorer pane, right-click FMCRadioInit .elf [microblaze/be] (under FMCRadioInit> Binaries).
28. On the contextual menu, point to Debug as and click Debug configurations.
29. In the Debug Configurations dialog box, in the left pane, double-click Xilinx C/C++ ELF.
8
Figure 1-10 Debug Configurations dialog box
30. In the right pane, click the STDIO Connection tab.
31. Select the Connect STDIO to Console check box.
32. In the Port list, select JTAG UART and click Apply.
33. Click the Debug button.
The elf file is downloaded automatically.
34. If the Confirm Perspective Switch dialog box opens, select the Remember my decision check box and click Yes.
9
35. In the main window, on the Run menu, click Resume.
In the Console, the following message should appear.
Radio420s standalone SISO test
Bottom FMC: Radio420 AXI FPGA core is present
Bottom FMC: Radio420 set as REV D...
Bottom Radio420 setup:
Resetting Hardware
Configuring PLL
- Reference frequency: 30720000 Hz
- Acquisition frequency: 40000000 Hz
- Lime frequency: 30720000 Hz
PLL is locked
Configuring Gain
Configuring Lime PLL
- RX Carrier Frequency: 943 MHz
- TX Carrier Frequency: 953 MHz
- Low band is used
Configuration done!
Do you want to perform Radio clock disciplining with PPS Sync module? A GPS Pulse-per-
second signal must be connected to the PPS in connector on the Radio420 front panel
1.4 Expected Results with the Stand-Alone Application
To get the expected results:
1. Start ChipScope Pro.
Figure 1-11 ChipScope Pro window
2. In the top left corner of the screen, click Open Cable/Search JTAG chain and click OK.
3. On the File menu, click Open Project.
4. When ChipScope Pro prompts you to save the existing project, click No.
5. Browse to the ChipScope Pro project file in the \perseus6010_radio420x_loopback\chipscope folder, select radio420m_loopback.cpj (for MIMO) or radio420s_loopback.cpj (for SISO), and click Open.
6. Connect a signal generator to the RX connector, at 944 MHz and 0 dBm.
7. Connect the TX connector to a spectrum analyzer.
8. The spectrum analyzer should display a tone at 954 MHz (953 MHz LO + 1 MHz DDS).
9. Click the Trigger Now and Display the Buffered Samples button (the T! button).
10
Alternately, on the Trigger Setup menu, click Trigger Immediate. Chipscope triggers the acquisition of samples and displays them in the bus plot.
Figure 1-12 Sample acquisition
The Chipscope window should display a 1MHz tone for the ADC signals since the RX LO frequency is at 943 MHz. The DAC signals are from the internal DDS configured at 1 MHz.
Note:
To trigger another acquisition of samples, click the T! button again. You may connect different antennas or modify the distance between the antennas, and then repeat the test as many times as you need.
1.5 Clock disciplining with PPS Sync module
Once Radio initialization is done, the user is prompted with the option to discipline the radio acquisition clock to a GPS Pulse-Per-Second signal, using the PPS sync module. Enter 'y' to execute the synchronization. A PPS signal must be connected to the Radio420 PPS in connector. If no signal is present, the synchronization fails.
PPS-SYNC initialize.
Failed to detect PPS pulse : 0xc0740003
The following illustrates a successful PPS synchronization:
PPS-SYNC initialize.
Waiting for VCXO locked to GPS...
tick= 39999979 cte= 21 ppb=525 dac=38603 lock=0
tick= 39999990 cte= 31 ppb=250 dac=38891 lock=0
tick= 39999995 cte= 36 ppb=125 dac=39035 lock=0
tick= 39999998 cte= 38 ppb= 50 dac=39092 lock=0
tick= 39999998 cte= 40 ppb= 50 dac=39150 lock=0
tick= 40000000 cte= 40 ppb= 0 dac=39150 lock=0
tick= 40000000 cte= 40 ppb= 0 dac=39150 lock=0
tick= 40000000 cte= 40 ppb= 0 dac=39150 lock=0
tick= 40000000 cte= 0 ppb= 0 dac=39150 lock=0
tick= 39999999 cte= 0 ppb= 0 dac=39150 lock=0
tick= 40000001 cte= 0 ppb= 0 dac=39150 lock=0
tick= 40000000 cte= 0 ppb= 0 dac=39150 lock=0
tick= 40000001 cte= 0 ppb= 0 dac=39150 lock=0
tick= 40000001 cte= 0 ppb= 0 dac=39150 lock=0
tick= 40000001 cte= 0 ppb= 0 dac=39150 lock=0
tick= 40000001 cte= 0 ppb= 0 dac=39150 lock=0
tick= 40000001 cte= 0 ppb= 0 dac=39150 lock=0
tick= 40000001 cte= 0 ppb= 0 dac=39150 lock=0
11
tick= 40000001 cte= 0 ppb= 0 dac=39150 lock=0
tick= 40000000 cte= 0 ppb= 0 dac=39150 lock=1
VCXO locked to GPS
The information is displayed upon lock.
Tick is the current ADC/DAC clock count per second.
cte is the cumulative sample error since the start of the algorithm
ppb is the current error in parts per billion
dac is the current dac value
lock is the current lock state (1 means locked)
1.6 Executing the Calibration
To execute the calibration:
1. Press Enter in the test console as prompted to start the calibration.
2. The calibrations executed are the LO Leakage calibration and the Single Side Band calibration
3. The console should show the following:
Bottom Radio420 RF Calibration:
Calibrating to minimize LO leakage...
DONE
Calibrating IQ gain and phase...
DONE
Calibrating RF Front-End DC offset...
DONE
Reconfiguring PLL
PLL is locked
Reconfiguring Lime PLL
- Low band is used
Reconfiguring Gain
Done.
4. You may now check the calibrated signal with a spectrum analyzer.
1.7 Modifying the Example
To modify the example:
1. To set the example for a MIMO configuration, uncomment the MIMO definition and comment the SISO definition in the main.c header.
When running the example, the console output should be the following:
Radio420m standalone MIMO test
Bottom FMC: Radio420 AXI FPGA core is present
Top FMC: Radio420 AXI FPGA core is present
Bottom FMC: Radio420 set as REV D...
Top FMC: Radio420 set as REV D...
Bottom Radio420 setup:
Resetting Hardware
Configuring PLL
- Reference frequency: 30720000 Hz
- Acquisition frequency: 40000000 Hz
- Lime frequency: 30720000 Hz
PLL is locked
Configuring Gain
Configuring Lime PLL
- RX Carrier Frequency: 943 MHz
- TX Carrier Frequency: 953 MHz
- Low band is used
Configuration done!
Top Radio420 setup:
Resetting Hardware
Configuring PLL
- Reference frequency: 30720000 Hz
12
- Acquisition frequency: 40000000 Hz
- Lime frequency: 30720000 Hz
PLL is locked
Configuring Gain
Configuring Lime PLL
- RX Carrier Frequency: 943 MHz
- TX Carrier Frequency: 953 MHz
- Low band is used
Configuration done!
2. Check with a spectrum analyzer to see the signal without calibration.
3. Press enter to compensate the signal IQ gain and phase imbalance, RX RF front-end DC offset, and LO leakage.
4. To change the FMC hardware revision used, modify the BOTTOMREV and TOPREV definitions in the main.c header.
5. To change the carrier frequency, modify the carrier frequency declarations at the beginning of the main function in the main.c
For example change
unsigned tx_carrier_frequency = (unsigned) 953e6;
to
unsigned tx_carrier_frequency = (unsigned) 650e6;
The expected console result is:
Bottom Radio420 setup:
Resetting Hardware
Configuring PLL
- Reference frequency: 30720000 Hz
- Acquisition frequency: 40000000 Hz
- Lime frequency: 30720000 Hz
PLL is locked
Configuring Gain
Configuring Lime PLL
- RX Carrier Frequency: 943 MHz
- TX Carrier Frequency: 650 MHz
Configuration done!
13
6. To change the Radio frequency from low band to high band, change the carrier frequency from
unsigned tx_carrier_frequency = (unsigned) 953e6;
to
unsigned tx_carrier_frequency = (unsigned) 2200e6;
The expected console result is:
Bottom Radio420 setup:
Resetting Hardware
Configuring PLL
- Reference frequency: 30720000 Hz
- Acquisition frequency: 40000000 Hz
- Lime frequency: 30720000 Hz
PLL is locked
Configuring Gain
Configuring Lime PLL
- RX Carrier Frequency: 943 MHz
- TX Carrier Frequency: 2200 MHz
- High band is used
Configuration done!
7. To change the Radio acquisition frequency, modify the acquisition_frequency declaration at the beginning of the main function in the main.c.
For example change
acquisition_frequency = (unsigned) 40e6;
to
acquisition_frequency = (unsigned) 10.24e6;
A list of valid values for this field can be found in the description of the E_FMCRADIO_DATARATE_REF_30_72MHZ enum in the fmc_radio_defines.h file.
Note:
The frequency configure by this parameter is the operating frequency of the RF chip of the Radio420. Since the I and Q samples are interleaved, if you want a specific sampling frequency for I and Q signals, the Radio420 operating frequency must be configured twice as fast.
The expected console result is:
Bottom Radio420 setup:
Resetting Hardware
Configuring PLL
- Reference frequency: 30720000 Hz
- Acquisition frequency: 10240000 Hz
- Lime frequency: 30720000 Hz
PLL in bypass
Configuring Gain
Configuring Lime PLL
- RX Carrier Frequency: 943 MHz
- TX Carrier Frequency: 953 MHz
Configuration done!
14
2 Radio420 RTDEx Record/Playback Example (BSDK) for Windows 7 (64 Bits) and Linux (32 and 64 Bits) on Gigabit Ethernet and PCI Express
The Radio420X RTDEX and Record/Playback example illustrates how to record data from the Radio420X ADC and how to playback data on the Radio420X DAC. The example handles either a SISO or a MIMO configuration. Figure 2-1 and 2-2 illustrate the example setup.
Gigabit
Ethernet or
PCIe
RTDEx
Radio420 core
Record/ Playback
Record
ADC Data
DAC Data
Radio420 core
ADC Data
DAC Data
Playback
I
Q
I
Q
I
Q
Bottom
FMC
Top
FMC
Mem to
Host
Host to
Mem
Channel 0
TX
Channel 0
RX
To and from
Host
DDS
Generator
IQ Mux
I
Q
I
Q
I Q
Sync
Sync
Figure 2-1 Radio420X record/playback diagram
15
Gigabit
Ethernet or
PCIe
RTDEx
Radio420 core
ADC Data
DAC Data
Radio420 core
ADC Data
DAC Data
I
Q
I
QRadio 1
Radio 2
Channel 1
TX
Channel 1
RX
To and from
Host
IQ Mux
Channel 2
TX
I
Q
I
Q
I
Q
Channel 2
RX
I
Q
Sync
Sync
Figure 2-2 Radio420X RTDEx streaming diagram
The synchronization blocks allow the user to synchronize the transmitter and receiver channels. On the PicoSDR4x4, up to 4 TX and 4 RX channels can synchronized through AMC port 14. The blocks make sure the radio data is written to memory or read from memory at the same time for all four channels.
A write of 1 to custom register 3 (address 0x71000024 of the MicroBlaze AXI-bus) will enable writes to the memory on all channels, making sure the first sample written to the memory was sampled at the same time on all channels.
Custom register 4 (address 0x71000028 of the MicroBlaze AXI-bus) handles the synchronization of the transmitters. The TX synchronization block verifies that all transmitters have data to send. To disable the synchronization, write 0 to the register. To enable a MIMO 2x2 sync on a Radio420m stack, write 1 to the register. To enable a MIMO4x4 synchronization on the PicoSDR4x4, write 2 to the register.
The MIMO 4x4 example is only supported on the PicoSDR and with GIgabit Ethernet RTDEx.
2.1 Pass-through test
The pass-through test routes all data acquired on the Radio ADCs directly to the Radio DACs.
2.2 DDS test
A DDS generator core generates a tone which is sent to both Radio420X DACs. The tone is configurable in frequency and in amplitude. When a record is done in the example, the user can select 4 different sources for Radio420X DACs.
DDS output
DDS output -3 dB
DDS output -6 dB
16
Dual tone DDS
2.3 Record test
The RF signal is acquired and is stored to memory by the Record module. The RTDEx modules (RTDEx or PCI Express) is then used to retrieve the data from the host, where it is stored in a binary file.
2.4 Playback test
A waveform is written in Perseus memory and played back on the Radio DACs by the Record/Playback module
2.5 Streaming to host test
Radio ADC data is streamed directly on the host where it is stored in a binary file.
2.6 Streaming from host test
A waveform is streamed to the Perseus by the RTDEx module (RTDEx or PCI Express). The data is routed to the Radio DACs
17
2.7 Requirements
2.7.1 Software requirements
These are the software requirements to run and compile the example depending of the operating system used.
Windows example Linux example (Fedora or Ubuntu)
Xilinxs Platform Studio 13.4 Xilinx Platform Studio 13.4
Visual Studio 2008 SP1 ADP software tools TCA edition for Linux
ADP Software Tools TCA edition
2.7.2 Hardware requirements
These are the hardware requirements to run the examples depending on the setup used.
PicoSDR with external PC
PicoSDR with embedded CPU
Perseus in a TCA chassis with External PC
Perseus and embedded PC in a
TCA chassis
1 PicoSDR (any version)
1 PC with a Gigabit Ethernet network card (jumbo frame capable)
1 Gigabit Ethernet cable
1 PCI Express extension cable (for PCIe example)
1 FPGA JTAG pod
2 MMCX to SMA or MMCX to BNC cables
1 MMCX to MMCX cable
1 spectrum analyzer of up to 3.8 GHz
1 signal generator of up to 3.8 GHz
1 PicoSDR2x2-E
1 computer Xilinx Impact (to operate the FPGA JTAG pod)
1 FPGA JTAG pod
2 MMCX to SMA or MMCX to BNC cables
1 MMCX to MMCX cable
1 spectrum analyzer of up to 3.8 GHz
1 signal generator of up to 3.8 GHz
1 Perseus
1 Radio420s or Radio420m
1 MicroTCA chassis with its TCA Carrier Hub (MCH)
1 computer with a Gigabit Ethernet network card (jumbo frame capable)
1 Gigabit Ethernet cable
1 FPGA JTAG pod
2 MMCX to SMA or MMCX to BNC cables
1 MMCX to MMCX cable
1 spectrum analyzer of up to 3.8 GHz
1 signal generator of up to 3.8 GHz
1 1-GHz oscilloscope
1 Perseus
1 Radio420s or Radio420m
1 embedded PC running Linux Fedora or Ubuntu
1 MicroTCA chassis with its TCA Carrier Hub (MCH)
1 FPGA JTAG pod1 computer with Xilinx Impact (to operate the FPGA JTAG pod)
2 MMCX to SMA or MMCX to BNC cables
1 MMCX to MMCX cable
1 spectrum analyzer of up to 3.8 GHz
1 signal generator of up to 3.8 GHz
Setup to run the example Setup to run the example Setup to run the example Setup to run the example
18
2.8 Setup
2.8.1 Setup for execution on a PicoSDR on an external PC
PicoSDR
JTAG GigE
Radio420
2
Signal
Generator
MMCX to SMA (RX)
MMCX to SMA (TX) Spectrum
analyzer
MMCX to SMA (TX)
MMCX to SMA (RX)Radio420
1
Rout
Rin
PCIe
Figure 2-3 PicoSDR with an external PC
The following procedure must be performed to execute the examples on a PicoSDR system with an external PC.
To set up the example:
1. Connect the FPGA JTAG pod to the external PC and then the PicoSDR back panel.
Refer to the PicoSDR Users Guide documents for details about performing this operation.
2. Connect the Gigabit Ethernet cable between the external PC and the PicoSDR back panel.
3. Connect the PCI Express extension cable between the external PC and the PicoSDR back panel.
19
2.8.2 Setup for execution on a PicoSDR on its embedded PC
PicoSDR
JTAG
Embedded PC
GigE
or
PCIe
Perseus
Radio420
2
Signal
Generator
MMCX to SMA (RX)
MMCX to SMA (TX) Spectrum
analyzer
MMCX to SMA (TX)
MMCX to SMA (RX)Radio420
1
Rout
Rin
Figure 2-4 PicoSDR with an its embedded PC
The PicoSDR2x2-E contains an embedded PC and a Perseus. The following procedure must be performed to execute the examples on a PicoSDR system with its embedded PC.
To set up the example:
1. Connect the FPGA JTAG pod to the computer and then the PicoSDR back panel.
Refer to the PicoSDR Users Guide documents for details about performing this operation.
20
2.8.3 Setup for execution in a MicroTCA chassis
JTAG
Chassis
Perseus
MCH
GigE
GigE
Signal
Generator
MMCX to SMA (TX) Spectrum
analyzer
MMCX to SMA (RX)Radio420
1
SISO
configuration
JTAG
Chassis
Perseus
MCH
GigE
GigERadio420
2
Signal
Generator
MMCX to SMA (RX)
MMCX to SMA (TX) Spectrum
analyzer
MMCX to SMA (TX)
MMCX to SMA (RX)Radio420
1
Rout
Rin
MIMO
configuration
Figure 2-5 Perseus in a MicroTCA chassis, with an external PC
1. If not already done, install the Radio420s or Radio420m card on the Perseus.
2. If not already done, connect the FPGA JTAG pod to the computer and then to the Perseus.
Refer to the FPGA JTAG pod documentation for details about performing this operation.
3. Connect the Gigabit Ethernet cable between the MCHs front panel Ethernet connector and your PCs Gigabit Ethernet network card.
4. If not already done, insert the Perseus into the TCA chassis.
21
2.8.4 Setup for execution in a MicroTCA chassis on an embedded PC
JTAG
Chassis
Perseus
MCH
GigE
Or PCIe
GigE
Or
PCIESignal
Generator
MMCX to SMA (TX) Spectrum
analyzer
MMCX to SMA (RX)Radio420
1
SISO
configuration
Embedded PC
JTAG
Chassis
Perseus
MCH
GigE
Or PCIe
GigE
Or
PCIESignal
Generator
MMCX to SMA (TX) Spectrum
analyzer
MMCX to SMA (RX)Radio420
1
MIMO
configurationEmbedded PC
Radio420
2
MMCX to SMA (RX)
MMCX to SMA (TX)
Rout
Rin
Figure 2-6 Perseus in a MicroTCA chassis, with an external PC
1. If not already done, install the ADAC250 card on the Perseus.
2. If not already done, connect the FPGA JTAG pod to the computer and then to the Perseus.
Refer to the FPGA JTAG pod documentation for details about performing this operation.
3. If not already done, insert the Perseus into the TCA chassis.
2.8.5 Setup for execution of MIMO 4x4 example on a PicoSDR4x4
Perseus A
PicoSDR 4x4
JTAG
GigE
or
PCIe
Radio420
2
Signal
Generator
MMCX to SMA (RX)
MMCX to SMA (TX) Spectrum
analyzer
MMCX to SMA (TX)
MMCX to SMA (RX)Radio420
1
Rout
Rin
Perseus B
Radio420
2
MMCX to SMA (RX)
MMCX to SMA (TX)
MMCX to SMA (TX)
MMCX to SMA (RX)Radio420
1
Rout
Rin
Rout
Rin
Figure 2-7 Perseus in a MicroTCA chassis, with an external PC
22
2.8.6 Signal generator setup
To setup the test:
1. Connect a MMCX to SMA cable between the FMCRadio RX connector and the signal generator.
2. Connect a MMCX to SMA cable between the FMCRadio TX connector and the spectrum analyzer.
3. If in MIMO configuration, connect the MMCX to MMCX cable between Radio #1's FMC ROUT connector and the Radio #2's FMC RIN connector.
This allows the two cards to use the same clock reference.
4. If in MIMO 4x4 configuration, connect MMCX to MMCX cables between Radio #2's FMC ROUT connector and the Perseus B's Radio #1' FMC RIN connector and between Perseus B's Radio #1 FMC ROUT connector and Perseus B Radio #2 FMC RIN connector.
This allows the four cards to use the same clock reference.
5. Turn on the TCA chassis or the PicoSDR.
2.9 Generating the FPGA configuration file
1. To compile the Gigabit Ethernet RTDEx example, open the Platform Studio project file in the \perseus6010_radio420x_rtdex_record_playback\edk_gige\ folder.
2. In Platform Studio, on the Project menu, click Project Options. Under General tab select your Target Device matching your Perseus.
3. In Platform Studio, on the Hardware menu, click Generate Bitstream.
4. On the Device Configuration menu, click Download Bitstream.
2.10 PCI Express link validation
If the PCI Express medium is used, follow this procedure to validate the PCI Express link.
1. Once the Perseus is configured and has booted, power cycle the PC to allow it to enumerate the Perseus PCI Express device.
2. Validate the PCI Express link presence. Follow the instructions given in the Installing the PCI Express Drivers.pdf document at the /documentation/pdf/Perseus location.
3. Install the PCI Express driver on the host PC. Follow the instructions given in the Installing the PCI Express Drivers.pdf document at the /documentation/pdf/Perseus location.
2.11 Procedure with Visual Studio on Windows
To perform the example with Visual Studio:
1. Start Microsoft Visual Studio.
2. On the File menu, point to Open and click Project/Solution.
3. Browse to the ..\ perseus6010_radio420x_rtdex_record_playback \host\prj_win\ folder and select the file named perseus6010_radio420x_rtdex_record_playback.sln.
The host software project opens and the hierarchy of the project appears in the Solution Explorer panel. If the Solution Explorer panel is not visible, on the View menu click Solution Explorer.
4. Select the Release, x64 build configuration.
5. On the Build menu, click Build Solution.
6. Specify the necessary application parameters for the host software in the Launch_radio420x_rtdex_record_playback.bat file in the ADPROOT\examples_perseus6010\ perseus6010_radio420x_rtdex_record_playback\host\prj_win\ folder.
The application parameters are specific to the hardware used:
23
Argument 1 is the IP address of the Perseus
Argument 2 is the number of radios used in the test (enter 1 for a SISO test, 2 for a MIMO test and 4 for a MIMO 4x4 test).
Argument 3 is the record file path and name
Argument 4 is the number of samples per channel which will be recorded
Argument 5 is present if test is MIMO 4x4. It is the IP address of Perseus B
The IP_ADDR_PERSEUS parameter contains the IP address of the Perseus port 0 (for example, 192.168.0.101). The bytes of this address must be separated by periods.
For the example value above, the combined argument would be: SET IP_ADDR_PERSEUS=192.168.0.101.
Notes
The values presented here are for the example purposes; it is important to specify addresses for the hardware actually used.
7. Save and close the file.
8. Set the signal generator to generate a 944-MHz sine.
The receiver being configured at 943 MHz, therefore a 1-MHz sine signal is expected to be acquired.
9. Set the spectrum analyzer at 953 MHz.
10. Double-click Launch_radio420x_rtdex_record_playback.bat.
The test starts automatically.
24
2.12 Procedure with Makefile on Linux
To perform the example:
1. In the Linux installation, browse to /opt/Nutaq/ADP/ADP_MicroTCA/sdk/examples/perseus6010_radio420x_rtdex_record_playback /host/prj_linux
2. To build the example, run the following command in the Linux terminal.
sudo ./build_demo.sh
3. Edit the Launch_radio420x_rtdex_record_playback.sh file.
4. Specify the necessary application parameters for the host software in the Launch_radio420x_rtdex_record_playback.sh. Change the IP address to match the address of the Perseus.
The application parameters are specific to the hardware used:
Argument 1 is the IP address of the Perseus
Argument 2 is the number of radios used in the test (enter 1 for a SISO test, 2 for a MIMO test and 4 for a MIMO 4x4 test).
Argument 3 is the record file path and name
Argument 4 is the number of samples per channel which will be recorded
Argument 5 is present if test is MIMO 4x4. It is the IP address of Perseus B
5. Save and close the file.
6. Set the signal generator to generate a 944-MHz sine at 0 dBm.
The receiver being configured at 943 MHz, therefore a 1-MHz sine signal is expected to be acquired.
7. To start the example, run the following command in the Linux terminal.
sudo ./Launch_radio420x_rtdex_record_playback.sh
The test starts automatically.
25
2.13 Procedure with the Nutaq Command-Line Interface on Windows
To perform the example using Nutaq Command-Line interface:
1. Browse to the ADPROOT\examples_perseus6010\perseus6010_radio420x_rtdex_record_playback\host\cli\ folder.
The folder contains multiple CLI scripts that can be used to test the Radio420X hardware and to record and playback data. The following scripts can be run.
Test SISO script MIMO script
Radio configuration with RF calibration radio420s_rf_calibrate_demo radio420m_rf_calibrate_demo
Data record radio420s_record radio420m_record
Data playback radio420s_playback radio420m_playback
PPS Sync radio420x_ppssync radio420x_ppssync
Table 1 CLI script list
2. Before running a script, open the associated .txt file (that is, radio420x_siso_record.txt) and replace the Perseus IP address with a value that is compatible with your system configuration.
This is to allow the system to communicate with the Perseus.
3. To start the example, double-click associated batch file (that is, launch_radio420s_record.bat).
26
2.14 Procedure with the Nutaq Command-Line Interface on Linux
To perform the example using Nutaq Command-Line interface:
1. Browse to the /opt/Nutaq/ADP/ADP_MicroTCA/sdk/examples/perseus6010_radio420x_rtdex_record_playback /host/cli folder.
The folder contains multiple CLI scripts that can be used to test the Radio420X hardware and to record and playback data. The following scripts can be run.
Test SISO script MIMO script
Radio configuration with RF calibration radio420s_rf_calibrate_demo radio420m_rf_calibrate_demo
Data record radio420s_record radio420m_record
Data playback radio420s_playback radio420m_playback
PPS Sync radio420x_ppssync radio420x_ppssync
Table 2 CLI script list
2. Before running a script, open the associated .txt file (that is, radio420x_siso_record.txt) and replace the Perseus IP address with a value that is compatible with your system configuration.
This is to allow the system to communicate with the Perseus.
3. To start the example, launch the associated shell file (that is, launch_radio420s_record.sh) using the sudo prefix
Example: sudo ./launch_radio420s_record.sh
27
2.15 Expected Results with Visual Studio and Makefile
As the example starts, the connection to the Perseus is established and the user is prompted with the test choice. Information is also displayed in the console, such as the number of cards used (SISO, MIMO or MIMO4x4) and the RTDEx Media detected in the FPGA configuration.
Figure 2-8: Example start
The user must choose which test to execute. Once the choice is done, the Radio420 FMCs will be initialized.
Figure 2-9: SISO radio initialization
28
Figure 2-10: MIMO initialization
29
Figure 2-11: MIMO 4x4 Initialialization
Information on the used acquisition and RF frequencies used is displayed.
30
2.15.1 PPS Sync results
Once Radio initialization is done, the user is prompted with the option to discipline the radio acquisition clock to a GPS Pulse-Per-Second signal, using the PPS sync module. Enter 'y' to execute the synchronization. A PPS signal must be connected to the Radio420 PPS in connector. If no signal is present, the synchronization fails.
Figure 2-12: PPS Sync failure
The following illustrates a successful pps synchronization:
Figure 2-13: PPS Sync success
The information is displayed upon lock.
Tick is the current ADC/DAC clock count per second.
cte is the cumulative sample error since the start of the algorithm
ppb is the current error in parts per billion
dac is the current dac value
lock is the current lock state (1 means locked)
31
2.15.2 Calibration results
The user is then prompted with the option of calibrating the Radio transmitters. Enter 'y' to calibrate.
Figure 2-14: SISO calibration results
Figure 2-15: MIMO calibration results
Figure 2-16: MIMO 4x4 Calibration results
Once calibration is done (or skipped), the test previously chosen will execute.
32
2.15.3 Pass-through results
For the Pass-through test, the following equipment setup should be used:
Signal generator: 0 dBm signal at 944 MHz
Spectrum analyzer: 953 MHz center frequency
Figure 2-17: Pass-through expected results
After the test has run, the user can verify that a tone is present at 954MHz on the spectrum analyzer on all initialized radios.
2.15.4 DDS results
For the Pass-through test, the following equipment setup should be used:
Spectrum analyzer: 953 MHz center frequency
The DDS test send a FPGA generated tone on the radio DACs.
Figure 2-18: DDS expected results
After the test has run, the user can verify that a tone is present at 954MHz on the spectrum analyzer on all initialized radios. If RF calibration was executed, the power ratio between the tone signal (at 954MHz) and both the local oscillator (at 953MHz) and the lower side band signal (at 952MHz) should be close to 48 dB.
33
2.15.5 Record results
For the Record test, the following equipment setup should be used:
Signal generator: 0 dBm signal at 944 MHz
Figure 2-19: Record expected results
Data is saved to the specified file in the batch or shell file, here called record.bin. In MIMO 4x4, data from each Perseus is stored within a different file (record.binA and record.binB).
Plotting the recorded data in Matlab, the user should see a 1 MHz tone in the displayed FFT for all initialized radios which were inputted the 944MHz signal.
To plot the received data using Matlab:
1. In Matlab, set the current directory to:
%ADPROOT%\examples_perseus6010\perseus6010_radio420x_rtdex_record_playback\bin.
2. Use the command bintofft to plot the data.
For example:
bintofft('record.bin', 4, 'int16', 65536, 40000000/2); record.bin: is the recorded file.
4: is the number of channels (i.e. I and Q channels for both Radios). Even if the test is in SISO, the FPGA always acquires IQ data for two radios, therefore the number of channels must be 4.
'int16': indicates that each sample is recorded on 16 bits integers.
65536: is the number of recorded samples per channel.
40000000/2: is the sampling rate. (In the example, the ADC frequency is set at 40 MHz.)
For this specific example, the results for a channel are:
Figure 2-20: Matlab plot for record test
34
2.15.6 Playback results
For the Playback test, the following equipment setup should be used:
Spectrum analyzer: 953 MHz center frequency
The playback test uses file playback_sinewave.bin which holds a generated sine waveform of 1MHz when sampled at 40MHz (20MHz I and 20MHz Q).
Figure 2-21: Playback expected results
When the continuous playback is selected, a tone should appear on the spectrum analyzer at 954 MHz. If RF calibration was executed, the power ratio between the tone signal (at 954MHz) and both the local oscillator (at 953MHz) and the lower side band signal (at 952MHz) should be close to 48 dB.
2.15.7 Streaming to host results
For the streaming to host test, the following equipment setup should be used:
Signal generator: 0 dBm signal at 944 MHz for SISO and MIMO test
Signal generator: 0 dBm signal at 943.25 MHz for MIMO 4x4 test
Figure 2-22: Streaming to host SISO expected results
Figure 2-23: Streaming to host MIMO expected results
35
Figure 2-24: Streaming to host MIMO 4x4 expected results
Data is saved to the specified file in the batch or shell file, here called record.bin. The streaming rate for each radio is displayed in the console. The streaming test uses different rates depending on the configuration.
Using Gigabit Ethernet as the RTDEx medium, the default sampling frequencies used are:
SISO: 16 Msps
MIMO: 8 Msps
MIMO 4x4: 5,12 Msps
Using PCI Express as the RTDEx medium, the default sampling frequencies used are:
SISO: 64 Msps
MIMO: 64 Msps
The displayed rates should correspond to the rates listed above.
Once the specified amount of data has been written to file, the Data Saved! indication will appear. Press enter to terminate the test.
Figure 2-25: Streaming to host stats
The streaming stats will be displayed.
Plotting the recorded data in Matlab, the user should see a 1 MHz tone in the displayed FFT for all initialized radios which were inputted the 944MHz signal.
To plot the received data using Matlab:
1. In Matlab, set the current directory to:
%ADPROOT%\examples_perseus6010\perseus6010_radio420x_rtdex_record_playback\bin.
2. Use the command bintofft to plot the data.
For example:
bintofft('record.bin', 4, 'int16', 65536, 8000000/2); record.bin: is the recorded file.
36
4: is the number of channels (i.e. I and Q channels for both Radios).
'int16': indicates that each sample is recorded on 16 bits integers.
65536: is the number of recorded samples per channel.
16000000/2: is the sampling rate. (In the example, the ADC frequency is set at 8 MHz.)
To plot the SISO test data, use bintofft('record.bin', 2, 'int16', 65536, 16000000/2);
To plot the MIMO test data, use bintofft('record.bin', 4, 'int16', 65536, 8000000/2);
To plot the MIMO 4x4 test data, use bintofft('record.bin', 8, 'int16', 65536, 5120000/2);
For this specific example, the results for a channel are:
Figure 2-26: Matlab plot for streaming to host test
37
2.15.8 Streaming from host results
For the streaming from host test, the following equipment setup should be used:
Spectrum analyzer: 953 MHz center frequency
The test uses files streaming_sinewave.bin and streaming_sinewave_pcie.bin which holds a generated sine waveform of 1MHz.
streaming_sinewave.bin is used for Gigabit Ethernet tests. When streaming the file, the resulting tone on depends on the set sampling frequency.
In SISO, the sampling clock is 16 MHz, which places the generated tone at 1MHz
in MIMO, the sampling clock is 8 MHz, which places the generated tone at 0,5 MHz
in MIMO 4x4, the sampling clock is 5,12 MHz, which places the generated tone at 0,32 MHz
streaming_sinewave_pcie.bin is used for PCI Express tests. The resulting tone is 1MHz sampled at 64MHz
Figure 2-27: Streaming from host SISO expected results
Figure 2-28: Streaming from host MIMO expected results
Figure 2-29: Streaming from host MIMO 4x4 expected results
The streaming rate for each radio is displayed in the console. The streaming test uses different rates depending on the configuration.
Using Gigabit Ethernet as the RTDEx medium, the default sampling frequencies used are:
38
SISO: 16 Msps
MIMO: 8 Msps
MIMO 4x4: 5,12 Msps
Using PCI Express as the RTDEx medium, the default sampling frequencies used are:
SISO: 64 Msps
MIMO: 64 Msps
The displayed rates should correspond to the rates listed above.
On the spectrum analyzer, a tone should appear at a frequency which depends on the configuration used:
Using Gigabit Ethernet as the RTDEx medium, the expected
SISO: Tone at 954 MHz
MIMO: Tone at 953,5 MHz
MIMO 4x4: Tone at 953,32 MHz
Using PCI Express as the RTDEx medium, the sampling frequencies used are:
SISO: Tone at 954 MHz
MIMO: Tone at 954 MHz
If RF calibration was executed, the power ratio between the tone signal and both the local oscillator (at 953MHz) and the lower side band signal should be close to 48 dB.
Press enter to terminate the streaming. The streaming stats will appear:
Figure 2-30: Streaming from host stats
39
2.16 Expected Results with Nutaq's Command Line Interface
The following is expected when executing the CLI scripts.
2.16.1 Record results
For the Record test, the following equipment setup should be used:
Signal generator: 0 dBm at 943 MHz
Figure 2-31 CLI record expected results
To plot the SISO test data, use bintofft('radio420s_record_data.bin', 4, 'int16', 65536, 40000000/2);
To plot the MIMO test data, use bintofft('radio420m_record_data.bin', 4, 'int16', 65536, 40000000/2);
A 1 MHz tone should appear on all initialized and connected channels.
2.16.2 Playback results
For the Playback test, the following equipment setup should be used:
Spectrum analyzer: 953 MHz center frequency
The playback test uses file playback_sinewave.bin which holds a generated sine waveform of 1MHz when sampled at 40MHz (20MHz I and 20MHz Q).
Figure 2-32 CLI playback expected results
40
A tone at 954 MHz should appear on the spectrum analyzer.
2.16.3 RF calibration results
For the RF calibration test, the following equipment setup should be used:
Spectrum analyzer: 953 MHz center frequency
A DDS signal is configured to generate a 1MHz tone sampled at 40MHz.
Figure 2-33 CLI RF calibrate expected results
A tone should appear at 954 MHz. After calibration has run, the power ratio between the tone signal (at 954MHz) and both the local oscillator (at 953MHz) and the lower side band signal (at 952MHz) should be close to 48 dB.
2.16.4 PPS Sync results
For the PPS Sync, the following equipment setup should be used:
PPS Signal on the PPS in connector on the Radio420 front panel.
Figure 2-34: CLI PPS Sync expected results