## 2 System Model  
In the JSCCM system, we employ protograph low-density parity-check (LDPC) codes as both source and channel codes. Specifically, let us denote the base matrix of source protograph LDPC codes by \(\mathbf{B}_{s}\) and the base matrix of channel protograph LDPC codes by \(\mathbf{B}_{c}\). Then, we utilize the progressive edge-growth (PEG) algorithm to generate the sparse binary parity-check matrices \(\mathbf{H}_{s}\) and \(\mathbf{H}_{c}\)[21]. Later, \(\mathbf{H}_{c}\) is converted into a parity-check matrix with a systematic form of \(\mathbf{H}_{c}=[\mathbf{I}|\mathbf{p}^{\mathbf{T}}]\), where \(\mathbf{I}\) is the identity matrix, and \(\mathbf{P}\) is a matrix obtained by transforming \(\mathbf{H}_{c}\). After that, a systematic generator matrix of the channel protograph LDPC code \(\mathbf{G}_{c}\) can be constructed from \(\mathbf{H}_{c}\), which is represented by \(\mathbf{G}_{c}=[\mathbf{P}\mid\mathbf{I}]\). The block diagram of the JSCCM system is illustrated in Figure 1. The source we consider in this paper is a binary independent and identically distributed Bernoulli source \(\mathbf{s}\), where the probability of \"1\" is represented as \(p\) (\(p>0.5\)). The entropy of \(\mathbf{s}\) can be obtained by  
\[H(p)=-p\log_{2}p-(1-p)\log_{2}(1-p)<1. \tag{1}\]  
On the transmitter side, a rate-\(R_{s}\) source protograph LDPC encoder and a rate-\(R_{c}\) channel protograph LDPC encoder are serially concatenated. The source information bit sequence \(\mathbf{s}\) is fed to the source encoder to calculate the syndrome \(\mathbf{b}^{T}=\mathbf{H}_{s}\mathbf{s}^{T}\), which is also the compressed sequence. Then, the channel protograph LDPC is utilized to protect \(\mathbf{b}\) for transmission through the AWGN channel, which generates a vector of the parity bit sequence \(\mathbf{c}=\mathbf{b}\mathbf{P}\). Assuming systematic channel encoding, the channel codeword \(\mathbf{x}\) can be composed of a parity bit sequence \(\mathbf{c}\) and a compressed bit sequence \(\mathbf{b}\) as \(\mathbf{x}=[\mathbf{c}\mathbf{b}]\). For one-dimensional \(2^{m}\)-ary amplitude-shift keying (ASK) modulation, every \(m\) consecutive coded bits are converted into an ASK symbol \(X\in\{\pm 1,\pm 3,\ldots,\pm(2^{m}-1)\}\). Then, we set the channel code rate \(R_{c}\) to be \((m-1)/m\), contributing to the overall system rate as  
\[R=\frac{m-1}{R_{s}}. \tag{2}\]  
By employing an interleaver, the channel codeword \(x=[\mathbf{c}\mathbf{b}]\) can be organized as  
\[\mathbf{M}_{\mathbf{x}}^{(1)}=\left[ \begin{array}{ccccc}c_{1}&b_{1}^{1}&b_{1 }^{2}&\cdots&b_{1}^{m-1}\\ c_{2}&b_{2}^{1}&b_{2}^{2}&\cdots&b_{2}^{m-1}\\ \vdots&\vdots&\vdots&\vdots&\vdots\\ c_{N}&\underbrace{b_{N}^{1}}&\underbrace{b_{N}^{2}}&\cdots&\underbrace{b_{N}^ {m-1}}\\ b^{0}&b^{1}&b^{2}&\cdots&b^{m-1}\end{array} \right], \tag{3}\]  
where \(N\) is the lifting factor, and each column forms a bit level \(b^{i}\) for \(0\leq i\leq m-1\). By row-wise mapping with binary-reflected Gray code (BRGC) labeling, the ASK symbol sequence \(\mathbf{X}=(X_{1},X_{2},\ldots,X_{N})\) for transmission is generated. On the receiver side, after demodulation and de-interleaving, we employ joint source and channel (JSC) decoding to reconstruct the source bit sequence. The concatenated Tanner graph corresponding to the JSC decoder is shown in Figure 2, where circles denote variable nodes (VNs), and check nodes (CNs) are denoted by squares. The numbers of CNs and VNs are determined by the dimensions of source-channel protomatrices (\(\mathbf{B}_{s}\), \(\mathbf{B}_{c}\)), denoted as \(m_{s}\), \(m_{c}\) and \(n_{s}\), \(n_{c}\), respectively. Since the output of the source encoder is the input of the channel encoder, each VN in the systematic part of \(\mathbf{B}_{c}\), denoted by an empty circle, is connected to a CN in \(\mathbf{B}_{s}\).