# Design and Performance Analysis of Hardware Realization of 3 GPP Physical Layer for 5G Cell Search
## 6 PHY Deployment on RFNoC Platform  
In academia as well as industry, GNU Radio is widely used for prototyping wireless systems and integration with the radio front-end of the USRP platform for demonstration in a real-radio environment. Since the GNU Radio tool is deployed on the host processor, the performance of signal processing algorithms is limited due to its sequential nature. To address this issue, Ettus Research developed the RFNoC tool that enables the acceleration of GNU Radio algorithms on hardware such as USRP FPGA [27,28]. It offers a seamless tight interface between GNU Radio software and FPGA for data transfer thus enabling hardware-software co-design between a host processor and FPGA. Like GNU Radio, RFNoC is free and open-source software. In this work, we design complete software realization of the CS transmitter and receiver PHY using GNU Radio. Next, we have modified the AXI-Stream compatible hardware IPs discussed in Sections 3 and 4 for different building blocks of the CS transmitter and receiver PHY, respectively, into the custom RFNoC hardware IPs. Then, we have verified the functional correctness of these IPs using custom test benches and an out-of-tree module-based approach which allows integration and verification of RFNoC blocks in GNU Radio. For instance, one of the configurations with CS transmitter PHY in GNU Radio and CS receiver PHY on USRP FPGA is shown in Figure 15. As per the requirement of the RFNoC framework, the proposed receiver PHY hardware IP with AXI-stream interface is integrated with the AXI wrapper and network-on-chip (NoC) shell. This integrated IP is capable of transmitting and receiving data packets from GNU Radio over an Ethernet interface using the RFNoC framework. The NoC shell decodes the received packets from the transmitter to extract the data samples, which are then forwarded to receiver PHY along with appropriate control signals via the settings bus. The processed data is then returned to GNU Radio via another packet using the NoC shell. Similarly, multiple blocks in GNU Radio can be moved to USRP FPGA to improve the execution time via parallel processing on the FPGA. In Table 4, we compare the execution time of the PSS search block on GNU Radio and RFNoC platforms. We have selected SPFL WL for a fair comparison between both platforms. Like Table 1, the execution time decreases with the increase in \(D_{PSS}\). It can be observed that the RFNoC-based acceleration offers an improvement in execution time by a factor of 2 or higher. Similar to Table 1, higher \(D_{PSS}\) and lower WL offer savings in resource utilization on the RFNoc platform, and corresponding results are skipped to avoid repetition of discussion. \begin{table}
\begin{tabular}{c c c c c} \hline \hline \multirow{2}{*}{**Platform**} & \multicolumn{4}{c}{\(D_{PSS}\)} \\ \cline{2-5}  & **1** & **6** & **10** & **14** \\ \hline
**GNU Radio** & 27.6 & 17.9 & 15.3 & 13.6 \\ \hline
**RFNoC** & 9.54 & 8 & 7.2 & 6.5 \\ \hline \hline \end{tabular}
\end{table} 
Table 4: Execution time of the PSS search IP in milliseconds (ms). \begin{table}
\begin{tabular}{c c c c c} \hline \hline
**Parameters** & **SPFL** & **HPFL** & **Fixed Point** & **Fixed Point** \\ \hline
**Execution Time (\(\mu\)s)** & 6.7 & 6.1 & 2.1 & 1.9 \\ \hline
**On Chip Memory** (18 KiloBytes BRAMs)** & 83 & 60 & 60 & 42 \\ \hline
**Embedded Multipliers** (**DSP48s)** & 85 & 71 & 70 & 66 \\ \hline
**6-input Look-Up-Table (LUT)** & 50,311 & 39,956 & 38,933 & 28,069 \\ \hline \hline \end{tabular}
\end{table} 
Table 3: Execution Time and Resource Utilization Comparison for DMRS Search. Next, we consider the end-to-end execution time, which involves the data communication overhead between GNU Radio and USRP. We consider around two frames of data which corresponds to around 2000 data packets. As shown in Figure 16, RFNoC-based architecture outperforms the GNU Radio based architecture with around 66% faster SS search time.