The preferred embodiments of this invention relate generally to radio frequency (RF) transmitter circuitry and, more specifically, relate to finite impulse response (FIR) filters that form a part of an RF transmitter.
In the majority of wireless communication systems the pulse shape filtering of the data stream is performed prior to the signal being frequency translated, amplified and transmitted. Depending on the type of wireless system, the design criteria for the pulse shape filter can vary from bandwidth containment to bandwidth expansion (in the case of Nyquist pulses) in order to minimize inter-symbol interference (ISI). Regardless of the design criteria, filtering is required as part of the overall transmitter design.
It is typically desirable to provide pulse shape filters that are linear and, as a result, linear transversal filters (FIR filters) are widely used. However, a drawback of FIR filter structures as opposed to infinite impulse response (IIR) structures is that the FIR filters require many more taps to attain the same desired frequency response. Additionally, since the filter dictates the bandwidth and response of the overall signal, the numerical accuracy of the filtering process is critical. Conventional FIR filters typically use multipliers and adders with reasonably large bit-widths. When considering complex modulated waveforms, where two filters are needed (one for the in-phase and one for the quadrature-phase), the total filtering operation can require a significant amount of silicon size and therefore cost. Traditionally, the FIR filter is implemented using multipliers and adders with bit-widths dictated by the acceptable distortion allowed in the filters output signal.
Additionally, with the inclusion of high order modulated (HOM) waveforms (e.g., eight level Phase Shift Keying (8-PSK) and 16 level Quadrature Amplitude Modulation (16-QAM) waveforms), even larger bit-widths are required in order for the internal operations of the FIR filter to represent the additional dynamics in the modulated signal.
The foregoing and other problems are overcome, and other advantages are realized, in accordance with the presently preferred embodiments of this invention.
A linear filter is disclosed to include an input node to receive an X-bit digital representation of a signal to be filtered; an output node to output a B-bit digital representation of a filtered output signal; an N-bit delay line having an input coupled to the input node and N outputs; and a lookup table stored in a storage device having N address inputs coupled to the N outputs of the delay line and B output bits coupled to the output node. The lookup table represents a mapping between individual ones of the X-bit digital representations of the input signal and a corresponding linearly filtered output signal.
A method is also disclosed to filter a signal. The method includes receiving an X-bit digital representation of a signal to be filtered and outputting a B-bit digital representation of a filtered output signal. Outputting includes operating an N-bit delay line having an input coupled to the received X-bit digital representation of the signal to be filtered; and addressing a lookup table stored in a storage device with outputs of the delay line. The lookup table represents a mapping between individual ones of the X-bit digital representations of the input signal and a corresponding linearly filtered output signal.
Also disclosed is a mobile station having a wireless communications interface that includes a transceiver. The transceiver includes at least one FIR filter having an input node to receive an X-bit digital representation of a signal to be filtered; an output node to output a B-bit digital representation of a filtered output signal; an N-bit delay line having an input coupled to the input node and N outputs; and a lookup table stored in a storage device having N address inputs coupled to the N outputs of the delay line and B output bits coupled to the output node. The lookup table represents the mapping between individual ones of the X-bit digital representations of the input signal and the corresponding linearly filtered output signal. In non-limiting and exemplary embodiments the X-bit digital representation of the signal to be filtered is generated by a signal modulator that can be comprised, at any given time, of one of an 8-PSK modulator and a 16-QAM modulator.
The foregoing and other aspects of these teachings are made more evident in the following Detailed Description of the Preferred Embodiments, when read in conjunction with the attached Drawing Figures, wherein:
The presently preferred embodiments of this invention employ a lookup table approach to construct a filtered output signal, as opposed to using the conventional FIR filter structure.
In a first aspect thereof the preferred embodiments of this invention employ a Read Only Memory (ROM), or equivalent, lookup table for signal filtering, where the ROM-based lookup table is developed for binary (2-level) input signals and then expanded for higher-level input signals.
It should be noted that the ROM-based embodiment can be replaced by, as one non-limiting example, a RAM-based embodiment, where for a case where a volatile RAM is employed the lookup table contents can be simply re-written by a local controller each time the RAM is powered on after being powered off. As such, all references herein to a “ROM-based” filter or “ROM filter” or “ROM FIR filter” embodiment should not be construed as being limited to being implemented using a read-only memory type of device per se, but should instead be read in the broader context of a lookup table that is readably stored in some type of addressable memory component, including semiconductor-based memory components and non-semiconductor-based memory components including, but not limited to, rotating disk and other types of memory devices and components.
In a second aspect thereof the preferred embodiments of this invention reduce the ROM size of the first aspect by partitioning the filter into segments.
In a third aspect thereof the preferred embodiments of this invention couple a RF modulator with other ROM-based filter embodiments to further reduce complexity.
It should be pointed out that the first aspect of this invention could be used without the use of the second aspect and/or without the use of the third aspect. Thus, while the presently preferred embodiments of this invention employ all three aspects of this invention, this should not be construed as a necessity or as a limitation upon the practice of this invention.
ROM-Based Filter for Binary and Multi-Level Input Signals
Binary Input ROM Filter
The general form of a FIR filter is expressed as:
where x is the input signal to be filtered, y is the filtered output signal and w the FIR filter coefficients. Also, x is a binary antipodal signal x ε{1, −1}. Furthermore, it should be noted that pulse shape filtering involves interpolation for rate conversion to a higher sampling rate of the information stream.
It should be noted that while the presently preferred embodiments of this invention can be generalized to filters that are not used for pulse shape filtering, the concepts of this invention are developed below under that (non-limiting) assumption. In this case, and if one assumes that the interpolation factor is L, then x is constructed from the information sequence, b, to be filtered as:
Stated differently, x is formed from the original sequence b, with L−1 zeros inserted between each element of b. Next, if it is assumed that b is a two level antipodal signal then Equation (1) can be written as:
Thus, for the case of binary signaling the filtering reduces to the summation or subtraction of the filter taps where the corresponding input value is 1 or −1, respectively. Therefore, the inventors have realized that a lookup table can be created with all possible binary input combinations to address the corresponding filter output in order to implement the filtering operation.
This is shown in
For illustrative purposes the following filter example is provided:
w=[w0, w1]
x=[1, −1, −1, 1, 1]
y(1)=w1−w0
y(2)=−w1−w0
y(3)=−w1+w0
y(4)=w1+w0
To generate the lookup table 14 one may make the following convenient mapping of x:
1→0 and −1→1 then x=[01100].
If the lookup table 14 is created based on the binary value of the two bits being filtered, it may be accomplished as follows:
where the address is generated using the two input bits that reside within the two tap filter for that filter output.
In general, the embodiments discussed above would require 2N ROM (or RAM) locations for implementing an FIR filter with binary input values.
It can be noted that the symmetry of the lookup table 14 may be exploited to halve the ROM depth, and by adding an additional 2's complement block to achieve the same result. In the example above it can be seen that table index 3: (−w1−w0) actually contains the 2's complement of table index 0: (w1 w0). Similarly, table index 2 contains the 2's complement of table index 1. The technique of adding the 2's complement block may be used when the gate count of ROMSIZE/2 is greater then the gate count of the 2's complement block that would replace half of the ROM 14.
It should be noted that the foregoing embodiment of the invention shown in
Clearly it quickly becomes more practical to implement the filter 10 using true multipliers and adders for input signals larger than two levels.
Multi-Level Input ROM Filter
The multi-level ROM filter in accordance with embodiments of this invention exploits the general FIR equation given in (1). For the development that follows consider a four level input case, M=4. It will be clear in the ensuing discussion that extensions to higher level input cases are straightforward.
Since a FIR filter is a linear filter that comprises linear combinations of the input and corresponding filter coefficients, it is convenient to rewrite Equation (1) as:
where the following assignments to separate the different amplitudes of the input signal are employed:
To further simplify, Equation (5) can be written as:
where now the new input sequences are ±1 or 0:
This architecture is illustrated in
In
In
The construction of this embodiment can be further reduced by exploiting the fact that the zero values can be generated using +½, and −½ in two new branches, so that the sum for that weight is zero. This would involve using two additional accesses to the ROM 38 for each branch and scaling the coefficients in Equation (5). This is shown in
In the N-tap 4-Level FIR filter as 4*2-Level FIR filter embodiment 50 of
The lookup tables used for each of the lookup tables in accordance with Equation (7) are identical, and one lookup table can therefore be shared. This would then further reduce the hardware requirement from a 4N ROM lookup table to a single 2N lookup table, with the added requirement of three adders, four multipliers and logic to generate the sequences in Equation (10).
In general, for a M level input signal, this approach uses M/2 ROM accesses, M multipliers, M/2 adders and some additional logic for implementing the control function.
ROM-Based Filter Implementation with Filter Segmentation for Reducing ROM Size.
While the above-described non-limiting embodiments of this invention provide a significant reduction in gate count over true FIR filter implementation for small filter sizes and input bit widths, the gate count and cost can increase rapidly for larger filters. Therefore, in further embodiments of this invention the size of the lookup table, and consequently the size of the ROM or other memory storage device, is reduced over that described above. This is accomplished at least in part by partitioning the filter into multiple, preferably equally sized segments.
Revisiting and rewriting Equation (1), and for simplicity of notation, consider only the binary input case (which can be readily extended to multi-level cases), as:
Doing so creates a reduction in the ROM size from 2N into two new ROM tables of 2N/2, with the addition of a single adder. Clearly this can be generalized to the limiting case of:
y(k)=x(k)w(0)+x(k−1)w(1)+ . . . +x(k−N−1)w(N−1), (12)
where now N separate ROM tables of size 2 are used in addition to another N−1 adders. This is easily extended to the multilevel embodiments derived previously.
This segmentation flexibility facilitates a minimization problem that can be solved in order to determine the best choice in number of segments, in terms of minimizing the implementation gate count. The expression is provided below where S is the additional cost associated with segmenting the ROM table
The first term in Equation (13) accounts for the additional adders (x is the adder input bitwidth), the second term accounts for the ROM size (z is the number of bits each lookup value requires) and the third term accounts for the additional control logic to separate the filter (m is the number of gates/division of the filter for control). Also, P is the number of partition segments. To find the best solution, which minimizes the implementation size S, a derivative is taken of Equation (13) with respect to P and the result is set equal to zero, to give:
Solving for P provides the number P of segments in order to optimize the design from an implementation complexity perspective. It is interesting to note that but a few stages typically afford most of the gains attained using the optimal number of segments found in (14).
Comparing the conventional FIR filter implementation using true multipliers and adders to the embodiments herein that use ROM-based lookup, it can be shown that the use of this invention can provide a savings of several tens of thousands of gates.
In general, the approach for handling multilevel input signals using the ROM-based embodiments in accordance with this invention can be shown to add an additional 2K−1 multipliers and 2K/2 −1 adders, in addition to some incremental control logic. From an RF modulator perspective, it can be shown that modulation formats of up to 1024 QAM may benefit from using the ROM-based FIR filter implementations in accordance with the preferred embodiments of this invention. Additionally, the techniques outlined above may readily be extended to modulation formats other than QAM.
Efficient Modulator Mapping for ROM Based Filtering.
Further in accordance with non-limiting embodiments of this invention, a novel mapping of the modulation function to the ROM-based filter function is now described. This mapping removes the requirement of the comparator logic needed to implement Equation (10). In accordance with this aspect of the invention, the modulator has knowledge of the ROM-based filter and creates a 2-bit word (for the example of Equation (10) which assumes a 4-level input signal) instead of assigning amplitudes, as is done in a conventional modulator. Assume as a non-limiting case an 8-PSK signal, where the constellation points are as shown in
For a given I/Q Channel, a 4-to-3 Level Mapping block 74 detects and directs the ‘a’ magnitude symbols (00 and 10 in this example) to the a-stream 74A, re-mapping them as a 2's complement +1 and −1, respectively. A corresponding (arithmetic) zero term is sent to the b-stream 74B. The ‘b’ magnitude symbols (01 and 11 in this example) are sent to the b-stream 74B by the 4-to-3 Level Mapping block 74, which remaps them as a 2's complement +1 and −1, respectively. A corresponding (arithmetic) zero term is sent to the ‘a-stream’ 74A. The a-stream 74A provides an input to a 3-to-2 Level Mapping block 76A, while the b-stream 74B provides an input to a 3-to-2 Level Mapping block 76B. If the a-stream 3-to-2 Level Mapping block 76A detects a +1, it sends a +1 to upper and lower a-stream ROM-based 2-Level FIR filters 10A, 10B. If the a-stream 3-to-2 Level Mapping block 76A detects a −1, it sends a −1 to upper and lower a-stream filters 10A, 10B If the a-stream 3-to-2 Level Mapping block Channel), 76A detects a zero, it sends a +1 to upper a-stream filter 10A, and −1 to the lower a-stream filter 10B. A similar operation occurs for the b-stream 3-to-2 Level Mapping block 76B, which operates with upper and lower b-stream ROM-based 2-Level FIR filters 10C, 10D. The outputs of ROM-based 2-Level FIR filters 10A, 10B are summed at node 78A, multiplied by a/2 in node 80A, and summed with the similarly processed outputs from the ROM-based 2-Level FIR filters 10C, 10D (multiplied by b/2) to form the y(k) representation 82A that is output from summing node 82.
It should be noted that a 16-QAM constellation can also be mapped into a 4-level value for a given I/Q channel. This means that once the initial 16-QAM(4-bit) to 4-level (2-bit) mapping is performed, the same implementation of 4-to-3 and 3-to-2 level mappings and ROM filters can be used to filter 16-QAM signals. That is, 16-QAM and 8-PSK filtering complexity is the same in this non-limiting embodiment of the invention. This further leads to the possibility to programmably change the modulation by simply reprogramming the decoder 72 for each of the I and Q channels.
While the linear filter embodiments in accordance with this invention can be used in any of a number of suitable applications, in one presently preferred embodiment, shown in
The mobile station 100 typically includes a control unit or control logic, such as a microcontrol unit (MCU) 120 having an output coupled to an input of a display 140 and an input coupled to an output of a keyboard or keypad 160. The MCU 120 is assumed to include or be coupled to some type of a memory, including a non-volatile memory (NVM) 132 for storing an operating program and other information, as well as a volatile memory 130 for temporarily storing required data, scratchpad memory, received packet data, packet data to be transmitted, and the like. The operating program is assumed to enable the MCU 120 to execute the software routines, layers and protocols required to provide a suitable user interface (UI), via display 140 and keypad 160, with a user, as well as to operate the mobile terminal as needed. Although not shown, a microphone and speaker are typically provided for enabling the user to conduct voice calls in a conventional manner.
The mobile station 100 also contains a wireless section that includes a digital signal processor (DSP) 180, or equivalent high speed processor or logic, as well as a wireless transceiver that includes the transmitter 210 and a receiver 220, both of which are coupled to an antenna 240 for communication with a network operator. At least one local oscillator, such as a frequency synthesizer (SYNTH) 260, is provided for tuning the transceiver. Data, such as digitized voice and packet data, is transmitted and received through the antenna 240 in accordance with an air interface standard that may conform to any standard or protocol.
The TX 210 includes at least one of the ROM-based FIR filters 10, and if an I/Q modulator is involved preferably includes a plurality of the ROM-based filters 10, as was described above. The mobile station 100 modulator may also be implemented as shown in
Referring to
Based on the foregoing, it cam be appreciated that non-limiting embodiments of this invention provide a hardware efficient TX pulse shape filter when using higher order modulation, which greatly reduces the size and the cost associated with classical pulse shape filters. The non-limiting embodiments of this invention as disclosed above can be used also for other filtering processes, i.e., other than for pulse shape filtering, where the filter input set size is constrained.
Further, the use of the non-limiting embodiments of this invention can reduce the hardware (e.g., ASIC) size and cost, as well as the overall system design development time. Also, the use of the non-limiting embodiments of this invention can provide the ability to produce significantly improved TX signal quality with little cost, whereas with a conventional FIR solution it is costly to attempt to increase the signal quality by a significant amount.
The foregoing description has provided by way of exemplary and non-limiting examples a full and informative description of the best method and apparatus presently contemplated by the inventors for carrying out the invention. However, various modifications and adaptations may become apparent to those skilled in the relevant arts in view of the foregoing description, when read in conjunction with the accompanying drawings and the appended claims. As but some examples, the use of other similar or equivalent or different lookup table storage devices, types of filtering applications and modulation types may be attempted by those skilled in the art. However, all such and similar modifications of the teachings of this invention will still fall within the scope of this invention.
Furthermore, some of the features of the presently preferred embodiments of this invention may be used to advantage without the corresponding use of other features. As such, the foregoing description should be considered as merely illustrative of the principles of the various embodiments of this invention, and not in limitation thereof.