A borehole or well may be drilled in the earth's sub-surface in order to explore for or exploit underground resources such as underground oil, gas, shale or water. During such drilling it may be useful to acquire data from the borehole or well. For example, it may be useful to acquire data from drilling rig sensors to monitor and manage drilling operations, to record information relating to geological formations penetrated by the borehole, to generate operations statistics and performance benchmarks and to provide well planners with accurate historical operations performance data which can be referred to in future operations. Data may be communicated from sensors in the borehole or well to nodes closer to or at the surface. Such communications can be challenging to implement at the exploration site as they are typically remote (often offshore and hundreds or thousands of meters below sea level) and the environment can vary significantly in terms of the surrounding geological features and the thermal and mechanical properties of the materials present in an established well (such as the pipework (e.g. drill string, riser, etc.) and production tubing, casing, lining, mud, hydrocarbons (i.e. “product”), lubricants and seawater). Downhole conditions are also hostile with unstable, difficult communication conditions and high temperatures. The high temperature environment also restricts hardware computational resources to low speed processors with small amounts of on-board memory.
For “in-well” communications, the communications medium is often solid—for instance, a drill string, a casing or a riser. Communications technologies based on transmission and reception of electromagnetic waves suffer disadvantages in providing in-well and underwater communications. Therefore, for in-well and many underwater applications, it is more usual to adopt acoustic telemetry, fluid pulse telemetry (which typically uses fluid pulse signals comprising pressure pulses that propagate within a column of drilling fluid or product (e.g. oil) inside a drill string), such as mud pulse telemetry (using pressure pulses that propagate within the column of drilling fluid inside the drill string) or product pulse telemetry (using pressure pulses that propagate within the column of extracted oil/gas or other product inside the drill string), or other ultrasonic communications technologies. In acoustic telemetry, for instance, an encoded sound wave may be generated by a suitable transmitter. The sound wave may then propagate along the pipework, casing and/or production tubing. A receiver may then extract the data from the signal. The transmitter may be located “downhole”, while the receiver may be placed at or near the well head, at the surface or vice versa. Any portion of the drilling operation below the site of a wellhead may be referred to as “downhole”.
Due to the limited hardware computational resources available, it is advantageous to provide more efficient ways of processing received data.
Examples are further described with reference to the accompanying drawings, in which:
An apparatus, method and communications node are described below for processing (e.g. downconverting) a frequency modulated signal. Also disclosed are computer program products and non-transitory computer readable media.
Data, such as telemetry data or command or control data, may be communicated between the first and second nodes 110, 112 by way of a communications channel. For example, command or control data may be transmitted from the first node 110 to the second node 112, for example to control or modify the operation of downhole equipment (e.g. a test valve) or request sensor data from downhole monitoring equipment. In this case, it may be that the second node 112 is communicatively coupled to the said downhole equipment, and may be configured to forward command or control data received from the first node 110 to the downhole equipment. In another example, command acknowledgement or monitoring data such as sensor data from downhole equipment may be transmitted from the second node 112 to the first node 110. Again in this case, it may be that the second node 112 is communicatively coupled to the downhole equipment such that the second node 112 can receive the command acknowledgement or monitoring data from the downhole equipment and forward it to the first node 110.
It may be that the communication channel has a dynamically variable transfer function. It may be that one or more frequency band(s) which are open for data communication by way of the communication channel change dynamically over time. It may be that the communication channel is noisy, lossy or noisy and lossy. It will be assumed in the following discussion, by way of example, that data is communicated between the first and second communications nodes 110, 112 by way of acoustic signals. It may be that the acoustic signals are transmitted and received through the solid longitudinal walls of the drill string sections 102 extending from the surface 104 to the lower longitudinal extent 106 of the borehole 108, the solid longitudinal walls of the drill string sections 102 acting as a communication channel by way of which data is communicated acoustically. However, it will be understood that data additionally or alternatively may be communicated between the first and second communications nodes 110, 112 by any other suitable way such as electromagnetically or by way of pressure pulses in fluid flowing through the drill string 100, or through the annular gap between the drill string 100 and the side walls of the borehole 108, such as mud, drilling fluid or product from the borehole 108, such as oil or water, or any combination thereof. Thus, the communication channel may comprise or consist of any matter extending or flowing between the first and second communications nodes 110, 112, such as solid matter or fluid propagating between the first and second communications nodes 110, 112. It may be that the communication channel comprises a communications medium, such as an acoustic communications medium. It may be that the communications medium is a wireless communications medium. An additional or alternative acoustic communication channel to the drill string 100 may be provided for example by coiled tubing or production tubing which may extend between the first and second communications nodes 110, 112. It may be that the communication channel is a downhole, “in well” or underwater communication channel. It may be that the communication channel comprises a solid communication channel such as any one or more of a drill string, a casing, production tubing, a riser, coiled tubing extending between the first and second nodes 110, 112, or a fluid communication channel such as mud, product or any combination thereof propagating between the first and second nodes 110, 112. The transceivers (see below) of nodes 110, 112 may be selected according to the selected communications medium (e.g. the transceivers may be electromagnetic or acoustic transceivers for example).
The drill string 100 may have a periodic structure which causes it to act as a mechanical filter, trapping (i.e. damping) signals having frequencies that lie within certain bands. The filtered nulls, where frequencies do not propagate, are called stopbands; the frequencies where signals may be allowed to propagate are called passbands. The stopbands may be caused by joints or couplers 103 provided between adjacent longitudinal sections thereof. Additional factors may affect the transmission path and attenuation (energy loss) of a signal propagating along the drill string, such as tension or compression of the drill string sections 102, contact of the drill string sections 102 with the side walls of the borehole 108, drilling fluid density passing through the drill string and mode coupling. Within these passbands there may be a number of instabilities. Their exact position and width vary from well to well, and can also vary dynamically during communications. The passbands may have a ripple (or ‘fine structure’). The number of drill string sections 102 that the transmission energy has to pass through may primarily determine the number of ripples. The ripples may also vary over time with the changes in the depth and deviation of the well. Certain passbands may have more noise in them than others at any given time. The noise in particular passbands may reduce or the attenuation may change thus providing an increase in usable bandwidth. The frequency of a “passband”, where communication is more effective, may vary over time.
It will be understood that other types of communication channel, such as other types of acoustic communication channel, may have different passbands and stop bands from a drill string. For example, coiled tubing may be considered to be acoustically joint-less for long distances, despite welds such as helical welds, which may they may have. Coiled tubing may thus provide broader frequency passbands in its acoustic frequency response than a drill string. In another example, it may be that production tubing is a more suitable acoustic communication channel at higher acoustic frequencies than a drill string, with a different arrangement of passbands and stop bands. Candidate passbands of the communication channel can be determined empirically.
The first communications node 110 may comprise processing circuitry 140 and a transceiver 142 communicatively coupled to the processing circuitry 140, for example by wired connections. The first communications node 110 may further comprise a memory 144 communicatively coupled to the processing circuitry 140. The processing circuitry 140 may be configured to generate communication signals to be transmitted by the transceiver 142.
The processing circuitry 140 may be configured to cause the transceiver 142 to transmit communication signals. The processing circuitry 140 may be configured to process communication signals received by the transceiver 142. The processing circuitry 140 may comprise general purpose processing circuitry or special purpose processing circuitry. The functionality of the processing circuitry 140 described herein may be implemented in software, hardware or firmware or a combination of any of software, hardware and firmware. For example, the processing circuitry 140 may be configured to retrieve and execute computer program instructions stored in the memory 144 to thereby provide its functionality described herein. The memory 144 may comprise any suitable memory such as cache memory, random access memory (RAM), read only memory (ROM), flash memory, magnetic or optical disk or any combination thereof. The transceiver 142 may be configured to transmit and receive acoustic signals, for example by way of an acoustic communication channel such as the drill string 100. The transceiver 142 may be operable to transmit and receive signals over a plurality of frequency bands. The transceiver 142 may be communicatively coupled to the communication channel by one or more couplers. The transceiver 142 may comprise one or more transducers, such as one or more acoustic transducers, which may be operable over a plurality of frequency bands. The transceiver 142 may comprise a discrete transmitter and a discrete receiver, which may each comprise a respective transducer such as a respective acoustic transducer, or the transceiver 142 may comprise an integrated transmitter and receiver which share hardware. For example, the transceiver may comprise an integrated transceiver and receiver which share a transducer such as an acoustic transducer. It may be that the transceiver is an acoustic, electromagnetic or fluid (e.g. mud or product) pulse transceiver configured to transmit and receive acoustic, electromagnetic or fluid pulse signals respectively. However, it will be assumed below that the transceiver is an acoustic transceiver. It may be that the transducer(s) are capable of converting acoustic signals to electrical signals, electrical signals to acoustic signals or both. It may be that the processing circuitry is configured to cause transmission of acoustic signals by the node by providing electrical signals to the transceiver for conversion to acoustic signals. It may be that the node is configured to receive acoustic signals by the transceiver converting received acoustic signals to electrical signals and passing the electrical signals to the processing circuitry 100.
As discussed above, the communication channel between the communications nodes 110, 112 may be noisy, lossy and dynamically changing. In order to account for the dynamically changing transfer function of the communication channel, calibration signals may be transmitted in addition to payload data signals between the first and second nodes 110, 112, the calibration signals occupying the same frequency band as the corresponding data signals. The receiving node may derive a calibration function from the received calibration signal, the calibration function being indicative of the effect of the communication channel on the calibration signal. The receiving node may then process the corresponding received payload data signal in dependence on the calibration function to equalise the effects of the communication channel on the payload data signal.
In order to provide the calibration and data signals with greater immunity to the noise levels of the channel, it may be that the calibration and data signals depend on (e.g. are encoded, for example by the processing circuitry of the transmitting node, in dependence on) respective codes. For example it may be that the calibration signal comprises calibration data encoded based on a respective code. The calibration data may comprise a constant or time varying amplitude. The calibration data may be known by the receiving node, for example by being stored at memory 144 of the receiving node. It may be that the payload data comprises a bit sequence for communicating information between the nodes 110, 112. For example it may be that the payload data signal comprises a bit sequence encoded based on a respective code. It may be that the payload data signal (and the calibration signal, where provided) is (are each) transmitted as a frequency modulated communication signal. It may be that the codes are time variant codes. It may be that the codes are spread spectrum codes such as any of: chirp codes; linear chirp codes; non-linear chirp codes; direct sequence spread spectrum codes; frequency hopping spread spectrum sequences. It may be that the respective codes are known to the receiving node, for example by being stored at memory 144 thereof.
It may be that the processing circuitry of the transmitting node is to encode the calibration signals, the data signals or the calibration and data signals at baseband. It may be that the transmitting node is configured to upconvert the (for example encoded) calibration signals, the data signals or the calibration and data signals, for example by a carrier frequency, to a transmission frequency band of the communication channel.
In an example, chirp codes may be used to provide a high signal to noise ratio to thereby allow data to be successfully transmitted through a downhole environment. A typical chirp pulse is a frequency sweep pulse with a short autocorrelation function. Chirp pulses may be any signal, such as a pressure wave signal, capable of pulse compression. An example chirp pulse of constant AC amplitude and varying frequency is illustrated in the time domain in
Calibration signals may be transmitted before, after or overlapping in time with the data signals. When the calibration signals overlap in time with the data signals, the calibration and data signals may be encoded based on different codes to allow them to be discriminated with each other. For example, the calibration and data signals may be encoded based on codes which are orthogonal or pseudo-orthogonal to each other to allow the calibration and data signals to be discriminated from each other at the receiving node (e.g. it being that the calibration signal and the frequency modulated communication signal at least overlap with each other in the frequency and time domains). This is particularly beneficial during dynamic deployments such as drilling, where the transfer function of the communication channel may be quickly varying, as it can be better ensured that the communication channel has the same transfer function for both the calibration and data signals.
It may be that the calibration function is derived by the receiving node decoding the received calibration signal (e.g. correlating the received calibration signal with a known code by which the calibration data is encoded stored in and retrieved from the memory 144 of the receiving node) and taking the reciprocal of the magnitude and the complex conjugate of the phase of a frequency domain representation of the decoded calibration signal. In this case, the processing circuitry of the receiving node may further decode the payload data signal, for example based on (e.g. correlation with) one or more known codes by which the payload data signal is encoded stored in and retrieved from the memory 144 of the receiving node, before processing the decoded payload data signal depending on the calibration signal to equalise the effect of the communication channel thereon.
Alternatively, the calibration signal may depend on a code in common with the corresponding payload data signal, and it may be that the processing circuitry 140 of the receiving node processes the received calibration signal to determine the calibration function such that the calibration function depends on the common code by way of the dependency of the calibration signal thereon. It may be that the processing circuitry 140 of the receiving node processes the calibration signal to determine the calibration function without removing the dependency of the received calibration signal on the common code, such that the calibration function depends on the code by way of the dependency of the calibration signal thereon. As the calibration signal has propagated over the communication channel, the calibration function obtained in this way also depends on the transfer function of the communication channel. It may be that the calibration function is provided with information for decoding the payload data signal, such as information concerning the common code, by way of the calibration signal. It may be that the calibration function is implicitly provided with information concerning the common code for decoding the payload data signal by way of the calibration signal. The calibration function may be implicitly provided with the said information in the sense that the common code is not explicitly determined from the calibration signal, but that information concerning the common code is contained within the calibration function derived therefrom. Thus, the payload data signal can be decoded without prior knowledge of the common code by processing the frequency modulated communication signal depending on the calibration function.
It may be that the calibration function depends on a convolution of the calibration signal, which is dependent on the common code, with the transfer function of the communication channel. The processing circuitry 140 of the receiving node may process the respective received payload data signal, without first removing the dependency of the respective payload data signal on the common code (e.g. without first decoding the payload data signal), depending on the corresponding calibration function. In this way, the payload data signal may be both decoded and have the effects of the communication channel thereon equalised by processing it depending on the calibration function.
The calibration signal may comprise or consist of a plurality of first signal frequencies within the frequency band. The calibration signal frequencies may span at least 70%, at least 80%, at least 90%, at least 95% or 100% of the respective frequency band. For example, the calibration signal may comprise a chirp signal such as an up-chirp or down-chirp which sweeps at least 70%, at least 80%, at least 90%, at least 95% or 100% of the respective frequency band.
It may be that the frequency bands are narrowband frequency bands. It may be that the widths of the frequency bands depend on the implementation, for example on the type of communication channel. For example, it may be that a coiled tubing communication channel provides wider frequency bands than a drill string. It may be that, for each of the frequency bands, the difference between the lower and upper frequency cut-offs of the frequency band may be between 10 Hz and 5000 Hz, 10 Hz and 3000 Hz, 10 Hz and 1000 Hz, 10 Hz and 500 Hz, 10 Hz and 250 Hz, 50 Hz and 150 Hz, 100 Hz or substantially 100 Hz, 2 kHz or substantially 2 kHz or at least 2 kHz. The frequency bands may have bandwidths of less than half of the sampling frequency. The frequency bands may be assumed to be provided at (e.g. substantially) fixed frequencies.
It will be assumed in the discussion below that the calibration and data signals are encoded by way of the same chirp code (e.g. a chirp code in common with each other). However, it will be understood that the calibration and data signals may alternatively be encoded by different (e.g. orthogonal or pseudo-orthogonal) chirp signals. It will also be understood that the calibration and data signals may alternatively be encoded by different types of codes such as codes based on quadrature phase shift keying (QPSK), quadrature amplitude modulation (QAM) or orthogonal frequency division multiplexing (OFDM).
In the apparatus 420 of
The downconversion by the downconverters of
By way of example, with reference to
In this example, a frequency modulated communication signal comprising a first communication signal component 610 encoded by a chirp code having a frequency which sweeps between 600 Hz and 700 Hz and a second communication signal component 612 encoded by a chirp code having a frequency which sweeps between 862 Hz and 970 Hz is received from a first of the nodes 110, 112 by the receiver of the second of the nodes 110, 112. The receiving node 110, 112 may comprise a downconverter in accordance with
As discussed above, the 600-700 Hz signal component 610 may be downconverted by parallel mixers 428, 430 mixing a first amplified, digitised and filtered copy of the received frequency modulated communication signal 610, 612, 620, 622 with Sin(2π(fc/fs)t) and mixing a second amplified, digitised and filtered copy of the received frequency modulated communication signal 610, 612, 620, 622 with Cos(2π(fc/fs)t), where fc is 650 Hz (i.e. the mid-point frequency of the 600-700 Hz frequency band) and fs is 8 kHz. Alternatively, as discussed, a single copy of the 600-700 Hz signal may be mixed with a complex exponential signal ej2π(fc/fs)t to achieve the same result. The outputs of the mixers are then low pass filtered by filters 432 and 434 and combined to provide an output x(n)=i(n)+jq(n), where i(n) is the output of the I-branch low pass filter 432 and q(n) is the output of the Q-branch low pass filter 434. A frequency domain spectrum of x(n) is shown in
The downconversion of the first communication signal component 610 maps the frequencies 600 Hz-700 Hz of the first communication signal component 610 to frequencies-50 Hz to +50 Hz. The portion of the first communication signal component 610 having frequencies 650 Hz-700 Hz is mapped to a first output signal component 630 of
With the signal components 634, 636, 638 filtered out, the signal of
A similar process may be performed for downconversion of the signal in the 862-970 Hz band. However, for brevity, downconversion of the signal in this band will not be described separately here.
The downconverted signals may be further processed by baseband processing circuitry. Processing may involve equalising the effects of the communication channel on the data signal by convolving the downconverted data signal with a calibration function derived from a received calibration signal. It may be that the calibration function is derived from the calibration signal by: downconverting the calibration signal; and determining a calibration function from the downconverted calibration signal. Additionally or alternatively, processing may involve correlating the downconverted data signal with a reference signal by which the downconverted data signal may be decoded (e.g. pulse compressed). In this case, it may be that the reference signal comprises the code on which the frequency modulated communication signal is based. As discussed above, decoding may be performed together with equalisation if the calibration function is dependent on a common code by which the calibration and data signals are encoded. Additionally or alternatively, processing may involve windowing the downconverted data signal in order to minimise or reduce intersymbol interference with data in neighbouring bands.
Convolution and correlation in the time domain are computationally expensive operations. In downhole environments, where processing capacity and computing resources are limited, it would be beneficial to reduce computational requirements. Convolution of two signals in the time domain is equivalent to multiplication of those signals in the frequency domain. Similarly, correlation of two signals in the time domain is equivalent to multiplication by the complex conjugate in the frequency domain. Multiplication in the frequency domain is less computationally expensive than correlation or convolution in the time domain. There is thus a benefit, particularly in downhole applications, to performing the above-mentioned correlation and convolution operations by way of multiplication in the frequency domain. However, this benefit is mitigated by the fact that conversion of the received signals from the time domain to the frequency domain and back to the time domain, for example by using the fast Fourier transform, FFT, and the inverse Fast Fourier Transform, iFFT, is also computationally expensive.
An alternative apparatus 700 for downconverting a received frequency modulated communication signal is illustrated in
The apparatus 700 may comprise an anti-aliasing bandpass filter 702 for bandpass filtering the received frequency modulated communication signal, the anti-aliasing bandpass filter 702 having a passband comprising the frequency band of the communication signal to be downconverted. It may be that the anti-aliasing bandpass filter 702 selectively passes frequencies of less than half of a sampling frequency fs. The apparatus 700 may comprise a low noise amplifier 704 for amplifying the received frequency modulated communication signal, for example after it has been filtered by the bandpass anti-aliasing filter 702. The apparatus 700 may comprise the processing circuitry 140 (or a portion thereof) of the receiving node 110, 112, which may be configured to obtain the frequency modulated communication signal, for example after it has been filtered and amplified by the filter 702 and amplifier 704 respectively. The processing circuitry 140 may be configured to perform the method 800 set out in
At 802, the method may comprise obtaining (e.g. complex) first digital frequency domain data based on the received frequency modulated communication signal. The method may comprise receiving the frequency modulated communication signal. The method may comprise converting the received frequency modulated communication signal into the frequency domain to provide the first digital frequency domain data based on the frequency modulated communication signal. For example, the frequency modulated communication signal may be converted into the frequency domain by sampling the received frequency modulated communication signal (e.g. by way of analogue to digital conversion) by a or the sampling frequency and performing a Fast Fourier Transform, FFT, on the sampled frequency modulated communication signal. The frequency modulated communication signal may be oversampled (e.g. it may be that the frequency modulated communication signal is sampled with a sampling frequency in excess of twice the bandwidth of a target frequency band of the frequency modulated communication signal). The resulting digital frequency domain data (i.e. the first digital frequency domain data) may comprise a first signal component at the target frequency band of the signal to be downconverted and a second signal component, the second signal component being a copy of the first signal component folded about half the sampling frequency.
As illustrated in
At 804, the method may comprise processing the first digital frequency domain data in the frequency domain to provide downconverted digital frequency domain data. The processing may comprise frequency shifting (e.g. downconverting) data based on at least a portion of the first digital frequency domain data. The downconverted digital frequency domain data may have fewer data points than the first digital frequency domain data. For example, the processing may comprise reducing a quantity of data points from a first quantity of data points in the first digital frequency domain data to a second quantity of data points in the downconverted digital frequency domain data, the second quantity being less than the first quantity. As discussed below with respect to 806, by providing the downconverted frequency domain data with fewer data points than the first digital frequency domain data, the processing overhead for converting the downconverted frequency domain data into the time domain is greatly reduced.
In a similar way to the downconverted signal of
It may be that the first and second portions of the first digital frequency domain data corresponding to the first and second portions of the target frequency band comprise first and second portions of the first digital frequency domain data in the target frequency band (the first signal component), first and second portions of the first digital frequency domain data in the copy of the target frequency band folded about half the sampling frequency of the first digital frequency domain data (the second signal component), or any combination thereof. Thus, the data based on the first portion of the first digital frequency domain data frequency shifted to the first frequency range may be based on a portion (e.g. an upper frequency portion of) of the first signal component (at the target frequency band) corresponding to the first portion of the target frequency band or a portion (e.g. a lower frequency portion of) the second signal component (the folded copy of the first signal component about half the sampling frequency) corresponding to the first portion of the target frequency band (or any combination thereof). The data based on the second portion of the first digital frequency domain data frequency shifted to the second frequency range may be based on a portion of (e.g. a lower frequency portion of) the first signal component (at the target frequency band) corresponding to the second portion of the target frequency band or a portion (e.g. an upper frequency portion) of the second signal component (the folded copy of the first signal component about half the sampling frequency) corresponding to the second portion of the target frequency band (or any combination thereof).
It may be that frequency shifting (e.g. translating in frequency) the data based on the first portion of the first digital frequency domain data corresponding to the first portion of the target frequency band to the first frequency range comprises frequency shifting the said data by one or more frequency offsets. It may be that the frequency offset applied is dependent on whether the data corresponding to the first portion of the target frequency band is based on the first signal component of the first digital frequency domain data or the second signal component of the first digital frequency domain data. For example, when data corresponding to the first portion of the target frequency band is based on a portion of the first signal component of the first digital frequency domain data, it may be that a frequency offset equal to the carrier frequency is applied. When data corresponding to the first portion of the target frequency band is based on a portion of the second signal component of the first digital frequency domain data, it may be that a frequency offset equal to the sampling frequency minus the upper end frequency of the target bandwidth is applied. It may be that, for example when data corresponding to the first portion of the target frequency band is based on a portion of the second signal component of the first digital frequency domain data, the frequency shifting further comprises rotating the frequency of the said data about its midpoint frequency. In this case (where both frequency shifting by a frequency offset and rotation are provided), it may be that the frequency shifting by the frequency offset and the rotation about the midpoint frequency are performed in separate operations or in a combined operation. In addition, it may be that, when data corresponding to the target frequency band is based on the second signal component (or a portion thereof) of the first digital frequency domain data, complex conjugates are taken of complex values of the second signal component (or a portion thereof) of the first digital frequency domain data.
It may be that frequency shifting (e.g. translating in frequency) the data based on the second portion of the first digital frequency domain data corresponding to the second portion of the target frequency band to the second frequency range comprises frequency shifting the said data by one or more frequency offsets. It may be that the frequency offset applied is dependent on whether the data corresponding to the second portion of the target frequency band is based on the first signal component of the first digital frequency domain data or the second signal component of the first digital frequency domain data. The frequency offset(s) applied to the data based on the second portion of the first digital frequency domain data may be different from the frequency offset(s) applied to the data based on the first portion of the first digital frequency domain data. For example, when data corresponding to the second portion of the target frequency band is based on a portion of the first signal component of the first digital frequency domain data, it may be that a frequency offset equal to the sampling frequency minus the carrier frequency is applied. When data corresponding to the second portion of the target frequency band is based on a portion of the second signal component of the first digital frequency domain data, it may be that a frequency offset equal to the lower end frequency of the target bandwidth is applied. It may be that, for example when data corresponding to the second portion of the target frequency band is based on a portion of the second signal component of the first digital frequency domain data, the frequency shifting further comprises rotating the frequency of the said data about its midpoint frequency. In this case (where both frequency shifting by the frequency offset and rotation are provided), it may be that the frequency shifting by the frequency offset and the rotation about the midpoint frequency are performed in separate operations or in a combined operation. In addition, it may be that, when data corresponding to the target frequency band is based on the second signal component (or a portion thereof) of the first digital frequency domain data, complex conjugates are taken of complex values of the second signal component (or a portion thereof) of the first digital frequency domain data.
As discussed, it may be that the frequency modulated communication signal comprises payload data encoded, for example, by a spread spectrum code such as a chirp. It may be that the carrier frequency is based on the spread spectrum code. For example, it may be that the communication signal comprises payload data encoded based on a (e.g. linear) chirp code. In this case, it may be that the carrier frequency is a mid-point frequency of the chirp code.
The target frequency band may consist of the first and second portions thereof. It may be that the first portion of the target frequency band comprises a first half band of the target frequency band of the received frequency modulated communication signal and the second portion of the target frequency band comprises a second half band of the target frequency band of the received frequency modulated communication signal different from the first half band. It may be that the first frequency range extends from 0 Hz (DC) to a frequency equal to a first proportion (e.g. half) of the bandwidth of the target frequency band of the received frequency modulated communication signal. It may be that the second frequency range extends from a first frequency to a second frequency, the second frequency being equal to the sampling frequency and the first frequency being equal to the sampling frequency minus a second proportion (e.g. half) of the bandwidth of the target frequency band of the received frequency modulated communication signal. The first and second proportions may together provide the complete bandwidth of the target frequency band of the frequency modulated communication signal.
In an example, a first portion (e.g. the upper half-band) of the first signal component may be frequency shifted down to the first frequency range (e.g. between DC and half the target bandwidth), while a second portion (e.g. the lower half-band) of the first signal component may be frequency shifted up to the second frequency range (e.g. between a first frequency and a second frequency, the first frequency being equal to the sampling frequency minus half the target bandwidth and the second frequency being equal to the sampling frequency). Equivalently, a first portion (e.g. the lower half-band) of the second signal component may be rotated about its midpoint frequency and frequency shifted down to the first frequency range (e.g. between DC and half the target bandwidth), while a second portion (e.g. the upper half-band) of the second signal component may be rotated about its midpoint frequency and frequency shifted up to the second frequency range (e.g. between a first frequency and a second frequency, the first frequency being equal to the sampling frequency minus half the target bandwidth and the second frequency being equal to the sampling frequency). Any equivalent combination of the above may be performed. As above, when data from the second component is used, it may be that complex conjugates are taken of complex values of the relevant portion of the second signal component.
In the example of
The downconverted digital frequency domain data may further comprise intermediate data between the first and second frequency ranges. For example, intermediate data 918 is provided between the first and second frequency ranges 914, 916 in the example of
The spectrum of the signal after frequency shifting of the data based on the first and second portions of the first digital frequency domain data corresponding to the first and second portions of the target frequency band to the first and second frequency ranges may be similar to the output of the mixing by the apparatus of
At 804, the frequency domain data may be further processed by the processing circuitry 140 in the frequency domain, either before or after the said frequency shifting. For example, the frequency domain data may be any one or more of equalised, decoded, windowed in the frequency domain. This will be explained further below. At 806, the downconverted digital frequency domain data may be converted into the time domain. For example, the downconverted digital frequency domain data may be converted into the time domain by way of an inverse fast Fourier transform, iFFT, performed thereon.
As mentioned above, converting signals between the frequency and time domains (e.g. by way of FFT or iFFT) is computationally expensive. However, as also mentioned above, it may be that, at 804, the processing involves reducing the quantity of data points from a first quantity of data points of the first digital frequency domain data to a second quantity of data points of the downconverted digital frequency domain data, the second quantity being less than the first quantity. For example, it may be that, at 804, the processing involves decimating in the frequency domain the intermediate data between the first and second frequency ranges, such as the intermediate data 918 between first and second frequency ranges 914, 916 of
The intermediate data may be decimated by a factor of 10, or the intermediate data may be decimated by a factor other than 10; any suitable decimation factor may be applied. It will be understood that decimation by a decimation factor of n may refer to retaining every nth sample (e.g. of the intermediate data). Decimation may comprise discarding the remaining samples (e.g. of the intermediate data). It may be that the method comprises decimating the intermediate data by discarding samples thereof to thereby multiply a sampling time or, equivalently, divide a sampling rate of the intermediate data by a decimation factor. It may be that the decimation factor is an integer. It may be that the decimation factor is greater than one. It may be that the processing comprises decimating the intermediate data to a greater extent than the first and second data in the first and second frequency ranges, to thereby preserve the signal samples in the portions of the downconverted signal containing the signal information. It may be that the first and second data in the first and second frequency ranges are decimated or it may be that the first and second data in the first and second frequency ranges are not decimated.
By decimating the intermediate data in the frequency domain, the frequency gap between the first and second frequency ranges narrows such that the second frequency range is further frequency shifted so that it extends from a first frequency to a second frequency, the second frequency being lower than the sampling frequency of the first digital frequency domain data and the first frequency being the second frequency minus a proportion (e.g. half) of the bandwidth of the target frequency band (see
As mentioned above, it may be that the data points corresponding to the first and second data are not decimated. It may be that the first and second data are based on all or substantially all of the information in the first digital frequency domain data relating to the target frequency band. For example, it may be that the first data is based on all (or substantially all, such as at least 90%, at least 95% or at least 99% of the) data points corresponding to the first portion of the target frequency band from a corresponding portion (e.g. upper half-band) of the bandwidth of the first signal component or on all (or substantially all, such as at least 90%, at least 95% or at least 99% of the) data points corresponding to the first portion of the target frequency band from a corresponding portion (e.g. lower half-band) of the bandwidth of the second signal component (or any combination thereof). Similarly, it may be that the second data is based on all (or substantially all, such as at least 90%, at least 95% or at least 99% of the) data points corresponding to the second portion of the target frequency band from a corresponding portion (e.g. lower half-band) of the bandwidth of the first signal component or on all (or substantially all, such as at least 90%, at least 95% or at least 99% of the) data points corresponding to the second portion of the target frequency band from a corresponding portion (e.g. upper half-band) of the bandwidth of the second signal component (or any combination thereof).
An alternative to the above method of reducing the quantity of data points from the first quantity to the second quantity, and thus to reduce the computational and memory requirements of converting the downconverted digital frequency domain data into the time domain, is as follows. The first digital frequency domain data may be provided in a first data array. The processing may comprise selectively shifting (e.g. selected) data based on the first and second portions of the first digital frequency domain data corresponding to first and second portions of the target frequency band to a second data array smaller than the first data array. It may be that the target frequency band consists of the first and second portions thereof. The data based on the first and second portions of the first digital frequency domain data may be shifted to respective first and second frequency ranges of the second data array to provide downconverted digital frequency domain data. Data based on the first digital frequency domain data outside of the first and second portions thereof may be discarded. Intermediate data may be provided in an intermediate frequency range between the first and second frequency ranges of the second data array (e.g. to provide a guard band between the first and second frequency ranges). The values of the intermediate data (where provided) may be set (e.g. preset) to zero. The values of the intermediate data may be preset to zero or they may be set to zero by way of a filter function (e.g. by way of multiplication in the frequency domain by a filter function). The downconverted digital frequency domain data may be provided with fewer data points than the first digital frequency domain data by the second data array having fewer data points than the first data array. For example, it may be that the quantity of data points of the intermediate data (where provided) of the downconverted digital frequency domain data is lower than the quantity of data points of the first digital frequency domain data outside of the first and second portions thereof. In some cases it may be that there is no intermediate data between the first and second frequency ranges in the downconverted digital frequency domain data (e.g. it may be that the first and second frequency ranges are contiguous). The quantity of data points in the first and second frequency ranges of the downconverted digital frequency domain data may be the same or substantially the same as (e.g. at least 90%, at least 95% or at least 99% of) the quantity of data points in the first and second portions of the first digital frequency domain data so as to retain all or substantially all of the signal information in the target frequency band of the first digital frequency domain data.
In this case, it may be that the first data of the downconverted digital frequency domain data in the second data array is provided in a first frequency range extending from DC (0 Hz) to a first proportion (e.g. half) of the target frequency band. It may be that the second data of the downconverted digital frequency domain data is provided in a second frequency range extending from a first frequency to a second frequency, the second frequency being lower than the sampling frequency of the first digital frequency domain data and the first frequency being the second frequency minus a second proportion (e.g. half) of the target frequency band. The second frequency may be the sampling frequency of the first digital frequency domain data scaled down by a scaling factor. The scaling factor may be an integer. The scaling factor may be greater than one. This method is equivalent to the above described method of generating data comprising first data, second data and intermediate data and selectively decimating the intermediate data to generate the downconverted digital frequency domain data having fewer data points than the first digital frequency domain data, but is computationally simpler.
As before, it may be that the data points corresponding to the first and second data are not decimated. As mentioned above, it may be that the first and second data are based on all or substantially all of the information in the first digital frequency domain data relating to the target frequency band. For example, it may be that the first data is based on all (or substantially all, such as at least 90%, at least 95% or at least 99% of the) data points corresponding to the first portion of the target frequency band from a corresponding portion (e.g. upper half-band) of the bandwidth of the first signal component or on all (or substantially all, such as at least 90%, at least 95% or at least 99% of the) data points corresponding to the first portion of the target frequency band from a corresponding portion (e.g. lower half-band) of the bandwidth of the second signal component (or any combination thereof). Similarly, it may be that the second data is based on all (or substantially all, such as at least 90%, at least 95% or at least 99% of the) data points corresponding to the second portion of the target frequency band from a corresponding portion (e.g. lower half-band) of the bandwidth of the first signal component or on all (or substantially all, such as at least 90%, at least 95% or at least 99% of the) data points corresponding to the second portion of the target frequency band from a corresponding portion (e.g. upper half-band) of the bandwidth of the second signal component (or any combination thereof).
As before, it may be that the first and second frequency ranges are discrete from (i.e. do not overlap) each other. It may be that the downconverted digital frequency domain data comprises intermediate data which provides a guard band between the first and second frequency ranges to inhibit leakage between them. It may be that (e.g. after shifting to the first and second frequency ranges of the second array) the frequency range extending between a lower end of the first frequency range and an upper end of the second frequency range of the downconverted digital frequency domain data is greater than or equal to twice the bandwidth of the target frequency band. The scaling factor may be selected so as to not cause overlap between the first and second data in the frequency domain. It may be that the first and second data are discrete from each other in frequency following decimation of the intermediate data. The desired size of the guard band may be determined empirically.
In this case, it may be that the frequency shifting of the data based on the first portion of the first digital frequency domain data corresponding to the first portion of the target frequency band to the first frequency range is as before. It may be that the frequency offset(s) by which the data based on the second portion of the first digital frequency domain data corresponding to the second portion of the target frequency band is frequency shifted to the second frequency range (and indeed the location in frequency of the second frequency range itself) is based on the desired reduction in the quantity of data points from the first quantity in the first digital frequency domain data to the second quantity in the downconverted digital frequency domain data.
It may be that (e.g. at least) first and second target frequency bands of the frequency modulated communication signal are selected for downconversion. In this case, it may be that data based on first and second portions of the first digital frequency domain data corresponding to first and second portions of the first target frequency band (e.g. the first target frequency band consisting of the first and second portions thereof) are shifted to a second data array and that data based on first and second portions of the first digital frequency domain data corresponding to first and second portions of the second target frequency band (e.g. the second target frequency band consisting of the first and second portions thereof) are shifted to a third data array. It may be that each of the second and third data arrays have fewer data points than the first data array.
As above, for each of the target frequency bands, the data based on the first and second portions of the first digital frequency domain data may be shifted to respective first and second frequency ranges of the respective second and third data arrays to provide downconverted digital frequency domain data for each of the target frequency bands. For each of the target frequency bands, data based on the first digital frequency domain data outside of the first and second portions thereof may be discarded. For each of the second and third data arrays, intermediate data may be provided in an intermediate frequency range between the first and second frequency ranges (e.g. to provide a guard band between the first and second frequency ranges). The values of the intermediate data (where provided) may be set (e.g. preset) to zero. The values of the intermediate data may be preset to zero or they may be set to zero by way of a filter function (e.g. by way of multiplication in the frequency domain by a filter function). The downconverted digital frequency domain data for each of the target frequency bands may be provided with fewer data points than the first digital frequency domain data by the second and third data arrays having fewer data points than the first data array. For example, it may be that, for each of the second and third data arrays, the quantity of data points of the intermediate data (where provided) is lower than the quantity of data points of the first digital frequency domain data outside of the first and second portions thereof. In some cases, it may be that there is no intermediate data between the first and second frequency ranges (e.g. it may be that the first and second frequency ranges are contiguous). The quantity of data points in the first and second frequency ranges of the second and third arrays may be the same or substantially the same as (e.g. at least 90%, at least 95% or at least 99% of) the quantity of data points in the respective first and second portions of the first digital frequency domain data so as to retain all or substantially all of the signal information in the respective target frequency band of the first digital frequency domain data.
The digital frequency domain data in each of the second and third data arrays may be converted to the time domain, for example by iFFT operations. As the second and third data arrays each have fewer data points than the first digital frequency domain data, the number of iFFT operations to be performed is correspondingly reduced.
By either of the above methods, the processing may comprise reducing a quantity of data points from a first quantity of data points in the first digital frequency domain data to a second quantity of data points in the downconverted digital frequency domain data, the second quantity being less than the first quantity. This may be achieved by selective data decimation (by the first method), or by selectively shifting data into a smaller data array (by the second method). In either of the above methods, it may be that a ratio of a number of data points of the first digital frequency domain data within the target frequency band (or in the combination of the said first and second portions of the first digital frequency domain data) to a number of data points of the first digital frequency domain data outside of the target frequency band is less than a ratio of a number of data points in the combination of the first and second data of the downconverted digital frequency domain data to a number of data points of the intermediate data of the downconverted digital frequency domain data. Similarly, it may be that a ratio of a number of data points of the first digital frequency domain data within the target frequency band (or in the combination of the first and second portions of the first digital frequency domain data) to a total number of data points of the first digital frequency domain data is less than a ratio of a number of data points in the combination of the first and second data of the downconverted digital frequency domain data to a total number of data points of the downconverted digital frequency domain data.
By discarding data outside of the first and second portions of the data based on the first digital frequency domain data and retaining the information corresponding to the target frequency band in the first and second portions of the said data based on the first digital frequency domain data, the quantity of iFFT processing required to convert the downconverted digital frequency domain data into the time domain at 806 is reduced while retaining the quality of the recovered time domain signal.
The processing at 804 may further comprise performing one or more frequency domain multiplications. It may be that the frequency domain multiplications are performed (e.g., selectively) on data based on at least a portion of the first digital frequency domain data, such as data based on the said first and second portions of the first digital frequency domain data corresponding to first and second portions of the target frequency band. As set out above, the processing at 804 may comprise frequency shifting data based on first and second portions of the first digital frequency domain data corresponding to first and second portions of the target frequency band to the first and second frequency ranges. The processing at 804 may further comprise reducing the quantity of data points from the first quantity of data points of the first digital frequency domain data to the second quantity of data points of the downconverted digital frequency domain data, the second quantity being less than the first quantity. It may be that the frequency domain multiplications at 804 are performed prior to or after the said frequency shifting. It may be that the frequency domain multiplications at 804 are performed prior to or after the said reduction in the quantity of data points. It may be that the frequency domain multiplications at 804 are performed prior to or after the said shifting to the second array (where provided). It will be understood that it is more efficient to perform the frequency domain multiplications after the said reduction in the quantity of data points due to the resulting reduction in frequency domain multiplication operations.
It may be that the data based on at least a portion of the first digital frequency domain data which is frequency shifted comprises at least a portion of the first digital frequency domain data or at least a portion of the result of frequency domain multiplications performed on at least a portion of data from the first digital frequency domain data (e.g. to perform any one or more of filtering, windowing, equalising the effects of the communication channel on, or decoding the at least a portion of the first digital frequency domain data).
For example, as illustrated at
As discussed above, filtering the frequency shifted frequency domain data may be performed by multiplying the values of the intermediate data between the first and second frequency ranges by zero. Alternatively, the intermediate data between the first and second frequency ranges may be set (e.g. preset) to null or zero values, for example by setting (e.g. presetting) the intermediate data values of the second (or third as the case may be) array to zero.
The said windowing may be performed to reduce side lobes caused by the conversion of the frequency modulated communication signal into the frequency domain, for example in order to reduce inter-symbol interference. Windowing may be performed by way of a frequency domain multiplication by a windowing function. It may be that windowing is alternatively performed on the received frequency modulated communication signal prior to conversion to the frequency domain (i.e. in the time domain).
Decoding may be performed by frequency domain multiplication by a frequency domain decoding function. Similarly equalisation may be performed by frequency domain multiplication by a frequency domain equalisation function.
Decoding may comprise multiplication by a frequency domain reference signal. The frequency domain reference signal may be based on a complex conjugate of a frequency domain version of the code on which the communication signal (or at least the component of the communication signal in the target frequency band) is based. The frequency domain reference signal may be a complex conjugate of a frequency domain version of a (e.g. pre-computed) downconversion of the code on which the communication signal is based. It may be that the downconversion of the code corresponds to the downconversion performed on the frequency modulated communication signal. As discussed above, multiplication of a frequency domain signal by the complex conjugate of a function is equivalent to correlation in the time domain of the signal with the function. It may be that the frequency domain reference signal is a predetermined frequency domain reference signal. The predetermined frequency domain reference signal may be stored in and retrieved from the memory 144 of the receiving node.
It may be that equalising the effects of the communication channel on the said data based on the at least first and second portions of the first digital frequency domain data comprises processing the data in dependence on a calibration function, such as a calibration function derived from a calibration signal received by way of the communication channel. It may be that equalising the effects of the communication channel on the said data comprises multiplying the said data by the calibration function in the frequency domain. It may be that the processing circuitry is to determine a calibration function depending on a received calibration signal. It may be that the receiver (where provided) is to receive a calibration signal by way of the communication channel. It may be that the calibration signal overlaps in frequency with the target frequency band. It may be that the calibration signal comprises or consists of frequencies within the target frequency band.
For example, the receiver of the receiving node 110, 112 may be to receive a calibration signal from the transmitting node by way of the communication channel, derive a frequency domain calibration function from the received calibration signal (e.g. by converting the received calibration signal into the frequency domain, for example by sampling and performing an FFT thereon, downconverting (e.g. by frequency shifting and reducing the number of data points in the same way as the frequency modulated communication signal) the target frequency band of received calibration signal (which may be the same as or similar to the target frequency band of the communication signal) and determining the calibration function in the frequency domain by determining the inverse of the downconverted frequency domain calibration signal) and multiply the data based on the at least said first and second portions of the first digital frequency domain data by the calibration function in the frequency domain.
It may be that determining the calibration function depending on the calibration signal comprises decoding the calibration signal (e.g. for example in any of the ways mentioned above for the decoding of the communication signal, such as by multiplying the calibration signal by a reference signal based on a complex conjugate of a code in respect of which the calibration signal is encoded). In this case, it may be that the calibration function is determined based on the decoded calibration signal. It may be that the calibration function is a predetermined calibration function, which may be stored in and retrieved from the memory 144 of the receiving node.
As discussed above, it may be that the calibration signal and the frequency modulated communication signal at least partially overlap with each other in time and frequency. In this case, it may be that the calibration signal and the frequency modulated communication signal are encoded based on different codes to allow them to be discriminated from each other. For example, it may be that the calibration signal is encoded based on a code which is orthogonal or pseudo-orthogonal to the code by which the frequency modulated communication signal is encoded. The codes may be orthogonal with each other by way of their time variance. This is particularly beneficial when the transfer function of the communication channel is quickly varying, for example during dynamic deployments such as during downhole drilling, as it can be ensured that the transfer function of the communication channel is substantially the same for both the calibration signal and the target frequency band of the frequency modulated communication signal.
It may be that processing the said data depending on the calibration function both decodes the frequency modulated communication signal and equalises the effects of the communication channel thereon. For example, it may be that the calibration signal and the frequency modulated communication signal are encoded based on a common code (e.g. each of the calibration signal and the frequency modulated communication signal may be encoded in dependence on a code in common with each other). It may be that the calibration signal is received before or after the frequency modulated communication signal. It may be that the calibration function is derived from the calibration signal (e.g. by the receiving node) such that the calibration function depends on the common code by way of the dependency of the calibration signal thereon (e.g. without removing the dependency of the received calibration signal on the common code). The calibration function may be a frequency domain calibration function. It may be that the receiving node is to multiply the said data based on at least the first and second portions of the first digital frequency domain data by the calibration function in the frequency domain.
It may be that the processing circuitry 140 of the receiving node is to derive the calibration function from the received calibration signal by obtaining an inverse of the calibration signal in the frequency domain (e.g. by obtaining the inverse of the magnitude and the complex conjugate of the phase). The processing circuitry 140 may be configured to downconvert the calibration signal as discussed above and determine the calibration function by obtaining an inverse of the downconverted calibration signal in the frequency domain (e.g. by obtaining the inverse of the magnitude and the complex conjugate of the phase of the downconverted calibration signal).
As discussed above, because the calibration signal and the frequency modulated communication signal have passed through the same communication channel, the calibration signal may be dependent on the transfer function of the communication channel. Additionally, by deriving the calibration function from the calibration signal such that the calibration function depends on the common code by way of the dependency of the calibration signal thereon (e.g. without removing the dependency of the received calibration signal on the common code), the calibration function is further dependent on the common code. It may be that the calibration function is provided with information for decoding the communication signal, such as information concerning the common code, by way of the calibration signal. It may be that the calibration function is implicitly provided with information concerning the common code for decoding the frequency modulated communication signal by way of the calibration signal. The calibration function may be implicitly provided with the said information in the sense that the common code is not explicitly determined from the calibration signal, but that information concerning the common code is contained within the calibration function derived therefrom. Thus, the frequency modulated communication signal can be decoded without prior knowledge of the common code by processing the frequency modulated communication signal depending on the calibration function. In addition, processing the data based on the at least a portion of the first digital frequency domain data by the calibration function both removes the dependency of the frequency modulated communication signal on the common code (i.e. the frequency modulated communication signal can be decoded) and equalise the effects of the communication channel on the frequency modulated communication signal.
Frequency domain multiplication is equivalent to time domain convolution but is more computationally efficient. Accordingly, it is more computationally efficient to perform the filtering, windowing, decoding and equalising (where provided) in the frequency domain than in the time domain. It may be that a plurality of functions are combined into a single (e.g. pre-computed) function and that the processing comprises multiplying the frequency domain data by the said combined function in the frequency domain. For example, it may be that any two or more of filtering, windowing, decoding and equalising functions are combined into a single (e.g. pre-computed) function and that the frequency domain data is multiplied by the said combined function in the frequency domain. Reducing processing in this way is a particular advantage in downhole applications where computational resources (e.g. processing capacity and memory) are limited due to the hostility of the environment.
By the processing of the communication signal comprising multiplication (e.g. by any one or more of equalisation, filtering, windowing and decoding functions) in the frequency domain and reducing the number of data points in the frequency domain prior to converting the processed frequency domain signal into the time domain, the reduction in computational expense obtained by performing multiplications in the frequency domain, rather than time domain convolutions or correlations, can be better realised due to the significantly reduced number of calculations for converting the processed frequency domain data into the time domain. The number of complex multiplications for performing an IFFT may be determined by (N/2)*log2(N), where N is the number of data points in the data being converted by way of the IFFT. By reducing the number of data points in the data to be converted by way of the IFFT from N1 data points in the first digital frequency domain data to N2 data points in the downconverted digital frequency domain data, the computational expense for performing the IFFT may be reduced by ((N1/2)*log2(N1)−(N2/2)*log2(N2)) complex multiplications. In an example, N1 may be equal to 215, while N2 may be equal to 212. When it is considered that the downconversion process may be repeated for communication signals received in a plurality of frequency bands, it can be seen that the reduction in computational expense May be even more significant. Again, this reduced computational requirement is a particular benefit in downhole applications where computational resources (e.g. processing capacity and memory) are limited.
It will be understood that the downconverted digital frequency domain data may be complex digital frequency domain data (i.e. digital frequency domain data having complex values). In examples comprising reducing the number of data points from a first number in the first digital frequency domain data to a second number in the downconverted digital frequency domain data, it may be that a number of digital frequency domain data points having complex values (i.e. data points of digital frequency domain data having complex values) is reduced from the first number to the second number. In examples comprising discarding samples of digital frequency domain data, it may be that the discarded samples are samples of complex digital frequency domain data (i.e., digital frequency domain data having complex values).
It can be seen from
As shown in
Another example method for downconverting a received frequency modulated communication signal is described with reference to
As above, the frequency modulated communication signal may be received by way of a communication channel, such as a downhole communication channel. As above, the frequency modulated communication signal may be a signal based on (e.g., derived from) an acoustic communication signal received by way of an acoustic communication channel such as a downhole acoustic communication channel. As above, the communication signal may comprise a calibration signal or a payload data signal (or at least a portion thereof).
At 802, the method may comprise obtaining first digital frequency domain data based on the received frequency modulated communication signal. The method may comprise receiving the frequency modulated communication signal. The received frequency modulated communication signal may be bandpass filtered by a filter such as an anti-aliasing bandpass filter 702, the filter having a passband comprising the frequency band of the communication signal to be downconverted. It may be that the anti-aliasing bandpass filter 702 selectively passes frequencies of less than or equal to half of a sampling frequency fs. The received frequency modulated communication signal may be amplified, for example by a low noise amplifier 704 for amplifying the received frequency modulated communication signal, for example after it has been filtered (e.g., by the bandpass anti-aliasing filter 702). The method may comprise converting the received frequency modulated communication signal into the frequency domain to provide the first digital frequency domain data based on the frequency modulated communication signal. For example, the frequency modulated communication signal may be converted into the frequency domain by sampling the received frequency modulated communication signal (e.g. by way of analogue to digital converter 705) by a or the sampling frequency fs and performing a Fast Fourier Transform, FFT, on the sampled frequency modulated communication signal (e.g., by way of FFT block 706). The frequency modulated communication signal may be oversampled (e.g. it may be that the frequency modulated communication signal is sampled with a sampling frequency in excess of twice the bandwidth of a target frequency band of the frequency modulated communication signal). The resulting digital frequency domain data (i.e. the first digital frequency domain data) may comprise a first signal component 1000 at the target frequency band of the signal to be downconverted and a second signal component 1010, the second signal component 1010 being a copy of the first signal component 1000 folded about half the sampling frequency fs (i.e., the hermetian symmetry of the first signal component). This is illustrated in
At 804, the method may comprise processing the first digital frequency domain data in the frequency domain to provide downconverted digital frequency domain data. The processing may comprise frequency shifting (e.g. downconverting) data based on at least a portion of the first digital frequency domain data. The downconverted digital frequency domain data may have fewer data points than the first digital frequency domain data. For example, the processing may comprise reducing a quantity of data points from a first quantity of data points in the first digital frequency domain data to a second quantity of data points in the downconverted digital frequency domain data, the second quantity being less than the first quantity. As discussed above and below with respect to block 806 of
As illustrated in
The first frequency range of the downconverted digital frequency domain data may be at frequencies lower than the target frequency band 1000. The first frequency range may extend from a first frequency to a second frequency. The first frequency may be greater than or equal to zero Hz. The second frequency may be equal to the sum of the first frequency and the bandwidth of the target frequency band. The second frequency may be less than or equal to half the sampling frequency of the downconverted digital frequency domain data.
It may be that the first portion of the first digital frequency domain data corresponding to the target frequency band 1000 comprises the first digital frequency domain data in the target frequency band 1000 (the first signal component), the first digital frequency domain data in the copy 1010 of the target frequency band folded about half the sampling frequency of the first digital frequency domain data (the second signal component), or portions of the first digital frequency domain data from each of the first and second signal components 1000, 1010 (e.g., together corresponding to the target frequency band). Thus, the data based on the first portion of the first digital frequency domain data frequency shifted to the first frequency range may be based on the first signal component 1000 (at the target frequency band), the second signal component 1010 (the folded copy of the first signal component about half the sampling frequency corresponding to the target frequency band) or portions of the first digital frequency domain data from each of the first and second signal components 1000, 1010 (e.g., together corresponding to the target frequency band).
It may be that frequency shifting (e.g. translating in frequency) the data based on the first portion of the first digital frequency domain data corresponding to the target frequency band to the first frequency range comprises frequency shifting the said data by one or more frequency offsets. It may be that the frequency offset applied is dependent on whether the data corresponding to the target frequency band is based on the first signal component 1000 of the first digital frequency domain data or the second signal component 1010 of the first digital frequency domain data. For example, when data corresponding to the target frequency band is based on the first signal component 1000 (or a portion thereof) of the first digital frequency domain data, it may be that a frequency offset less than or equal to the frequency of the lower end of the target frequency band is applied. When data corresponding to the target frequency band is based on the second signal component 1010 (or a portion thereof) of the first digital frequency domain data, it may be that a frequency offset equal to the sampling frequency minus the upper end frequency of the target bandwidth is applied. It may be that, for example when data corresponding to the target frequency band is based on the second signal component 1010 (or a portion thereof) of the first digital frequency domain data, the frequency shifting further comprises rotating the frequency of the said data about its midpoint frequency. In this case (where both frequency shifting by a frequency offset and rotation are provided), it may be that the frequency shifting by the frequency offset and the rotation about the midpoint frequency are performed in separate operations or in a combined operation. In addition, it may be that, when data corresponding to the target frequency band is based on the second signal component 1010 (or a portion thereof) of the first digital frequency domain data, complex conjugates are taken of complex values of the second signal component 1010 (or a portion thereof) of the first digital frequency domain data.
As mentioned above, it may be that, at 804, the processing involves reducing a quantity of data points from a first quantity of data points in the first digital frequency domain data to a second quantity of data points in the downconverted digital frequency domain data, the second quantity being less than the first quantity. For example, it may be that, at 804, the processing involves decimating in the frequency domain data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range) by a decimation factor in order to provide the downconverted digital frequency domain data with fewer data points than the first digital frequency domain data. Reducing the number of data points in the downconverted digital frequency domain data reduces the quantity of data which is subsequently converted from the frequency domain into the time domain (e.g. by iFFT), thereby reducing computational and memory requirements.
The data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range) may be decimated by a factor of 10, or the data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range) may be decimated by a factor other than 10; any suitable decimation factor may be applied. It will be understood that decimation by a decimation factor of n may refer to retaining every nth sample (e.g. of the data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range)). Decimation may comprise discarding the remaining samples (e.g. of the data below, above or below and above the first frequency range). It may be that the method comprises decimating the data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range) by discarding samples thereof to thereby multiply a sampling time or, equivalently, divide a sampling rate of the data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range) by a decimation factor. It may be that the decimation factor is an integer. It may be that the decimation factor is greater than one. It may be that the processing comprises decimating the data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range) to a greater extent than the first data, to thereby preserve the signal samples in the portion of the downconverted signal containing the signal information. The first data in the first frequency range may be decimated, but it may be that the first data in the first frequency range is not decimated. It will be understood that data may be discarded, for example, by erasing or overwriting said data.
By decimating the data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range) in the frequency domain, the sampling frequency of the downconverted frequency domain data is reduced to less than the sampling frequency of the first digital frequency domain data. As illustrated in
As mentioned above, it may be that the data points corresponding to the first data are not decimated. It may be that the first data is based on all or substantially all of the information in the first digital frequency domain data relating to the target frequency band. For example, it may be that the first data is based on all (or substantially all, such as at least 90%, at least 95% or at least 99% of the) data points corresponding to the target frequency band from the first signal component 1000, the second signal component 1010 or respective portions thereof.
To inhibit aliasing, the reduced sampling frequency fs/Rfactor of the downconverted frequency domain data (i.e., reduced compared to the sampling frequency fs of the first digital frequency domain data) may remain greater than or equal to 2BW (if the first frequency of the first frequency range is zero Hz) or greater than or equal to 2BW+2If (if the first frequency of the first frequency range is greater than zero Hz by a value If), where BW is the target bandwidth. If the first frequency of the first frequency range is greater than zero Hz by a value If, If may be greater than zero and less than or equal to the difference between half the reduced sampling frequency fs/Rfactor of the downconverted frequency domain data (i.e., reduced compared to the sampling frequency fs of the first digital frequency domain data) and the target bandwidth of the target frequency band.
The values of the downconverted digital frequency domain data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range) may be set to zero. The values of the downconverted digital frequency domain data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range) may be set to zero by way of a filter function (e.g. by way of multiplication in the frequency domain by a filter function). Thus, the downconverted digital frequency domain data outside of the first data (e.g., at frequencies different from the frequencies of the first data, e.g., at frequencies outside of the first frequency range) may comprise or consist of zero valued data points.
As above, an alternative to the above method of reducing the quantity of data points from the first quantity to the second quantity, and thus to reduce the computational and memory requirements of converting the downconverted digital frequency domain data into the time domain, is as follows. The first digital frequency domain data may be provided in a first data array. The processing at 804 may comprise selectively shifting (e.g. selected) data based on the first portion of the first digital frequency domain data corresponding to the target frequency band 1000 to a second data array smaller than the first data array. The data based on the first portion of the first digital frequency domain data may be shifted to the first frequency range of the second data array to provide the downconverted digital frequency domain data. Data based on the first digital frequency domain data outside of the first portion thereof may be discarded. Data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range) may be provided in the second data array (e.g. to provide the downconverted frequency domain data with a sampling frequency of greater than or equal to 2BW (if the first frequency of the first frequency range is zero Hz) or greater than or equal to 2BW+2If (if the first frequency of the first frequency range is greater than zero Hz by a value If), where BW is the target bandwidth). The values of the data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range) may be set (e.g. preset) to zero. The values of the data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range) may be preset to zero or they may be set to zero by way of a filter function (e.g. by way of multiplication in the frequency domain by a filter function). The downconverted digital frequency domain data may be provided with fewer data points than the first digital frequency domain data by the second data array having fewer data points than the first data array. For example, it may be that the quantity of data points of the data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range) of the downconverted digital frequency domain data is lower than the quantity of data points of the first digital frequency domain data outside of the first portion thereof. The quantity of data points in the first frequency range of the downconverted digital frequency domain data may be the same or substantially the same as (e.g. at least 90%, at least 95% or at least 99% of) the quantity of data points in the first portion of the first digital frequency domain data so as to retain all or substantially all of the signal information in the target frequency band of the first digital frequency domain data.
As above, the first frequency range of the downconverted digital frequency domain data may be at frequencies lower than the target frequency band. The first frequency range may extend from a first frequency to a second frequency. The first frequency may be greater than or equal to zero Hz. The second frequency may be equal to the sum of the first frequency and the bandwidth of the target frequency band. The second frequency may be less than or equal to the sampling frequency of the downconverted digital frequency domain data.
By reducing the number of data points in the downconverted digital frequency domain data as compared to the first digital frequency domain data, the sampling frequency of the downconverted digital frequency domain data is reduced to less than the sampling frequency of the first digital frequency domain data. To inhibit aliasing, the reduced sampling frequency of the downconverted frequency domain data (i.e., reduced compared to the sampling frequency fs of the first digital frequency domain data) may remain greater than or equal to 2BW (if the first frequency of the first frequency range is zero Hz) or greater than or equal to 2BW+2If (if the first frequency of the first frequency range is greater than zero Hz by a value If), where BW is the target bandwidth. If the first frequency of the first frequency range is greater than zero Hz by a value If, If may be greater than zero and less than or equal to the difference between half the reduced sampling frequency of the downconverted frequency domain data (i.e., reduced compared to the sampling frequency fs of the first digital frequency domain data) and the target bandwidth of the target frequency band.
As before, it may be that the first portion of the first digital frequency domain data corresponding to the target frequency band 1000 comprises the first digital frequency domain data in the target frequency band 1000 (the first signal component), the first digital frequency domain data in the copy 1010 of the target frequency band folded about half the sampling frequency of the first digital frequency domain data (the second signal component), or portions of the first digital frequency domain data from each of the first and second signal components 1000, 1010 (e.g., together corresponding to the target frequency band).
This method is equivalent to the above described method of generating data comprising first data in a first frequency range and data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range) and selectively decimating the data outside of the first data (e.g., data at frequencies below, above or below and above the first frequency range) to generate the downconverted digital frequency domain data having fewer data points than the first digital frequency domain data, but is computationally simpler.
In each case, the number of data points in the downconverted digital frequency domain data outside of the first data (e.g., at frequencies different from the frequencies of the first data, e.g., outside of the first frequency range) may be lower than the number of data points of the first digital frequency domain data outside of the first portion thereof. A ratio of a number of data points in the first portion of the first digital frequency domain data to a total number of data points of the first digital frequency domain data may be less than a ratio of a number of data points in the first data of the downconverted digital frequency domain data to a total number of data points of the downconverted digital frequency domain data. A ratio of the number of data points in the first digital frequency domain data in the first portion thereof to a number of data points of the first digital frequency domain data outside of the first portion thereof (e.g., at frequencies different from the frequencies of the first data, e.g., at frequencies outside of the first frequency range) may be less than a ratio of a number of data points in the first data of the downconverted digital frequency domain data to a number of data points of the downconverted digital frequency domain data outside of the first data thereof.
Also in each case, the processing at 804 may comprise performing, for example by the processing circuitry 140, one or more frequency domain multiplications. It may be that the frequency domain multiplications are performed (e.g., selectively) on data based on at least a portion of the first digital frequency domain data, such as data based on the said first portion of the first digital frequency domain data corresponding to the target frequency band. For example, as discussed above, it may be that the processing is to comprise any one or more of the following performed (e.g., by way of frequency domain multiplications) in the frequency domain: filtering; windowing (e.g. by way of a Hanning or Kaiser window function); equalising the effects (e.g. cancelling echo effects) of the communication channel; decoding. The frequency domain multiplications may be performed before or after said frequency shifting of the data based on the at least a portion of the first digital frequency domain data corresponding to the target frequency band. It may therefore be that the data based on the at least a portion of the first digital frequency domain data which is frequency shifted comprises at least a portion of the first digital frequency domain data or at least a portion of the result of frequency domain multiplications performed on at least a portion of data from the first digital frequency domain data (e.g. to perform any one or more of filtering, windowing, equalising the effects of the communication channel on, or decoding the at least a portion of the first digital frequency domain data).
It will be understood that, as discussed above, any two or more functions, such as any two or more of calibration (e.g., equalisation), windowing, decoding and filtering functions, may be combined for applying to the received signal. Thus, it may be that the frequency domain multiplications comprise frequency domain multiplications by a combined function, the combined function comprising any two or more of calibration (e.g., equalisation), windowing, decoding and filtering functions.
As set out above, the processing at 804 may further comprise reducing the quantity of data points from the first quantity of data points of the first digital frequency domain data to the second quantity of data points of the downconverted digital frequency domain data, the second quantity being less than the first quantity (e.g., by decimating data or shifting data to a smaller array as discussed). It may be that the frequency domain multiplications at 804 are performed prior to or after the said reduction in the quantity of data points. It may be that the frequency domain multiplications at 804 are performed prior to or after the said shifting to the second array (where provided). It will be understood that it is more efficient to perform the frequency domain multiplications after the said reduction in the quantity of data points due to the resulting reduction in frequency domain multiplication operations.
At 806, the downconverted digital frequency domain data may be converted into the time domain. For example, the downconverted digital frequency domain data may be converted into the time domain by way of an inverse fast Fourier transform, iFFT, performed thereon.
As above, by the downconverted digital frequency domain data having a reduced number of data points compared to the first digital frequency domain data, the quantity of iFFT processing required to convert the downconverted digital frequency domain data into the time domain at 806 is reduced. By the ratio of a number of data points in the first portion of the first digital frequency domain data to a total number of data points of the first digital frequency domain data may be less than a ratio of a number of data points in the first data of the downconverted digital frequency domain data to a total number of data points of the downconverted digital frequency domain data, the quantity of iFFT processing required to convert the downconverted digital frequency domain data into the time domain at 806 is reduced while retaining the quality of the recovered time domain signal. By discarding data (e.g., data outside of the first portion of the data based on the first digital frequency domain data), memory usage can be reduced.
As above, the downconverted digital frequency domain data may be complex digital frequency domain data (i.e. digital frequency domain data having complex values). In examples comprising reducing the number of data points from a first number in the first digital frequency domain data to a second number in the downconverted digital frequency domain data, it may be that a number of digital frequency domain data points having complex values (i.e. data points of digital frequency domain data having complex values) is reduced from the first number to the second number. In examples comprising discarding samples of digital frequency domain data, it may be that the discarded samples are samples of complex digital frequency domain data (i.e., digital frequency domain data having complex values).
The results shown in
The sampling frequency after the reduction in the number of data points remains greater than twice the bandwidth (100 Hz) of the communication signal (and indeed greater than twice the bandwidth summed with twice the frequency offset between zero Hz and the first frequency, 2 Hz, of the first frequency range). This helps to ensure that the data within the bandwidth of the communication signal can be recovered from the downconverted digital frequency domain data with little or no aliasing.
It will be understood that the lower the first frequency in the first frequency range of the downconverted digital frequency domain data, the greater the possible reduction in the number of data points compared with the first digital frequency domain data. In some examples, the first frequency may be zero Hz (DC).
It will be understood that the methods described above with reference to
As discussed, the frequency modulated communication signal to be received and downconverted may be a payload data signal or a calibration signal (indeed the method for downconverting a frequency modulated signal may be repeated for calibration signals and payload data signals in each of one or more frequency bands) or at least a portion thereof. In either case, it may be desirable to perform (e.g., coarse) energy detection on the time domain data resulting from converting the downconverted digital frequency domain data into the time domain in order to determine whether a signal is present and data relating to the signal should be stored, for example for further processing, or whether no calibration or payload data signal is present such that the data should be discarded. For example, it may be that data based on received calibration or payload data signals is stored for later processing (rather than further processed immediately) to free the receiving node (e.g., apparatus 700 of receiving node) to receive further calibration or payload data signals shortly after the received calibration or payload data signals. The apparatus 700 may then further process the data relating to the calibration or payload data signals later based on the stored data.
It may be that calibration signals are transmitted by the transmitting node, and received by the receiving node, prior to payload data signals. It may be that, in order to detect a calibration signal in a target frequency band, the receiving node (e.g. the apparatus 700 of the receiving node) is to successively capture received signals over a series of limited time windows. For each of the time windows, signals in the target frequency band may be converted into first digital frequency domain data (e.g., by sampling and FFT operations), processed to provide downconverted digital frequency domain data and converted into the time domain by any of the methods described herein. Energy detection may then be run on the resulting downconverted time domain data to determine whether a signal is present. If a signal is present in the time window, it may be assumed that the signal is a calibration signal, and data relating to the signal may be stored in a memory. If a signal is not present in the time window, the data relating to the time window may be discarded.
If no energy relating to the target frequency band has yet been detected, the receiving node (e.g. apparatus 700) may capture signals in successive time windows until a signal is detected in the target frequency band. It may be that, following the time window in which a signal is first detected in the target frequency band, the receiving node (e.g. apparatus 700) is to capture signals in one or more further time windows. Data relating to the time window in which the signal was first detected and data relating to the said following time window(s) may be combined to provide combined data for the target frequency band. The number of time windows may be predetermined; alternatively, after the time window in which the signal was first detected, the method may be repeated for one or more additional time windows until no signals are detected in the target frequency band. This helps to avoid missing part of a signal which may for example span more than one time window.
For example, an apparatus of the receiving node (such as apparatus 700) may perform the method 1100 illustrated by the flow diagram of
In some examples, at block 1150, n may be incremented. If n is less than a predetermined limit, the method may return to block 1110 and blocks 1110-1150 may be repeated for the next time window. If n is equal to the limit, rather than repeating blocks 1110-1150 for another time window, the method may move to block 1160.
Alternatively, if energy relating to a calibration signal is detected at block 1140, the method may return to block 1110 (e.g., without performing a comparison of a window number n against a predetermined limit) and blocks 1110-1150 may be repeated for the next time window. If no energy relating to a calibration signal is detected in the target frequency band at block 1140 for a particular time window (after the time window in which energy relating to a calibration signal was first detected in the target frequency band), rather than repeating blocks 1110-1150 for another time window, the method may move to block 1160.
At block 1160, data relating to the first time window in which energy relating to a calibration signal was detected in the target frequency band and data relating to one or more additional time windows in which energy relating to a calibration signal was detected in the target frequency band may be combined to provide combined data relating to the target frequency band.
At block 1150, it may be that the data relating to the time window which is stored is the downconverted time domain data relating to that time window. In this case, block 1160 may comprise concatenating the downconverted time domain data from the different time windows and storing the concatenated data. It may be that the downconverted frequency domain data generated in block 1120 is discarded (e.g., the memory used to store the downconverted frequency domain data generated in block 1120 may be used to store the downconverted time domain data generated in block 1130).
Alternatively, it may be that the data relating to the time window which is stored in block 1150 is the (e.g., complex) downconverted frequency domain data relating to that time window generated in block 1120. In this case in block 1160, it may be that the downconverted digital frequency domain data generated in block 1120 for different time windows is combined in the frequency domain by applying appropriate phase corrections to the signals obtained in the different windows and the combined downconverted digital frequency domain data may be stored. Alternatively, frequency domain data for respective time windows may be stored separately. It may be that downconverted time domain data obtained in block 1130 is discarded after (e.g., coarse) energy detection.
It may be that the method of
The time domain data resulting from the conversion of the downconverted frequency domain data into the time domain may have complex (i.e., real and imaginary) values. Accordingly, storing the downconverted time domain data in block 1150 (or the combined time domain data generated in block 1160) may use a relatively large amount of memory. In downhole applications, available memory may be limited. In some examples, the complex values of the downconverted time domain data may be stored. However, in the method for downconverting a frequency modulated communication signal described above with reference to
As set out above, the reduced sampling frequency of the downconverted frequency domain data (i.e., reduced compared to the sampling frequency fs of the first digital frequency domain data) may remain greater than or equal to 2BW (if the first frequency of the first frequency range is zero Hz) or greater than or equal to 2BW+2If (if the first frequency of the first frequency range is greater than zero Hz by a value If), where BW is the target bandwidth, where If is less than or equal to the difference between half the reduced sampling frequency of the downconverted frequency domain data (i.e., reduced compared to the sampling frequency fs of the first digital frequency domain data) and the target bandwidth of the target frequency band. By If being greater than or equal to zero Hz and less than or equal to the difference between half the reduced sampling frequency of the downconverted digital frequency domain data and the target bandwidth, a symmetry is provided about half the reduced sampling frequency in the spectra of the real and imaginary parts of the time domain data resulting from the conversion of the downconverted frequency domain data into the time domain, allowing the other of the real and imaginary parts (and thus the complex values) of the time domain data to be generated (e.g., regenerated) from the selectively stored one of the real and imaginary parts, for example by way of Hilbert transform operations. This is discussed in more detail below with reference to
The hermetian symmetry of the spectra of
As shown in
The output of the FFT block 1300 is input to a low pass filter 1310. The low pass filter 1310 may remove the folded copy A*(−f) 1410 of the data A(f) 1400 and allow the data A(f) 1400 to pass through. The low pass filter 1310 may have an upper cut-off frequency of fs/2Rfactor, i.e., half the reduced sampling frequency of the downconverted time domain data. The output of the low pass filter 1310 is converted back to the time domain, for example by way of an iFFT block 1320. The output of the iFFT block 1320 comprises both the real and imaginary parts of the time domain data. It will be understood that the amplitudes of A(f) and A*(−f) being half of the corresponding complex value amplitudes of the spectrum of the complex time domain data can also be compensated for in the operations illustrated in
Although
The operations illustrated in
An example implementation of the process illustrated by
Thus, the unstored one of the real and imaginary values of the time domain data can be generated from the stored one of the real and imaginary values, enabling a selected one of the real and imaginary values to be stored (rather than both), thereby reducing (halving) the memory storage requirements for the time domain data.
A calibration signal may be detected and processed (e.g., downconverted) as described herein. The calibration signal may be a calibration signal as discussed above. For example it may be that the calibration signal comprises calibration data encoded based on a respective code. The calibration data may comprise a constant or time varying amplitude.
The calibration data may be known by the apparatus 700 (e.g., stored in a memory in communication with the processing circuitry thereof). The calibration function may be based on data derived from the calibration signal. In some examples, processing the calibration signal may comprise decoding the calibration signal (e.g., in the frequency domain, as discussed herein). The calibration function may be based on the decoded calibration signal. For example the calibration signal may be decoded in any of the ways mentioned above for the decoding of the communication signal, such as by multiplying the calibration signal by a reference signal based on a complex conjugate of a code in respect of which the calibration signal is encoded. In this case, it may be that the calibration function is determined based on the decoded calibration signal.
As discussed above, at block 1150 of the method of
As illustrated in
The time domain downconverted data obtained in any of the above ways may be input to block 1530. The time domain downconverted data input to block 1530 may comprise complex values of time domain downconverted data relating to the calibration signal in the target frequency band. The time domain downconverted data input to block 1530 may comprise complex values of time domain downconverted data relating to calibration signals in the target frequency band and one or more additional target frequency bands. For example, as discussed above with respect to
At block 1530, (e.g., fine) energy detection may be performed on the complex time domain downconverted (and in some cases decoded) data to accurately determine the starting point of the data relating to the calibration signal for the target frequency band (or for a respective one of the target frequency bands). For example, calibration signals relating to different frequency bands may be transmitted and received in a known sequence, allowing the starting point of the data relating to the calibration signal for the target frequency band to be determined. Data relating to the calibration signal for the target frequency band (or for a respective one of the target frequency bands) may be selected from the complex time domain downconverted (and in some cases decoded) data based on the determined starting point.
At block 1540, the complex time domain downconverted (and in some cases decoded) data relating to the calibration signal for the target frequency band may be converted to the frequency domain, for example by way of an FFT, to provide complex downconverted frequency domain data relating to the calibration signal for the target frequency band. The complex time domain downconverted (and in some cases decoded) data relating to the target frequency band for the target frequency band may then be erased or overwritten.
At block 1550, the calibration function for the target frequency band may be determined based on the (complex) downconverted (and in some cases decoded) frequency domain data relating to the calibration signal for that band, for example in the frequency domain, for example by obtaining an inverse of the calibration data in the frequency domain, for example by obtaining the inverse of the magnitude and the complex conjugate of the phase of the frequency domain version of the downconverted (and in some cases decoded) calibration data. The calibration function may then be stored in the frequency domain for multiplying with a payload data signal in the target frequency band converted into the frequency domain in order to equalise the effects of the communication signal thereon. The receiving node (e.g., apparatus 700) may be to equalise the effects of the communication channel on a received payload data signal based on the stored calibration function.
It will be understood that, as discussed above, the calibration function may be combined with other functions such as any one or more of windowing, decoding and filtering functions for applying to the received payload data signal (e.g., by frequency domain multiplications). Thus, the calibration function may be applied to data based on the received payload signal, for example in a combined function with (or in a sequence with) one or more other functions such as any one or more of windowing, decoding, filtering.
Blocks 1530-1550 of
Although in some examples disclosed herein the downconverted digital frequency domain data is provided either by decimating data or selectively shifting data to a smaller array, it will be understood that, in other examples, the downconverted digital frequency domain data may be stored in an array of digital frequency domain data comprising the downconverted digital frequency domain data (for conversion into the time domain) and other digital frequency domain data (such as zero valued digital frequency domain data). For example, the downconverted digital frequency domain data may be provided in an array of the same size as the array storing the first digital frequency domain data. The downconverted digital frequency domain data may be identified, for example, by any one or more of its position in the array, its frequency values and the configuration (e.g., of the iFFT operations) of which data from the array is to be selected for conversion to the time domain (e.g., the downconverted digital frequency domain data may be stored in the locations of the array which the iFFT operations are configured to select for conversion to the time domain).
The apparatus 700 may be to selectively obtain (or the methods of
In the examples discussed herein, the (e.g., processing circuitry of) apparatus 700 may be to selectively convert (and the methods of
Although the above discussion is in the context of downhole communications, it will be understood that the techniques described herein are also applicable to other contexts, for example contexts which require frequency modulated signals to be downconverted and processed, for example in dependence on one or more other signals or functions.
The disclosure also extends to the following examples.
The functionality of the processing circuitry described herein may be implemented in software, hardware or firmware or a combination of any of software, hardware and firmware. For example, the processing circuitry may be configured to retrieve and execute computer program instructions stored in memory to thereby provide its functionality described herein. The memory may comprise any suitable memory such as cache memory, random access memory (RAM), read only memory (ROM), flash memory, magnetic or optical disk or any combination thereof.
Throughout the description and claims of this specification, the words “comprise” and “contain” and variations of them mean “including but not limited to”, and they are not intended to (and do not) exclude other components, integers or operations. Throughout the description and claims of this specification, the singular encompasses the plural unless the context demands otherwise. In particular, where the indefinite article is used, the specification is to be understood as contemplating plurality as well as singularity, unless the context demands otherwise. All of the features disclosed in this specification (including any accompanying claims, abstract and drawings), and all of the elements of any method or process so disclosed, may be combined in any combination, except combinations where at least some of such features and/or operations are mutually exclusive. Implementations are not restricted to the details of any foregoing examples.
Number | Date | Country | Kind |
---|---|---|---|
2019870.1 | Dec 2020 | GB | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/GB2021/053263 | 12/13/2021 | WO |