Changes between Version 23 and Version 24 of WARPLab6


Ignore:
Timestamp:
Sep 21, 2009, 4:43:58 PM (15 years ago)
Author:
murphpo
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WARPLab6

    v23 v24  
    1 = WARPLab =
     1[[TracNav(WARPLab/TOC)]]
    22
    3 WARPLab is a framework which brings together WARP and MATLAB. With WARPLab, you can interact with WARP nodes directly from the MATLAB workspace.
     3== WARPLab Framework Overview ==
    44
    5 This documentation is a work in progress. Please check back as we improve it.
     5WARPLab is a framework which brings together WARP and MATLAB. With WARPLab, you can interact with WARP nodes directly from the MATLAB workspace and signals generated in MATLAB can be transmitted in real-time over-the-air using WARP nodes. This facilitates rapid prototyping of PHYsical (PHY) layer algorithms.
    66
    7 == Requirements ==
    8  * At least two WARP nodes
    9  * A PC with MATLAB
    10  * An Ethernet switch
     7The WARPLab framework provides the following.
    118
    12 == Note about WARPLab files ==
    13 There are five versions of the WARPLab files. '''FOR NEW USERS WE RECOMMEND USING VERSION 5'''. Versions 1, 2, 3, and 4 will be deprecated soon.
     9 * WARPLab XPS Reference Design: The bitstream ('.bit' file) to program the WARP nodes and the WARPLab Xilinx Platform Studio (XPS) Reference Design to generate this bitstream are provided.
     10 * WARPLab Reference M-Code: M-Code functions that facilitate interaction with WARP nodes directly from MATLAB workspace are provided.
     11 * WARPLab Examples: M-Code examples that show how to use the WARPLab Reference M-Code are provided.
    1412
    15  * Version 1: Posted on November 2007. Supports SISO communication. This was the version used at the Fourth WARP Workshop held at Rice on Nov 1-2 2007 and the Fifth WARP Workshop held at IIT Madras on Dec 1-2 2007.
     13The basic WARPLab setup is shown in the figure below. The basic WARPLab flow is the following.
    1614
    17  * Version 2: Posted on April 2008. Supports SISO and MIMO (2x2) communication and allows continuous transmission mode. This was the version used at the Sixth WARP Workshop held at Nile University on April 16-17 2008. Two bitstreams are provided, one bitstream to program the boards in the SISO configuration and another bitstream to program the boards in the 2x2 MIMO configuration. The MATLAB Reference functions support both SISO and 2x2 MIMO.
     15 * The user creates in MATLAB the samples to be transmitted.
     16 * The samples to be transmitted are downloaded to buffers in the nodes assigned as transmitters.
     17 * The user sends a trigger to transmitter and receiver nodes. Upon reception of this trigger, samples are transmitted over-the-air and captured in real-time.
     18 * The user reads captured samples from the receiver nodes to the MATLAB workspace.
     19 * Received samples are processed offline in MATLAB
    1820
    19  * Version 3: Posted on July 2008. Supports MIMO 4x4 communication and allows continuous transmission mode for 2x2 MIMO. This was the version used at the Seventh WARP Workshop held at Rice University on July 14-15 2008. Two bitstreams are provided, one bitstream to program the boards in the 2x2 MIMO configuration and another bitstream to program the boards in the 4x4 MIMO configuration. Continuous transmission mode and reading of RSSI values is supported by the 2x2 MIMO bitstream but not by the 4x4 MIMO bitstream. When the boards are programmed with the 4x4 MIMO bitstream 2x2 MIMO communication is possible but continuous transmission mode and reading of RSSI values is not possible. The MATLAB Reference functions support both 2x2 and 4x4 MIMO bitstreams.
    20 
    21  * Version 4: Posted on November 2008, modified January 2009. The WARPLab MIMO 2x2 and 4x4 Reference Designs have been updated to version 10 of the Xilinx tools. The update required some changes in the Sysgen model resulting in minor changes in the Reference M code. The Capture Offset parameter has been changed to a Transmitter Delay parameter (look at the warplab_defines.m code and the WARPLab examples), the Capture Offset was a receiver parameter, the Transmitter Delay is a transmitter parameter and should be downloaded to the transmitter node. Two bitstreams are provided, one bitstream to program the boards in the 2x2 MIMO configuration and another bitstream to program the boards in the 4x4 MIMO configuration. Reading of RSSI values is supported by the 2x2 MIMO bitstream but not by the 4x4 MIMO bitstream. Continuous transmission mode is supported by both the 2x2 and 4x4 bitstreams. When the boards are programmed with the 4x4 MIMO bitstream 2x2 MIMO communication is possible but reading of RSSI values is not possible. The MATLAB Reference functions support both 2x2 and 4x4 MIMO bitstreams.
    22 
    23  * '''Version 5''': Posted on September 2009. The WARPLab MIMO 2x2 and 4x4 Reference Designs have been updated to include Automatic Gain Control (AGC). Previous versions of WARPLab required Manual Gain Control (MGC), the user was required to set receiver gains manually. In this new Version 5 release the user can choose between AGC or MGC mode using simple m-code functions. Two bitstreams are provided, one bitstream to program the boards in the 2x2 MIMO configuration and another bitstream to program the boards in the 4x4 MIMO configuration. AGC and MGC are supported by both bitstreams. Reading of RSSI values is supported by the 2x2 MIMO bitstream but not by the 4x4 MIMO bitstream. Continuous transmission mode is supported by both the 2x2 and 4x4 bitstreams. When the boards are programmed with the 4x4 MIMO bitstream 2x2 MIMO communication is possible but reading of RSSI values is not possible. The MATLAB Reference functions support both 2x2 and 4x4 MIMO bitstreams.
     21The WAPLAB framework facilitates experimental evaluation of PHY layer algorithms. However, some novel algorithms may require features not provided in the WARPLab framework. Users are encouraged to modify the WARPLab XPS Reference Design and WARPLab Reference M-Code if this is required in order to meet experiment requirements. For example, if part of the signal processing cannot be done offline in MATLAB but must to be done in real-time, then this signal processing can be implemented in FPGA logic by modifying the WARPLab XPS Reference Design. Depending on the experiment, the users may also have to modify the WARPLab Reference M-Code.
    2422
    2523
    26 == Getting Started ==
    27  1. Install Peter Rydesäter's open-source TCP/UDP toolbox for MATLAB (get it free from [http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectId=345 MATLAB Central]).
    28  2. Download the WARPLab Reference M code to your PC. The instructions are available [wiki:edk_user_repository here]. In the final step you can choose the appropriate version to add to the path.
    29  * [source:/ResearchApps/PHY/WARPLAB/WARPLAB_SISO/M_code Version 1 of the Reference M code].
    30  * [source:/ResearchApps/PHY/WARPLAB/WARPLab_SISO_MIMO2x2/M_Code Version 2 of the Reference M code].
    31  * [source:/ResearchApps/PHY/WARPLAB/WARPLab_MIMO2x2_MIMO4x4/M_Code_Source Version 3 of the Reference M code].
    32  * [source:/ResearchApps/PHY/WARPLAB/WARPLab_MIMO2x2_MIMO4x4_R04/M_Code_Source Version 4 of the Reference M code].
    33  * [source:/ResearchApps/PHY/WARPLAB/WARPLab_MIMO2x2_MIMO4x4_R05/M_Code_Reference Version 5 of the Reference M code].
    3424
    35  3. Connect your PC and two WARP boards to a common Ethernet switch. Ideally, nothing else should be connected to the same switch.
    36  4. Set your PC's IP address to 10.0.0.200
    37  5. Set the DIP switches on two boards to 0 and 1
    38  6. Download the WARPLab bitstream to both boards.
    39  * [source:/ResearchApps/PHY/WARPLAB/WARPLAB_SISO/warplab_siso.bit SISO bitstream] that works with version 1 of the Reference M code
    40  * [source:/ResearchApps/PHY/WARPLAB/WARPLab_SISO_MIMO2x2/warplab_siso_v02.bit SISO bitstream] that works with version 2 of the Reference M code.
    41  * [source:/ResearchApps/PHY/WARPLAB/WARPLab_SISO_MIMO2x2/warplab_mimo_2x2_v02.bit 2x2 MIMO bitstream] that works with version 2 of the Reference M code.
    42  * [source:/ResearchApps/PHY/WARPLAB/WARPLab_MIMO2x2_MIMO4x4/warplab_mimo_2x2_v03.bit 2x2 MIMO bitstream] that works with version 3 of the Reference M code.
    43  * [source:/ResearchApps/PHY/WARPLAB/WARPLab_MIMO2x2_MIMO4x4/warplab_mimo_4x4_v03.bit 4x4 MIMO bitstream] that works with version 3 of the Reference M code.
    44  * [source:/ResearchApps/PHY/WARPLAB/WARPLab_MIMO2x2_MIMO4x4_R04/warplab_mimo_2x2_v04.bit 2x2 MIMO bitstream] that works with version 4 of the Reference M code.
    45  * [source:/ResearchApps/PHY/WARPLAB/WARPLab_MIMO2x2_MIMO4x4_R04/warplab_mimo_4x4_v04.bit 4x4 MIMO bitstream] that works with version 4 of the Reference M code.
    46  * [source:/ResearchApps/PHY/WARPLAB/WARPLab_MIMO2x2_MIMO4x4_R05/warplab_mimo_2x2_v05.bit 2x2 MIMO bitstream] that works with version 5 of the Reference M code.
    47  * [source:/ResearchApps/PHY/WARPLAB/WARPLab_MIMO2x2_MIMO4x4_R05/warplab_mimo_4x4_v05.bit 4x4 MIMO bitstream] that works with version 5 of the Reference M code.
     25== Basic WARPLab Setup ==
     26Two WARP nodes and a host computer running MATLAB are connected to a switch via Ethernet links.
    4827
    49  7. Try one of the examples. The GUI (warplab_mimo_2x2_GUI and the warplab_siso_example_TxRx) are the best ones to start with.
    50  * [source:/ResearchApps/PHY/WARPLAB/WARPLab_MIMO2x2_MIMO4x4/M_Code_Examples WARPLab examples] that work with version 3 of the Reference M code.
    51  * [source:/ResearchApps/PHY/WARPLAB/WARPLab_MIMO2x2_MIMO4x4_R04/M_Code_Examples WARPLab examples] that work with version 4 of the Reference M code.
    52  * [source:/ResearchApps/PHY/WARPLAB/WARPLab_MIMO2x2_MIMO4x4_R05/M_Code_Examples WARPLab examples] that work with version 5 of the Reference M code.
     28[[Image(WARPLab/Images:BasicWARPLabSetup.jpg)]]
    5329
    54 == XPS Reference Design ==
    55 The XPS Reference Designs for different versions of the Reference M code are available [wiki:WARPLabRefDesign here].
     30== WARPLab Setup with up to 16 nodes ==
     31
     32The basic WARPLab setup can be extended to up to 16 WARP nodes as shown below.
     33[[Image(WARPLab/Images:16NodeSetup.jpg)]]
    5634
    5735
     36
     37