## 2 System Model
### The Receiver  
For the underwater acoustic channel, it can be regarded as a time-invariant channel in a short period of time, so the number of spreading chips in a typical DSSS system is usually less than 1000. We can reasonably assume that the channel remains time-invariant during one spreading period, but the channel changes during different spreading periods. To eliminate inter-symbol interference due to multipath delay spread, a cyclic prefix (CP) of length \(L+1\) is inserted between transport blocks at the transmitter, and it is removed at the receiver. Thus, the equivalent channel after CP operation is expressed by  
\[\mathbf{H}(i)=\sum_{l=0}^{L-1}h(i;l)\mathbf{T}^{l}, \tag{3}\]  
where \(L\) is the number of channel paths and \(h(i;l)\) means the \(l\)th channel state information (CSI) in the \(i\)th received block. For brevity, we omit the index \(i\) in the rest of the paper. The block diagram of the proposed receiver is shown in Figure 2. Thus, the received signal is expressed as  
\[\mathbf{r} =\mathbf{H}\mathbf{x}+\mathbf{n} \tag{4}\] \[=\sum_{l=0}^{L-1}h(l)\mathbf{T}^{l}\sum_{j=0}^{J}\left(s_{j,R}^{i} \mathbf{T}^{k_{j,l}(L+1)}\mathbf{c}+\sqrt{-1}s_{j,l}^{i}\mathbf{T}^{k_{0j}(L+1)} \mathbf{c}\right)+\mathbf{n}\] \[=\sum_{j=0}^{J}s_{j,R}^{i}\sum_{l=0}^{L-1}h(l)\mathbf{T}^{k_{j,l} (L+1)+l}\mathbf{c}+\sqrt{-1}\sum_{j=0}^{J}s_{j,l}^{i}\sum_{l=1}^{L-1}h(l)\mathbf{ T}^{k_{0j}(L+1)+l}\mathbf{c}+\mathbf{n}.\]  
In (4), \(\mathbf{n}\) denotes the zero mean additive white Gaussian noise vector with power spectral density of \(\frac{N_{0}}{2}\mathbf{I}\). The details of signal processing are shown in Figure 2. In order to demodulate the information symbols, the same matched filter for MSSS is adopted, which is represented as \(\left[\mathbf{T}^{j(L+1)+l}\mathbf{c}\right]^{T}\), thus, the output of matched filter is  
\[v(j,l)=\left[\mathbf{T}^{j(L+1)+l}\mathbf{c}\right]^{T}\mathbf{r}. \tag{5}\]  
Then, the output of the matched filter and the pilot signal \(s_{0}\) are used to estimate the channel as follows  
\[\hat{h}(l)=\frac{v(0;l)}{Ms_{0}},\quad l=0,\ldots,L-1. \tag{6}\]  
After that, the \(j\)th decision variable is obtained using the estimated channel, and the calculation expression is given by  
\[z(j)=\frac{\sum_{l=0}^{L-1}\hat{h}^{*}(l)v(j,l)}{M\sum_{l=1}^{L}|\hat{h}(l)|^{ 2}},\quad j=1,\ldots,J_{\max}-1. \tag{7}\]  
Figure 2: The block diagram of the MSSS-I/Q-IM receiver. Different from MSSS, the proposed system needs to detect the \(J\) largest absolute values of the real part of \(z(j)\) and imaginary part of \(z(j)\) at first. As shown in Figure 2, the real part and imaginary part of the decision variable are sent to the index detection module to estimate the indices \(\left\{\hat{k}_{I,j}\right\}_{j=1}^{J}\) and \(\left\{\hat{k}_{Q,j}\right\}_{j=1}^{J}\). The algorithm of index detection is given in Algorithm 1. In order to recover the index bits on two branches and the real and imaginary parts of the constellation symbols, twice index detection is required. Firstly, to recover the index bits of the I branch, let \(\mathbf{\Omega}_{I}=\{\left|\mathcal{R}\{z(1)\}\right|,\left|\mathcal{R}\{z(2 )\}\right|,\ldots,\left|\mathcal{R}\{z(I_{max}-1)\}\right|\}\), otherwise let \(\mathbf{\Omega}_{\mathbf{Q}}=\{\left|\mathcal{F}\{z(1)\}\right|,\left| \mathcal{F}\{z(2)\}\right|,\)\(\ldots,\left|\mathcal{F}\{z(I_{max}-1)\}\right|\}\). Secondly, the \(J_{max}-1\) absolute values in \(\mathbf{\Omega}_{I}\) and \(\mathbf{\Omega}_{\mathbf{Q}}\) are compared with each other to find \(J\) maximums, which are used to estimate indices of spreading sequences. Then, two estimated index vectors are fed into the combination number de-mapper block, and the index bits \(\mathbf{\hat{b}}_{I}\) and \(\mathbf{\hat{b}}_{Q}\) are estimated. Based on the estimated index vectors, the receiver knows which \(J\) cyclically shifted spreading sequences are used at the transmitter to carry constellation symbols, then the real and imaginary parts of the constellation symbols are retrieved by  
\[