## 4 Hardware Evaluation
### Power Consumption  
In order to evaluate the resource usage of a simple radio transceiver application and the power consumption of the Marmote SDR platform in various power modes, we implemented a simple PHY layer using the above described framework. We chose binary FSK modulation to compare with the representative CC1000 [4] commodity radio used by the MICA2 and TelosB WSN nodes. The FSK modem-based PHY layer has been implemented in the flash FPGA fabric with software-driven control functions running on the MSS. Thus, the analysis of such reference design gives valuable insight into how the flash FPGA logic resources get utilized for PHY layers of similar complexity. Table 1 summarizes the logic allocation for the FSK modem, along with the interface HDL components. The entire prototype design utilizes 29.5% of the SmartFusion A2F500 logic resources with the APB and AFE interfaces, representing the infrastructure part of the FPGA design, using 12.7% and 0.5%, respectively. The resource requirement of the AFE interface is the same in every application, but that of the APB interface varies highly (4%-15%) based on the amount of registers defined on the APB bus. Thus, in general, it leaves 85%-95% of the FPGA fabric for the user application. Our prototype FSK baseband application takes 16.3% in total, indicating that the total amount of FPGA logic resources allows for experimentation with modulation and demodulation techniques of significantly higher complexity. To fully characterize the power consumption of the Marmote SDR platform, its current draw is compared to two fundamentally different radio transceiver solutions. The CC1000 is a highly-integrated, low-cost, low-power commodity RF transceiver chip using FSK modulation in the 433 MHz band. The power consumption for the CC1000 was calculated based on the datasheet specifications assuming 3.3 V supply voltage. The other reference for comparison is the USRP N210 [9] mid-price SDR, which offers \begin{table}
\begin{tabular}{l c} \hline \hline
**Component** & **Logic Utilization** \\ \hline APB interface & 1,469 (12.7\%) \\ AFE interface & 52 (0.5\%) \\ FSK application & 1,882 (16.3\%) \\ \hline
**Total** & **3,403 (29.5\%)** \\ \hline \hline \end{tabular}
\end{table} 
Table 1: FPGA logic resource utilization. full-stack design flexibility at a higher price and power consumption. (Note that the power consumption of the embedded series USRP platform, the E100, is actually higher than that of the N210, according to their datasheet.) The latter was calculated based on the measured total current draw of the USRP at 6 V with an SBX daughterboard attached to it. Thus, this value does not include the consumption of the desktop computer that is additionally required for the operation. The Marmote SDR power consumption was measured by the _Yellowstone_ power supply monitor and included the consumption of the _Joshua_ radio front-end and the _Teton_ mixed-signal processing board, with the SmartFusion MSS, FPGA fabric and the AFE running at 10 MHz. (Note that unlike desktop SDR platforms, the Marmote SDR operation does not require a desktop computer.) The power consumption of the three approaches are compared in Figure 3 in three common scenarios in WSN duty cycle operation: sleep, transmit and receive mode. As WSN nodes usually spend most of their time dormant; sleep mode is expected to reduce current draw to a fraction of that of active modes. The CC1000 offers true sleep mode with power consumption less than 1 mW, the Marmote SDR consumes 70.8 mW, while the USRP N210 does not provide similar low-power feature. In-depth analysis of the Marmote SDR sleep mode showed that the _Teton_ module is responsible for 72% of the Marmote SDR dissipated 70.8 mW, while the _Joshua_ module for the remaining 28%. During sleep mode, all external peripherals were disabled, making the SmartFusion SoC the main contributor to the 50 mW consumed. Unfortunately, the current SmartFusion MSS lacks advanced low-power modes that achieve sub-1 mW sleep power without turning the power rails off.