Version 2 (modified by trnewman, 4 years ago)

--

Virginia Tech Cognitive Radio Open Source System

Overview

An effort is currently beginning at Wireless @ VT to develop an open source Cognitive Radio architecture. The objective of the design is to develop a modular system that provides portability and interoperability between components developed using different programming languages. Not only will this allow for flexible development for the cognitive radio system, but will allow developers to focus entirely on the component of choice and to not have to worry about developing or modifying components that have no relevance to their specific focus of research.

The current open source system consists of 6 categories of components with a couple being optional :

  • Cognitive Radio Shell (CRS)
  • Cognitive Engine (CE)
  • Host Processor
  • Hardware Front End (FE)
  • Policy Engine (PE) **
  • Management Service Layer (MSL) **

** Optional – A basic cognitive radio system is functional without this component.

The CRS is the framework core and interacts with the CE and PE over socket connections, while the FE connection is currently accessed through a custom FE library for the specific hardware being used. For example, we are using the Universal Software Radio Peripheral (USRP) and a custom C++ function library is being developed to allow the CRS to access the functions of the USRP. The socket connections between the CRS and the CE and PE allow the CE and PE to be developed language independent relative to the CRS. Any language that includes a socket library will be able to be used to develop a Cognitive Engine. In addition, this means the CE can be ran locally to the CRS, or remotely through an existing network connection. This opens the possibility of the CE being ran on remote high quality hardware if necessary.

The CRS initially parses XML configuration file that specifies the operation of the Cognitive Radio system. This XML configuration file is assumed to be located locally with the CRS. An example of this XML file is shown in Figure 1.

<engine name="myengine">

    <!-- utilities : QoS metrics -->
    <utilities>
        <utility name="throughput" units="kbps" goal="max" target="125" />
        <utility name="spectral_efficiency" units="b/s/Hz" goal="max" />
        <utility name="log10_ber" units="none" goal="min" target="-3" />
        <!-- <utility name="latency" units="ms" goal="min" target=100 /> -->
    </utilities>

    <!-- radio parameters -->
    <parameters>
        <parameter name="mod_scheme" min="1" max="4" step="1">
            <!-- BPSK, QPSK, 8-PSK, 16-QAM -->
            <affect utility="throughput" relationship="improve" />
            <affect utility="spectral_efficiency" relationship="improve" />
            <affect utility="log10_ber" relationship="degrade" />
        </parameter>
        <parameter name="tx_power" units="dBm" min="-30.0" max="0.0" step="0.1">
            <affect utility="log10_ber" relationship="improve"/>
        </parameter>
    </parameters>

    <!-- link/channel observations -->
    <observables>
        <observable name="SNR">
            <affect utility="log10_ber" relationship="improve" />
        </observable>
    </observables>
</engine>


Management Service Layer

Good explanation with great example.

Policy Engine

Explain me.

Case-Based Reasoning Reference Implementation

A reference implementation of a cognitive engine model is currently under development. The initial implementation will consist of a case-based reasoning (CBR) engine developed in C and using the SQLite database code base to implement the database functionality. The CBR functionality will consist of retrieving cases that are relevant to the current operating environment and communication objectives and adapt the cases in order to provide a better set of transmission parameters for the current given environment. After the case is adapted, the set of transmission parameters is sent back to the CRS where the parameter values are applied to the radio resources. Feedback is gathered from the receiver that provides information about how well the transmission parameters have met the performance objective goals. This feedback is sent to the CE to provide for better adaptation in the future. In the CBR implementation, the cases are updated with this new information.

System Diagram of the Cognitive Radio System

Attachments