WARP Project Forums - Wireless Open-Access Research Platform

You are not logged in.

#1 2019-May-08 15:14:54

sgv1975
Member
Registered: 2014-Oct-02
Posts: 20

FDD NoMAC in newer versions of 802.11 RefDes

Hello,

I am trying to recreate the system described in the FDD NoMAC Application Note on version 1.7.0 of the 802.11 framework, and I am having trouble mapping the instructions in the section "Keep Rx RF Interface Enabled" of the AppNote to the new design. I see that the wlan_rx_config_ant_mode() function is now in  w3_phy_util.c.  But the code in the function is quite different. The calls to radio_controller_setCtrlSource described in the AppNote are now embedded in wlan_platform_low_set_rx_ant_mode()  which I can comment out as described in the AppNote, but I am not sure how to port the "radio_controller_RxEnable" function calls described in the AppNote to the new design, and I would appreciate some help in figuring out how to port these calls.

On a second note, I have been slow to upgrade to the latest version as I have made numerous small modifications to the FPGA design of the PHY of version 1.7.0. Do you have a sense of how much has changed from version 1.7.0 to the latest version in terms of how the PHY interface is handled?   For the question about the FDD NoMAC above, I am using an unmodified version of the system.

Thanks!

Last edited by sgv1975 (2019-May-08 15:21:01)

Offline

 

#2 2019-May-09 10:02:24

chunter
Administrator
From: Mango Communications
Registered: 2006-Aug-24
Posts: 1212

Re: FDD NoMAC in newer versions of 802.11 RefDes

sgv1975 wrote:

Hello,

I am trying to recreate the system described in the FDD NoMAC Application Note on version 1.7.0 of the 802.11 framework, and I am having trouble mapping the instructions in the section "Keep Rx RF Interface Enabled" of the AppNote to the new design. I see that the wlan_rx_config_ant_mode() function is now in  w3_phy_util.c.  But the code in the function is quite different. The calls to radio_controller_setCtrlSource described in the AppNote are now embedded in wlan_platform_low_set_rx_ant_mode()  which I can comment out as described in the AppNote, but I am not sure how to port the "radio_controller_RxEnable" function calls described in the AppNote to the new design, and I would appreciate some help in figuring out how to port these calls.

You're right, the location of the calls moved, but the approach is the same. You need to make the same three changes (adding the call to radio_controller_TxRxDisable(), commenting out the calls to radio_controller_setCtrlSource(), and adding the calls to radio_controller_RxEnable()).

Code:

void wlan_platform_low_set_rx_ant_mode(u32 ant_mode) {

    // Disable PHY control of all RF interfaces - selected interfaces to re-enabled below
    radio_controller_setCtrlSource(RC_BASEADDR, RC_ALL_RF, RC_REG0_RXEN_CTRLSRC, RC_CTRLSRC_REG);

    radio_controller_TxRxDisable(RC_BASEADDR, RC_ALL_RF); // FDD-NoMAC
    // Set the antenna mode
    //
    // For each antenna mode:
    //   - Enable packet detection
    //   - Select I/Q stream for Rx PHY
    //   - Give PHY control of Tx/Rx status
    //   - Configure AGC
    //
    switch (ant_mode) {
        case RX_ANTMODE_SISO_ANTA:
            //radio_controller_setCtrlSource(RC_BASEADDR, RC_RFA, RC_REG0_RXEN_CTRLSRC, RC_CTRLSRC_HW); //ref code
            radio_controller_RxEnable(RC_BASEADDR, RC_RFA); // FDD-NoMAC
        break;

...

sgv1975 wrote:

On a second note, I have been slow to upgrade to the latest version as I have made numerous small modifications to the FPGA design of the PHY of version 1.7.0. Do you have a sense of how much has changed from version 1.7.0 to the latest version in terms of how the PHY interface is handled?   For the question about the FDD NoMAC above, I am using an unmodified version of the system.

The changelog calls out changes made to the PHY and MAC hardware over the releases from 1.7.0 to 1.7.8. There have been some pretty major bug fixes and stability/performance improvements made since 1.7.0, but I understand the resistance to updating if it makes you have to redo work. You'll have to look through the changelog and decide if its worth if for you. Another factor that might affect your decision, we are probably a week out or less from releasing the next big release (1.8.0). The changes in that design are mostly in CPU_HIGH, so seeing how the PHY interface works in 1.7.8 isn't wasted effort.

Offline

 

Board footer