## 4 Discussion
Each time a transmit bit is sent it could saturate the amplifiers of the imaging system for tens of nanoseconds to microseconds. The amplifiers will be unable to receive any signals until they recover. This creates a dead zone after each bit is transmitted. To minimize the dead zone problems or electrical crosstalk during transmission, we introduced the alternating transmit scheme above, where every other element is used for transmit, and the other unused elements for receive. The alternating transmit scheme preserves half the aperture of the array and allows for good imaging quality without sacrificing too much SNR or CNR. If needed, the full SNR and CNR improvement can be realized with the alternating scheme if two transmit events are used. The first transmit event uses every other element to transmit and the other elements to receive, and the second transmit event switches the transmit and receive elements. This way, the full aperture data are collected. However, this approach doubles the transmit time to recover the maximum SNR and CNR gain. Amplifier saturation may not be problematic if transmit amplitudes are sufficiently low and fast amplifier switching is used. In the case of sparse 2D arrays, it should be easy to implement one sparse pattern of transmitters and a different sparse pattern of elements as receivers. This should also enable extended transmission of codes while allowing for reception during this transmission time without the dead zone problem. Other coding methods such as those which use Barker and Golay codes do not offer near orthogonal properties of code sets. However, Kasami codes do have near orthogonal properties, and they also meet the Welch lower bound. The Welch bound is the maximum cross-correlation value that can be achieved. For a multi-channel aperiodic correlation, the bound is calculated as Equation (11) [26],  
\[c_{max}=\sqrt{\frac{\mathbb{M}-1}{\mathbb{M}(2\mathbb{N}-1)-1}} \tag{11}\]  
where N is the length of the code, M is the number of codes transmitted in parallel, and K is the number of transmit events. For our bandwidth-matched 128 non-zero-bit HAPI codes with N = 128, M = 544,150, and K = 1, the maximum bound that can be achieved is \(c_{max}\) = 0.00095. However, the actual sidelobe level of the HAPI codes is given by \(\frac{1}{\mathbb{M}}\) = 0.0078 for a code length of M = 128. Therefore, HAPI codes do not meet the Welch lower bound, but they do approach it. The small set of Kasami codes, on the other hand, meets the Welch lower bound. However, Kasami codes can become very long if we require them to meet the sidelobe levels of HAPI codes. For a requirement on \(c_{max}\) of 42 dB, Kasami codes need to have a code length of 8155 bits. They are also periodic codes, meaning that the transmitter is always on, and they are not sparse and may contain too much energy if appreciable voltage levels are transmitted, potentially violating ultrasound thermal index limits. HAPI codes are also long but they are very sparse, are aperiodic, and thus have minimal energy in them. Ultrasound systems that can image in real time with synthetic aperture imaging techniques have already been realized. To use HAPI codes on GPU programmable systems, the decoding step needs to be carefully implemented. On receive, decoding is performedby cross-correlating each receive line with each transmit signal to recover the full synthetic aperture dataset. Regular cross-correlation of two vectors involves sliding one vector relative to the other and multiplying the two vectors at each sample. The results are then summed to produce the cross-correlation result. In the case of 128 non-zero-bit bandwidth-matched HAPI codes, this cross-correlation operation would need to be performed for each sample (544,150 samples) and for each transmit-receive combination. This is a significant computational burden.