Method, apparatus and computer program

Trellis coding and filtering in uplink transmissions address high PAPR issues, improving communication range and battery life by reducing power consumption in mobile devices.

WO2025190571A1PCT designated stage Publication Date: 2025-09-18NOKIA TECHNOLOGIES OY
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
PCT/EP2025/053198
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-03-12
Filing Date
2025-02-07
Publication Date
2025-09-18

AI Technical Summary

Technical Problem

Existing uplink transmission methods in wireless communication, such as DFT-s-OFDM, face challenges with high peak-to-average power ratio (PAPR) leading to increased power consumption and reduced battery life in mobile devices, and FDSS-SE increases bandwidth without addressing these issues effectively.

Method used

Implement trellis coding to generate a sequence of symbols based on a maximum signal amplitude limit, followed by filtering to reduce PAPR, thereby reducing power consumption and maintaining low implementation complexity.

Benefits of technology

Reduces PAPR, allowing increased transmit power without amplifier saturation, enhancing communication range and coverage while preserving battery life in mobile devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2025053198_18092025_PF_FP_ABST
    Figure EP2025053198_18092025_PF_FP_ABST
Patent Text Reader

Abstract

There is provided an apparatus comprising: means for obtaining a limit for maximum signal amplitude associated with an uplink transmission, and means for generating a first sequence of symbols using trellis coding based on the limit for maximum signal amplitude. The apparatus further comprises means for performing a filtering, based on the first sequence of symbols, to generate a filtered signal, and means for transmitting, to a network node, a signal based on the filtered signal.
Need to check novelty before this filing date? Find Prior Art

Description

[0001]METHOD, APPARATUS AND COMPUTER PROGRAM Cross-reference to related application. This application claims the benefit of GB application No. GB2403577.6, filed March 12, 2024. The content of which are hereby incorporated by reference in their entirety. Technical Field Various examples of this disclosure relate to methods, apparatuses, and computer programs fora communication network. Background A communication network can be seen as a facility that enables communications between two or more communication devices, or provides communication devices access to a data network. A mobile or wireless communication network is one example of a communication network. A communication device may be provided with a service by an application server. Such communication networks operate in accordance with standards such as those provided by3GPP (Third Generation Partnership Project) or ETSI (European Telecommunications Standards Institute). Examples of standards are the so-called 5G (5th Generation) standards provided by 3GPP. Summary Some examples of this disclosure will be described with respect to certain aspects. Theseaspects are not intended to indicate key or essential features of the embodiments of this disclosure, nor are they intended to be used to limit the scope of thereof. Other features, aspects, and elements will bereadily apparent to a person skilled in the art in view of this disclosure. For example, it should beappreciated that further aspects may be provided by the combination of any two or more of the various aspects described below. According to an aspect, there is provided an apparatus comprising: means for obtaining a limit for maximum signal amplitude associated with an uplink transmission; means for generating a first sequence of symbols using trellis coding based on the limit for maximum signal amplitude; means for performing a filtering, based on the first sequence of symbols, to generate a filtered signal; and means for transmitting, to a network node, a signal based on the filtered signal. In some examples, the means for obtaining comprises: means for determining the limit for the uplink transmission based on an uplink transmission peak-to-average power ratio, or means for receiving, from the network node, information associated with the limit. In some examples, the limit for maximum signal amplitude is received from the network node. In some examples, the uplink transmission is associated with a first modulation and coding scheme, the first modulation and coding scheme comprising: a configuration for the trellis coding, a set of constellation points, a configuration for the filtering, and a forward error correction code. In some examples, the forward error correction code comprises at least one of the following: a low-density parity check, a turbocode, or a polarcode. In some examples, the apparatus comprises: means for selecting the first modulation and coding scheme from a set of modulation and coding schemes; and means for providing, to the network node, an indication of the first modulation and coding scheme to be used by the apparatus for the uplink transmission. In some examples, the apparatus comprises: means for receiving, from the network node, an indication of the first modulation and coding scheme to be used for the uplink transmission. In some examples, the means for generating comprises: means for obtaining k data bits as an input; and means for encoding the k data bits using the trellis coding to generate the first sequence of symbols, wherein the first sequence of symbols is in the time-domain, wherein the trellis coding is associated with a number of states, and the encoding comprises: when in a first state of the trellis coding,determining a next state from a first set of next states that are allowed for the trellis coding based on afirst group of n coded bits, when in a second state of the trellis coding, determining a next state from a second set of next states that are allowed for the trellis coding based on a second group of n coded bits, wherein the first set of next states has a different number of states than the second set of next states. In some examples, at least one of the first state or the second state has a number of next states in the first set or the second set respectively that has an integer factor that is odd and greater than one. In some examples, for at least one of the first state or the second state, a number of n coded bits in the first group or the second group respectively is different when determining different next states from the first set or the second set respectively. In some examples, for at least one of the first state or the second state, two different groups of n coded bits determine the same next state from the first set or the second set respectively. In some examples, a number of coded bits in the first group used to determine the next state from the first set of next states is different to a number of coded bits in the second group used to determine the next state from the second set of next states. In some examples, the next state from the first set of next states is determined based on the first group of n coded bits, and the next state from the second set of next states is determined based on the second group of n coded bits, the first group is different to the second group, and the next state from the first set is the same as the next state from the second set. In some examples, the means for encoding comprises: means for encoding the k data bits to form the n coded bits; and means for mapping the n coded bits to the first sequence of symbols using the trellis coding. In some examples, a number of symbols encoded by at least one vector of n coded bits isdifferent than a number of symbols encoded by at least one other vector of n coded bits, or a first vectorof n coded bits and a second vector of n coded bits are mapped to the first sequence of symbols, and a sequence of symbols of the first sequence of symbols obtained based on the first vector is the same as a sequence of symbols of the first sequence of symbols obtained based on the second vector. In some examples, a sequence of symbols encoded by at least one vector of n coded bits is the same as a sequence of symbols encoded by at least one other vector of n coded bits. In some examples, the apparatus comprises: means for modulating the first sequence of symbols to generate a second sequence of symbols, wherein the second sequence of symbols is in the frequency domain. In some examples, the means for performing a filtering comprises: means for performing a filtering of the first sequence of symbols using an upsampling filter in the time domain to generate a filtered signal. In some examples, wherein the obtaining, encoding, modulating, performing and transmitting are for the transmission and based on the first modulation and coding scheme. In some examples, the apparatus is a communication device. In some examples, the communication device is one of: a user equipment, a terminal, or a mobile device. According to an aspect, there is provided an apparatus comprising: means for receiving, from a communication device, a signal; means for performing a demodulation, based on the signal that has been received, using trellis decoding; and means for determining an estimate of k data bits comprised within the signal based on the demodulation. In some examples, the apparatus comprises: means for determining a limit for maximum signal amplitude associated with an uplink transmission for the communication device; and means for providing, to the communication device, information associated with the limit. In some examples, the limit for maximum signal amplitude is provided to the communication device. In some examples, the signal received from the communication device is associated with a first modulation and coding scheme, the first modulation and coding scheme comprising: a configuration for the trellis coding, a set of constellation points, a configuration for the filtering, and a forward error correction code. In some examples, the forward error correction code comprises at least one of the following: a low-density parity check, a turbocode, or a polarcode. In some examples, the apparatus comprises: means for selecting the first modulation and coding scheme from a set of modulation and coding schemes; and means for providing, to the communication device, an indication of the first modulation and coding scheme to be used for uplink transmissions. In some examples, the apparatus comprises: means for receiving, from the communication device, an indication of the first modulation and coding scheme to be used for uplink transmissions by the communication device. In some examples, the means for performing the demodulation comprises: means for performing a demodulation of the signal that has been received using trellis decoding, wherein the trellis decodingutilises a Bahl, Cocke, Jelinek and Raviv, BCJR, algorithm or a Viterbi algorithm.In some examples, the means for performing the demodulation comprises: means for performing a window extraction based on the signal, in the time-domain, to determine a time-domain frame; means for performing a fast Fourier transform of the time-domain frame to determine a third sequence of symbols, wherein the third sequence of symbols are in the frequency domain; means for performing an inverse fast Fourier transform of the third sequence of symbols to determine a fourth sequence of symbols, wherein the fourth sequence of symbols are in the time-domain; means for performing the trellis decoding of the fourth sequence of symbols to determine n log-likelihood ratios, LLRs, corresponding to n coded bits, wherein the trellis decoding utilises a Bahl, Cocke, Jelinek and Raviv, BCJR, algorithm or a Viterbi algorithm. In some examples, the means for estimating comprises: means for estimating the k data bits based on the n LLRs corresponding to the n coded bits. In some examples, the apparatus is a network node. In some examples, the network node is one of: a base station, a receiver device, or a gNodeB. According to an aspect, there is provided a method comprising: obtaining a limit for maximum signal amplitude associated with an uplink transmission; generating a first sequence of symbols using trellis coding based on the limit for maximum signal amplitude; performing a filtering, based on the first sequence of symbols, to generate a filtered signal; and transmitting, to a network node, a signal based on the filtered signal. In some examples, the obtaining comprises: determining the limit for the uplink transmission based on an uplink transmission peak-to-average power ratio, or receiving, from the network node, information associated with the limit. In some examples, the limit for maximum signal amplitude is received from the network node. In some examples, the uplink transmission is associated with a first modulation and coding scheme, the first modulation and coding scheme comprising: a configuration for the trellis coding, a set of constellation points, a configuration for the filtering, and a forward error correction code. In some examples, the forward error correction code comprises at least one of the following: a low-density parity check, a turbocode, or a polarcode. In some examples, the method comprises: selecting the first modulation and coding scheme from a set of modulation and coding schemes; and providing, to the network node, an indication of the first modulation and coding scheme to be used by the apparatus for the uplink transmission. In some examples, the method comprises: receiving, from the network node, an indication of the first modulation and coding scheme to be used for the uplink transmission. In some examples, the generating comprises: obtaining k data bits as an input; and encoding the k data bits using the trellis coding to generate the first sequence of symbols, wherein the first sequence of symbols is in the time-domain, wherein the trellis coding is associated with a number of states, and theencoding comprises: when in a first state of the trellis coding, determining a next state from a first set ofnext states that are allowed for the trellis coding based on a first group of n coded bits, when in a second state of the trellis coding, determining a next state from a second set of next states that are allowed for the trellis coding based on a second group of n coded bits, wherein the first set of next states has a different number of states than the second set of next states. In some examples, at least one of the first state or the second state has a number of next states in the first set or the second set respectively that has an integer factor that is odd and greater than one. In some examples, for at least one of the first state or the second state, a number of n coded bits in the first group or the second group respectively is different when determining different next states from the first set or the second set respectively. In some examples, for at least one of the first state or the second state, two different groups of n coded bits determine the same next state from the first set or the second set respectively. In some examples, a number of coded bits in the first group used to determine the next state from the first set of next states is different to a number of coded bits in the second group used to determine the next state from the second set of next states. In some examples, the next state from the first set of next states is determined based on the first group of n coded bits, and the next state from the second set of next states is determined based on the second group of n coded bits, the first group is different to the second group, and the next state from the first set is the same as the next state from the second set. In some examples, the encoding comprises: encoding the k data bits to form the n coded bits; and mapping the n coded bits to the first sequence of symbols using the trellis coding. In some examples, a number of symbols encoded by at least one vector of n coded bits is different than a number of symbols encoded by at least one other vector of n coded bits, or a first vector of n coded bits and a second vector of n coded bits are mapped to the first sequence of symbols, and a sequence of symbols of the first sequence of symbols obtained based on the first vector is the same as a sequence of symbols of the first sequence of symbols obtained based on the second vector. In some examples, a sequence of symbols encoded by at least one vector of n coded bits is the same as a sequence of symbols encoded by at least one other vector of n coded bits. In some examples, the method comprises: modulating the first sequence of symbols to generate a second sequence of symbols, wherein the second sequence of symbols is in the frequency domain. In some examples, the performing a filtering comprises: performing a filtering of the first sequence of symbols using an upsampling filter in the time domain to generate a filtered signal. In some examples, wherein the obtaining, encoding, modulating, performing and transmitting are for the transmission and based on the first modulation and coding scheme. In some examples, the method is performed by a communication device. In some examples, the communication device is one of: a user equipment, a terminal, or a mobile device. According to an aspect, there is provided a method comprising: receiving, from a communication device, a signal; performing a demodulation, based on the signal that has been received, using trellis decoding; and determining an estimate of k data bits comprised within the signal based on the demodulation. In some examples, the method comprises: determining a limit for maximum signal amplitude associated with an uplink transmission for the communication device; and providing, to the communication device, information associated with the limit. In some examples, the limit for maximum signal amplitude is provided to the communication device. In some examples, the signal received from the communication device is associated with a first modulation and coding scheme, the first modulation and coding scheme comprising: a configuration for the trellis coding, a set of constellation points, a configuration for the filtering, and a forward error correction code. In some examples, the forward error correction code comprises at least one of the following: a low-density parity check, a turbocode, or a polarcode. In some examples, the method comprises: selecting the first modulation and coding scheme from a set of modulation and coding schemes; and providing, to the communication device, an indication ofthe first modulation and coding scheme to be used for uplink transmissions.In some examples, the method comprises: receiving, from the communication device, an indication of the first modulation and coding scheme to be used for uplink transmissions by the communication device. In some examples, the performing the demodulation comprises: performing a demodulation of the signal that has been received using trellis decoding, wherein the trellis decoding utilises a Bahl, Cocke, Jelinek and Raviv, BCJR, algorithm or a Viterbi algorithm. In some examples, the performing the demodulation comprises: performing a window extraction based on the signal, in the time-domain, to determine a time-domain frame; performing a fast Fourier transform of the time-domain frame to determine a third sequence of symbols, wherein the third sequenceof symbols are in the frequency domain; performing an inverse fast Fourier transform of the thirdsequence of symbols to determine a fourth sequence of symbols, wherein the fourth sequence of symbols are in the time-domain; performing the trellis decoding of the fourth sequence of symbols to determine n log-likelihood ratios, LLRs, corresponding to n coded bits, wherein the trellis decoding utilises a Bahl, Cocke, Jelinek and Raviv, BCJR, algorithm or a Viterbi algorithm. In some examples, the estimating comprises: estimating the k data bits based on the n LLRs corresponding to the n coded bits. In some examples, the method is performed by a network node. In some examples, the network node is one of: a base station, a receiver device, or a gNodeB. According to an aspect, there is provided an apparatus comprising: at least one processor, and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to perform: obtaining a limit for maximum signal amplitude associated with an uplink transmission; generating a first sequence of symbols using trellis coding based on the limit for maximum signal amplitude; performing a filtering, based on the first sequence of symbols, to generate a filtered signal; and transmitting, to a network node, a signal based on the filtered signal. In some examples, the obtaining comprises: determining the limit for the uplink transmission based on an uplink transmission peak-to-average power ratio, or receiving, from the network node, information associated with the limit. In some examples, the limit for maximum signal amplitude is received from the network node. In some examples, the uplink transmission is associated with a first modulation and coding scheme, the first modulation and coding scheme comprising: a configuration for the trellis coding, a setof constellation points, a configuration for the filtering, and a forward error correction code. In some examples, the forward error correction code comprises at least one of the following: a low-density parity check, a turbocode, or a polarcode. In some examples, the apparatus is caused to perform: selecting the first modulation and coding scheme from a set of modulation and coding schemes; and providing, to the network node, an indication of the first modulation and coding scheme to be used by the apparatus for the uplink transmission. In some examples, the apparatus is caused to perform: receiving, from the network node, an indication of the first modulation and coding scheme to be used for the uplink transmission. In some examples, the generating comprises: obtaining k data bits as an input; and encoding the k data bits using the trellis coding to generate the first sequence of symbols, wherein the first sequence of symbols is in the time-domain, wherein the trellis coding is associated with a number of states, and the encoding comprises: when in a first state of the trellis coding, determining a next state from a first set of next states that are allowed for the trellis coding based on a first group of n coded bits, when in a second state of the trellis coding, determining a next state from a second set of next states that are allowed for the trellis coding based on a second group of n coded bits, wherein the first set of next states has a different number of states than the second set of next states. In some examples, at least one of the first state or the second state has a number of next states in the first set or the second set respectively that has an integer factor that is odd and greater than one. In some examples, for at least one of the first state or the second state, a number of n coded bits in the first group or the second group respectively is different when determining different next states from the first set or the second set respectively. In some examples, for at least one of the first state or the second state, two different groups of n coded bits determine the same next state from the first set or the second set respectively. In some examples, a number of coded bits in the first group used to determine the next state from the first set of next states is different to a number of coded bits in the second group used to determine the next state from the second set of next states. In some examples, the next state from the first set of next states is determined based on the first group of n coded bits, and the next state from the second set of next states is determined based on the second group of n coded bits, the first group is different to the second group, and the next state from the first set is the same as the next state from the second set. In some examples, the encoding comprises: encoding the k data bits to form the n coded bits; and mapping the n coded bits to the first sequence of symbols using the trellis coding. In some examples, a number of symbols encoded by at least one vector of n coded bits is different than a number of symbols encoded by at least one other vector of n coded bits, or a first vector of n coded bits and a second vector of n coded bits are mapped to the first sequence of symbols, and a sequence of symbols of the first sequence of symbols obtained based on the first vector is the same as a sequence of symbols of the first sequence of symbols obtained based on the second vector. In some examples, a sequence of symbols encoded by at least one vector of n coded bits is the same as a sequence of symbols encoded by at least one other vector of n coded bits. In some examples, the apparatus is caused to perform: modulating the first sequence of symbols to generate a second sequence of symbols, wherein the second sequence of symbols is in the frequency domain. In some examples, the performing a filtering comprises: performing a filtering of the first sequence of symbols using an upsampling filter in the time domain to generate a filtered signal. In some examples, wherein the obtaining, encoding, modulating, performing and transmitting are for the transmission and based on the first modulation and coding scheme. In some examples, the apparatus is a communication device. In some examples, the communication device is one of: a user equipment, a terminal, or a mobile device. According to an aspect, there is provided an apparatus comprising: at least one processor, and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to perform: receiving, from a communication device, a signal; performing a demodulation, based on the signal that has been received, using trellis decoding; and determining an estimate of k data bits comprised within the signal based on the demodulation. In some examples, the apparatus is caused to perform: determining a limit for maximum signal amplitude associated with an uplink transmission for the communication device; and providing, to the communication device, information associated with the limit. In some examples, the limit for maximum signal amplitude is provided to the communication device. In some examples, the signal received from the communication device is associated with a first modulation and coding scheme, the first modulation and coding scheme comprising: a configuration for the trellis coding, a set of constellation points, a configuration for the filtering, and a forward error correction code. In some examples, the forward error correction code comprises at least one of the following: a low-density parity check, a turbocode, or a polarcode. In some examples, the apparatus is caused to perform: selecting the first modulation and coding scheme from a set of modulation and coding schemes; and providing, to the communication device, an indication of the first modulation and coding scheme to be used for uplink transmissions. In some examples, the apparatus is caused to perform: receiving, from the communication device, an indication of the first modulation and coding scheme to be used for uplink transmissions by the communication device. In some examples, the performing the demodulation comprises: performing a demodulation of the signal that has been received using trellis decoding, wherein the trellis decoding utilises a Bahl, Cocke, Jelinek and Raviv, BCJR, algorithm or a Viterbi algorithm. In some examples, the performing the demodulation comprises: performing a window extraction based on the signal, in the time-domain, to determine a time-domain frame; performing a fast Fourier transform of the time-domain frame to determine a third sequence of symbols, wherein the third sequence of symbols are in the frequency domain; performing an inverse fast Fourier transform of the third sequence of symbols to determine a fourth sequence of symbols, wherein the fourth sequence of symbols are in the time-domain; performing the trellis decoding of the fourth sequence of symbols to determine n log-likelihood ratios, LLRs, corresponding to n coded bits, wherein the trellis decoding utilises a Bahl, Cocke, Jelinek and Raviv, BCJR, algorithm or a Viterbi algorithm. In some examples, the estimating comprises: estimating the k data bits based on the n LLRs corresponding to the n coded bits. In some examples, the apparatus is a network node. In some examples, the network node is one of: a base station, a receiver device, or a gNodeB. According to an aspect, there is provided an apparatus comprising: circuitry configured to perform: obtaining a limit for maximum signal amplitude associated with an uplink transmission; circuitry configured to perform: generating a first sequence of symbols using trellis coding based on the limit for maximum signal amplitude; circuitry configured to perform: performing a filtering, based on the first sequence of symbols, to generate a filtered signal; and circuitry configured to perform: transmitting, to a network node, a signal based on the filtered signal. According to an aspect, there is provided an apparatus comprising: circuitry configured to perform: receiving, from a communication device, a signal; circuitry configured to perform: performing a demodulation, based on the signal that has been received, using trellis decoding; and circuitry configured to perform: determining an estimate of k data bits comprised within the signal based on the demodulation. According to an aspect, there is provided a computer program comprising instructions, which when executed by an apparatus, cause the apparatus to perform at least the following: obtaining a limit for maximum signal amplitude associated with an uplink transmission; generating a first sequence of symbols using trellis coding based on the limit for maximum signal amplitude; performing a filtering, based on the first sequence of symbols, to generate a filtered signal; and transmitting, to a network node, a signal based on the filtered signal. According to an aspect, there is provided a computer program comprising instructions, which when executed by an apparatus, cause the apparatus to perform at least the following: receiving, froma communication device, a signal; performing a demodulation, based on the signal that has beenreceived, using trellis decoding; and determining an estimate of k data bits comprised within the signal based on the demodulation. A computer product stored on a medium may cause an apparatus to perform the methods as described herein. A non-transitory computer readable medium comprising program instructions, that, when executed by an apparatus, cause the apparatus to perform the methods as described herein. An electronic device may comprise apparatus as described herein. Various other aspects and further embodiments are also described in the following detailed description and in the attached claims. According to some aspects, there is provided the subject matter of the independent claims. Some further aspects are defined in the dependent claims. The embodiments that do not fall under the scopeof the claims are to be interpreted as examples useful for understanding the disclosure.List of Abbreviations: AF: Application Function AMF: Access and Mobility Management FunctionAN: Access NetworkAP: Access pointBCJR: Bahl, Cocke, Jelinek and Raviv.BS: Base StationCN: Core NetworkDFT-s-OFDM: Discrete Fourier transform spread orthogonal frequency division multiplexingDL: DownlinkeNB: eNodeBFD: Frequency domainFDSS: Frequency domain spectral shapingFDSS-SE: FDSS with spectral extensionFFT: Fast Fourier transformgNB: gNodeBIFFT: Inverse FFTLTE: Long Term Evolution NEF: Network Exposure FunctionNG-RAN: Next Generation Radio Access NetworkNF: Network FunctionNR: New RadioNRF: Network Repository FunctionNW: NetworkMS: Mobile StationPAPR: Peak to average power ratioPCF Policy Control FunctionPLMN: Public Land Mobile NetworkPSK: Phase shift keyingQAM: Quadrature amplitude modulationRAN: Radio Access Network RF: Radio FrequencySCC: Strongly connected componentSMF: Session Management FunctionTD: Time domainUE: User EquipmentUDR: Unified Data RepositoryUDM: Unified Data ManagementUL: UplinkUPF: User Plane Function3GPP: 3rd Generation Partnership Project5G: 5thGeneration5GC: 5G Core network5G-AN: 5G Radio Access Network5GS: 5G SystemBrief Description of Drawings Some examples will now be described, by way of illustrative and non-limiting example only, with reference to the accompanying drawings in which: FIG.1 shows a schematic representation of a 5G communication system; FIG. 2 shows a schematic representation of an apparatus for the 5G communication system ofFIG.1; FIG.3 shows a schematic representation of a communication device; FIG.4 shows a schematic representation of a DFT-s-OFDM modulation process at a UE and a DFT-s-OFDM demodulation process at a network node; FIG.5 shows a graphical representation of a sequence of symbols and a resulting time-domain signal after upsampling and channel filtering; FIG.6 shows a schematic representation of a DFT-s-OFDM modulation process at a UE and a DFT-s-OFDM demodulation process at a network node with FDSS and spectral shaping; FIG.7 shows a schematic representation of an example modulation process at a communication device and demodulation process at a network node; FIGS.8a to 8d show graphical representations of simulation data of the trajectory of upsampledsignals in the complex plane over a number of symbols using: DFT-s-OFDM, DFT-s-OFDM FDSS, DFT-s-OFDM FDSS-SE, and a modulation process with a trellis-encoder, respectively; FIG.9 shows an example signalling and operations diagram for a communication device and a network node; FIG.10 shows a schematic representation of an example trellis graph with a binary modulation, C = 2, and a filter half-length, L = 2; FIG.11 shows a schematic representation of an example trellis graph with merged pairs of parallel nodes; FIG.12 shows a schematic representation of an example trellis graph with edges being removed to facilitate node merging; FIG.13 shows a schematic representation of an example trellis graph with a strongly connected component being extracted; FIG. 14 shows a schematic representation of the trellis graph of FIG. 13 with edge labelscorresponding to an erasure modulation process; FIG. 15 shows a graphical representation of instantaneous peak-to-average power ratio distribution for different modulation processes; FIG.16 shows a schematic representation of hierarchical construction of a 16-QAM constellation from two 4-QAM constellations; FIG. 17 shows graphical representations of time-domain trajectories of upsampled 16-QAM sequences using DFT-s-OFDM and using hierarchical modulation based on two 4-QAM sequences modulated according to a modulation process with a trellis-encoder; FIG.18 shows a schematic representation of a system for hierarchical modulation of a 16-QAM signal; FIG.19 shows an example method flow diagram performed by an apparatus; FIG.20 shows another example method flow diagram performed by an apparatus; and FIG 21 shows a schematic representation of a non-volatile memory medium storing instructionswhich when executed by a processor allow a processor to perform one or more of the steps of the methodof FIGS.19 to 20.Detailed Description Modulation refers to a way that data is formatted prior to transmission. A coding scheme refers to how the data is encoded while being transmitted. Quadrature amplitude modulation (QAM) is a high- bandwidth method of modulation, which is frequently used in, for example, 4G and 5G cellular systems. QAM encodes data by adjusting both the amplitude and the phase of the signal at the same time. Cellularsystems may also use phase-based modulation techniques such as phase shift keying (PSK).Orthogonal frequency division multiplexing (OFDM) is another modulation format used in wireless communication systems such as 5G systems. OFDM combines the benefits of QAM andfrequency division multiplexing (FDM) to produce a high-data-rate communication system.Discrete Fourier transform spread orthogonal frequency division multiplexing (DFT-s-ODFM) is an extension of OFDM. DFT-s-ODFM is a single carrier-based transmission scheme. It is similar to single carrier frequency division multiple access (SC-FDMA) where each user or transmitter is allocated a singlecarrier and a finite portion of the channel bandwidth, and each user is separated from the adjacent userswith a finite amount of spacing to prevent interference. The DFT-s-OFDM scheme eliminates the need for spacing between users and combines all the users orthogonally such that the peak of one user coincides with the null of other users. In addition to this, DFT-s-ODFM also uses the concept of Discrete Fourier Transform (DFT) which is a technique that converts a discrete set of input signal sequences inthe time domain into discrete components in the frequency domain. In a traditional OFDM system, theincoming symbols are directly mapped in the sub-carrier symbol mapping module. In the DFT-S-OFDM,a transform precoding step is performed before mapping the signal symbols on each sub-carrier.3GPP wireless standards such as Long-Term Evolution (LTE) and New Radio (NR) permit the use of DFT-s-OFDM for uplink transmissions from devices (e.g., UEs) to networks. An advantage of DFT- s-ODFM over the OFDM approach used in the downlink is that the time-domain signals have reduced peak-to-average power ratio (PAPR). It is beneficial for communications to keep the PAPR low. Adepiction of a DFT-s-OFDM system is shown in FIG.4.FIG.4 shows a schematic representation of a DFT-s-OFDM modulation process at a UE and a DFT-s-OFDM demodulation process at a network node. The top row of FIG.4 shows a modulation process at the UE, and the bottom row of FIG.4 shows the demodulation process at the network node (e.g., gNB). For modulation, bits of information are input to a channel encoder 401 which outputs coded (or encoded) bits. The coded bits are input to a mapper 403, which out puts time-domain (TD) symbols. TheTD symbols are input to a fast Fourier transform (FFT) module 405, which outputs frequency-domain(FD) symbols. The FD symbols are input to a zero-padding module 407, wherein the output of the zero-padding module 407 is input into an inverse FFT (IFFT) 409. An output from the IFFT 409 is an upsampledTD signal. The upsampled TS signal is input into a crest factor reduction (CFR) module 411. An outputfrom the CFR 411 is input into a cyclic prefix / windowing module 413. A TD signal based on an outputfrom the cyclic prefix / windowing module 413 is transmitted to the network node.For demodulation, the TD signal is received at the network node. The TD signal in input to awindow extraction module 415 which outputs a TD frame. The TD frame is input to an FFT module 417,which outputs FD symbols. The FD symbols are input into an FD equaliser 419. An output from the FD equaliser is provided to an IFFT 421, which outputs TD symbols. The TD symbols are input into a demapper 423, which outputs log-likelihood ratios (LLRs). The LLRs are input into a channel decoder 425. The output from the channel decoder 425 is an estimate of the bits (that were transmitted by the UE). The mapper 403 maps a fixed number of bits to a selected complex constellation point. Thesequence thus generated has good / acceptable PAPR, because the peak amplitude is simply theamplitude of the largest constellation point. For example, when using phase-shift keying (PSK), the PAPR at this point is 0 dB, as all the constellation points have unit magnitude. A depiction of PAPR is shown in FIG.5. FIG.5 shows a graphical representation of a sequence of symbols and a resulting time-domain signal after upsampling and channel filtering. In the example of FIG.5, the information being sent is either a ‘+1’ or a ‘-1’. The ‘+1’ or a ‘-1’ value is shown on the y-axis while the sample number is shown on the x-axis. The information bit is depicted as a circle, whereas the line shows the TD signal that is transmitted. As shown in FIG.5, the TD signal peaks at amplitudes much higher than the values of ‘+1’ or a ‘-1’. This difference between the peak and the average is used to calculate a PAPR. It is generally considered beneficial in a system to have a lower PAPR value. An obstacle to efficient communication is a high PAPR ratio in the upsampled time domain signal. The upsampling operation occurs just before digital to analogue (DAC) conversion, or as part of DAC conversion, and determines the signal presented to an amplifier. As shown in FIG.5, the line curve represents the upsampled signal, which is a smooth bandlimited curve passing through the data symbols.While the data symbols have unit amplitude, the oversampled signal often has much higher peakamplitudes. If not mitigated by CFR, such signals require amplifiers to be operated with a wide linearrange, which consumes more power than an operation in a narrower linear range.In the following examples, the term “symbol” is used for a single constellation point and the term“block” is used for a group of data points processed together by OFDM or DFT-s-OFDM. With reference to FIG. 4, in an example, with a block of N symbols, to limit the bandwidthoccupied by the signal, the symbols are upsampled, by applying N-FFT (see FFT 405), zero padding(see zero-padding 407) the result to length ΩN, and applying a large ΩN-IFFT (see IFFT 409), where Ωis the upsampling factor (typically greater than or equal to 4). If Ω is an integer, this may be equivalent toupsampling the TD symbols and convolving with a sinc filter. However, the upsampling operation oftenintroduces large peaks and thus increases the PAPR by a large factor (e.g., by about 6 dB). At thereceiver, the demodulation process is similar to that of an OFDM receiver, except that there is an additional N-IFFT before the demapper. The demapper estimates the received constellation points and extracts estimates of the coded bits (soft decision) before passing them to the channel decoder. One way to combat this PAPR increase is to implement a crest-factor reduction (CFR) module after the IFFT module (as seen in FIG.4, see CFR 411). CFRs typically uses a clip-and-filter approach which requires several ΩN-FFT / IFFT iterations on the oversampled signal. The module reduces the maximum amplitude, while introducing some distortion that can be modelled as additional noise. Because a CFR module is computationally intensive, and mobile devices (e.g., UEs) are often energy-limited, a CFR being used in mobile devices leads to heavy battery usage (i.e., reduced the battery life). For this reason, CFR is more common in downlink communication rather than uplink, as a network node is notlimited with regard to energy use. Stated differently, the use of the CFR module for modulation at the UEhelps to reduce PAPR, but reduces the battery life the of the UE. In order to improve the PAPR in DFT-s-OFDM, frequency-domain spectral shaping (FDSS) may be utilised at a UE. FDSS is a type of modulation technology which uses a spectrum shaping sequence to effectively shape a waveform in a frequency domain. When FDSS used with spectral extension, this is referred to as FDSS-SE. FDSS-SE is depicted in FIG.6. FIG.6 shows a schematic representation of a DFT-s-OFDM modulation process at a UE and a DFT-s-OFDM demodulation process at a network node with FDSS and spectral shaping. In FDSS-SE of FIG.6, for the modulation process at the UE, zero padding is replaced with cyclic repetition of the frequency domain signal and multiplication by a frequency-domain filter response. The demodulation process at the network node has similar modules to FIG.4. The top row of FIG.6 shows a modulation process at the UE, and the bottom row of FIG.6 shows the demodulation process at the network node (e.g., gNB). For modulation, bits of information are input to a channel encoder 601 which outputs coded (or encoded) bits. The coded bits are input to a mapper 603, which outputs time-domain (TD) symbols. TheTD symbols are input to a fast Fourier transform (FFT) module 605, which outputs frequency-domain(FD) symbols. The FD symbols are input to a cyclic repetition module 607, wherein the output of the cyclicrepetition module 607 is input into a fixed FD shaping filter 609. The shaping filter 609 provides an outputto be input into an inverse FFT (IFFT) 611. An output from the IFFT 611 is an upsampled TD signal. Theupsampled TD signal is input into a cyclic prefix / windowing module 613. A TD signal based on an outputfrom the cyclic prefix / windowing module 613 is transmitted to the network node. For demodulation, the TD signal is received at the network node. The TD signal is input to awindow extraction module 615 which outputs a TD frame. The TD frame is input to an FFT module 617, which outputs FD symbols. The FD symbols are input into an FD equaliser 619. An output from the FD equaliser is provided to an IFFT 621, which outputs TD symbols. The TD symbols are input into a demapper 623, which outputs log-likelihood ratios (LLRs). The LLRs are input into a channel decoder 625. The output from the channel decoder 625 is an estimate of the bits (that were transmitted by the UE). Conventional DFT-s-OFDM may be thought of as a special case of FDSS in which a rectangular filter is used. By using a filter shape other than rectangular, the time-domain signal is effectively convolved with a time-domain impulse different from a sinc function. The filter properties can be chosen to improve PAPR, typically at the cost of some degradation in post-equalized SNR. In the case of FDSS-SE, the improved PAPR is at the cost of an increase in the bandwidth occupied by the signal.Conventionally in FDSS-SE, a number of non-zero coefficients in the frequency domain shaping filter(e.g., 609) is (slightly) larger than N (e.g., to limit complexity).In this manner, there are a number of identified problems with modulation schemes used for uplink transmissions. For DFT-s-OFDM, there is an increase in PAPR due to upsampling. For DFT-s- OFDM with crest-factor reduction (CFR), the computational complexity / power consumption of the CFR module is high which means that battery life is reduced for UEs. Using DFT-s-OFDM with FDSS-SE is a way to mitigate the difficulties highlighted above without need for a CFR module. However, FDSS-SE may increase the bandwidth identified by the transmitted signal. One or more of the following examples aim to address or more of the problems identified above. One or more of the examples aim to further enhance performance gains of FDSS-SE in order to provide additional coverage, while maintaining low implementation complexity at the UE (so that battery life is notreduced). The additional coverage is achieved due to the reduction of PAPR during the modulationprocess. As the PAPR is reduced, the average transmit power of a signal may be increased without saturating the amplifier. This increased transmit power allows a UE to successfully communicate at greater (larger) distances from the network node (e.g., gNB). Therefore, the coverage of the network (i.e., the area for communication with a given network node) increases. In examples, there is provided an apparatus (e.g., a UE) that is configured to obtain a limit for maximum signal amplitude associated with an uplink transmission, and generate a first sequence ofsymbols using trellis coding based on the limit for maximum signal amplitude. The apparatus is alsoconfigured to perform a filtering, based on the first sequence of symbols, to generate a filtered signal,and then transmit, to a network node (e.g., a gNB), a signal based on the filtered signal.One or more of the examples are in the context of wireless communication from a communication device (e.g., a UE) to a network node (e.g., gNB). One or more of the examples allow a UE to transmit information to a gNB, with a low-power consumption, over a band-limited wireless channel. In other examples, the methods also apply in other types of channels with similar constraints (e.g., point-to-point channels). These examples will be described in more detail below, alongside FIGS.7 to 18.Before explaining the examples above in greater detail, an example communication device (as shown in FIG.3) that is capable of performing uplink transmissions to a network is described. The communication device is part of a communication system (as shown in FIG.1). The communication device is able to communicate with one or more of the entities of the communication system (as shown in FIG.1) via an apparatus (as shown in FIG.2), which may be part of / comprised in a network node (e.g.,base station). As described above, a communication device and network node may communicate witheach other, such that the communication device is able to provide uplink transmissions to the network.Certain general aspects of the communication system and the communication device are briefly explained with reference to FIGS. 1 to 3 to assist in understanding the technology underlying the described examples. FIG. 1 shows a schematic representation of a 5G communication system 100. The wirelesscommunication system 100 comprises one more communication devices 102 such as user equipments (UEs), or terminals. The wireless communication system 100 comprises a 5G system (5GS). The 5GS comprises a 5G radio access network (5G-RAN) 106, a 5G core network (5GC) 104 comprising one or more network functions (NF), one or more application functions (AFs) 108, and one or more data networks (DNs) 110. The 5G-RAN 106 may comprise one or more gNodeB (gNB) distributed unit (DU) functions connected to one or more gNodeB (gNB) centralized unit (CU) functions. The 5GC 104 comprises an access and mobility management function (AMF) 112, a session management function (SMF) 114, an authentication server function (AUSF) 116, a user data management (UDM) 118, a user plane function (UPF) 120, a network exposure function (NEF) 122 and / or other NFs. Some of the examples as shown below may be applicable to 3GPP 5G standards. However,some examples may also be applicable to 5G-advanced, 4G, 3G and other 3GPP standards. In a wireless communication system 100, such as that shown in FIG.1, communication devices 102, such as for example, terminals, user apparatuses, user equipments (UE), and / or machine-type communication devices are provided with wireless access via at least one base station or similar wireless transmitting and / or receiving node or point. The communication device 102 is provided with an appropriate signal receiving and transmitting apparatus for enabling communications, for example enabling access to a communication network or communications directly with other devices. The communication device 102 may access a carrier provided by a base station or access point, and transmit and / or receive communications on the carrier. FIG. 2 illustrates an example of an apparatus 200. The apparatus 200 may be for the 5Gcommunication system of FIG.1. The apparatus 200 may be for controlling a function of one or morenetwork entities and / or network functions, such as the entities of the 5G-RAN or the 5GC as illustratedon FIG.1. The apparatus 200 comprises at least one random access memory (RAM) 211a, at least one read only memory (ROM) 211b, at least one processor 212, 213 and an input / output interface 214. The at least one processor 212, 213 is coupled to the RAM 211a and the ROM 211b. The at least one processor 212, 213 may be configured to execute an appropriate software code 215. The software code 215 may for example allow to perform one or more steps to perform one or more of the present aspects or examples. The software code 215 may be stored in the ROM 211b. The apparatus 200 may be interconnected with another apparatus 200 controlling another entity / function of the 5G-AN or the 5GC.. In some examples, apparatus 200 may be configured to provide one or more functions of the 5G-AN or the 5GC. For example, apparatus 200 may be configured to perform at least some functionality of a particular function of the 5G-AN or the 5GC. For example, apparatus 200 may be configured to operate as a particular function of the 5G-AN or the 5GC. In alternative examples, apparatus 200 may beconfigured to perform at least some functionality of two or more functions of the 5G-AN and / or the 5GC.For example, apparatus 200 may be configured to operate as two or more functions of the 5G-AN and / or the 5GC. The apparatus 200 may comprise one or more circuits, or circuitry (not shown) which may be configured to perform one or more of the present aspects or examples. FIG. 3 illustrates an example of a communication device 300. The communication device 300may be similar to the communication device 102 illustrated in FIG.1. The communication device 300 maybe provided by any device capable of sending and receiving radio signals. Non-limiting examples of acommunication device 300 are a user equipment, a terminal, a mobile station (MS) or mobile device suchas a mobile phone or what is known as a ’smart phone’, a computer provided with a wireless interface card or other wireless interface facility (e.g., USB dongle), a personal data assistant (PDA) or a tablet provided with wireless communication capabilities, a machine-type communications (MTC) device, a Cellular Internet of things (CIoT) device, or a terrestrial / maritime / aerial vehicle such as a car, a truck, a boat, an air plane, or a drone, or any combinations of these or the like. The communication device 300 may provide, for example, communication of data for carrying communications. The communications may be one or more of voice, electronic mail (email), text message, multimedia, data, machine data and so on. The communication device 300 may receive signals over an air or radio interface 307 via appropriate apparatus for receiving and may transmit signals via appropriate apparatus for transmitting radio signals. In FIG.3, a transceiver apparatus is designated schematically by block 306. The transceiverapparatus 306 may be provided for example by means of a radio part and associated antennaarrangement. The antenna arrangement may be arranged internally or externally to the mobile device. The communication device 300 may be provided with at least one processor 301, at least one memory ROM 302a, at least one RAM 302b and other possible components 303 for use in software and hardware aided execution of tasks it is designed to perform, including control of access to and communications with access systems and other communication devices. The at least one processor 301 is coupled to the RAM 302b and the ROM 302a. The at least one processor 301 may be configured to execute an appropriate software code 308. The software code 308 may for example allow to perform one or more of the present aspects. The software code 308 may be stored in the ROM 302a. The communication device 300 may comprise one or more circuits, or circuitry (not shown) which may be configured to perform one or more of the present aspects or examples. The processor, storage and other relevant control apparatus may be provided on an appropriate circuit board and / or in chipsets. This feature is denoted by reference 304. The communication device may optionally have a user interface such as keypad 305, touch sensitive screen or pad, combinations thereof or the like. Optionally one or more of a display, a speaker and a microphone may be provided depending on the type of the device. In order to mitigate a high PAPR, as discussed above, a modulation scheme is provided wherein the high PAPR is addressed earlier in the transmit chain, when coded bits are mapped to time-domain symbols. In examples, trellis coding (e.g., using a module for trellis coding, which may be referred to asa trellis encoder) is used at a communication device (e.g., a UE) as part of the modulation and coding ofdata for uplink transmission. In the following, the terms ‘trellis coding’ and ‘trellis encoding’, and ‘trelliscoder’ and ‘trellis encoder’ may be used interchangeably. Conventional trellis coded modulation (TCM) is a modulation scheme that transmits informationwith high efficiency over band-limited channels. TCM is the combination of convolutional (or trellis) codingand modulation into a single step. For example, a 1 / 2 convolutional code takes one bit and codes it intotwo bits. Modulation is the process of converting a signal into analog form via a sinusoidal carrier. DuringTCM, both encoding and modulating occur simultaneously. A trellis encoder may be used in (conventional) TCM. The constraints introduced by the trellis encoder in TCM increases a minimum distance between sequences of modulated symbols, making the scheme more resistant to noise. In examples, trellis coding (e.g., using a trellis encoder) is used as part of a modulation processand is used as an efficient way of mapping information bits to a sequence of modulated symbols whileconstraining the set of possible sequences. In a demodulation process, a trellis decoding is performed (e.g., using a trellis decoder) which is an efficient way to estimate information bits from a noisy encoded sequence of modulated symbols.In examples, a module for performing trellis coding (e.g., a trellis-encoder) is configured, at the mapping stage of the modulation, in order to limit a maximum signalamplitude occurring at the upsampling stage of the modulation. In this manner, the trellis-encoderaccording to some of the following examples may be referred to as a ‘peak-limiting trellis encoder’, an‘amplitude-limiting trellis encoder’, or the like. The peak-limiting trellis encoder is used to avoid generatingsequences of symbols that would lead to large peak amplitudes in the later upsampling step of themodulation. A reduction in the peak amplitudes thus eliminates the need for a CFR module in themodulation. A block diagram of an end-to-end scheme using the trellis encoder is depicted in FIG.7. FIG.7 shows a schematic representation of an example modulation process at a communication device and demodulation process at a network node. The top row of FIG.7 shows a modulation performed by a communication device (e.g., a UE),and the bottom row of FIG. 7 shows a demodulation performed by the network node (e.g., gNB). Thefeatures / operations performed by the UE for the modulation may be performed by one or more means comprised in the UE. The features / operations performed by the gNB for the demodulation may be performed by one or more means comprised in the gNB. For example, the “means” may include one or more of: at least one processor, at least one memory, transceiver circuitry, antenna circuitry, etc. It should be understood that these are provided as non-limiting examples. For the modulation, k (number of) data bits (e.g., information to be transmitted) is input to amodule for performing channel encoding (herein referred to as a channel encoder 701). The channelencoder 701 encodes the k data bits and outputs n coded (or encoded) bits. In some examples, thechannel encoder 701 takes the k data bits and maps them to the n coded bits, wherein n > k. This may be referred to as adding redundancy. The purpose of adding redundancy is so that when the k data bits are affected by the channel, and the channel decoder receives imperfect estimates of the n coded bits, the decoder is still able to determine the original k data bits, with a high probability of success. In thiscontext, the "channel", from the point of the view of the channel encoder 701, is modules from the outputof the channel encoder 701 to the input of a decoder. An example of a channel code is a repetition code.Here, the channel encoder 701 maps k data bits to n = 3k bits by repeating each data bit 3 times. Then,if data bits are erased in the channel, as long as at least 1 of the 3 bits in each group is not erased, thedecoder is able to recover the original k bits.The n coded bits are input to a module for performing trellis coding (herein referred to as a trellis-encoder 703) (or ‘peak-limiting trellis encoder’). The trellis-encoder maps the n coded bits to a firstsequence of symbols. The first sequence of symbols is in the time domain (TD). As part of the mapping, the trellis-encoder 703 maps at least one vector (or each of a plurality of vectors) of n coded bits to asequence of symbols. In this manner, the trellis-encoder 703 outputs time-domain (TD) symbols. Thetrellis-encoder 703 is configured with a limit for maximum signal amplitude. The encoding and mapping performed by the trellis-encoder 703 is based on the limit for maximum signal amplitude. This will bediscussed in more detail below. In this manner, the trellis encoder 703 maps the n coded bits into asequence of complex numbers (modulated symbols) which have a physical meaning in terms of carrier phase and amplitude, and which will then be turned into a physical signal in the following steps, and lastly processed by a digital to analogue converter (DAC) (not shown). The first sequence of symbols are then input to a module for performing FFT (herein referred toas an FFT module 705), which performs at least one FFT operation on the input and outputs frequency-domain (FD) symbols. The output from the FFT module 705 may be referred to as a second sequenceof symbols. The FD symbols are input to a module for performing cyclic repetition (herein referred to asa cyclic repetition module 707). The cyclic repetition module 707 performs a cyclic repetition operationon the input, wherein an output of the cyclic repetition module 707 is input into a module for performinga filtering (herein referred to as a filter 709). The filter 709 may be in the FD, and be associated with afixed value, and therefore referred to as a ‘fixed FD shaping filter 709’. The filter 709 performs a filteringoperation on the input from the cyclic repetition module 707, and provides an output to be input into amodule for performing IFFT (herein referred to as an IFFT 711). The IFFT 711 performs at least one IFFToperation on the input to output an upsampled signal in the TD. The operation performed by thecombination of modules 705, 707, 709, and 711 may be referred to as upsampling. The upsampled TDsignal is input into a module for performing cyclic prefixing / windowing (herein referred to as a cyclicprefix / windowing module 713). A TD signal based on an output from the cyclic prefix / windowing module 713 is transmitted by the UE to the gNB. The operations of the FFT 705, the cyclic repetition module 707, the filter 709 and the IFFT 711may be referred to as a upsampling and filtering (or filtering and upsampling). Upsampling indicates thatthe number of samples has increased (by a factor). Filtering indicated that the bandwidth occupied by the signal occupied has not increased or only increased in a controlled way. This (digital) upsampling and filtering prepares the signal to go into a DAC (not shown).For the demodulation, a TD signal (transmitted by the UE) is received at the gNB. The TD signalis provided as an input into a module for performing window extraction (herein referred to as a windowextraction module 715). The window extraction module 715 performs a window extraction operation andoutputs a frame in the TD. The TD frame is input to a module for performing FFT (herein referred to asan FFT module 717). The FFT module 717 performs an at least one FFT operation on its input andoutputs symbols in the FD (the symbols in the FD may be referred to as a third sequence of symbols).The third sequence of symbols are input into a module for performing FD equalising (herein referred toas an FD equaliser 719). The FD equaliser 719 performs an equalising operation in the FD, wherein anoutput from the FD equaliser 719 is provided as an input to a module for performing IFFT (herein referredto as an IFFT 721). The IFFT 721 performs at least one IFFT operation on its input and outputs symbolsin the TD (the symbols in the TD may be referred to as a fourth sequence of symbols). The fourthsequence of symbols is input into a module for performing trellis decoding (herein referred to as a trellis-decoder 723). The trellis-decoder 723 may be configured with a Bahl, Cocke, Jelinek and Raviv (BCJR)algorithm. The BCLR algorithm in the trellis-decoder 723 is utilised to de-map the fourth sequence ofsymbols. The trellis-decoder 723 outputs n log-likelihood ratios (LLRs) corresponding to the n coded bits.The LLRs are input into a module for performing channel decoding (herein referred to as a channeldecoder 725). The output from the channel decoder 725 is an estimate of the k data bits (that weretransmitted by the UE). As trellis encoding is utilised at the transmit side (e.g., at the UE), the receiver side (e.g., at thegNB) is modified (compared to FIG.6) by replacing the demapper with the trellis decoder 723 (e.g. usingthe BCJR algorithm). In comparison to the modulation in FIG.4, the use of the trellis encoder allows theCFR module to be removed, which has the effect of significantly reducing the complexity of the transmitter(e.g., the UE). This helps to extend battery life at the UE. The addition of a trellis decoder increasescomputational complexity at the gNB, but the limitation on the use of energy at the network-side is oftenless important as the gNB is not a mobile device. Therefore, the modulation shown in FIG. 7 shiftscomplexity from the UE to the gNB. In comparison to the modulation in FIG.6, the modulation in FIG.7further improves the spectral efficiency and reach relative to FDSS-SE.In some examples, at the UE side, a wide frequency-domain filter (e.g., filter 709) is used formodulation (compared to a narrower filter used in FDSS-SE). The wide frequency-domain filter may haveas many as ΩN non-zero coefficients. This contrasts FDSS-SE whereby the width of a frequency-domainfilter is typically larger than N by a small fraction. Use of the wide frequency-domain filter in the transmitchain is to shorten the time span of the equivalent time-domain upsampling filter. Having a shorter time-domain response facilitates the construction of the peak-limiting trellis encoder. For example, inFDSS, a block of N time domain symbols may be mapped to N frequency domain symbols. The symbols are zero extended to ΩN symbols, for example with Ω= 4. An IFFT of size ΩN is then used to map back to time domain. The N non-zero values are multiplied by a N filter coefficients. This is an example of a narrow frequency domain filter. In FDSS-SE, N frequency domain symbols may be cyclically extended to a longer length, for example to 1.25 N (i.e., a 25% increase), and then zero-extended to ΩN. The non- zero symbols are multiplied by 1.25 N filter coefficients. This is another example of a narrow frequency domain filter. In some examples (e.g., using the system of FIG.7), N frequency domain symbols may be cyclically extended to the (full) ΩN (e.g., 4N). These ΩN symbols are then multiplied by ΩN filter coefficients. This may be considered to be a wide frequency-domain filter. The filter is wide relative to the filters of an FDSS and FDSS-SE modulation as described above. An advantage of using a filter that is wide in the frequency domain is that such a filter may then be narrow in the time domain. For example, having 2LΩ coefficients with L = 4. As shown in FIG.7, a trellis encoder (e.g., 703) is used in conjunction with an upsampling filterto control a peak amplitude of a signal after upsampling. The upsampling filter(s) (e.g., 711) may have atime-domain impulse response that is relatively narrow, when compared with DFT-s-OFDM, or FDSS, or FDSS-SE. As part of the mapping performed by the trellis encoder (e.g., 703), a number of symbols encoded by at least one vector of n coded bits may be different than a number of symbols encoded by at least oneother vector of n coded bits. Stated differently, the trellis encoder is configured to use a variable numberof bits per symbol in the (peak-controlling) trellis encoder. This may maximize the average number of bitscarried, relative to a trellis encoder with a fixed number of bits per symbol. The variable bits per symbolwill be described in more detail below. As part of the mapping performed by the trellis encoder (e.g., 703), a first vector of n coded bitsand a second vector of n coded bits may be mapped to the first sequence of symbols, and a sequence of symbols of the first sequence of symbols obtained based on the first vector is the same as a sequence of symbols of the first sequence of symbols obtained based on the second vector. Stated differently, thereis a mapping with erasures in the trellis encoder. This may maximize the average number of bits carried,relative to a trellis encoder with a fixed number of bits per symbol. This erasures operation will bedescribed in more detail below. In some examples, a cyclic sequence is generated using a trellis (e.g., a sequence that startsand ends in the same trellis state). This facilitates the use of end-to-end scheme of FIG.7 with a cyclic prefix. This will be described in more detail below. In some examples, a configuration for a trellis encoder (e.g., 703) is determined. This maycomprise determining an algorithm for designing a peak-limiting trellis encoder of that has peak reductionproperties and good / high bit rate. This will be described in more detail below. FIGS.8a to 8d show graphical representations of simulation data of the trajectory of upsampled signals in the complex plane over a number of symbols using: DFT-s-OFDM, DFT-s-OFDM FDSS, DFT- s-OFDM FDSS-SE, and a modulation process with a trellis-encoder, respectively. FIG.8a shows a graphical representation of simulation data for DFT-s-OFDM. FIG.8b shows a graphical representation of simulation data for DFT-s-OFDM FDSS. FIG. 8c shows a graphical representation of simulation data for DFT-s-OFDM FDSS-SE. FIG.8d shows a graphical representation of simulation data for a modulation process with a trellis-encoder. As seen in FIG. 8d, the signal amplitude in the complex plane has been limited to 1.4. In thismanner, none or the signals has an amplitude above 1.4. In FIGS.8a to 8c, for DFT-s-OFDM, DFT-s- OFDM FDSS, DFT-s-OFDM FDSS-SE there are signals that have peaks above 1.4. In this manner, the PAPR in FIGS.8a to 8c is higher than FIG.8d. With ordinary 4-PSK modulation, the oversampled signal has excursions in the complex plane as high as magnitude 2 (as shown in FIGS.8a to 8c). For FIG.8d, the peak-limiting trellis is designed to ensure that the amplitude of the oversampled signal does not exceed 1.4. This ideal crest-factor control is accomplished with low complexity at the UE, at the cost of some reduction in the information carrying capacity of the signal per unit power. The tight control of the signal peaks allows the signal to be transmitted with increased power (reduced backoff). The net effect of increased power but decreased capacity per unit power, can result in a net increase in capacity. FIG.9 shows an example signalling and operations diagram for a communication device and a network node. At S901a, the communication device (e.g., a UE) determines a modulation and coding scheme (MCS) for an uplink transmission. The UE may select the MCS from a set of MCSs. The set of MCSs may be pre-agreed between UE and network. The selection by the UE may be based on one or more requirements associated with the uplink transmission. For example, the UE may select the MCS based on a requirement associated with PAPR, for the uplink transmission. The MCS comprises: a configuration for a trellis-encoder, a set of constellation points, a configuration for at least one filter, and a forward error correction code. In some examples, the forwarderror correction code comprises at least one of the following: a low-density parity check code, aturbocode, or a polarcode. The configuration for the trellis encoder may be associated with a limit for a maximum signalamplitude. The limit for a maximum signal amplitude may be referred to as a ‘limit for a maximummagnitude’, or ‘peak-limiting factor’ in some examples. In other examples, any suitable name is used.The limit for a maximum signal amplitude is representative of a maximum value (or limit) of the magnitudeof a signal (or sequence) output by a filter for an uplink transmission. For example, the limit may be avalue of 1.4, which means that magnitudes of signals output by a filter (as part of modulation, e.g., outputby IFFT 711) have a maximum amplitude / maximum magnitude of 1.4. As seen in FIG.8d, the limit (of1.4) may be selected such that the magnitude of the signals does not exceed the maximum value of 1.4. At S902a, the UE provides (or sends), to the network node (e.g., a gNB) an indication of the MCS that has been selected by the UE. The gNB will use the indication to demodulate and decode any future transmissions received from the UE. As an alternative to S901a and S902a, there are S901b and S902b. At S901b, the gNB determines an MCS to be used for uplink transmissions from a UE. The gNB may select the MCS from a set of MCSs. The selection by the gNB may be based on one or more requirements associated with uplink transmissions. For example, the gNB may select the MCS based on a requirement associated with PAPR. The MCS comprises: a configuration for a trellis-encoder, a set of constellation points, a configuration for at least one filter, and a forward error correction code. In some examples, the forward error correction code comprises at least one of the following: a low-density parity check, a turbo-code, ora polar-code. The configuration for the trellis encoder may be associated with a limit for a maximum signalamplitude. At S902b, the gNB provides (or sends), to the UE, an indication of the MCS that has been selected by the gNB. The UE will use the indication to modulate data for an uplink transmission to the gNB. At S903, for the uplink transmission, the UE performs a modulation of data bits to be transmitted,wherein the modulation is based on the MCS. The modulation may utilise one or more of the functionalmodules depicted in FIG.7. The modulation may comprise obtaining a limit for maximum signal amplitude associated withthe uplink transmission, and then generating, using trellis coding, a first sequence of symbols based onthe limit for maximum signal amplitude. The modulation may comprise performing a filtering, based on the first sequence of symbols, to generate a filtered signal. For example, the UE may obtain k data bits to be transmitted. Based on the MCS, the UEencodes the k data bits and performs a mapping using trellis coding to generate the first sequence ofsymbols, wherein the first sequence of symbols is in the time-domain. The encoding comprises: encoding the k data bits to form n coded bits. The encoding may be performed using a channel encoder (e.g.,channel encoder 107). Once encoded, there may be a mapping of the n coded bits to the first sequenceof symbols, using a trellis encoder (e.g., the trellis encoder 703). In some examples, the trellis coding is associated with a number of states. When in a first state of the trellis coding, the UE determines a next state from a first set of next states that are allowed for the trellis coding based on a first group of n coded bits. When in a second state of the trellis coding, the UE also determines a next state from a second set of next states that are allowed for the trellis coding based on a second group of n coded bits. The first set of next states has a different number of states than the second set of next states. In this manner, the trellis is output-irregular. For an output-regular trellis, all nodes have the same number of output edges. For output-irregular, the output has a different number of output edges. Thus, in examples, the trellis is output-irregular, such that different nodes in the trellis have a different numberof output edges. For the trellis coding according to examples, either a variable number of bits per symbolis used, or multiple inputs map to the same symbol (e.g., an erasure scheme, discussed in more detailbelow). In some examples, at least one of the first state or the second state has a number of next statesin the first set or the second set respectively that has an integer factor that is odd and greater than 1 (i.e.,the number of next states in the first set or the second set is not a power of two). In some examples, for at least one of the first state or the second state, a number of n coded bits in the first group or the second group respectively is different when determining different next states fromthe first set or the second set respectively. Stated differently, a number of symbols encoded by at leastone vector of n coded bits is different than a number of symbols encoded by at least one other vector ofn coded bits. In this manner, a variable number of bits per symbol is used for the trellis coding.In some examples, for at least one of the first state or the second state, two different groups of ncoded bits determine the same next state from the first set or the second set respectively. Stateddifferently, a first vector of n coded bits and a second vector of n coded bits are mapped to the first sequence of symbols, wherein a sequence of symbols of the first sequence of symbols that is obtainedbased on the first vector is the same as a sequence of symbols of the first sequence of symbols that isobtained based on the second vector. In this manner, an erasure scheme is used. This will be described in more detail below. The first sequence of symbols is then filtered by the UE based on the MCS, to form the filtered signal. For example, the first sequence of symbols is filtered based on the configuration for the at least one filter comprised in the MCS. The filtering may utilise at least one of: the FFT 705, the cyclic repetition 707, the filter 709, or the IFFT 711. At S904, the UE transmits, to the gNB, a signal based on the filtered signal. At S905, the gNB demodulates the signal received from the UE based on the MCS. Forexamples, the demodulation may utilise one or more of the functional modules depicted in FIG.7.For example, the gNB receives, from the UE, the signal, and then performs a demodulation, based on the signal that has been received, using trellis-decoding (e.g., using the trellis decoder 723).The trellis decoder may be configured with a BCJR algorithm. The gNB then estimates k data bitscomprised within the signal based on the demodulation. Examples for trellis determination (or configuration) processes and subsequent use of the trellisfor modulation is now described as follows. In some examples, the trellis may be determined in an ‘off-line’ process together with a configuration for an associated upsampling filter, as described below.A) Model and notation for upsampling process: For a direct sequence transmission, a transmitter (e.g., a UE) prepares a block of ^ complexsymbols{^^} ^^^^^^to be transmitted. The symbols are upsampled and filtered to create a second discrete time complex sequence, with a higher sampling rate and a controlled occupied bandwidth. Theupsampling factor is denoted by Ω , whereby typical values for Ω range from 4 to 8, for example.Properties that are tracked include an amplitude distribution (including the peak value and average value)and a power spectral density (e.g., in particular, how much energy is present outside the frequenciesallocated for information transmission). In the following example, it is assumed that the upsampling factor Ω is an integer. In otherexamples, the upsampling factor is a non-integer Ω and will be described in more detail below.As depicted in FIG. 4, conventionally in DFT-s-OFDM, the upsampling operation is performedusing an ^-FFT, zero padding to size Ω^, and then applying a Ω^-IFFT. As indicated in FIG.6, a moregeneral approach is to apply an ^-FFT, cyclically extend the result to length Ω^, multiply by a frequencydomain filter, and then apply a Ω^ -IFFT. If the frequency domain filter is denoted ^^ , for ^ =0, … , Ω^ − 1, then this process is equivalent to the time domain operation of taking the initial sequence^^ , upsampling it to obtain the sequence ^^ defined by:^ = ^Ω otherwiseand then circularly convolving the upsampled sequence with the time domain filter ℎ^^ = IFFT(^^).In this manner, ^^is obtained by taking the time-domain sequence of length N, denoted ^^, andexpanding it to size ΩN by inserting Ω -1 zeros between each pair of symbols ^^ and ^^^^ . Forexample, with Ω = 4, there is ^^ followed by 3 zeros, followed by ^^^^, then 3 more zeros, etc. Thisupsampled sequence is convolved with the filter ℎ^^. The symbols ^^may be the time domain symbols produced by the trellis encoder 703 in FIG.7. In conventional DFT-s-OFDM, the frequency domain filter is a rectangular filter with ^ ones andΩ(^ − 1) zeros. This results in a time-domain filter approximately equal to a sinc function with a widetime-domain response. In some examples, for a UE performing a modulation (e.g., according to FIG.9)it is advantageous to use / select a filter that has a more concentrated time-domain response. Theresponse in the frequency domain may also be concentrated. In order to achieve this response, inexamples, a truncated sinc function in the time domain, or a sinc function multiplied by a raised cosinewindow, is used.In some examples, the number of non-zero elements in the filter is a number 2ΩL that is smallerthan ^Ω. In this manner, the UE and gNB performing modulation and demodulation (e.g., according to FIG.9) may be considered to be a system performing (conventional) convolution rather than circularconvolution. In this manner, the more concentrated time domain response is a filter having only 2ΩL non-zero coefficients, compared with a conventional time-domain response that has NΩ non-zero coefficients.For example, L may be 4 and N may be 256 and Ω = 4, and so NL = 1024 which is longer than 2LΩ =32. In general there may be a trade-off between a length of the filter, ^, in the time domain and a bandwidth occupied by the transmitted signal. In examples, it is useful to design a filter that expandsbandwidth to a limited degree in order to keep ^ small. The bandwidth of the filter can be defined as acentral range of frequencies outside of which the frequency response is below a specified threshold.The upsampled sequence with a filter ℎ^ of length 2Ω^ may be expressed as: Given the structure of ^^, ℎ^^ may be described as comprising of Ω different filters ^(^)of length 2^ = ℎ^^^^^ . The values ^^ that are produced may be the upsampled time domain symbolsproduced by the IFFT 711 of FIG.7. The upsampled sequence may also be expressed as: That is, ^^^ is obtained by convolving ^^ with ^(^), ^^^^^is obtained by convolving ^^with , and so on.Given a filter ℎ^^ , and assuming that complex symbols have bounded magnitude |^^| ≤ ^ , themaximum possible magnitude of the output may be: A ‘worst case’ amplitude may be achieved when the symbols ^^ have a maximum amplitudeand have phases aligned with corresponding elements of filter coefficients. B) Design of a ‘peak-limiting’ trellis encoder: The ‘peak-limiting’ trellis encoder is configured to identify (or determine) sequences of complex symbols that lead to upsampled amplitudes above a threshold magnitude, and prevent them from being generated. Firstly, identify problematic sequences. Given a length 2^ subsequence ^^ ≔{^^^^^^ , … , ^^, … , ^^^^} , the resulting Ω upsampled values {^^^ , ^^^^^, … , ^^^^^^^ } may becomputed as well as their associated magnitudes. Associated with each subsequence a maximum resulting magnitude (or peak amplitude) may be calculated with: For a system with ^ constellation points, there are ^^^ possible sequences of length 2^, eachof which typically occurs with equal probability. The distribution of output amplitudes of the filter may bedetermined by calculating ^(^^) for each possible input sequence.A trellis graph (e.g., configuration for trellis encoder) is determined, for use in modulation, thatensures that sequences with ^(^^) > ^ cannot occur. The limit, ^, is a limit on the magnitude ofsequences / signals. The limit, ^ , may be referred to as a limit for maximum signal amplitude.To aid in the graph construction the notation ^^ = {^^ , ^^^^} is defined where ^^ denotesthe first 2^-1 elements of ^^and ^^^^is the last element.A trellis graph enforcing these constraints may be constructed as follows:1. Choose a limit ^ .2. For each of the ^^^ possible sequences ^ of length 2^, consider it valid if ^(^) ≤ ^ and invalidotherwise. 3. Construct a modulation trellis graph, as follows:a. For time ^, there are ^^^^^ nodes representing each possible value of ^^.b. For time ^ + 1, there are ^^^^^ nodes representing each possible value of ^^^^c. For each node at time ^, for each of ^ possible values of ^^^^ , add an edge connectingnode {^^^^^^, … , ^^^^^^} at time ^ with node {^^^^^^, … , ^^^^} at time ^ + 1 ,only if the full sequence {^^^^^^ , … , ^^^^^^, ^^^^} is valid.In this graphical representation, the trellis states are the 2^ − 1 elements ^^ and each edgerepresents a valid final element ^^^^. Any path through the graph represents a sequence of complexsymbols {^^}, such that the upsampled sequence {^^} does not exceed the limit ^.Given the graph used for modulation, a receiver may use the Viterbi algorithm to find a maximumlikelihood estimate of the transmitted sequence (this may assuming an ideal Gaussian noise model). Inother examples, a BCJR algorithm is used to find log likelihood ratios for each transmitted bit.As part of the identification of ‘problematic’ sequences, the limit, ^, should be chosen to optimizetrade-offs. The limit may be small enough to give significant peak reduction. However, if the limit is toosmall, the number of bits that can be carried per symbol will go down. This trade-off (between peakreduction and bits-per-symbol) may be optimized with trial and error in an outer optimization loop, or anyother suitable method. In some examples, the limit is within the range of 1.4 to 1.7. For example, the limit is one of: 1.4, 1.45, 1.5, 1.55, 1.6, or 1.65. In other examples, the limit is chosen to be a value greater than 1.7, or smaller than 1.4. As an example of the design of the trellis encoder, ^ = 2, ^ = 2, Ω = 2, is considered, withconstellation points {−1,1}, and a filter ℎ^ = ^0, − ^, 0,^ ^, 1,^ ^, 0, −^ ^^, which breaks down into twosub-filters ℎ(^) = In order to determine the magnitude foreach possible output, ^^^ = 16 sequences is listed and then the magnitude ^(^) is calculated toobtain Table 1 as follows. x[n-2] x[n-1] x[n] x[n+1] y[2n] y[2n+1] ^(x)1 1 1 1 1 0.5 11 1 1 -1 1 1.5 1.51 1 -1 1 -1 -1 11 1 -1 -1 -1 0 11 -1 1 1 1 -1 11 -1 1 -1 1 0 11 -1 -1 1 -1 -2.5 2.51 -1 -1 -1 -1 -1.5 1.5-1 1 1 1 1 1.5 1.5-1 1 1 -1 1 2.5 2.5-1 1 -1 1 -1 0 1-1 1 -1 -1 -1 1 1-1 -1 1 1 1 0 1-1 -1 1 -1 1 1 1-1 -1 -1 1 -1 -1.5 1.5-1 -1 -1 -1 -1 -0.5 1 Table 1: Different combinations of constellation points +1 and -1 as input sequences and corresponding peak magnitudes. As seen in Table 1, while 10 of the 16 sequences have a peak magnitude of 1, there are 4 sequences that have peak magnitudes of 1.5, and 2 sequences that have a peak magnitude of 2.5. As an example, if the chosen limit is 1.5 (e.g., λ=1.5), then the two sequences {1,-1,-1,1} and {- 1,1,1,-1} that lead to peaks of 2.5 are invalid. A trellis graph is determined accordingly, and is depicted in FIG.10. FIG.10 shows a schematic representation of an example trellis graph with a binary modulation,C = 2, and a filter half-length, L = 2. FIG.10 is illustrating the example whereby a limit of 1.5 is chosen.In this example, the eight nodes 1001 on the left represent the eight possible values of thesequence ^^ = {^^^^, ^^ , ^^^^} and the eight nodes 1003 on the right represent the eight possiblevalues of the sequence ^^^^ = {^^ , ^^^^, ^^^^} . Each edge represents a valid sequence ^^ ={^^^^, ^^ , ^^^^, ^^^^}. An edge is represented with an arrow (or line) 1005, which is either solid ordashed. The nodes 1001, which are represented by circles, denote the different states of the trellis, wherein the arrows / lines represent the branches corresponding to state transitions. In this manner, a node represents one of plurality (encoder) states, while a branch connecting two nodes represents the encoder output associated to the transition between the corresponding encoder states. Edges with ^^^^ = 1 are drawn as solid, and edges with ^^^^ = −1 are drawn as dashed.Six of the nodes in the first column have out-degree of two, and hence can modulate 1 bit. Two of the nodes (labelled 1007 and 1009 respectively) in the first column have out-degree of one, because twoedges that would represent invalid sequences have been removed. A property of this trellis is that asequence of constellation values generated by traversing the trellis will not exceed an amplitude of ^ =1.5 after upsampling with the filter ℎ^ .The trellis graph constructed has ^^^^^ nodes and for many combinations of ^ and ^, thenumber of nodes may be too large to be used (in some systems). In order to improve efficiency, the size of the trellis may be reduced in some examples. This may be done in at least three ways including: -merging parallel nodes- removing edges- extracting a single strongly-connected componentsA trellis reduction procedure may be carried out by iterating through these steps. As the trellis size decreases, the number of bits per symbol carried by the trellis also reduces. From the variousdesigns thus obtained, a solution with good trade-off between complexity and performance may beselected. The trellis reduction is described in more detail below.An examples of merging parallel nodes is depicted in FIG.11. FIG.11 shows a schematic representation of an example trellis graph with merged pairs of parallel nodes. When there are two nodes whose outgoing edges connect to the same set of neighbours with edges of the same “type” (here solid or dashed), the possible sequences generated, starting from those two nodes, are identical. Due to this, the two nodes may be merged together. The result of the merging is that there is a reduction in the number of nodes in the graph without changing the set of sequences generated. As shown in FIG.11, the second node 1101, {1,1,-1}, and the sixth node 1103, {-1,1,-1}, both connect to the third node with a solid edge and to the fourth node with a dashed edge. The second 1101and sixth nodes 1103 are merged to create a new node 1105 labelled {?,1,-1}. The third node 1107 andthe seventh node 1109 are also merged to create a new node 1111 labelled {?,-1,1}. The simplified graph (on the right hand side of FIG.11) has six nodes but generates the same sequences of constellation points as the original graph (on the left hand side of FIG.11) which has eight nodes. Alternatively, or additionally, to the node merging, to (further) reduce the size of a trellis, edges may be removed. The act of removing an edge reduces the set of possible sequences that can be generated, which can reduce the information carried per symbol. However, it has the advantage of helping to simplify the graph. In particular edges may be removed to make nodes that are nearly parallel exactly parallel, so that they can be merged. An example of removing edges is depicted in FIG.11, which follows on the from example of FIG.10. In the example of FIG.11 there is a combination of merging parallel nodes and removing edges. In other examples, one of: merging nodes, and removing edges is utilised. FIG.12 shows a schematic representation of an example trellis graph with edges being removed to facilitate node merging. In the example of FIG.12, a first edge 1201 and a second edge 1203 are removed. Thus, the second 1205 and sixth nodes 1207 in the trellis become parallel, and so they are merged to create thesimpler trellis 1211 (the right hand side trellis of FIG.12). Before removing the edges 1201, 1203, thesecond 1205 and sixth nodes 1207 are not parallel because they connect to at least one node that is not in common. The first edge 1201 is removed because it connects the second node 1205 to a node that the sixth node 1207 does not connect to. The second edge 1203 is removed because it connects the sixth node 1207 to a node that the second node does not connect to. Once the first 1201 and second edges 1203 are removed, the second node 1205 and the sixth node 1207 (only) connect to the same setof nodes, namely a third node 1209. Thus, they are parallel and may be merged.Using conventional theory of Markov processes, the probabilities of occurrence of each edge inthe trellis can be calculated. This information may be used in the edge removal process, for example byremoving edges that occur with low probability. Alternatively, or additionally to removing edges, theremay be a removal of nodes that occur with low probability as a method of trellis reduction.A directed graph, such as the trellis 1211 of FIG. 12, may have multiple strongly connectedcomponents (SCC). An SCC is a set of nodes such that each node in the set is reachable from each other node in the set. The final trellis should only have a single SCC. Thus, as part of a reduction process, all SCCs are determined. The SCCs may be determined using any suitable method. Then, one of the SCCs is selected with desirable properties, and the other SCCs are discarded. This is depicted in FIG. 13. As an example, any node that has no ingoing edges, or a node that has no outgoing edges is an SCC of size 1, and may be removed from a trellis graph. Detecting and removing such SCCs is a low complexity operation that may be interleaved with multiple iterations of edge removal and removing parallel nodes, in some examples. FIG.13 shows a schematic representation of an example trellis graph with a strongly connected component being extracted. Atrellis graph 1301 on the right hand side of FIG.13 is the same as the trellis 1211 of FIG.12.The trellis graph 1301 has two strongly connected components: one being the fourth node 1303 (by itself), and the other being the remaining four nodes (on the n+1 column of trellis 1301). The fourth node 1303is a ‘trivial’ trellis with no edges. The fourth node 1303 is therefore removed. This leaves a trellis of fournodes (on the n+1 column) forming a single SCC, as shown on the right side trellis 1305 of the figure.C) Using the peak-limiting trellis for modulation: Once the trellis has been configured (or designed), the trellis may be used for modulation of data. Stated differently, the trellis is used to take a sequence of coded bits and map them to a sequence of constellation points. Conventionally, in TCM, a trellis is designed to be regular (all nodes have the sameout-degree) and the out-degree is typically a power of two, e.g., 2^. Conventional TCM then operatesas follows: 1) Start in a known trellis node ^^, and let ^ = 0.2) Extract ^ bits from the bit sequence, and use them to select of one of the 2^ outgoing edges ofnode ^^.3) Set ^^ to be the constellation point associated with the selected edge, and let the new state^^^^be the destination node of the selected edge. 4) Set ^ ← ^ + 1 and repeat from 2).This scheme carries exactly ^ bits per symbol, and thus can be called a fixed rate scheme.For the trellis graphs determined according to examples (e.g., as depicted in FIGS.10 to 13), themodulation scheme may be modified in one of two ways. These modifications may comprise either: usinga variable rate modulation scheme, or using an erasure scheme. For the variable rate modulation scheme, a node ^ with out-degree ^(^) is assigned a binaryprefix code with ^(^) code words. For example, if the out degree is ^(^) = 3, the prefix code couldconsist of the three code words {0}, {10}, {11}. If ^(^) = 2, the code could be {0}, {1}. When the outdegree is ^(^) = 1, there is a single empty code word {}. A prefix code may be fed 1 bit at a time,returning the index of the first code word that matches. For example, in the case ^(^) = 3, if the first bitreceived is “0”, this matches the first codeword, and index 0 is immediately returned. If the first bit received is “1”, then a second bit is required to determine whether the index 1 or 2 should be returned. In the trivialcase ^(^) = 1, no bits are consumed and the index 0 is returned.A trellis modulation (with variable rate) may operate as follows:1) Start in a known trellis node ^^, and let ^ = 0.2) Using the prefix code assigned to node ^^, extract 0 or more bits from the bit sequence until acodeword is identified. Select the corresponding edge from among the ^(^^) outgoing edges ofnode ^^. 3) Set ^^ to be the constellation point associated with the selected edge, and let the new state^^^^be the destination node of the selected edge. 4) Set ^ ← ^ + 1 and repeat from 2).For this method, the number of bits extracted in 2) is variable, instead of being exactly ^ bits. Forthis reason, this scheme may be referred to as a variable rate scheme, or variable bits per symbol. Forexample, using the variable rate scheme, a number of symbols encoded by at least one vector of n coded bits may be different to a number of symbols encoded by at least one other vector of n coded bits. Atrellis decoder (e.g., 723 of FIG.7) processes received symbols conventionally to estimate themost likely path through the trellis. The sequence of code words associated with the edges in this pathare concatenated to form estimated coded bits. A number of coded bits used to create a block of Ntransmitted symbols will vary from block to block, depending on the path through the trellis. Using minimum depth prefix codes, the average number of bits consumed to identify one of ^(^) edges in 2) may be: ^− ⌊^^^^(^(^))⌋⌊ ⌋ 2log^(^(^)) +⌊^^^ (^( )⌋. 2^ ^)An average number of bits per symbol modulated by the trellis may be obtained by averagingthis value over the probability of occurrence of each of the node degrees. An alternative to the variable rate method is a so-called ‘erasure’ method. The ‘erasure’ methodhas a fixed number of coded bits per symbol and so this method works efficiently with conventional block-based error correction schemes. In the erasure method, a number of bits per symbol ^ is chosen largeenough so that 2^ ≥ ^(^) for all nodes in the trellis. A code is generated for each node, as in thevariable rate method, but then each code word is of length ^ and may contain symbols “0”, “1”, or “e”. “e”is used for erasure. For example, if ^ = 2, and when the out degree is ^(^) = 3, the code maycomprise the three code words {0e}, {10}, {11}. If ^(^) = 2, the code is {0e}, {1e}. When the out degreeis ^(^) = 1, there is a single code word {ee}. In this case, a fixed number of bits is extracted in 2), anda unique codeword matching the bits is selected, wherein the symbol “e” matches a zero or one. The bitsmatched by an “e” symbol are considered erased (hence the ‘erasure’ method). The bits are considerederased as they do not affect the choice of codeword and hence do not convey information.One way to create a suitable code for each node is to first create a prefix code, and then extend it with “e” as needed to obtain words of length ^. A preferred alternative is to assign a Gray code of length^ to each possible constellation point. When ^(^) = ^, the Gray code is directly used. When ^(^) <^, the code is obtained by taking any codeword assigned to an excluded constellation point (e.g., 1007,1009 in FIG.10), and merging the code with a codeword assigned to a valid constellation point.For example, for QPSK, there are codes {00}, {01}, {11}, {10} assigned to constellation points1, j, -1, -j, respectively. From a given node, it is prohibited to send the constellation point j. The codenormally assigned to j, namely {01}, may be merged with the code assigned to 1, namely {00}, to obtaina merged code {0e}. The symbol “e” is used at any bit position where the merged codes do not agree. Afinal code obtained for the node ^ of degree 3 is then {0e}-> 1, {11} -> -1, and {10} -> -j . A codeconstructed in this way has the property that each binary sequence of length ^ which matches exactlyone code word.A trellis modulation (with the erasure-based method) may operate as follows:1) Start in a known trellis node ^^, and let ^ = 0.2) Extract ^ bits from the bit sequence, and apply to code assigned to node ^^ to find the uniquecode word that matches these bits. Select the corresponding edge from among the ^(^^) outgoing edges of node ^^. 3) Set ^^ to be the constellation point associated with the selected edge, and let the new state^^^^be the destination node of the selected edge. 4) Set ^ ← ^ + 1 and repeat from 2).For this method, the number of bits extracted in 2) is fixed to ^ bits. For example, using theerasure-based method, a first vector of n coded bits and a second vector of n coded bits are mapped to a first sequence of symbols, wherein a sequence of symbols of the first sequence of symbols obtained based on the first vector is the same as a sequence of symbols of the first sequence of symbols obtained based on the second vector. As another examples, using the erasure-based method, a sequence of symbols encoded by at least one vector of n coded bits is the same as a sequence of symbols encoded by at least one other vector of n coded bits. In some examples, a trellis decoder comprising a BCJR decoder is applied to received symbolsto estimate the LLR for each of the ^^ transmitted bits, conditioned on the received symbol values.Alternatively, a trellis decoder comprising a Viterbi decoder processes received symbols to estimate themost likely path through the trellis. The sequence of code words associated with the edges in this pathare concatenated to form the estimated coded bits of length ^^ (after ^ symbols). The estimated codedbit sequence will comprise values 0, 1, and e. These are converted to estimate log likelihood values v, -v, and 0, respectively, with the value ^ being selected based on the estimated signal to noise ratio (SNR).A channel decoder (e.g., 725 of FIG.7) receives LLRs from the trellis decoder and estimates theoriginal information bits. A channel code and an associated rate is configured to be able to correct for theeffects of noise in the channel as well as the effects of erasures in the modulation scheme. In either the variable rate or the erasure-based method, an average number of information bitsthat is carried in the absence of noise is the same. For example, in the variable rate scheme, a node withthree outgoing edges may have the code {0}, {10}, {11}, while the same node might have the code {0e},{10}, {11} in the erasure scheme. Assuming that information bits are equally probable, in the variable rate scheme, the code {0} is used with probability ½, while the codes {10} and {11} are used with probability¼ each. The number of bits consumed is thus 1 ⋅^ ^ ^ ^+ 2 ⋅^+ 2 ⋅^= 1.5. In the erasure-basedscheme, two bits will be consumed, with the sequences 00, 01, 10, and 11 all occurring with probability ¼ . Sequences 00 and 01 match {0e} and result in one erasure, while sequences 10 and 11 match {10}and {11} respectively and result in no erasures. Thus the average number of non-erased bits is1 ⋅^ ^ +1 ⋅^+ 2 ⋅^+ 2^ ^ ^⋅^= 1.5.When the variable rate scheme is used, the channel decoder and de-mapping algorithms areconfigured to be able to work with variable length code words. When the erasure scheme is used, thechannel code may be configured to correct the erasures that are introduced by the modulation.D) Decoding of large (sparse) trellises: Trellises of different sizes may be constructed. As a trellis may be reduced in complexity asdiscussed in detail above, the number of bits per symbol carried reduces. Thus, to achieve the highestbit-rates, it may be advantageous to use ‘peak-limiting’ trellises that are larger than the graphsconventionally used for TCM. At a transmitter (e.g., a UE), the trellis size mainly affects storage space rather than complexity.Modulation is often considered to be a computationally simple process which includes decoding a prefixcode and looking up the next node and corresponding constellation point index in a table. The timecomplexity scales with the number of bits consumed per symbol, and not with the size of the trellis. At a receiver (e.g., gNB), the time complexity of a decoder utilising BCJR or Viterbi algorithmswould scale with the size of the trellis. The time complexity may scale with the product of the size of thetrellis and the average ‘in-degree’ of the nodes. As a gNB is typically less constrained by size and powercompared to UEs, some additional complexity at the receiver-side may not have a negative impact onperformance. In order to reduce the complexity of a BCJR / Viterbi decoder, the decoder may be modifiedto have a configurable parameter ^ which is a maximum number of high-likelihood states that aremaintained in the decoding process. In a conventional Viterbi decoder, the decoder maintains an estimate of the likelihood of each trellis state. In some examples, a trellis decoder is configured so that (only) the ^ most likely states areestimated. In this manner, the complexity scales with the product of ^ with the typical out-degree.Different implementations of the decoder may be used at the receiver side, wherein different values of^ are used to obtain different complexity-performance trade-offs. In some examples, a soft-output Viterbialgorithm (SOVA) is used in a decoder. The SOVA is a useful alternative, that is intermediate in terms ofcomplexity between Viterbi and BCJR decoding. E) Generating cyclic sequences: Using a trellis encoder (according to examples) to generate a sequence of N symbols ensuresthat upsampling the sequence of symbols does not generate peak magnitudes above a selected limit(e.g., ^ = 1.5) when using linear convolution. The trellis encoder will function without further modificationwhen using single carrier modulation, for example. DFT-s-OFDM and related methods use a cyclic convolution of the sequence with an upsamplingfilter. Since cyclic convolution with a sequence may be equivalent to linear convolution with a periodicallyextended sequence, the peak magnitude may be controlled at a boundary when the sequence isperiodically extended. For a periodically extended sequence, as an example, it is assumed that a trellishas a state ^∗ which may be reached in k steps, starting at any node in the trellis graph. For example,for a 4-node trellis (e.g., the trellis graph 1305 of FIG.13), the nodes may be labelled from top to bottomas 0, 1, 2, and 3 (not shown). This trellis has the property k=3. That is, starting from any node, node 0may be reached in (a maximum of) 3 steps. This is shown by the following sequences of nodes: [0,0,0,0],[1,2,3,0], [2,3, 0,0], [3,0,0,0], each of which ends up at node 0 after 3 steps. As this example suggests,this property will hold for a value of k if the trellis is a single connected component and ^∗ has a self-edge. In this context, a self-edge is a “horizontal” edge from ^∗ to itself.To generate a cyclic sequence of ^ symbols, start in state ^∗ and use a sequence of coded bitsto follow an arbitrary path through the trellis for ^ − ^ symbols. Then, stop consuming bits and follow apreplanned path of length ^ to return to symbol ^∗. The sequence of ^ symbols thus created may becyclically extended using edges in the trellis and thus will not violate amplitude constraints when oversampled. This approach reduces the number of modulated bits by the fraction k / N, compared tomethods not utilising a cyclic sequence. To minimize this overhead, it may be beneficial toconfigure / design the trellis to have a small value of ^. This property (value of ^) may be considered whenselecting edges to remove in the trellis design process, as described above. For example, the 4-node trellis 1305 of FIG.13 may be used to modulate a block of 9 bits ontoa block of ^ = 9 symbols, using the erasure scheme. The trellis 1305 is reproduced in FIG. 14, withlabels added to the edges showing the code associated with each edge, either {0}, {1}, or {e}. FIG. 14 shows a schematic representation of the trellis graph of FIG. 13 with edge labels corresponding to an erasure modulation process. As shown in FIG.14, edges are represented with arrows, wherein an arrow is either solid ordashed. The edges generating output symbol ‘1’ are drawn with solid lines 1401, and the edgesgenerating output symbol ‘-1’ are drawn with dashed lines 1403.As this example is utilising the erasure method (as described above), the codes associated with each edge are given as {0}, {1}, or {e} (i.e., ‘e’ for erasure).For the following example, it is assumed that cyclic convolution is not utilised. Starting in state 0,the sequence of 9 input bits is 001001011 (which is shown in row 3 of Table 2 below). Table 2 belowshows the modulation resulting from this sequence. Time (n) 0 1 2 3 4 5 6 7 8 9State 0 1 2 3 0 1 2 1 2 3Input bit 0 0 1 0 0 1 0 1 1Edge label {0} {e} {1} {e} {0} {e} {0} {e} {1}Output symbol -1 1 1 1 -1 1 -1 1 1Table 2: Example of input bits being mapped to output symbols using a trellis encoder that is implementing an erasure method The first row of Table 2 shows the time index ^. The second row shows the initial trellis state foreach time slot. The third row shows the input bit received in the slot. The fourth row shows the edge labelthat matches the input bit and determines the outgoing edge. The choice of outgoing edge determinesthe initial state for the next time slot, (visible in the second row, subsequent column), wherein the outputsymbol is shown in the fifth row of Table 2. For example, in slot 0, the initial trellis state is node 0. Theinput bit 0 is matched to code word {0}. The corresponding edge leads to the next trellis state, 1, and results in a transmitted symbol -1. After 9 inputs are processed, 9 symbols have been transmitted, and the trellis ends up in state 3 at time n = 9. As described above, in relation to Table 1, the trellis was designed to avoid the sequences (-1,1,1,-1) and (1,-1,-1,1) as they were associated with peak amplitudes of 2.5. The other sequences offour transmitted symbols in Table 1 are permissible. As expected, the sequence of output symbols inTable 2 does not contain either of these ‘forbidden’ sequences. Stated differently, there is nosubsequence in the output symbols in Table 2 that match (-1,1,1,-1) or (1,-1,-1,1). In DFT-s-OFDM transmission, the sequence of output symbols may be cyclically convolved withthe upsampling filter in the upsampling process. Thus, to avoid incurring large peak amplitudes, it maybe determined whether cyclic repetition of the output symbol sequence also does not result in a forbiddensequence. In this example, if the output symbol sequence were to be cyclically repeated, the last threesymbols (-1,1,1), which are associated with time slots 6, 7 and 8, would be followed by the first symbol (-1). This cycle results in the forbidden sequence (-1,1,1,-1). Stated differently, if the upsampling filter ℎ^ = was cyclically convolved with the output symbol sequence of Table 2, then apeak amplitude / magnitude of 2.5 would occur at time 7.5.In order to avoid this problem, as described above, the number of bits may be reduced in a blockfrom ^ = 9 to (^ − ^) = (9 − 3) = 6 bits (wherein k=3 due to the number of nodes in the trellis). Inthis manner, 6 bits is to be used, rather than 9 bits. The last ^ = 3 slots are used so that the trellis statereturns to the initial state 0 at the end of the block. When the state at time (n) = 9 is the same as the stateat time (n) = 0, this means that the sequence of symbols may be cyclically repeated using the trellis.Therefore, the cyclic repetition of the sequence will not contain any forbidden sequences (e.g., does notoutput (-1,1,1,-1) or (1,-1,-1,1)). This is illustrated in Table 3.Time (n) 0 1 2 3 4 5 6 7 8 9State 0 1 2 3 0 1 2 3 0 0Input bit 0 0 1 0 0 1 - - -Edge label {0} {e} {1} {e} {0} {e} {1} {e} {1}Output symbol -1 1 1 1 -1 1 1 1 1Table 3: Example of input bits being mapped to output symbols using a trellis encoder that is implementing an erasure method that is modified for cyclical convolvingTable 3 is the same as Table 2, up to slot 6. For slots, 6, 7, and 8, no bits are consumed by the trellis.Here, the trellis follows a pre-planned feasible path (which is this example is [2,3,0,0]) to get from trellisstate 2 back to the original state 0 in ^ = 3 steps. The sequence of output symbols in Table 3 containsno forbidden sequences, even when the output symbols are cyclically repeated. Therefore, cyclicconvolution with the upsampling filter would not result in any peak amplitudes larger than the limit ^ =1.5. F) Higher dimensional constellation points: For TCM, a complex constellation point may be considered to be a two-dimensional point, withthe two dimensions being the real and imaginary component. A pair of complex values transmitted onconsecutive symbols may be considered to be a four-dimensional constellation point. Designing sets ofconstellation points in higher dimensions may increase the design space allowing for better performingconstellations. For example, when modulating one bit per symbol, two complex constellation (2D) pointsmay be used, namely {-1} and {1} (referred to as a first scheme). The minimum distance between thesetwo points is 2. Alternatively, one can design a constellation of four pairs of complex values. Each pairof complex values is considered to be a single constellation point in 4D space. For example, the fourpairs {1,1}, {j,j}, {-1,-1}, and {-j,-j} may be used (referred to as a second scheme). Geometrically, theseare points in a four-dimensional space. Operationally, an interpretation may be that 2 bits are used to choose a 4-PSK value, and then repeat it twice. This second scheme carries 1 bit per symbol. However, upsampled sequences using this second scheme have lower peak values than sequences using the first scheme, even though the minimum distance between constellation points is the same. As this example shows, it can sometimes be advantageous from a peak control perspective to work with higher-dimensional constellations. Stated differently, the first scheme and the second scheme have the sameminimum distance between symbols (which means they should have similar noise robustness), but the second scheme may have lower peaks after upsampling. Therefore, for a trellis coding operation based on the second scheme, fewer edges would need to be removed compared to the first scheme. Therefore, more bits may be carried when using the second scheme (and have less erasures). In some examples, a modulation performed using a trellis encoder may be modified to deal withhigher dimensional constellations. If each constellation point consists of ^ consecutive symbols, thenthe computation of magnitude ^ may consider all sequences of ⌈2^ / ^⌉ + 1 points, over ⌈2^ / ^⌉^ +^ symbols. For a given sequence of ⌈2^ / ^⌉^ + ^ symbols thus generated, the maximumupsampling amplitude over all subsequences of 2^ symbols may be considered. For example, if ^ = 2and ^ = 2, each constellation point ^^ = [^^^^^, ^^^] consists of two consecutive complex values.For each sequence of ⌈2^ / ^⌉ + 1 = 3 points {^^^^, ^^ , ^^^^} we obtain six complex symbols{^^^^^, ^^^^^, ^^^^^, ^^^ , ^^^^^, ^^^^^}. To compute the oversampling amplitude ^(^^) for thissequence of 3 points and 6 symbols, the maximum amplitude is determined after upsampling each of thesub-sequence of 2^ symbols, namely {^^^^^, ^^^^^, ^^^^^, ^^^} , {^^^^^, { ^^^^^, ^^^ , ^^^^^, ^^^^^}. This value ^(^^) is then used to determine whether the edge from{^^^^, ^^} to { ^^ , ^^^^} should be included in the trellis graph. In this representation, each edgerepresents transmission of a particular high dimensional constellation point, using ^ consecutivesymbols. G) Simulation results: Simulations have been performed based on different modulation schemes / methods described inone or more of the examples above. For each scheme, there is a configuration for communication withfixed spectral efficiency over an additive white Gaussian noise channel, using 1024 channel uses. The block error rate (a first metric) is measured as a function of the SNR, and the peak-to-average powerratio (PAPR) (a second metric) is measured for each scheme. These two metrics are combined to providean overall performance metric, as described in more detail below. The six methods that were simulated were: 1. DFT-s-OFDM2. DFT-s-OFDM with FDSS, using truncated RRC filter with ^ = 0.5, ^ = −0.653. DFT-s-OFDM with FDSS-SE, using 25% extension and same truncated RRC filter as for FDSS4. Modulation using a trellis-encoder with a limit ^ = 1.455. Modulation using a trellis-encoder with a limit ^ = 1.556. Modulation using a trellis-encoder with a limit ^ = 1.65A result of the simulations was that, when using a conservative back-off rule, based on a ‘worst-case’ peak amplitude, at least one of the methods 4-6 demonstrated a coverage advantage of 0.66 dBfor 4-QAM and 0.3 dB for 8-PSK modulation. This is compared to the next-best scheme of method 3, withFDSS-SE. This is described in more detail below.FIG. 15 shows a graphical representation of instantaneous peak-to-average power ratio distribution for different modulation processes. the average power of the signal. Both FDSS (method 2) and FDSS-SE (method 3) achieve significantly improved PAPR compared with ordinary DFT-s-OFDM (method 1, which is labelled as “no CFR” in FIG. 15). The methods 4 to 6 achieve a deterministic limit / cap on peak amplitude, relative to the unit magnitudeconstellation points, as designed, at 10 log^^(1.45^) = 3.22 dB or 10 log^^(1.55^) = 3.51 dB,or 10 log^^(1.65^) = 4.35 dB, respectively. The PAPR of each trellis method is slightly higher thanthese values because average power is also reduced by the trellis modulation. As seen in FIG.15, method 4, which has a limit ^ = 1.45, has the lowest instantaneous PAPRof all of the method simulated. All three of methods 4 to 6 show a sharp drop-off in PAPR as each method reaches its peak PAPR. Methods 1 to 3 show a more gradual drop-off towards their respective peak PAPR. H) Additional variations: Single carrier modulation: In one or more of the examples above, there have been modifications / changes as applied to DFT-s-OFDM modulation. However, it should be understood that utilising a trellis encoder for modulation(according to the examples above) may be applied to single carrier modulation as well, in which a discretesequence of symbols are modulated by convolution with a pulse-shaping filter. The trellis may beconfigured (or designed) in the same way as described above, but using the pulse shaping filter (or anoversampled representation of a pulse shaping filter) as a filter (e.g., 709 in FIG.7) in the trellis design. For example, for a time-domain filter implementation there may be one pulse shaping filter module after the trellis encoder 703 (in FIG.7), such that the pulse shaping filter module replaces modules 705 through713. In another example, a frequency domain overlap-add implementation is similar to FIG.7 except the cyclic prefix and windowing module 713 is replaced by an overlap-add module. Stated differently, in some examples, the system of FIG.7 is modified to remove modules 705 through 713 (inclusive) and are replaced by a pulse shaping filter. The pulse shaping filter may be implemented by convolution or by overlap-add. In some examples, when using a pulse shaping filter, a modulation and a demodulation wouldproceed continuously rather than a block-by-block process. In such examples, there would not be anycyclic modulation. Non-integer and variable upsampling:In some examples described above, it was the assumption that the upsampling factor Ω was an integer.Stated differently, the number of time samples being output by the IFFT, ^^ = Ω^ should be an integermultiple of the number of symbols in the block, ^. In other examples, upsampling factor Ω may not bean integer. For example, there is a DFT-s-OFDM system with given ^′ and ^, such that Ω = ^^ / ^ is notan integer. To design a trellis, an integer factor Ω^ is determined / chosen and corresponding ^^ = Ω^^.The factor Ω^ should be sufficiently high, e.g., Ω^ ≥ 4, or higher. The factor Ω^ is chosen as a suitablevalue to make sure that time-domain samples are sampled regularly enough to ensure that amplitudepeaks are determined (e.g., each ‘dot’ in FIG. 5 between the circles is representative of a time-domainsample. As there are 7 dots between each circle in FIG. 5, the factor Ω^ is 8). Then, a trellis may beconfigured as described previously, to control the peak amplitude for a virtual DFT-s-OFDM system withdimensions ^′ and ^ with associated upsampling filter ℎ^^ and ^^ in time and frequency domain,respectively. The time domain filter ℎ^^ has 2^Ω^ non-zero coefficients. Also, as before, the frequencydomain filter is designed to be a low pass filter to minimize bandwidth expansion. Returning from the virtual system with upsampling factor Ω^ to an actual system with upsamplingfactor Ω, this may be performed by first applying the virtual system to obtain a block of Ω^^ samples, andthen resampling by a factor Ω / Ω^ to obtain a block of ^^ = Ω^ samples as desired. As smooth,oversampled signals are used, a trellis that controls peak amplitudes for the virtual system will thus alsocontrol peak amplitudes in the actual system, which is a resampled version of the virtual system. Rather than sequentially doing this resampling, the actual system may be implemented with afrequency domain filter of length Ω^ that captures the effect of both upsampling and resampling. If Ω ≥Ω^, the filter is obtained by zero-padding ^^ at the high frequencies. If Ω < Ω^, it is obtained by removingthe ^Ω^ − Ω^^ highest frequencies from ^^. As the filter is low-pass, these removed coefficients mayvery low amplitudes, and thus the resampling by a factor Ω / Ω^ introduces very little aliasing.Thus, in examples, when a suitable oversampling factor Ω^ is used (e.g., a sufficiently high integeroversampling factor Ω^ is used) for the trellis design, the trellis may be used in conjunction with anydesired oversampling factor Ω. This may be particularly advantageous in DFT-s-OFDM as the allocationsize ^ may vary over time, while the overall FFT size ^′ is typically constant. Thus, the upsamplingfactor Ω = ^^ / ^ varies.Hierarchical modulation: One or more of the examples above have described that a trellis design may begin with thegenerating of a table of ^^^ possible sequences of length 2^. The sequence length 2^ cannot be madetoo short without incurring significant frequency expansion and loss of spectral efficiency. As a result, thetable size grows exponentially with the number of constellation points ^ in the modulation scheme. It ismanageable for 4-QAM or 8-PSK, for example, but it becomes challenging to design trellises for ^ ≥ 16in this way. Larger constellations may also result in larger trellises sizes after one or more trellis reductionsteps are performed. In order to improve scalability of the trellis configurations that are determined, hierarchicalmodulation may be used. For example, a constructed 16-QAM constellation is depicted in FIG.16.FIG.16 shows a schematic representation of hierarchical construction of a 16-QAM constellation from two 4-QAM constellations. As shown in FIG.16, two bits are used to select a 4-QAM constellationpoint ^^ 1601, two more bits are used to select a second 4-QAM constellation point ^^ 1603. A 16-QAMconstellation point is constructed as ^ =^ ^ ^ ^^+ ^^^. This generates a 16-QAM constellation 1605.By generating a sequence of values ^^from a trellis designed for peak limit ^^and generating asequence of values ^^ from a trellis designed for a peak limit ^^, the resulting sequence of values ^ withhave peak limit ^ =^ ^ ^ ^^+ ^ ^^. FIG. 17 shows the result of using two 4-QAM trellis, using the method depicted in FIG. 16, togenerate a sequence of 16-QAM constellation points with peak amplitude ^ = 1.4.FIG. 17 shows graphical representations of time-domain trajectories of upsampled 16-QAM sequences using DFT-s-OFDM and using hierarchical modulation based on two 4-QAM sequences modulated according to a modulation process with a trellis-encoder. A first graph 1701 shows time-domain trajectories of upsampled 16-QAM sequences using DFT- s-OFDM. A second graph 1703 shows time-domain trajectories of upsampled 16-QAM sequences using hierarchical modulation based on two 4-QAM sequences modulated according to a modulation process with a trellis-encoder. The peak amplitudes of many of the samples in the first graph 1701 are above 1.5. This is illustrated with a first circle 1705 around the peak samples. The peak amplitudes of many of the samples in the second graph 1703 are smaller than in the first graph 1701. The peak amplitudes in the second graph 1703 do not exceed 1.4. This is illustrated with a second circle 1707. An end-to-end signal flow for a system according to FIGS. 16 and 17 is depicted below in FIG.18. FIG.18 shows a schematic representation of a system for hierarchical modulation of a 16-QAM signal. A channel code (e.g. LDPC code) 1801 maps a block of information bits to block of coded bits ^^^. To generate each symbol, two bits are fed into a first trellis encoder 1803 to obtain constellation point ^^and two bits are fed into a second trellis encoder 1805 to obtain constellation point ^^. The twopoints are combined as ^ =^ ^ ^ ^^+ ^^^ to form a time-domain symbol 1807.Once ^ such time-domain symbols 1807 have been generated, other operations of DFT-s-OFDM modulation and demodulation (e.g., as shown in FIG. 7) are performed resulting in a noisy time-domain symbols 1809 at the receiver. Asymbol probability estimate module 1811 uses: i) the received values, ii) knowledge of ahierarchical modulation scheme, and iii) an estimated noise level, to estimate (a posteriori) probabilitiesof the various constellation points ^^ and ^^. The sequence of ^ a posteriori distributions of ^^ valuesare fed into a first trellis decoder 1813, to obtain log-likehood ratios for the bits used to drive the first trellisencoder 1803. Likewise, the sequence of ^ a posteriori distributions of ^^ values are fed into the secondtrellis decoder 1815, to obtain log-likelihood ratios for the bits used to drive the second trellis encoder1805. Finally, all of the log-likelihood ratios for the block are fed to a channel decoder 1817 to determineestimates of the original information bits. In this way, large constellations can be used to operate with high spectral efficiency, while at thesame time, the complexity of designing and decoding trellises may be kept manageable. In the decodingstep, various alternatives may be used to improve decoding performance. For example, the decoders 1813, 1815 may be used sequentially, with the output of the first trellis decoder 1813 being used as inputto the second trellis decoder 1815, or the trellis decoders 1813, 1815 could be applied iteratively.In some examples, both a transmitter and a receiver would be aware of the trellis configurationthat is being used for modulation. For example, the transmitter and receiver may use control signalling toagree on a modulation and coding scheme (MCS) for each transmission. In other examples, the MCS tobe used is pre-configured at the transmitter and receiver. In some examples, there are a number of pre- configured schemes designed to operate a different SNR levels and with different spectral efficiencies.Each scheme may include a specification of the constellation to use as well as the LDPC code rate andspecific LDPC code used. In some examples, different MCS ‘levels’ (or a set of MCSs comprising a plurality of differentMCS) are defined, wherein each MCS specifies: the constellation to use, the forward error correctioncode (e.g., LDPC code) to use, and configuration of the (peak-limiting) trellis to use. For example, for anUL transmission, the MCS may be selected from a discrete set of peak-limiting trellises that aredetermined in advance of the UL transmission. Each trellis may be configured / designed to be inconjunction with a filter for the modulation. Thus, in examples, the transmitter may use that filter togetherwith the trellis, in order to achieve optimal peak control. A configuration of the filter may be provided as part of the MCS, in some examples. One or more of the examples provide a modulation and coding scheme: with low complexity at the transmitter, and reasonable complexity at the receiver, with low peak to noise ratio, and with high spectral efficiency for a given noise level. To achieve high spectral efficiency, a transmitted signal is confined to an allocated bandwidth. The modulation for the transmitted signal has a low peak to average power ratio (PAPR) in the time domain and constrains the signal bandwidth in frequency domain, while carrying a (large) amount of useful information. One or more of the examples provide additional coverage (compared to FDSS-SE), while maintaining low implementation complexity at the UE (so that battery life is not reduced). The use of a trellis encoder for the modulation of data means that a CFR module is not needed. This has the advantage of significantly reducing the complexity of the transmitter (e.g., the UE). This has the advantage of reducing battery / power usage when modulating data for uplink transmissions. FIG. 19 shows an example method flow performed by an apparatus. The apparatus may be acommunication device. For example, the communication device may be one of: a UE, a terminal, a mobiledevice, etc. The apparatus may comprise one or more means for performing the features of FIG.19. Forexample, the one or more means may comprise: circuitry configured for performing the features of FIG. 19, or at least one processor, and at least one memory storing instructions that, when executed by the atleast one processor, cause the apparatus to perform the features of FIG. 19. In some examples, theapparatus may be configured with one or more of the modules depicted in FIG.7 for modulation. In S1901, the method comprises obtaining a limit for maximum signal amplitude associated with an uplink transmission. In S1903, the method comprises generating a first sequence of symbols using trellis coding based on the limit for maximum signal amplitude. In S1905, the method comprises performing a filtering, based on the first sequence of symbols, to generate a filtered signal. In S1907, the method comprises transmitting, to a network node, a signal based on the filtered signal.FIG. 20 shows an example method flow performed by an apparatus. The apparatus may be anetwork node. For example, the network node may be one of: a base station, a gNB, a network function,a network entity, etc. The apparatus may comprise one or more means for performing the features ofFIG.20. For example, the one or more means may comprise: circuitry configured for performing the features of FIG.20, or at least one processor, and at least one memory storing instructions that, whenexecuted by the at least one processor, cause the apparatus to perform the features of FIG.20. In someexamples, the apparatus may be configured with one or more of the modules depicted in FIG.7 for demodulation. In S2001, the method comprises receiving, from a communication device, a signal; In S2003, the method comprises performing a demodulation, based on the signal that has been received, using a trellis decoding. In S2005, the method comprises determining an estimate of k data bits comprised within the signal based on the demodulation. FIG. 21 shows a schematic representation of non-volatile memory media 2100a (e.g. Blu-raydisc (BD), computer disc (CD) or digital versatile disc (DVD)) and 2100b (e.g. flash memory, solid statememory, universal serial bus (USB) memory stick) storing instructions and / or parameters 2102 which when executed by a processor allow the processor to perform one or more of the steps of the methodsof FIGS.19 to 20.It is noted that while the above describes example embodiments, there are several variations and modifications which may be made to the disclosed solution without departing from the scope of the present invention. The examples may thus vary within the scope of the attached claims. In general, some embodiments may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. For example, some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although embodiments are not limited thereto. While various embodiments may be illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that these blocks, apparatus, systems, techniques or methods described herein may be implemented in, as non-limiting examples, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, or some combination thereof. The examples may be implemented by computer software stored in a memory and executable by at least one data processor of the involved entities or by hardware, or by a combination of softwareand hardware. Further in this regard it should be noted that any procedures may represent program steps,or interconnected logic circuits, blocks and functions, or a combination of program steps and logic circuits, blocks and functions. The software may be stored on such physical media as memory chips, or memory blocks implemented within the processor, magnetic media such as hard disk or floppy disks, and optical media such as for example DVD and the data variants thereof, CD. The term “non-transitory”, as used herein, is a limitation of the medium itself (i.e. tangible, not a signal) as opposed to a limitation on data storage persistency (e.g. RAM vs ROM). As used herein, “at least one of the following:” and “at least one of: ” and similar wording, where the list of two or more elements arejoined by “and”, or “or”, mean at least any one of the elements, or at least any two or more of the elements,or at least all of the elements. The memory may be of any type suitable to the local technical environment and may be implemented using any suitable data storage technology, such as semiconductor-based memory devices, magnetic memory devices and systems, optical memory devices and systems, fixed memory and removable memory. The data processors may be of any type suitable to the local technical environment, and may include one or more of general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs), application specific integrated circuits (ASIC), gate level circuits and processors based on multi core processor architecture, as non-limiting examples. As used herein, the terms “means for”, “means for performing operations including”, “means configured to perform operations including”, or “means configured to perform” (or similar) may be any means that are suitable for performing the feature(s). The “means” may be configured to perform one or more of the functions and / or method steps previously described. For example, the “means” may include one or more of: at least one processor, at least one memory, transceiver circuitry, antenna circuitry, etc. It should be understood that these are provided as non-limiting examples. Alternatively, or additionally some examples may be implemented using circuitry. The circuitry may be configured to perform one or more of the functions and / or method steps previously described.That circuitry may be provided in the base station and / or in the communications device.As used in this application, the term “circuitry” may refer to one or more or all of the following: (a) hardware-only circuit implementations (such as implementations in only analogue and / or digital circuitry); (b) combinations of hardware circuits and software, such as: (i) a combination of analogue and / or digital hardware circuit(s) with software / firmware and (ii) any portions of hardware processor(s) with software (including digital signal processor(s)), software, and memory(ies) that work together to cause an apparatus, such as the communications device or base station to perform the various functions previously described; and (c) hardware circuit(s) and or processor(s), such as a microprocessor(s) or a portion of a microprocessor(s), that requires software (e.g., firmware) for operation, but the software may not be present when it is not needed for operation. This definition of circuitry applies to uses of the term “means” in this application, including in anyclaims. As a further example, as used in this application, the term circuitry also covers an implementation of merely a hardware circuit or processor (or multiple processors) or portion of a hardware circuit or processor and its (or their) accompanying software and / or firmware. The term circuitry also covers, forexample integrated device. The term circuitry also covers, for example and if applicable to the particularclaim element, a baseband integrated circuit or processor integrated circuit for a mobile device or a similarintegrated circuit in a server, a cellular network device, or other computing or network device.The foregoing description has provided by way of exemplary and non-limiting examples a full and informative description of some embodiments. However, various modifications and adaptations may become apparent to those skilled in the relevant arts in view of the foregoing description, when read in conjunction with the accompanying drawings and the appended claims. However, all such and similar modifications of the teachings will still fall within the scope as defined in the appended claims.

Claims

Claims:

1. A user equipment comprising:means for obtaining a limit for maximum signal amplitude associated with an uplink transmission; means for generating a first sequence of symbols using trellis coding based on the limit formaximum signal amplitude; means for performing a filtering, based on the first sequence of symbols, to generate a filtered signal; and means for transmitting, to a network node, a signal based on the filtered signal.

2. The user equipment according to claim 1, wherein the means for obtaining comprises:means for determining the limit for the uplink transmission based on an uplink transmission peak- to-average power ratio, or means for receiving, from the network node, information associated with the limit.

3. The user equipment according to claim 1 or claim 2, wherein the uplink transmission isassociated with a first modulation and coding scheme, the first modulation and coding schemecomprising: a configuration for the trellis coding, a set of constellation points, a configuration for thefiltering, and a forward error correction code.

4. The user equipment according to claim 3, wherein the apparatus comprises:means for selecting the first modulation and coding scheme from a set of modulation and coding schemes; and means for providing, to the network node, an indication of the first modulation and coding scheme to be used by the apparatus for the uplink transmission.

5. The user equipment according to claim 3, wherein the apparatus comprises:means for receiving, from the network node, an indication of the first modulation and coding scheme to be used for the uplink transmission.

6. The user equipment according to any of claims 1 to 5, wherein the means for generatingcomprises: means for obtaining k data bits as an input; andmeans for encoding the k data bits using the trellis coding to generate the first sequence ofsymbols, wherein the first sequence of symbols is in the time-domain, wherein the trellis coding is associated with a number of states, and the encoding comprises:when in a first state of the trellis coding, determining a next state from a first set of nextstates that are allowed for the trellis coding based on a first group of n coded bits,when in a second state of the trellis coding, determining a next state from a second setof next states that are allowed for the trellis coding based on a second group of n coded bits,wherein the first set of next states has a different number of states than the second setof next states.

7. The user equipment according to claim 6, wherein at least one of the first state or the secondstate has a number of next states in the first set or the second set respectively that has an integer factor that is odd and greater than one.

8. The user equipment according to claim 7, wherein for at least one of the first state or the second state, a number of n coded bits in the first group or the second group respectively is different when determining different next states from the first set or the second set respectively.

9. The user equipment according to claim 7, wherein for at least one of the first state or the secondstate, two different groups of n coded bits determine the same next state from the first set or the second set respectively.

10. The user equipment according to any of claims 7 to 9, wherein the means for encodingcomprises: means for encoding the k data bits to form the n coded bits; and means for mapping the n coded bits to the first sequence of symbols using the trellis coding.

11. The user equipment according to any of claims 1 to 10, wherein the apparatus comprises:means for modulating the first sequence of symbols to generate a second sequence of symbols, wherein the second sequence of symbols is in the frequency domain.

12. The user equipment according to claim 11, wherein the means for performing a filteringcomprises:means for performing a filtering of the first sequence of symbols using an upsampling filter in the time domain to generate a filtered signal.

13. The user eqipment according to any of claims 3 to 5,wherein the generating, performing and transmitting are based on the first modulation and coding scheme.

14. An apparatus comprising:means for receiving, from a communication device, a signal; means for performing a demodulation, based on the signal that has been received, using trellisdecoding; and means for determining an estimate of k data bits comprised within the signal based on thedemodulation.

15. The apparatus according to claim 14, wherein the apparatus comprises:means for determining a limit for maximum signal amplitude associated with an uplinktransmission for the communication device; andmeans for providing, to the communication device, information associated with the limit.

16. The apparatus according to claim 14 or claim 15, wherein the signal received from thecommunication device is associated with a first modulation and coding scheme, the first modulation and coding scheme comprising: a configuration for the trellis coding, a set of constellation points, a configuration for the filtering, and a forward error correction code.

17. The apparatus according to claim 16, wherein the apparatus comprises:means for selecting the first modulation and coding scheme from a set of modulation and coding schemes; and means for providing, to the communication device, an indication of the first modulation and coding scheme to be used for uplink transmissions.

18. The apparatus according to claim 16, wherein the apparatus comprises:means for receiving, from the communication device, an indication of the first modulation and coding scheme to be used for uplink transmissions by the communication device.

19. The apparatus according to any of claims 14 to 18, wherein the means for performing thedemodulation comprises: means for performing a demodulation of the signal that has been received using trellis decoding,wherein the trellis decoding utilises a Bahl, Cocke, Jelinek and Raviv, BCJR, algorithm or a Viterbialgorithm.

20. The apparatus according to any of claims 14 to 18, wherein the means for performing thedemodulation comprises: means for performing a window extraction based on the signal, in the time-domain, to determine a time-domain frame; means for performing a fast Fourier transform of the time-domain frame to determine a third sequence of symbols, wherein the third sequence of symbols are in the frequency domain; means for performing an inverse fast Fourier transform of the third sequence of symbols to determine a fourth sequence of symbols, wherein the fourth sequence of symbols are in the time-domain; means for performing the trellis decoding of the fourth sequence of symbols to determine n log- likelihood ratios, LLRs, corresponding to n coded bits, wherein the trellis decoding utilises a Bahl, Cocke, Jelinek and Raviv, BCJR, algorithm or a Viterbi algorithm.

21. The apparatus according to 20, wherein the means for estimating comprises:means for estimating the k data bits based on the n LLRs corresponding to the n coded bits.

22. A method comprising:obtaining a limit for maximum signal amplitude associated with an uplink transmission; generating a first sequence of symbols using trellis coding based on the limit for maximum signal amplitude; performing a filtering, based on the first sequence of symbols, to generate a filtered signal; and transmitting, to a network node, a signal based on the filtered signal.

23. A computer program comprising instructions, which when executed by an apparatus, cause theapparatus to perform at least the following: obtaining a limit for maximum signal amplitude associated with an uplink transmission; generating a first sequence of symbols using trellis coding based on the limit for maximum signal amplitude; performing a filtering, based on the first sequence of symbols, to generate a filtered signal; andtransmitting, to a network node, a signal based on the filtered signal.

24. an apparatus comprising: at least one processor, and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to perform: obtaining a limit for maximum signal amplitude associated with an uplink transmission; generating a first sequence of symbols using trellis coding based on the limit for maximum signal amplitude; performing a filtering, based on the first sequence of symbols, to generate a filtered signal; and transmitting, to a network node, a signal based on the filtered signal.

25. an apparatus comprising: at least one processor, and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to perform: receiving, from a communication device, a signal; performing a demodulation, based on the signal that has been received, using trellis decoding; and determining an estimate of k data bits comprised within the signal based on the demodulation.

Citation Information

Patent Citations

  • Unified and configurable waveform framework for 6g

    WO2023202380A1