The disclosure generally relates to the field of digital filters for interpolation or decimation.
Digital filters or multi-rate digital filters are used in digital communication, telecommunications, speech processing, image compression, antenna/radar systems, spectrum analysis, control systems such as traction control systems, etc.
Interpolation filters or interpolators increase the sampling rate of an input digital signal, and are usually implemented using polyphase filter banks. On the other hand, decimations filters or decimators decrease the sampling rate of an input digital signal.
Multi-rate change in data-conversion for achieving different throughputs while maintaining performance is a challenge. For example, polyphase interpolation filters are bulky and complex to design for programmable interpolation factors. Area, power overhead may be high for polyphase interpolation filters.
In an embodiment, a device includes an input, which, in operation, receives an input signal, a phase delay element coupled to the input, which, in operation, generates a delayed signal based on the input signal, vector magnitude scaling circuitry coupled to the phase delay element, which, in operation, applies vector magnitude scaling to the delayed signal, generating one or more vector magnitude scaled signals. Adding circuitry coupled to the input and to the vector magnitude scaling circuitry, in operation, adds the input signal to the one or more vector magnitude scaled signals, generating one or more phase-shifted signals. Magnitude compensation scaling circuitry coupled to the adding circuitry applies compensation scaling to the one or more phase-shifted signals, generating one or more compensated signals. The device includes multiplexing circuitry coupled to the input and to the magnitude compensation circuitry, which, in operation, combines the input signal and the one or more compensated signals, generating an interpolated output signal.
In an embodiment, a method generates a delayed signal based on an input signal, and applies vector magnitude scaling to the delayed signal, generating one or more vector magnitude scaled signals. The input signal is added to the one or more vector magnitude scaled signals, generating one or more phase-shifted signals. Compensation scaling is applied to the one or more phase-shifted signals, generating one or more compensated signals. The input signal and the one or more compensated signals are combined, generating an interpolated output signal.
In an embodiment, a system includes a memory and interpolation circuitry coupled to the memory. The interpolation circuitry includes an input, which, in operation, receives an input signal, and a phase delay element coupled to the input, the phase delay element, in operation, generates a delayed signal based on the input signal. Vector magnitude scaling circuitry coupled to the phase delay element, in operation, applies vector magnitude scaling to the delayed signal, generating one or more vector magnitude scaled signals. Adding circuitry coupled to the input and to the vector magnitude scaling circuitry, in operation, adds the input signal to the one or more vector magnitude scaled signals, generating one or more phase-shifted signals. Magnitude compensation scaling circuitry coupled to the adding circuitry, in operation, applies compensation scaling to the one or more phase-shifted signals, generating one or more compensated signals. Multiplexing circuitry coupled to the input and to the magnitude compensation circuitry, in operation, combines the input signal and the one or more compensated signals, generating an interpolated output signal.
In an embodiment, a non-transitory computer readable medium's contents cause interpolation circuitry to perform a method. The method includes generating a delayed signal based on an input signal, applying vector magnitude scaling to the delayed signal, generating one or more vector magnitude scaled signals, adding the input signal to the one or more vector magnitude scaled signals, generating one or more phase-shifted signals, applying compensation scaling to the one or more phase-shifted signals, generating one or more compensated signals, and combining the input signal and the one or more compensated signals, generating an interpolated output signal.
Non-limiting and non-exhaustive embodiments are described with reference to the following drawings, wherein like labels refer to like parts throughout the various views unless the context indicates otherwise. The sizes and relative positions of elements in the drawings are not necessarily drawn to scale. For example, the shapes of various elements are selected, enlarged, and positioned to improve drawing legibility. The particular shapes of the elements as drawn have been selected for ease of recognition in the drawings. Moreover, some elements known to those of skill in the art have not been illustrated in the drawings for ease of illustration. One or more embodiments are described hereinafter with reference to the accompanying drawings in which:
The following description, along with the accompanying drawings, sets forth certain specific details in order to provide a thorough understanding of various disclosed embodiments. However, one skilled in the relevant art will recognize that the disclosed embodiments may be practiced in various combinations, without one or more of these specific details, or with other methods, components, devices, materials, etc. In other instances, well-known structures or components that are associated with the environment of the present disclosure, including but not limited to interfaces, power supplies, physical component layout, etc., have not been shown or described in order to avoid unnecessarily obscuring descriptions of the embodiments. Additionally, the various embodiments may be methods, systems, or devices.
Throughout the specification, claims, and drawings, the following terms take the following meanings, unless the context indicates otherwise. The term “herein” refers to the specification, claims, and drawings associated with the current application. The phrases “in one embodiment,” “in another embodiment,” “in various embodiments,” “in some embodiments,” “in other embodiments,” and other variations thereof refer to one or more features, structures, functions, limitations, or characteristics of the present disclosure, and are not limited to the same or different embodiments unless the context indicates otherwise. As used herein, the term “or” is an inclusive “or” operator, and is equivalent to the phrases “A or B, or both” or “A or B or C, or any combination thereof,” and lists with additional elements are similarly treated. The term “based on” is not exclusive and allows for being based on additional features, functions, aspects, or limitations not described, unless the context indicates otherwise. In addition, throughout the specification, the meaning of “a,” “an,” and “the” include singular and plural references.
The input line 102 receives an input signal X, which may be conceptually represented as:
where, n represents a time stamp, N represents a number of samples, and k/N represents a digital sampling frequency.
The phase delay element 110 represented by z−1 (also referred to as a phase delay circuit 110) is coupled between the input line 102 and the one or more interpolation branches 104a to 104p, and generates a delayed version X(n−1) of the input signal X (which may be referred to as a delayed signal).
The interpolation branches 104 of the interpolation architecture 100 as illustrated include vector magnitude scaling circuitry 112, including vector magnitude scaling branches 112a to 112p as illustrated, adding circuitry 114, including adding branches 114a to 114p as illustrated, and magnitude compensation scaling circuitry 116, including magnitude compensation branches 116a to 116p as illustrated.
The vector magnitude scaling circuitry 112 performs vector magnitude scaling on the phase delayed signal X(n−1). For example, each branch 112a to 112p of the vector magnitude scaling circuitry 112 applies a respective vector magnitude scaling factor Ki (where i=1 to p as illustrated), to the phase delayed signal X(n−1), generating a vector magnitude scaled signal for the branch 104i that may be represented as KiX(n−1).
For example, in an embodiment Ki may be determined according to:
where β represents the digital angular frequency.
The adding circuitry 114 is coupled to the input line 102 and to the vector magnitude scaling circuitry 112. For example, each branch 114i (where i=1 to p as illustrated) of the adding circuitry 114 adds the input signal X received on the input line 102 to a vector magnitude scaled signal KiX(n−1) generated by the corresponding vector magnitude scaling branch 112i, generating a phase-shifted signal for the branch 104i of the interpolation circuitry 104, which may be represented as X(n)+K1X(n−1).
A sinusoid can be expressed as a linear combination of a sine and a cosine. Conversely, a linear combination of two or more sinusoids can be expressed as a linear combination of a sine and a cosine, hence can be expressed as a single sinusoid. It can be shown that the vector summation of two sinusoidal functions f(t) and g(t) with the same frequency ω but with phase difference φ and amplitudes A and B respectively will result in another sine wave h(t) with the same frequency co but different amplitude C and phase ψ. This may be represented as:
f(t)=A sin(ωt)
g(t)=B sin(ωt+φ)
h(t)=C sin(ωt+ψ)
C=B sin(φ)/sin(ψ)
ψ=tan−1(B sin(φ)/(A+B cos(φ)))
As shown in
For example, in an embodiment, the scaling factor Bi may be determined according to:
Scaling factor Bi is a filter/gain of the magnitude compensation scaling circuitry 116 that seeks to flatten the magnitude of frequency response so that the interpolated outputs are not scaled relative to the input and each other by the vector magnitude scaling circuitry 112 and the adding circuitry 114. The output from the adding circuitry 114 is an interpolated signal, but its magnitude (or amplitude) is different for different input frequencies. The magnitude compensation scaling circuitry 116 applies an inverse magnitude transfer function to compensate for the magnitude differences introduced by the phase-shifting.
The multiplexing circuitry 130 is coupled to the input line 102 and to the magnitude compensation scaling circuitry 116. The multiplexing circuitry 130, in operation, combines the input signal and the one or more compensated signals (e.g., Y1, Y2, . . . Yp) to generate an interpolated output signal 132. The multiplexing circuitry may be configured, for example, to generate an interpolated output signal 132 by time multiplexing the signal on the input line 102 and one or more of the compensated signals Yi generated by the magnitude compensation scaling circuitry, to select one or more of the input signal 102 and the one or more of the compensated signals Yi to provide at a particular time instant, etc. The multiplexing circuitry 130 may have one or more control signal inputs, a state machine, etc., to control how the signals received by the multiplexing circuitry 130 are combined to generate the output signal 132.
In an embodiment, the interpolation circuitry 104 may have a fixed number of branches 104i, and the number of branches to employ to perform a particular interpolation operation being based on the number of samples N to be provided in the output 132. If N is fixed in a particular application (e.g., the interpolation to be applied is always interpolation by 3), the number of branches may be fixed accordingly (e.g., two branches when the interpolation is fixed at 3).
As noted above, the output Yi of a branch 104i may be represented as:
Y
i
=B
i·(X(n)+KiX(n−1)).
Yi may be determined according to input signal X(n) as follows:
Here, β represents the angular frequency (β=2πfd), where fd is the digital frequency and is defined as fd=fi/fs, where fi represents the analog signal frequency and fs represents the sampling frequency.
Yi also may be represented as follows:
The output signal magnitude is represented as Bi·(√{square root over (1+Ki2+2Ki cos(β))} and its phase is represented as tan−1
The signal X(n) and the signals Yi may be time multiplexed by the multiplexer circuitry 130 to produce the interpolated output signal 132, which may be represented as ((X(n), Ya, Yb, . . . Yp)). The example interpolation architecture 100 of
With respect to computing the scaling elements, such as the vector magnitude scaling factor Ki and the magnitude compensation scaling factor Bi, examples will be provided below for interpolation by 2 and interpolation by 3. A person of ordinary skill in the art would readily understand how to compute the scaling elements based on the example formula provided. The specific formula for deriving each scaling elements may differ for each filter design.
As noted above, Ki can be determined based on the following relationship:
Based on the representation of Yi set forth above, the vector magnitude scaling factor K1 in an example case of interpolation by 2 may be determined according to:
The gain of the compensated signal generated by the magnitude compensation scaling circuitry 316 may be represented as:
B
1·(√{square root over (1+K12+2K1 cos(⊕))})=1.
Solving for B1 when K1 is 1 leads to:
Thus, the interpolation by 2 of system 300 of
It is noted that for an interpolate by 2 system, vector magnitude scaling is not required. This can shown to be is true for interpolation factors in powers of 2. A cascading low-pass filter architecture may be employed to implement interpolation factors in powers of 2.
Similarly, when interpolated by 3 (p=2 and N=3), Ki may be determined according to:
When p=1 and N=3, K1 is determined as:
When p=2 and N=3, K2 is determined as:
Bi may be determined according to:
Based on the K1 and K2 values above, B1 and B2 may be determined as follows.
Other interpolation factors may be employed in various embodiments, including fractional interpolations (see, e.g.,
The process 400 begins at 410, where an input signal X (or X(n)) to be interpolated is received. With reference to the interpolation architecture of
Process 400 proceeds from 410 to 420, where the input signal X is delayed, for example using phase delay circuit 110 of
Process 400 proceeds from 420 to 430, where vector magnitude scaling is applied to the phase delayed signal, generating a vector magnitude scaled signal. With reference to
Process 400 proceeds from 430 to 440, where the vector magnitude scaled signal KiX(n−1) is added to the input signal X(n−1), generating a phase-shifted signal. With reference to
Process 400 proceeds from 440 to 450, where the magnitude scaling compensation is performed on the phase-shifted signal, generating a compensated signal. For example, the phase-shifted signal may be normalized with respect to the input signal. With reference to
Process 400 proceeds from 450 to 460, where it is determined whether additional compensated signals are needed to generate an interpolated signal according to the interpolation number N. When it is determined that more compensated signals are needed, the process 400 returns from 460 to 430 to generate another compensated signal in acts 430 to 450. In an embodiment, a control variable i may be incremented. When it is not determined that additional compensated signals are needed to generate the interpolated signal, the process proceeds from 460 to 470.
At 470, the compensated (or normalized) signals and the input signal are combined. With reference to
Embodiments of the foregoing processes and methods may contain additional acts not shown in
Conventionally, fractional interpolation involves up-sampling a signal (e.g., inserting 5 zeroes), applying a low pass filter, and down-sampling (e.g., decimation by 6). This approach requires at least two steps.
Referring back to
As shown in
Instead of using a plurality of interpolation branches 604, a single interpolation branch may be employed, together with coefficient selection circuitry (see
The inventors have realized that for fractional interpolation, the interpolation circuitry 604 may be replaced with simplified interpolation circuitry 604′ including, for example, 5 branches, as shown in
Each phase in this example fractional interpolation case, Phasei, may be represented as follows:
where i represents the desired phase-shift to obtain the fractional interpolation.
Based on Phase which is indicative of the desire phase information, 5 different Ki and Bi can be obtained based on the formula described herein.
When interpolating by 6/5, then p=[1,5] and N=6. Kc may be determined according to:
Bi may be determined according to:
That is, according to one embodiment of the present disclosure, fractional interpolation of n/m (where n is greater than m) may be obtained. Below provides the summary formula for obtaining the Ki and Bi scaling factors when fractional interpolation by 6/5.
The system 700 includes one or more memories 704, such as one or more volatile and/or non-volatile memories which may store, for example, all or part of instructions and data related to control of the system 700, applications and operations performed by the system 700, etc. The system 700 may include one or more sensors 720 (e.g., image sensors, audio sensors, accelerometers, pressure sensors, temperature sensors, encoders, etc.), one or more interfaces 730 (e.g., wireless communication interfaces, wired communication interfaces, bus system interfaces, etc.), one or more controllers 740, such as one or more traction inverters 750, and other circuits 760, which may include antennas, power supplies, etc., and a main bus system 770. The main bus system 770 may include one or more data, address, power and/or control buses coupled to the various components of the system 700.
The system 700 also includes one or more interpolators 780, such as one or more of the interpolators 100, 300, 300′, 600, 600′, 850, 904, illustrated in
Embodiments may facilitate providing significant improvements in area and computational costs and delay. For example, a polyphase 63-tap half-band filter conventional fractional interpolator implementation would require 32 registers, along with 32 multiplications and 32 additions and a corresponding delay. A 15 tap FIR filter implementation of an embodiment may provide satisfactory results using 15 registers with 15 multiplications and 15 additions, with significantly less system delay.
In an embodiment, a device comprises: an input, which, in operation, receives an input signal; a phase delay element coupled to the input, wherein the phase delay element, in operation, generates a delayed signal based on the input signal; vector magnitude scaling circuitry coupled to the phase delay element, wherein the vector magnitude scaling circuitry, in operation, applies vector magnitude scaling to the delayed signal, generating one or more vector magnitude scaled signals; adding circuitry coupled to the input and to the vector magnitude scaling circuitry, wherein the adding circuitry, in operation, adds the input signal to the one or more vector magnitude scaled signals, generating one or more phase-shifted signals; magnitude compensation scaling circuitry coupled to the adding circuitry, wherein the magnitude compensation circuitry, in operation, applies compensation scaling to the one or more phase-shifted signals, generating one or more compensated signals; and multiplexing circuitry coupled to the input and to the magnitude compensation circuitry, wherein the multiplexing circuitry, in operation, combines the input signal and the one or more compensated signals, generating an interpolated output signal.
In an embodiment, the device comprises a plurality of interpolation branches, each interpolation branch being coupled between the phase delay element and the multiplexing circuitry and including: a branch of the vector magnitude scaling circuitry, which, in operation, applies a respective vector magnitude scaling operation to the delayed signal, generating a respective one of the one or more vector magnitude scaled signals; a branch of the adding circuitry, coupled to the branch of the vector magnitude scaling circuitry and to the input, wherein the branch of the adding circuitry, in operation, adds the input signal to the respective one of the one or more vector magnitude scaled signals, generating a respective one of the one or more phase-shifted signals; and a branch of the magnitude compensation circuitry, coupled to the branch of the adding circuitry, wherein the branch of the magnitude compensation circuitry applies a respective compensation scaling operation to the respective one of the one or more phase-shifted signals, generating a respective one of the one or more compensated signals. In an embodiment, the respective vector magnitude scaling operation of a branch comprises applying a vector magnitude scaling factor Ki for a branch i of the plurality of interpolation branches. In an embodiment, Ki is determined according to:
wherein N represents a number of samples, and β represents a digital angular frequency.
In an embodiment, the respective compensation scaling operation of a branch comprises applying a compensation scaling factor Bi for the branch i of the plurality of interpolation branches. In an embodiment, Bi is determined according to:
In an embodiment, a compensated signal Yi of the branch corresponds to
Y
i
=B
i(X(n)+KiX(n−1); and
the input signal X(n) corresponds to
wherein n is a time stamp, and k/N is a digital frequency.
In an embodiment, the branch of the vector magnitude scaling circuitry includes a finite impulse response filter. In an embodiment, the branch of the magnitude compensation scaling circuitry includes a finite impulse response filter. In an embodiment, the vector magnitude scaling circuitry includes a finite impulse response filter. In an embodiment, the magnitude compensation scaling circuitry includes a finite impulse response filter, and the interpolation circuitry, in operation, generates a fractional interpolation output signal.
In an embodiment, a method comprises: generating a delayed signal based on an input signal; applying vector magnitude scaling to the delayed signal, generating one or more vector magnitude scaled signals; adding the input signal to the one or more vector magnitude scaled signals, generating one or more phase-shifted signals; applying compensation scaling to the one or more phase-shifted signals, generating one or more compensated signals; and combining the input signal and the one or more compensated signals, generating an interpolated output signal. In an embodiment, the applying vector magnitude scaling comprises applying a plurality of vector magnitude scaling factors to the delayed signal, generating a corresponding plurality of vector magnitude scaled signals; the adding the input signal to the one or more vector magnitude scaled signals comprises adding the input signal to each of the plurality of vector magnitude scaled signals, generating a corresponding plurality of phase-shifted signals; the applying compensation scaling to the one or more phase-shifted signals comprising applying a respective compensation scaling factor to the plurality of phase-shifted signals, generating a plurality of compensated signals; and the combining the input signal and the one or more compensated signals comprises time multiplexing the input signal and the plurality of compensated signals, generating the interpolated output signal. In an embodiment, a vector magnitude scaling factor K of the plurality of vector magnitude scaling factors is determined according to:
wherein N represents a number of samples, i is an order of the vector magnitude scaling factor in the plurality of vector magnitude scaling factors and β represents a digital angular frequency.
In an embodiment, a compensation scaling factor Bi of the plurality of compensation scaling factors is determined according to:
In an embodiment, a compensated signal Yi of the plurality of compensated signals corresponds to Yi=Bi(X(n)+KiX(n−1); and the input signal X(n) corresponds to
wherein n is a time stamp, and k/N is a digital frequency.
In an embodiment, a system comprises a memory, and interpolation circuitry coupled to the memory and multiplexing circuitry. The interpolation circuitry includes: an input, which, in operation, receives an input signal; a phase delay element coupled to the input, wherein the phase delay element, in operation, generates a delayed signal based on the input signal; vector magnitude scaling circuitry coupled to the phase delay element, wherein the vector magnitude scaling circuitry, in operation, applies vector magnitude scaling to the delayed signal, generating one or more vector magnitude scaled signals; adding circuitry coupled to the input and to the vector magnitude scaling circuitry, wherein the adding circuitry, in operation, adds the input signal to the one or more vector magnitude scaled signals, generating one or more phase-shifted signals; magnitude compensation scaling circuitry coupled to the adding circuitry, wherein the magnitude compensation circuitry applies compensation scaling to the one or more phase-shifted signals, generating one or more compensated signals; and multiplexing circuitry coupled to the input and to the magnitude compensation circuitry. The multiplexing circuitry, in operation, combines the input signal and the one or more compensated signals, generating an interpolated output signal.
In an embodiment, the interpolation circuitry comprises a plurality of interpolation branches, each interpolation branch being coupled between the phase delay element and the multiplexing circuitry and including: a branch of the vector magnitude scaling circuitry, which, in operation, applies a respective vector magnitude scaling operation to the delayed signal, generating a respective one of the one or more vector magnitude scaled signals; a branch of the adding circuitry, coupled to the branch of the vector magnitude scaling circuitry and to the input, wherein the branch of the adding circuitry, in operation, adds the input signal to the respective one of the one or more vector magnitude scaled signals, generating a respective one of the one or more phase-shifted signals; and a branch of the magnitude compensation circuitry, coupled to the branch of the adding circuitry, wherein the branch of the magnitude compensation circuitry applies a respective compensation scaling operation to the respective one of the one or more phase-shifted signals, generating a respective one of the one or more compensated signals. In an embodiment, the interpolation circuitry, in operation, determines a number of the one or more compensated signals to combine with the input signal based on an interpolation mode control signal. In an embodiment, the system comprises: a resolver coupled to the input, wherein the resolver, in operation, senses rotational angles associated with a traction motor, and generates the input signal based on the sensed rotational angles; and a traction inverter coupled to the multiplexing circuitry, wherein the traction inverter, in operation, generates signals to control a traction motor based on the interpolated signal.
In an embodiment, a non-transitory computer readable medium's contents cause interpolation circuitry to perform a method. The method comprises: generating a delayed signal based on an input signal; applying vector magnitude scaling to the delayed signal, generating one or more vector magnitude scaled signals; adding the input signal to the one or more vector magnitude scaled signals, generating one or more phase-shifted signals; applying compensation scaling to the one or more phase-shifted signals, generating one or more compensated signals; and combining the input signal and the one or more compensated signals, generating an interpolated output signal. In an embodiment, the method comprises controlling a traction motor based on the interpolated output signal. In an embodiment, the contents comprise instructions executed by the interpolation circuitry.
In an embodiment, a device comprises: an input, which in operation receives an input signal; a delay element coupled to the input, which, in operation, generates a delayed signal based on the input signal; an adder, coupled to the input and to the delay element, wherein the adder, in operation, adds the delayed signal and the input signal, generating a combined signal; a finite impulse response filter coupled to the adder, wherein the finite impulse response filter, in operation, generates a phase-shifted and scaled signal based on the combined signal; and multiplexing circuitry coupled to the input and the finite impulse response filter, wherein the multiplexing circuitry, in operation, time multiplexes the input signal and the phase-shifted and scaled signal, generating an interpolated output signal.
In an embodiment, a device comprises: an input, which in operation receives an input signal; a delay element coupled to the input, which, in operation, generates a delayed signal based on the input signal; one or more finite impulse response filters coupled to the delay element, wherein the finite impulse response filters, in operation, generate respective phase-shifted and scaled signals based on the delayed signal and respective filter coefficients; and signal combining circuitry coupled to the input and the finite impulse response filter, wherein the signal combining circuitry, in operation, combines the input signal and the phase-shifted and scaled signals, generating a fractional interpolation output signal. In an embodiment, the device comprises: coefficient selection circuitry coupled to the one or more finite impulse response filters, wherein the coefficient selection circuitry, in operation, provides the respective filter coefficients to the finite impulse response filters.
In an embodiment, a device comprises: an input, which, in operation, receives an input signal; a phase delay element coupled to the input, wherein the phase delay element, in operation, generates a delayed signal based on the input signal; phase-shifting circuitry coupled to the input and to the delay element, wherein the phase-shifting circuitry, in operation, generates one or more phase-shifted signals based on the input signal and the delayed signal; magnitude compensation scaling circuitry coupled to the phase-shifting circuitry, wherein the magnitude compensation circuitry, in operation, applies compensation scaling to the one or more phase-shifted signals; and signal combining circuitry coupled to the input and to the magnitude compensation circuitry, wherein the signal combining circuitry, in operation, combines the input signal and the one or more compensated signals, generating an interpolated output signal. In an embodiment, the device comprises: vector magnitude scaling circuitry coupled between the phase delay element and the phase-shifting circuitry, wherein the vector magnitude scaling circuitry, in operation, applies vector magnitude scaling to the delayed signal, generating one or more vector magnitude scaled signals, wherein the phase-shifting circuitry, in operation, adds the input signal to the one or more vector magnitude scaled signals, generating the one or more phase-shifted signals, wherein the magnitude compensation circuitry, in operation, applies compensation scaling to the one or more phase-shifted signals, generating one or more compensated signals. In an embodiment, the device comprises a plurality of interpolation branches, each interpolation branch being coupled between the phase delay element and the multiplexing circuitry and including: a branch of the vector magnitude scaling circuitry, which, in operation, applies a respective vector magnitude scaling operation to the delayed signal, generating a respective one of the one or more vector magnitude scaled signals; a branch of the phase-shifting circuitry, coupled to the branch of the vector magnitude scaling circuitry and to the input, wherein the branch of the phase-shifting circuitry, in operation, adds the input signal to the respective one of the one or more vector magnitude scaled signals, generating a respective one of the one or more phase-shifted signals; and a branch of the magnitude compensation circuitry, coupled to the branch of the adding circuitry, wherein the branch of the magnitude compensation circuitry applies a respective compensation scaling operation to the respective one of the one or more phase-shifted signals, generating a respective one of the one or more compensated signals.
In an embodiment, a device comprises: an input, which, in operation, receives an input signal; interpolation circuitry, coupled to the input, wherein the interpolation circuitry, in operation: generates a delayed signal based on the input signal; generates one or more phase-shifted signals based on the delayed signal and the input signal; applies magnitude compensation scaling to the one or more phase-shifted signals, generating corresponding magnitude compensated signals; and combines the input signal with the one or more magnitude compensated signals, generating an interpolated signal. In an embodiment, the interpolation circuitry, in operation, generates the one or more phase-shifted signals by: applying magnitude scaling to the delayed signal, generating one or more magnitude scaled signals; and adding the input signal to the one or more magnitude scaled signals, generating the one or more phase-shifted signals.
Some embodiments may take the form of or comprise computer program products. For example, according to one embodiment there is provided a computer readable medium comprising a computer program adapted to perform one or more of the methods or functions described above. The medium may be a physical storage medium, such as for example a Read Only Memory (ROM) chip, or a disk such as a Digital Versatile Disk (DVD-ROM), Compact Disk (CD-ROM), a hard disk, a memory, a network, or a portable media article to be read by an appropriate drive or via an appropriate connection, including as encoded in one or more barcodes or other related codes stored on one or more such computer-readable mediums and being readable by an appropriate reader device.
Furthermore, in some embodiments, some or all of the methods and/or functionality may be implemented or provided in other manners, such as at least partially in firmware and/or hardware, including, but not limited to, one or more application-specific integrated circuits (ASICs), digital signal processors, discrete circuitry, logic gates, standard integrated circuits, controllers (e.g., by executing appropriate instructions, and including microcontrollers and/or embedded controllers), field-programmable gate arrays (FPGAs), complex programmable logic devices (CPLDs), etc., as well as devices that employ RFID technology, and various combinations thereof.
The various embodiments described above can be combined to provide further embodiments.
These and other changes can be made to the embodiments in light of the above-detailed description. In general, in the following claims, the terms used should not be construed to limit the claims to the specific embodiments disclosed in the specification and the claims, but should be construed to include all possible embodiments along with the full scope of equivalents to which such claims are entitled. Accordingly, the claims are not limited by the disclosure.
Number | Date | Country | |
---|---|---|---|
63321954 | Mar 2022 | US |