## 3 Proposed SQRD Algorithm with a Novel Modified RVD  
### Proposed Modified RVD  
With the proposed modified RVD, the complex-valued system model in Equation (1) can be reformulated as  
\[\left[\begin{array}{c} \begin{array}{c}\Re(y_{1})\\ \Re(y_{2})\\ \Im(y_{1})\\ \Im(y_{2})\\ \end{array} \right]=\left[\begin{array}{  
```
1:Input: \(\mathbf{H}_{N\times N}\), \(\mathbf{y}_{N\times 1}\), \(\mathbf{P}=\mathbf{I}_{N}\)
2:OUTPUT: \(\mathbf{R}_{2N\times 2N}\), \(\mathbf{Q}^{H}\mathbf{y}_{2N\times 1}\), \(\mathbf{P}=\mathbf{I}_{N}\)
3:Step 1: Sorted complex Givens rotation (SCGR)
4:\(\mathbf{R}^{c}=[\mathbf{H}\left|\,\mathbf{y}\right. ]\)
5:for\(j=1:N\)
6:\(\alpha_{j}=\|\mathbf{R}^{c}_{i,j}\|^{2}\)
7:end
8:for\(i=1:N\)
9:\(k_{i}=\underset{l=i,\ldots,N}{\arg\min}\;\alpha_{l}\)
10:Swap \(\mathbf{R}^{c}_{i,j}\), \(\mathbf{P}_{:,i}\), and \(\alpha_{i}\) with \(\mathbf{R}^{c}_{:,j}\), \(\mathbf{P}_{:,i}\), and \(\alpha_{k}\), respectively
11: Perform complex Givens rotation in vectoring mode on the elements of \(\mathbf{R}^{c}_{:,j}\) in pairs
12:for\(m=i+1:N+1\)
13: Perform complex Givens rotation in rotation mode on the elements of \(\mathbf{R}^{c}_{:m}\) in pairs
14:end
15:end
16:end
17:Step 2: Proposed modified RVD
18:for\(i=1:N/2\)
19:\(\mathbf{q}^{2\times 2}_{ij}=\left[ \begin{array}{cc}\mathbf{R}^{c}_{2i-1,2j-1}& \mathbf{R}^{c}_{2i-1:2j}\\ \mathbf{R}^{c}_{2i,2j-1}&\mathbf{R}^{c}_{2i,2j}\end{array} \right]\)
20:\(\mathbf{S}_{4i-3:4i,4j-3:4j}=\left[ \begin{array}{cc}\Re\left(\mathbf{q}^{2 \times 2}_{ij}\right)&-\Im\left(\mathbf{q}^{2\times 2}_{ij}\right)\\ \Im\left(\mathbf{q}^{2\times 2}_{ij}\right)&\Re\left(\mathbf{q}^{2\times 2}_{ij} \right)\end{array} \right]\)
21:end
22:\(\mathbf{q}^{2\times 1}_{i}=\left[\mathbf{R}^{c}_{2i-1,N+1};\mathbf{R}^{c}_{2i,N+1}\right]\)
23:\(\mathbf{S}_{4i-3:4i,2N+1}=\left[\Re\left(\mathbf{q}^{2\times 1}_{i}\right);\Im\left( \mathbf{q}^{2\times 1}_{i}\right)\right]\)
24:end
25:Step 3: Real Givens rotation
26:for\(i=1:N/2\)
27:Perform real Givens rotation in vectoring mode on \(\left(\mathbf{S}_{4i-2,4i-2},\mathbf{S}_{4i-1,4i-2}\right)\)
28:for\(j=4i-1:2N+1\)
29:Perform real Givens rotation in rotation mode on \(\left(\mathbf{S}_{4i-2,4i-1,4i-2}\right)\)
30:end
31:end
32:end
33:end
34:end
35:Perform real Givens rotation in vectoring mode on \(\left(\mathbf{S}_{4i-3,4i-2},\mathbf{S}_{4i-1,4i-2}\right)\)
36:for\(j=4i-1:2N+1\)
37:Perform real Givens rotation in rotation mode on \(\left(\mathbf{S}_{4i-3,4i-2},\mathbf{S}_{4i-1,4i-2}\right)\)
38:end
39:Perform real Givens rotation in vectoring mode on \(\left(\mathbf{S}_{4i-3,4i-2},\mathbf{S}_{4i-1,4i-2}\right)\)
31:end
32:Perform real Givens rotation in vectoring mode on \(\left(\mathbf{S}_{4i-3,4i-2},\mathbf{S}_{4i-1,4i-2}\right)\)
33:end



### Performance Evaluation of the Proposed SQRD Algorithm

For SQRD, which is implemented with CORDIC, the number of required CORDIC operations can be regarded as a measurement of the computational complexity of the SQRD algorithm. Within the proposed SQRD algorithm for \(N\times N\) (\(N\) is even) MIMO systems, the CORDIC operations needed in SCGR stage are given by

\[\sum_{k=1}^{N}\left((N-k+1)(N-k+1)+(N-k)(1+2(N-k))\right)=N^{3}. \tag{8}\]

The detailed derivation of Equation (8) is shown in Appendix B, whereas in the following RGR, the CORDIC operations consumed are as follows:

\[\sum_{k=1}^{N/2}\left(4k-1\right)=\left(N^{2}+N\right)/2. \tag{9}\]

Table 1 lists the number of CORDIC operations required in the proposed SQRD algorithm as well as a latest related study. For a clear comparison, the number of CORDIC operations needed and the complexity reduction of the proposed compared to the one in reference [9] for different matrix sizes are presented in Figure 2a. It is clear that the proposed SQRD algorithm has a huge advantage over the one in reference [9] in terms of computational complexity. For \(4\times 4\) MIMO systems, the number of CORDIC operations of the proposed algorithm is greatly reduced by 44.7% compared to the one in reference [9].