US20090254292A1 - Frequency resolution using compression - Google Patents
Frequency resolution using compression Download PDFInfo
- Publication number
- US20090254292A1 US20090254292A1 US12/473,599 US47359909A US2009254292A1 US 20090254292 A1 US20090254292 A1 US 20090254292A1 US 47359909 A US47359909 A US 47359909A US 2009254292 A1 US2009254292 A1 US 2009254292A1
- Authority
- US
- United States
- Prior art keywords
- samples
- frequency domain
- signal
- signal samples
- compression
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/141—Discrete Fourier transforms
Definitions
- This invention relates to compressing, decompressing and transforming a signal to a frequency domain representation wherein the frequency domain resolution can be improved as a result of compression.
- the transformation of a signal to the frequency domain has numerous applications in signal processing, including spectrum analysis, detection and parameter measurement.
- the accuracy of these techniques depends on the frequency resolution of the frequency domain representation and the signal to noise ratio (SNR).
- SNR signal to noise ratio
- Frequency resolution is inversely proportional to the number of samples of the signal, or the observation interval, used in the calculation of the frequency domain representation of the signal.
- resolution is important for resolving adjacent narrow peaks in a frequency domain representation.
- improved frequency domain resolution increases the accuracy of the parameter estimate, such as the center frequency of a signal.
- Many types of transformations are known in the art for converting a temporal or spatial domain representation to a frequency or spatial frequency domain representation.
- the frequency domain resolution f res corresponds to discrete frequency domain bin width f bin and depends on the sample rate f s and the number of samples N used to calculate the frequency domain representation by the following relation,
- real time means a rate that is at least as fast as the sample rate of the digital signal.
- ADC analog to digital converter
- DAC digital-to-analog converter
- the bit rate of a sampled, or digital, signal is equal to the number of bits per sample multiplied by the sample rate.
- Many applications include converting an analog signal to a digital signal followed by a transformation of the digital signal to the frequency domain.
- the frequency transformation processor is often too slow to process the flow of samples in real time, creating a bottleneck so that the samples must be stored until they are processed.
- Another bottleneck can occur when a data transfer interface, such as a bus, cable or network, cannot transfer the samples to the frequency transformation processor fast enough.
- the maximum data transfer bandwidth may be insufficient.
- the allotted bandwidth may be insufficient.
- a capture memory stores the samples until they can be transferred and processed.
- Other bottlenecks can arise from the capture memory itself.
- the capacity of the entire memory or the portion of memory allocated for signal samples limits the number of samples received from the ADC that are available to the frequency domain processor.
- the speed at which the capture memory can receive the signal samples output from the ADC can also create a bottleneck.
- a capture memory comprising static RAM (SRAM) with access time of 10 nanoseconds, can receive signal samples from an ADC at a sample rate of 100 MHz or less.
- SRAM static RAM
- An application requiring a higher sample rate from a higher speed ADC would require more a expensive memory architecture in order to receive samples at the higher rate.
- the memory access speed thus limits the real time processing bandwidth achievable by the frequency domain processor.
- Compressing the signal can mitigate these limitations by increasing the number of samples in compressed form that can be stored in memory, increasing the rate at which they can be received by memory and increasing the rate of transfer across an data transfer interface.
- the increased number of samples available for the FFT improves the frequency resolution of the frequency domain representation.
- the frequency domain resolution is a significant factor for detection. Insufficient frequency domain resolution can cause the detector to fail, as will be demonstrated by an example in the Detailed Description section.
- compression reduces the storage and/or data transfer requirements for the N samples in compressed form.
- the capacity of the entire memory or the portion of memory allocated for signal samples can be decreased, thus reducing memory requirements or freeing existing memory for other purposes in the application.
- the speed required to receive the compressed signal samples by a capture memory is reduced, allowing the use of lower speed memory architectures.
- the bandwidth needed to transfer the N samples across a data transfer interface is also decreased, so the bandwidth capacity of the data transfer interface or the portion allocated for transfer of signal samples can be reduced. Compression allows more efficient use of memory and data transfer resources, thus lowering the cost of the system.
- An object of the present invention is to produce a frequency domain representation of a signal with improved frequency domain resolution.
- the signal is compressed prior to storage or transfer using resources with limited capacities.
- the compressed signal is decompressed before performing a frequency domain transformation allowing more samples to be used for the transform calculations.
- the compression can be lossless or lossy.
- the frequency domain transformation includes, but is not limited to, a DFT, FFT, DCT, DST and z-transform.
- Another object of the invention is to provide processing appropriate for detection and parameter measurements before and after the frequency domain transformation.
- the processing can apply window functions, extrapolation, zero-padding, nonlinear functions and peak detection.
- An advantage of the present invention is better frequency domain resolution leading to increased accuracy of detection and measurements performed on a frequency domain representation. Adequate frequency resolution is necessary for the success of detectors operating on frequency domain representations.
- Another advantage of the present invention is more efficient use of data storage and data transfer resources. Depending on the frequency domain resolution requirements of the application, the data storage capacity or data transfer interface bandwidth can be reduced, resulting in cost reductions.
- FIG. 1 is a block diagram of a system for capture and frequency analysis of a signal, in accordance with the prior art.
- FIG. 2 is a block diagram of a system for capture and frequency analysis of a signal, in accordance with a preferred embodiment.
- FIG. 3 gives examples illustrating the principles underlying a preferred embodiment for compression.
- FIG. 4 is a block diagram of a preferred embodiment for compression.
- FIG. 5 shows the relationship of center frequency to the operations performed by the programmable demultiplexer, programmable inverter and arithmetic operator to produce modified samples, in accordance with a preferred embodiment.
- FIG. 6 gives examples of modified samples resulting from sums or differences, in accordance with a preferred embodiment.
- FIG. 8 is block diagram of a data conversion and compression system for a signal sampled by a TIADC, in accordance with an alternative embodiment.
- FIG. 1 is a block diagram of an example of a system for capture and analysis of a signal from the prior art.
- an analog signal 100 is converted to a digital signal 101 by ADC 102 .
- Samples of the digital signal are stored in capture memory 110 .
- the processor 130 retrieves the stored samples from the capture memory 110 via the data transfer interface 120 .
- the processor calculates a FFT or other transform to produce a frequency domain representation at the processor output 140 .
- the processor output 140 is further processed for display.
- FIG. 2 is a block diagram of a preferred embodiment of the present invention.
- the ADC 102 is included when the input is an analog signal 100 and is not included when the input is a digital signal 101 .
- the compressor 210 compresses the samples of the digital signal 101 to form compressed signal samples as compressor output 211 .
- the compressed signal samples can be stored in capture memory 110 for later transfer over data transfer interface 120 to the decompressor 220 . Embodiments for some applications may not require the capture memory 110 , so that the compressor 210 provides the compressed signal samples to the data transfer interface 120 .
- the decompressor 220 decompresses the compressed signal samples received from the data transfer interface 120 to form decompressed signal samples as decompressor output 221 .
- the processor 130 transforms the decompressed signal samples to the frequency domain to form a frequency domain representation. Depending on the application, the processor 130 may provide the frequency domain representation as the processor output 140 . The processor 130 can also perform additional operations on the frequency domain representation and provide the results at processor output 140 .
- the compression controller 212 and decompression controller 222 both optional, provide for compression mode selection and parameters.
- the decompressor 220 can include a local memory for storing the compressed signal samples prior to decompression.
- the capture memory 110 can be any data storage device, including random access memory (RAM) or computer-readable media such as a disk drive.
- the data transfer interface 120 can include a bus, cable, network or other connection as appropriate for the application.
- the compression controller 212 can provide selection of compression mode and respond to input from a user.
- the compression modes for compressor 210 include lossless modes and lossy modes. For example, under some circumstances compressor 210 will generate lossless-compressed signals, whose values after decompression by decompressor 220 will be identical to the original signal. In other circumstances, compressor 210 will generate lossy-compressed signals that require less storage and/or bandwidth than either the lossless-compressed signal or the original, uncompressed signal. In the case of lossy compression, several additional alternatives are available. Lossy compression may provide a compressed signal whose bandwidth or bit rate is user-specified. In other instances lossy compression may provide a compressed signal whose quality is user-specified.
- parameters representing the desired the bit rate (including compression ratio) or signal quality (including SNR, distortion level, etc.) may be passed to compressor 210 , via compression control 214 .
- the decompression controller 222 can provide compression mode indicator and parameters to decompressor 220 via decompression control 224 .
- the compressor 210 and decompressor 220 apply algorithms for compression and decompression described below.
- the algorithms include simple operations including inversion, addition and subtraction that can be implemented to perform compression or decompression in real time.
- Preferred embodiments of the compressor and decompressor described below are based on embodiments described in the '533 patent. However, other compression and decompression techniques can be used by compressor 210 and decompressor 220 without departing from the spirit and scope of the present invention.
- Embodiments of the technology include a spectrum analyzer used for examination of spectral composition of input signals such as electrical, acoustical or optical waveforms.
- a spectrum analyzer includes a display adapted to display data from the frequency domain representation such as illustrated in FIGS. 7 a and 7 b for example, and interactive tools for managing display of the frequency domain representation and measuring characteristics of the displayed representations.
- Such tools include graphical user interface tools for marking the displayed representation and making measurements based on such marking, peak detection tools, peak width measurement tools, window definition tools and the like.
- a spectrum analyzer includes resources for accepting the control parameter as user input such as a graphical input tool, a switch or other input tool, as part of a parameter file entered by programming, or resources to produce the control parameter automatically based on use of measurement tools supported by the interactive interface.
- resources for accepting the control parameter as user input such as a graphical input tool, a switch or other input tool, as part of a parameter file entered by programming, or resources to produce the control parameter automatically based on use of measurement tools supported by the interactive interface.
- Such a spectrum analyzer may include only the decompressor 220 , while the compressor is coupled with a sampling device in communication with the spectrum analyzer.
- FIG. 3 gives examples that illustrate principles underlying the preferred embodiment for compressor 210 for compressing bandlimited signals with different center frequencies.
- the center frequency is near DC (0 Hz) and the phase increase between consecutive samples is less than 10 degrees.
- the first phasor diagram 310 shows that since the phase changes between consecutive samples are small, the magnitudes of the differences of consecutive samples will be relatively small compared to the magnitudes of the samples themselves.
- the first example sequence 312 corresponds to samples of a Band 1 baseband signal. Since the differences between consecutive samples are small relative to the sample magnitudes, calculating first or higher order differences, or differential encoding, creates difference samples with smaller data widths than the original samples. Compression using differential encoding approach is effective for the baseband (Band 1) example in FIG. 3 .
- FIG. 3 also gives examples of sampled signals where the center frequency is above DC, but below the Nyquist frequency, f s /2 For Band 2, the center frequency is near f s /6 and the phase increase between consecutive samples is about 60 degrees.
- the second phasor diagram 320 shows that pairs of samples separated by 180 degrees, or three sampling intervals, have similar magnitudes but opposite polarities, as illustrated by pairs of samples ( 320 - 0 , 320 - 3 ), ( 320 - 1 , 320 - 4 ) and ( 320 - 2 , 320 - 5 ). Inverting one of the samples in the pair (or multiplying by ⁇ 1) provides a close estimate of the other sample in the pair.
- the second example sequence 322 also shows that samples separated by three sampling intervals have similar magnitudes and opposite signs. For example, the value of sample 322 - 0 is 32767 and the value of sample 322 - 3 is ⁇ 32756.
- For Band 2 operations on pairs of samples separated by three sampling intervals produce modified samples with smaller data widths. The operation of adding the samples in the pair together produces modified samples having smaller data widths that can be encoded more efficiently.
- the center frequency is near f s /4 and the phase increase between consecutive samples is about 90 degrees.
- the third phasor diagram 330 shows that samples separated by 180 degrees, or 2 sampling intervals, have similar magnitude and opposite polarity.
- the third example sequence 332 also shows that every other sample has similar magnitudes and opposite polarities. For Band 3, adding together every other sample will result in modified samples with smaller data widths that can be encoded more efficiently than the original samples.
- the center frequency is near f s /3 and the phase increase between consecutive samples is about 120 degrees.
- the fourth phasor diagram 340 shows that samples separated by 360 degrees, or 3 sampling intervals, will have similar magnitudes.
- the fourth example sequence 342 shows that every third sample has similar magnitudes. In this case, forming a difference between samples separated by 3 sampling intervals will give a modified sample with a smaller data width that can be encoded more efficiently than the original samples.
- the center frequency is f s /2 and the phase increase between consecutive samples is about 180 degrees.
- the fifth phasor diagram 350 shows that samples separated by 180 degrees, or one sampling interval, will have similar magnitudes but opposite polarities.
- the fifth example sequence 352 shows consecutive samples have similar magnitudes and opposite polarities. In this case, adding two consecutive samples will form a modified sample with a smaller data width that can be encoded more efficiently than the original samples.
- data compression can be achieved by performing operations such as addition (or inversion followed by subtraction) or subtraction (or inversion followed by addition) on signal samples that are separated by 1, 2 or 3 sampling intervals, depending on the ratio of the sample rate to the center frequency.
- the resulting modified samples are then encoded to form compressed samples. Similar operations can be applied to samples that are separated by four or more sampling intervals, depending on the ratio of the center frequency to the sample rate, to produce modified samples with smaller data widths than the original signal samples.
- FIG. 4 is a block diagram of a preferred embodiment of compressor 210 and compression controller 212 .
- Programmable demultiplexer (demux) 410 selects samples of the digital signal 101 so that selected samples are separated by the appropriate number of sampling intervals according to compression control 452 to form demultiplexer output 412 .
- Programmable inverter 420 inverts selected samples of the demultiplexer output 412 according to compression control 454 .
- Arithmetic operator 430 performs addition or subtraction operations on pairs of operator input samples 422 according to compression control 456 to form modified samples 432 .
- Arithmetic operator 430 can also be configured to perform higher order differences on the operator input samples 422 .
- Encoder 440 encodes the modified samples 432 to form compressed signal samples at compressor output 211 .
- Encoder 440 applies Huffman encoding or other encoding known in the art.
- the compression controller 212 provides control parameters to guide the operations of the compressor elements.
- the programmable demux 410 , programmable inverter 420 and arithmetic operator 430 respond to the compression controls 452 , 454 and 456 , respectively, to perform the appropriate operations in accordance with the center frequency of the digital signal 101 .
- FIG. 5 shows the operations that the programmable demultiplexer 410 , programmable inverter 420 and arithmetic operator 430 perform to produce modified samples 432 based on the center frequency.
- the first column 510 gives the possible center frequencies for this example.
- the second column 520 gives a corresponding frequency band indicator for each center frequency.
- the indicators can be used as parameters for compression controls 452 , 454 and 456 .
- the third column 530 gives the different separations of samples x(i) and x(i ⁇ j) at demultiplexer output 412 that would be produced as a result of compression control parameter 452 .
- the fourth column 540 shows the result of inversion under control by compression control parameter 454 . When the inverter 420 is “on” the delayed sample, x(i ⁇ j) is inverted.
- the fifth column 550 shows the mathematical results of the arithmetic operator 430 that produce the modified samples 432 , or y(i).
- the compression controller 212 also provides control of the encoder 440 .
- the compression control parameter 458 can indicate a selected encoding technique from among multiple encoding options, including lossless encoding, such as Huffman encoding, other lossless encoding or lossy encoding.
- FIG. 6 gives the sums or differences of signal samples x(i) and x(i ⁇ j) for the examples of FIG. 3 calculated in accordance with the preferred embodiment of FIGS. 4 and 5 for different center frequencies. These are the same signal samples used in the example sequences of FIG. 3 .
- the samples in the DIFF rows in examples 512 and 542 and the SUM rows in examples 522 , 532 and 552 have substantially lower magnitudes than the corresponding signal samples, or x(i).
- the DIFF samples and the SUM samples are examples of modified samples 432 that are input to encoder 440 in FIG. 4 .
- compressor 210 for lossy encoding include the following configurations.
- One approach for lossy encoding is to reduce the data width, or dynamic range, of the samples to be compressed.
- a programmable attenuator can attenuate the digital samples 101 to reduce the data width prior to demultiplexing.
- programmable shifters can shift out one or more least significant bits from each sample of the digital signal 101 , also reducing the data width.
- arithmetic operator 430 or encoder 440 can eliminate one or more least significant bits.
- Each of these alternatives for lossy encoding can be controlled by the compression controller 212 .
- Additional alternatives for control of lossless and lossy compression can be based on a desired bit rate for compressed signal data at compressor output 211 , a desired signal quality of the decompressed signal 221 or a characteristic of the frequency domain representation calculated by the processor 130 , as described below.
- Decompressor 220 reverses the operations of compressor 210 to reconstruct the samples of the digital signal 101 from the compressed signal samples.
- the compressed signal samples are decoded, for example by Huffman decoding, to form reconstructed modified samples.
- the inverse operations of the arithmetic operator 430 and the programmable inverter 420 are applied to the reconstructed modified samples.
- the resulting reconstructed signal samples which may or may not be in chronological order, can be reordered into chronological order to form a reconstructed sample stream in the same order as the original digital signal samples.
- a multiplexer can perform the reordering operations.
- the reconstructed signal samples, x′(i) can be reordered as appropriate for input to the fast transform algorithm, instead of chronological order.
- the reconstructed signal samples x′(i) can be reordered as appropriate for inputs to the FFT butterfly operators.
- Processor 130 can perform operations in addition to the FFT that are useful for the particular application.
- Processor 130 can multiply the reconstructed signal samples by weights, such as window function weights, prior to the FFT.
- Nonlinear functions of the samples followed by FFT are often performed in detection and parameter measurement applications.
- Processor 130 can calculate nonlinear functions of the reconstructed signal samples x′(i), including magnitude, phase, power operations x′ r (i), delay-and-multiply operations x′(i)x′(i ⁇ j) and other operations known to those skilled in the art.
- the processor can perform additional operations on the samples X′(k) of the frequency domain representation.
- Functions useful for detection and parameter measurement applications include magnitude, phase, power operations X′ r (k), frequency-shift-and-multiply operations X′(k)X′(k ⁇ m) and other operations.
- Another step in detection and measurement applications is determining the location of a peak in the frequency domain representation. Peak detection often includes testing whether a function of X′(k), such as the magnitude, crosses a threshold.
- FIGS. 7 a and 7 b give examples showing improved detector performance when compressor 210 applies lossy compression.
- the methods of the preferred embodiment described above were applied for compression and decompression.
- Two peaks 702 and 703 are clearly distinguished at the higher resolution. Although increased noise level and spurs appear in other frequency locations, they do not diminish the ability to detect the peaks.
- a detection threshold can easily be chosen that would successfully detect the two peaks 702 and 703 , whose peak magnitudes are both above 100 dB on the y-axis, while the noise floor is below 20 dB.
- the 4:1 compression in this example has only slightly degraded the noise floor, so the resulting peaks are 80 dB above the noise floor. Even a 20 dB dynamic range would still allow the peaks to be detected above the noise floor.
- the FFT or other frequency transform of the decompressed signal samples provides the opportunity for feedback control to optimize compression performance.
- Processor 130 can analyze the frequency domain representation of the decompressed signal samples to produce optimized control parameters for compression controller 212 , decompression controller 222 and/or other elements in the system of FIG. 2 .
- the signal center frequency is a parameter that can be measured in the frequency domain and used to adjust the sample rate of the digital signal 101 or the sample rate applied by ADC 102 to analog signal 100 to improve compression performance.
- the amplitude range of modified samples is reduced when the center frequency f c equals or is close to the sample rate f s divided by a certain small integers.
- the adjusted sample rate would ideally result in the center frequency being centered in one frequency bin in the in signal spectrum, or the magnitude of the frequency domain representation.
- the magnitude of the frequency domain representation, or signal spectrum is analyzed to estimate the center frequency.
- the measured center frequency f c is used to select a sample rate where the ratio f s /f c is as close as possible to the integers 3, 4 and 6 from candidate sample rates that meet the Nyquist criterion and implementation constraints.
- the compression controller 212 can provide the selected sample rate to the compressor 210 via compression control 214 .
- the compressor 210 can resample digital signal 101 at the selected sample rate using well known techniques of multirate filtering prior to compression operations.
- the sample rate of the ADC 102 can be adjusted to the selected sample rate.
- the processor 130 can also analyze the signal spectrum to estimate the noise floor and SNR of the decompressed signal samples. The noise floor and SNR measurements indicate the signal quality of the decompressed signal. These can be used by compression controller 212 and decompression controller 222 to adjust appropriate compression control parameters for fixed-quality lossy compression.
- the noise floor can be estimated from frequency domain values by forming a histogram of the magnitudes of the signal spectrum. The histogram bin with the highest number of occurrences is selected. The magnitude associated with the selected histogram bin provides the noise floor estimate. This technique for estimating the noise floor is also described in the '533 patent with respect to FIG. 18 .
- compressor 210 performs operations included in the compression subsystem 400 in the '533 patent.
- the programmable demultiplexer 410 and the programmable inverter 420 of the preferred embodiment perform operations that are included in the preprocessor 106 , described in the '533 patent with respect to FIGS. 12-15 .
- the arithmetic operator 430 and the encoder 440 of the preferred embodiment perform operations that are included in the compressor 110 of the '533 patent.
- the decompressor 220 of the preferred embodiment performs operations included in the decompression subsystem 440 in the '533 patent.
- the decoding and inverse of the arithmetic operations for decompression in the preferred embodiment are included in the decompressor 124 of the '533 patent.
- the programmable inverter and multiplexer for decompression of the preferred embodiment are included in the operations of the postprocessor 128 in the '533 patent, described with respect to FIGS. 16 and 17 .
- the compression controller 212 and decompression controller 222 of the preferred embodiment perform operations included in the control block 144 of the '533 patent.
- FIG. 8 is block diagram of a data conversion and compression system for a signal sampled by a TIADC.
- the TIADC 812 includes four parallel ADCs 812 i.
- the parallel ADCs 812 i sample the analog signal 100 at consecutive sampling intervals to form a plurality of consecutive signal samples 820 .
- Each signal sample 820 i is input to a corresponding programmable inverter 810 i of a plurality of programmable inverters 810 .
- Each programmable inverter 810 i selectively inverts signal sample 820 i according to an inverter control parameter 821 .
- the inverter control parameter controls inversion based on the ratio of the sample rate to the center frequency, as described with respect to inverter control column 540 in FIG. 5 .
- a plurality of multiplexors 840 receives inputs selected from the plurality of inverter output samples 830 .
- Each inverter output sample 830 i is distributed to at least 1 multiplexor 840 j (not equal to i) corresponding to a signal sample 820 j that is separated by at least one sampling interval from signal sample 820 i.
- Each multiplexor 840 j receives up to three inverter output samples 830 i, (i not equal to j) corresponding to separations of up to three sampling intervals from signal sample 820 j. Each multiplexor 840 i selects a multiplexor output sample 850 i from among the inverter output samples 830 j, where j does not equal i, input to the multliplexor 840 i.
- the multiplexor output sample 850 i is selected according to a multiplexor control parameter 860 .
- the multiplexor control parameter 860 controls the sample selected based on the ratio of the sample rate to the center frequency, as described above with respect to demux control column 530 in FIG. 5 .
- the plurality of multiplexor output samples 850 and signal samples 820 are input to a plurality of adders 870 .
- Each adder 870 i adds multiplexor output sample 850 i with its corresponding signal sample 820 i to form a corresponding modified sample 880 i.
- Each modified sample 880 i corresponds to one of the options for y(i) in the modified sample column 550 in FIG. 5 , based on the ratio of the sample rate to the center frequency.
- Encoder 440 compresses the plurality of modified samples 880 to produce compressed samples 211 .
- Encoder 440 applies bit packing strategies well known to those skilled in the art as described above with reference to FIG. 4 .
- Compressed samples 211 can then be efficiently stored in memory or transferred over a data transfer interface, as indicated by block 890 .
- Other alternatives for compression of signal samples output from a TIADC are also described in the '771 application.
- An alternative embodiment for compressor 210 can use relatively simple lossy compression techniques, such as the removal of one or more least significant bits of samples, combined with bit packing.
- a signal processing system incorporating 16-bit ADC for data acquisition can achieve 2:1 compression by storing the upper 8 bits of each 16-bit sample.
- storing only the upper 4 bits achieves 4:1 compression.
- This compression technique suffers from a rise in noise floor and a corresponding decrease in SNR. While this embodiment is easily implemented, the distortion is significantly worse than that of preferred compression methods described above.
- the present invention can be implemented in a system that includes signal capture followed by storage or transfer prior to frequency domain processing, including spectrum analyzer and signal detection systems.
- the present invention is applicable to a spectrum analyzer system that processes an input digital signal or includes an ADC to convert an input analog signal to a digital signal.
- a preferred implementation integrates the compressor of the present invention into the data acquisition portion of a spectrum analyzer system or other detection system.
- the compressor can be integrated into an application specific integrated circuit (ASIC) that includes an ADC.
- ASIC application specific integrated circuit
- the compressor can be implemented in a separate, stand-alone ASIC that can be coupled to the output of an ADC chip.
- the stand-alone ASIC implementation can be fabricated using CMOS or other semiconductor process technology.
- the decompressor 220 , decompression controller 222 and the processor 130 may be incorporated in the same device, such as an ASIC or programmable processor, or on separate devices. Incorporating the present invention in a system may increase the gate count and power consumption. However, the benefits of compression will decrease other system costs, such as the cost of storage to capture the compressed samples or the cost of a bus or network to transfer the compressed samples to decompressor 220 and processor 130 for FFT or other transform calculation.
- Embodiments of the present invention can also be implemented in one or more programmable processors.
- the programmable processors include software/firmware programmable processors such as computers, digital signal processors (DSP), microprocessors (including microcontrollers) and other programmable devices, and hardware programmable devices such as complex programmable logic devices (CPLD), field programmable gate arrays (FPGA) devices.
- DSP digital signal processors
- CPLD complex programmable logic devices
- FPGA field programmable gate arrays
- the program implementing the operations of the present invention is represented by software, firmware, netlist, bitstream or other type of processor executable instructions and data.
- Implementations of the present invention can perform compression or decompression in real time, that is, at least as fast as the sample rate of the digital signal.
- Compression and decompression operations include multiplexing operations, inversion operations and simple arithmetic operations including addition, subtraction and shifting.
- Embodiments using Huffman encoding also involve simple table look-ups.
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Discrete Mathematics (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Radar Systems Or Details Thereof (AREA)
Abstract
In a frequency analysis system, such as a signal detection system or a spectrum analyzer, the frequency domain resolution is enhanced by compression and decompression of the signal samples. The limited capacity of the data storage and/or data transfer resources limit the number of samples that can be stored or transferred. A compressor forms a compressed signal prior to data transfer or storage. A decompressor decompresses the compressed signal prior to transformation to the frequency domain, by a fast Fourier transform or other frequency domain transform. The frequency domain resolution is enhanced because more decompressed samples are available for the frequency domain transform. The compressor and decompressor apply computationally efficient algorithms that can be implemented to operate in real time.
Description
- This application is a continuation of U.S. patent application Ser. No. 11/734,967 filed on 13 Apr. 2007, which application claims the benefit of U.S. Provisional Application No. 60/867,734, filed 29 Nov. 2006.
- This invention relates to compressing, decompressing and transforming a signal to a frequency domain representation wherein the frequency domain resolution can be improved as a result of compression.
- The transformation of a signal to the frequency domain has numerous applications in signal processing, including spectrum analysis, detection and parameter measurement. The accuracy of these techniques depends on the frequency resolution of the frequency domain representation and the signal to noise ratio (SNR). Frequency resolution is inversely proportional to the number of samples of the signal, or the observation interval, used in the calculation of the frequency domain representation of the signal. In signal detection, resolution is important for resolving adjacent narrow peaks in a frequency domain representation. For signal parameter measurement, improved frequency domain resolution increases the accuracy of the parameter estimate, such as the center frequency of a signal. Many types of transformations are known in the art for converting a temporal or spatial domain representation to a frequency or spatial frequency domain representation. For digital or discrete signals these include the discrete Fourier transform (DFT), fast Fourier transform (FFT), discrete cosine transform (DCT), discrete sine transform (DST) and the z-transform. The frequency domain resolution fres corresponds to discrete frequency domain bin width fbin and depends on the sample rate fs and the number of samples N used to calculate the frequency domain representation by the following relation,
-
f res =f bin =f s /N - For the frequency domain resolution smaller is better because it leads to more accurate measurements. However, improving frequency resolution requires a larger number of samples N. This requirement can conflict with system limitations as described below.
- Examples in the following discussion will use the FFT for the transformation from the time to frequency domain, but this is not intended to limit the scope of the invention to any particular transformation. Also, in this discussion, “real time” means a rate that is at least as fast as the sample rate of the digital signal. When analog to digital conversion is applied to an analog signal to form the digital signal, the sample rate is the rate at which analog to digital converter (ADC) forms the samples of the digital signal. When digital to analog conversion is applied to a digital signal, the sample rate is the rate at which digital-to-analog converter (DAC) forms the analog signal from the samples of the digital signal is the sample rate. The bit rate of a sampled, or digital, signal is equal to the number of bits per sample multiplied by the sample rate.
- Many applications include converting an analog signal to a digital signal followed by a transformation of the digital signal to the frequency domain. When the ADC operates at high speeds, the frequency transformation processor is often too slow to process the flow of samples in real time, creating a bottleneck so that the samples must be stored until they are processed. Another bottleneck can occur when a data transfer interface, such as a bus, cable or network, cannot transfer the samples to the frequency transformation processor fast enough. For example, when the entire data transfer interface is used for transfer of the signal samples, the maximum data transfer bandwidth may be insufficient. Alternatively, when only a portion of the data transfer interface is allocated for transferring the signal samples, such as for example, by time interleaving the sample signals with other time critical data or with multiple streams of sample signals, the allotted bandwidth may be insufficient. In these cases, a capture memory stores the samples until they can be transferred and processed. Other bottlenecks can arise from the capture memory itself. The capacity of the entire memory or the portion of memory allocated for signal samples limits the number of samples received from the ADC that are available to the frequency domain processor. The speed at which the capture memory can receive the signal samples output from the ADC can also create a bottleneck. For example, a capture memory comprising static RAM (SRAM) with access time of 10 nanoseconds, can receive signal samples from an ADC at a sample rate of 100 MHz or less. An application requiring a higher sample rate from a higher speed ADC would require more a expensive memory architecture in order to receive samples at the higher rate. The memory access speed thus limits the real time processing bandwidth achievable by the frequency domain processor.
- Compressing the signal can mitigate these limitations by increasing the number of samples in compressed form that can be stored in memory, increasing the rate at which they can be received by memory and increasing the rate of transfer across an data transfer interface. The increased number of samples available for the FFT improves the frequency resolution of the frequency domain representation. The frequency domain resolution is a significant factor for detection. Insufficient frequency domain resolution can cause the detector to fail, as will be demonstrated by an example in the Detailed Description section. Alternatively, when the frequency domain representation has a fixed resolution requirement met by an N-length FFT, compression reduces the storage and/or data transfer requirements for the N samples in compressed form. The capacity of the entire memory or the portion of memory allocated for signal samples can be decreased, thus reducing memory requirements or freeing existing memory for other purposes in the application. The speed required to receive the compressed signal samples by a capture memory is reduced, allowing the use of lower speed memory architectures. The bandwidth needed to transfer the N samples across a data transfer interface is also decreased, so the bandwidth capacity of the data transfer interface or the portion allocated for transfer of signal samples can be reduced. Compression allows more efficient use of memory and data transfer resources, thus lowering the cost of the system.
- In the commonly owned U.S. Pat. No. 7,009,533 B1 (the '533 patent), entitled “Adaptive Compression and Decompression of Bandlimited Signals”, dated Mar. 7, 2006 and incorporated herein by reference, the present inventor describes algorithms for compression and decompression of certain bandlimited signals. In the commonly owned and copending U.S. patent application Ser. No. 11/458,771 (the '771 application) entitled, “Enhanced Time-Interleaved A/D Conversion Using Compression,” filed on Jul. 20, 2006 and incorporated herein by reference, the present inventor describes compression of a bandlimited signal that is sampled by a parallel time-interleaved analog to digital converter (TIADC). The compression methods described therein are designed to take advantage of the parallel architecture of the TIADC. In the commonly owned and copending U.S. patent application Ser. No. 11/553,147 (the '147 application), entitled “Data Compression for a Waveform Data Analyzer”, filed on Oct. 26, 2006 and incorporated herein by reference, the present inventor describes compression and decompression of a signal having recurring waveform states and teaches algorithms for this particular type of signal.
- An object of the present invention is to produce a frequency domain representation of a signal with improved frequency domain resolution. The signal is compressed prior to storage or transfer using resources with limited capacities. The compressed signal is decompressed before performing a frequency domain transformation allowing more samples to be used for the transform calculations. The compression can be lossless or lossy. The frequency domain transformation includes, but is not limited to, a DFT, FFT, DCT, DST and z-transform.
- Another object of the invention is to provide processing appropriate for detection and parameter measurements before and after the frequency domain transformation. The processing can apply window functions, extrapolation, zero-padding, nonlinear functions and peak detection.
- An advantage of the present invention is better frequency domain resolution leading to increased accuracy of detection and measurements performed on a frequency domain representation. Adequate frequency resolution is necessary for the success of detectors operating on frequency domain representations.
- Another advantage of the present invention is more efficient use of data storage and data transfer resources. Depending on the frequency domain resolution requirements of the application, the data storage capacity or data transfer interface bandwidth can be reduced, resulting in cost reductions.
-
FIG. 1 is a block diagram of a system for capture and frequency analysis of a signal, in accordance with the prior art. -
FIG. 2 is a block diagram of a system for capture and frequency analysis of a signal, in accordance with a preferred embodiment. -
FIG. 3 gives examples illustrating the principles underlying a preferred embodiment for compression. -
FIG. 4 is a block diagram of a preferred embodiment for compression. -
FIG. 5 shows the relationship of center frequency to the operations performed by the programmable demultiplexer, programmable inverter and arithmetic operator to produce modified samples, in accordance with a preferred embodiment. -
FIG. 6 gives examples of modified samples resulting from sums or differences, in accordance with a preferred embodiment. -
FIG. 7 a is a plot of an example of the magnitude spectrum of resulting form a FFT applied to a signal with two closely spaced sine waves in noise where FFT length N=2048 samples. -
FIG. 7 b is a plot of an example of the magnitude spectrum resulting from a FFT applied to a signal with two closely spaced sine waves in noise that had been compressed (fixed-rate lossy) and decompressed prior to the FFT, where FFT length N=8192 samples, in accordance with a preferred embodiment. -
FIG. 8 is block diagram of a data conversion and compression system for a signal sampled by a TIADC, in accordance with an alternative embodiment. -
FIG. 1 is a block diagram of an example of a system for capture and analysis of a signal from the prior art. In this example, ananalog signal 100 is converted to adigital signal 101 byADC 102. Samples of the digital signal are stored incapture memory 110. Theprocessor 130 retrieves the stored samples from thecapture memory 110 via thedata transfer interface 120. The processor calculates a FFT or other transform to produce a frequency domain representation at theprocessor output 140. In a spectrum analyzer device, theprocessor output 140 is further processed for display. -
FIG. 2 is a block diagram of a preferred embodiment of the present invention. TheADC 102 is included when the input is ananalog signal 100 and is not included when the input is adigital signal 101. Thecompressor 210 compresses the samples of thedigital signal 101 to form compressed signal samples ascompressor output 211. The compressed signal samples can be stored incapture memory 110 for later transfer overdata transfer interface 120 to thedecompressor 220. Embodiments for some applications may not require thecapture memory 110, so that thecompressor 210 provides the compressed signal samples to thedata transfer interface 120. Thedecompressor 220 decompresses the compressed signal samples received from thedata transfer interface 120 to form decompressed signal samples asdecompressor output 221. Theprocessor 130 transforms the decompressed signal samples to the frequency domain to form a frequency domain representation. Depending on the application, theprocessor 130 may provide the frequency domain representation as theprocessor output 140. Theprocessor 130 can also perform additional operations on the frequency domain representation and provide the results atprocessor output 140. Thecompression controller 212 anddecompression controller 222, both optional, provide for compression mode selection and parameters. In an alternative embodiment, thedecompressor 220 can include a local memory for storing the compressed signal samples prior to decompression. Thecapture memory 110 can be any data storage device, including random access memory (RAM) or computer-readable media such as a disk drive. Thedata transfer interface 120 can include a bus, cable, network or other connection as appropriate for the application. - The
compression controller 212 can provide selection of compression mode and respond to input from a user. The compression modes forcompressor 210 include lossless modes and lossy modes. For example, under somecircumstances compressor 210 will generate lossless-compressed signals, whose values after decompression bydecompressor 220 will be identical to the original signal. In other circumstances,compressor 210 will generate lossy-compressed signals that require less storage and/or bandwidth than either the lossless-compressed signal or the original, uncompressed signal. In the case of lossy compression, several additional alternatives are available. Lossy compression may provide a compressed signal whose bandwidth or bit rate is user-specified. In other instances lossy compression may provide a compressed signal whose quality is user-specified. For lossy compression modes, parameters representing the desired the bit rate (including compression ratio) or signal quality (including SNR, distortion level, etc.) may be passed tocompressor 210, viacompression control 214. Thedecompression controller 222 can provide compression mode indicator and parameters todecompressor 220 viadecompression control 224. - In a preferred embodiment for a bandlimited signal, the
compressor 210 anddecompressor 220 apply algorithms for compression and decompression described below. The algorithms include simple operations including inversion, addition and subtraction that can be implemented to perform compression or decompression in real time. Preferred embodiments of the compressor and decompressor described below are based on embodiments described in the '533 patent. However, other compression and decompression techniques can be used bycompressor 210 anddecompressor 220 without departing from the spirit and scope of the present invention. - Embodiments of the technology include a spectrum analyzer used for examination of spectral composition of input signals such as electrical, acoustical or optical waveforms. A spectrum analyzer includes a display adapted to display data from the frequency domain representation such as illustrated in
FIGS. 7 a and 7 b for example, and interactive tools for managing display of the frequency domain representation and measuring characteristics of the displayed representations. Such tools include graphical user interface tools for marking the displayed representation and making measurements based on such marking, peak detection tools, peak width measurement tools, window definition tools and the like. In addition, a spectrum analyzer includes resources for accepting the control parameter as user input such as a graphical input tool, a switch or other input tool, as part of a parameter file entered by programming, or resources to produce the control parameter automatically based on use of measurement tools supported by the interactive interface. Such a spectrum analyzer may include only thedecompressor 220, while the compressor is coupled with a sampling device in communication with the spectrum analyzer. -
FIG. 3 gives examples that illustrate principles underlying the preferred embodiment forcompressor 210 for compressing bandlimited signals with different center frequencies. Beginning with the example of a baseband signal, corresponding to row labeled “Band 1” inFIG. 3 , the center frequency is near DC (0 Hz) and the phase increase between consecutive samples is less than 10 degrees. The first phasor diagram 310 shows that since the phase changes between consecutive samples are small, the magnitudes of the differences of consecutive samples will be relatively small compared to the magnitudes of the samples themselves. Thefirst example sequence 312 corresponds to samples of aBand 1 baseband signal. Since the differences between consecutive samples are small relative to the sample magnitudes, calculating first or higher order differences, or differential encoding, creates difference samples with smaller data widths than the original samples. Compression using differential encoding approach is effective for the baseband (Band 1) example inFIG. 3 . -
FIG. 3 also gives examples of sampled signals where the center frequency is above DC, but below the Nyquist frequency, fs/2 ForBand 2, the center frequency is near fs/6 and the phase increase between consecutive samples is about 60 degrees. The second phasor diagram 320 shows that pairs of samples separated by 180 degrees, or three sampling intervals, have similar magnitudes but opposite polarities, as illustrated by pairs of samples (320-0, 320-3), (320-1, 320-4) and (320-2, 320-5). Inverting one of the samples in the pair (or multiplying by −1) provides a close estimate of the other sample in the pair. Thesecond example sequence 322 also shows that samples separated by three sampling intervals have similar magnitudes and opposite signs. For example, the value of sample 322-0 is 32767 and the value of sample 322-3 is −32756. ForBand 2, operations on pairs of samples separated by three sampling intervals produce modified samples with smaller data widths. The operation of adding the samples in the pair together produces modified samples having smaller data widths that can be encoded more efficiently. - For the example of
Band 3 inFIG. 3 , the center frequency is near fs/4 and the phase increase between consecutive samples is about 90 degrees. The third phasor diagram 330 shows that samples separated by 180 degrees, or 2 sampling intervals, have similar magnitude and opposite polarity. Thethird example sequence 332 also shows that every other sample has similar magnitudes and opposite polarities. ForBand 3, adding together every other sample will result in modified samples with smaller data widths that can be encoded more efficiently than the original samples. - For the example of
Band 4 inFIG. 3 , the center frequency is near fs/3 and the phase increase between consecutive samples is about 120 degrees. The fourth phasor diagram 340 shows that samples separated by 360 degrees, or 3 sampling intervals, will have similar magnitudes. Thefourth example sequence 342 shows that every third sample has similar magnitudes. In this case, forming a difference between samples separated by 3 sampling intervals will give a modified sample with a smaller data width that can be encoded more efficiently than the original samples. - For the example of
Band 5 inFIG. 3 , the center frequency is fs/2 and the phase increase between consecutive samples is about 180 degrees. The fifth phasor diagram 350 shows that samples separated by 180 degrees, or one sampling interval, will have similar magnitudes but opposite polarities. Thefifth example sequence 352 shows consecutive samples have similar magnitudes and opposite polarities. In this case, adding two consecutive samples will form a modified sample with a smaller data width that can be encoded more efficiently than the original samples. - The above examples described for
FIG. 3 show that data compression can be achieved by performing operations such as addition (or inversion followed by subtraction) or subtraction (or inversion followed by addition) on signal samples that are separated by 1, 2 or 3 sampling intervals, depending on the ratio of the sample rate to the center frequency. The resulting modified samples are then encoded to form compressed samples. Similar operations can be applied to samples that are separated by four or more sampling intervals, depending on the ratio of the center frequency to the sample rate, to produce modified samples with smaller data widths than the original signal samples. -
FIG. 4 is a block diagram of a preferred embodiment ofcompressor 210 andcompression controller 212. Programmable demultiplexer (demux) 410 selects samples of thedigital signal 101 so that selected samples are separated by the appropriate number of sampling intervals according tocompression control 452 to formdemultiplexer output 412.Programmable inverter 420 inverts selected samples of thedemultiplexer output 412 according tocompression control 454.Arithmetic operator 430 performs addition or subtraction operations on pairs ofoperator input samples 422 according tocompression control 456 to form modifiedsamples 432.Arithmetic operator 430 can also be configured to perform higher order differences on theoperator input samples 422.Encoder 440 encodes the modifiedsamples 432 to form compressed signal samples atcompressor output 211.Encoder 440 applies Huffman encoding or other encoding known in the art. - The
compression controller 212 provides control parameters to guide the operations of the compressor elements. Theprogrammable demux 410,programmable inverter 420 andarithmetic operator 430 respond to the compression controls 452, 454 and 456, respectively, to perform the appropriate operations in accordance with the center frequency of thedigital signal 101.FIG. 5 shows the operations that theprogrammable demultiplexer 410,programmable inverter 420 andarithmetic operator 430 perform to produce modifiedsamples 432 based on the center frequency. Thefirst column 510 gives the possible center frequencies for this example. Thesecond column 520 gives a corresponding frequency band indicator for each center frequency. The indicators can be used as parameters for compression controls 452, 454 and 456. Thethird column 530 gives the different separations of samples x(i) and x(i−j) atdemultiplexer output 412 that would be produced as a result ofcompression control parameter 452. Thefourth column 540 shows the result of inversion under control bycompression control parameter 454. When theinverter 420 is “on” the delayed sample, x(i−j) is inverted. Thefifth column 550 shows the mathematical results of thearithmetic operator 430 that produce the modifiedsamples 432, or y(i). Thecompression controller 212 also provides control of theencoder 440. Thecompression control parameter 458 can indicate a selected encoding technique from among multiple encoding options, including lossless encoding, such as Huffman encoding, other lossless encoding or lossy encoding. -
FIG. 6 gives the sums or differences of signal samples x(i) and x(i−j) for the examples ofFIG. 3 calculated in accordance with the preferred embodiment ofFIGS. 4 and 5 for different center frequencies. These are the same signal samples used in the example sequences ofFIG. 3 . The samples in the DIFF rows in examples 512 and 542 and the SUM rows in examples 522, 532 and 552 have substantially lower magnitudes than the corresponding signal samples, or x(i). The DIFF samples and the SUM samples are examples of modifiedsamples 432 that are input toencoder 440 inFIG. 4 . - Alternative embodiments of
compressor 210 for lossy encoding include the following configurations. One approach for lossy encoding is to reduce the data width, or dynamic range, of the samples to be compressed. A programmable attenuator can attenuate thedigital samples 101 to reduce the data width prior to demultiplexing. Alternatively, programmable shifters can shift out one or more least significant bits from each sample of thedigital signal 101, also reducing the data width. In another alternative,arithmetic operator 430 orencoder 440 can eliminate one or more least significant bits. Each of these alternatives for lossy encoding can be controlled by thecompression controller 212. Additional alternatives for control of lossless and lossy compression can be based on a desired bit rate for compressed signal data atcompressor output 211, a desired signal quality of the decompressedsignal 221 or a characteristic of the frequency domain representation calculated by theprocessor 130, as described below. -
Decompressor 220 reverses the operations ofcompressor 210 to reconstruct the samples of thedigital signal 101 from the compressed signal samples. The compressed signal samples are decoded, for example by Huffman decoding, to form reconstructed modified samples. The inverse operations of thearithmetic operator 430 and theprogrammable inverter 420 are applied to the reconstructed modified samples. The resulting reconstructed signal samples, which may or may not be in chronological order, can be reordered into chronological order to form a reconstructed sample stream in the same order as the original digital signal samples. A multiplexer can perform the reordering operations. - In embodiments where the
processor 130 performs a fast transform algorithm with decimation in time, the reconstructed signal samples, x′(i), can be reordered as appropriate for input to the fast transform algorithm, instead of chronological order. For a decimation in time FFT algorithm of length N samples there are N/2 FFT “butterfly” operators. Each butterfly operator has the two input samples that are separated by N/2 intervals, i.e. the ith butterfly operator has inputs x′(i) and x′(i+N/2) for i=[0, (N/2)−1]. The reconstructed signal samples x′(i) can be reordered as appropriate for inputs to the FFT butterfly operators. -
Processor 130 can perform operations in addition to the FFT that are useful for the particular application.Processor 130 can multiply the reconstructed signal samples by weights, such as window function weights, prior to the FFT.Processor 130 can extend the number of input samples for the FFT by zero-padding or extrapolation by K samples to form M=N+K input samples. Since the FFT requires that the number of input samples be a power of 2, zero-padding or extrapolation can produce M input samples, where M is a power of 2. Nonlinear functions of the samples followed by FFT are often performed in detection and parameter measurement applications.Processor 130 can calculate nonlinear functions of the reconstructed signal samples x′(i), including magnitude, phase, power operations x′r(i), delay-and-multiply operations x′(i)x′(i−j) and other operations known to those skilled in the art. After the FFT, the processor can perform additional operations on the samples X′(k) of the frequency domain representation. Functions useful for detection and parameter measurement applications include magnitude, phase, power operations X′r(k), frequency-shift-and-multiply operations X′(k)X′(k−m) and other operations. Another step in detection and measurement applications is determining the location of a peak in the frequency domain representation. Peak detection often includes testing whether a function of X′(k), such as the magnitude, crosses a threshold. - In applications involving peak detection, lossy compression can be applied without compromising detector performance. The increased frequency domain resolution enabled by lossy compression can even improve detector performance. When an application has fixed capture memory resources, compression effectively increases the depth of
capture memory 110. When an application has a limited data transfer bandwidth, compression effectively increases the bandwidth ofdata transfer interface 120. The detection of two closely spaced sinusoidal signals in noise is an operation underlying many signal processing applications, including multiple signals detection, parameter estimation and array based direction-finding.FIGS. 7 a and 7 b give examples showing improved detector performance whencompressor 210 applies lossy compression.FIG. 7 a shows the magnitude spectrum of a signal resulting from a FFT applied to a signal with two closely spaced sine waves in noise where FFT length N=2048 samples. A detector using this calculation would fail to detect the two signals. The frequency domain resolution is insufficient to distinguish two peaks corresponding to the two sinusoids, so only asingle peak 701 is present.FIG. 7 b shows the magnitude spectrum resulting from the FFT of length N=8192 samples applied to decompressed samples resulting decompression of fixed-rate lossy compressed signal samples with a compression ratio of 4:1. The methods of the preferred embodiment described above were applied for compression and decompression. Twopeaks peaks - The FFT or other frequency transform of the decompressed signal samples provides the opportunity for feedback control to optimize compression performance.
Processor 130 can analyze the frequency domain representation of the decompressed signal samples to produce optimized control parameters forcompression controller 212,decompression controller 222 and/or other elements in the system ofFIG. 2 . The signal center frequency is a parameter that can be measured in the frequency domain and used to adjust the sample rate of thedigital signal 101 or the sample rate applied byADC 102 toanalog signal 100 to improve compression performance. The amplitude range of modified samples is reduced when the center frequency fc equals or is close to the sample rate fs divided by a certain small integers. The examples given inFIG. 3 show the amplitudes of modified samples for center frequencies of fs/6, fs/4, fs/3 and fs/2. The adjusted sample rate would ideally result in the center frequency being centered in one frequency bin in the in signal spectrum, or the magnitude of the frequency domain representation. To find an optimum sample rate, the magnitude of the frequency domain representation, or signal spectrum, is analyzed to estimate the center frequency. The measured center frequency fc is used to select a sample rate where the ratio fs/fc is as close as possible to theintegers compression controller 212 can provide the selected sample rate to thecompressor 210 viacompression control 214. Thecompressor 210 can resampledigital signal 101 at the selected sample rate using well known techniques of multirate filtering prior to compression operations. In embodiments that include anADC 102, the sample rate of theADC 102 can be adjusted to the selected sample rate. These alternatives for selecting and adjusting the sample rate are also described in the '533 patent with respect toFIGS. 31 to 34 therein. Theprocessor 130 can also analyze the signal spectrum to estimate the noise floor and SNR of the decompressed signal samples. The noise floor and SNR measurements indicate the signal quality of the decompressed signal. These can be used bycompression controller 212 anddecompression controller 222 to adjust appropriate compression control parameters for fixed-quality lossy compression. For example, the noise floor can be estimated from frequency domain values by forming a histogram of the magnitudes of the signal spectrum. The histogram bin with the highest number of occurrences is selected. The magnitude associated with the selected histogram bin provides the noise floor estimate. This technique for estimating the noise floor is also described in the '533 patent with respect toFIG. 18 . - Correspondences between elements of the preferred embodiment described above for
compressor 210,decompressor 220,compression controller 212 anddecompression controller 222 and the figure elements of the '533 patent are described in the following. Thecompressor 210 of the preferred embodiment performs operations included in the compression subsystem 400 in the '533 patent. Theprogrammable demultiplexer 410 and theprogrammable inverter 420 of the preferred embodiment perform operations that are included in the preprocessor 106, described in the '533 patent with respect toFIGS. 12-15 . Thearithmetic operator 430 and theencoder 440 of the preferred embodiment perform operations that are included in thecompressor 110 of the '533 patent. Thedecompressor 220 of the preferred embodiment performs operations included in thedecompression subsystem 440 in the '533 patent. The decoding and inverse of the arithmetic operations for decompression in the preferred embodiment are included in the decompressor 124 of the '533 patent. The programmable inverter and multiplexer for decompression of the preferred embodiment are included in the operations of the postprocessor 128 in the '533 patent, described with respect toFIGS. 16 and 17 . Thecompression controller 212 anddecompression controller 222 of the preferred embodiment perform operations included in the control block 144 of the '533 patent. - When the
ADC 102 comprises a TIADC, thecompressor 210 can be configured to take advantage of the parallel structure of a TIADC.FIG. 8 is block diagram of a data conversion and compression system for a signal sampled by a TIADC. In this example, theTIADC 812 includes fourparallel ADCs 812 i. Theparallel ADCs 812 i sample theanalog signal 100 at consecutive sampling intervals to form a plurality ofconsecutive signal samples 820. Eachsignal sample 820 i is input to a correspondingprogrammable inverter 810 i of a plurality ofprogrammable inverters 810. Eachprogrammable inverter 810 i selectively invertssignal sample 820 i according to aninverter control parameter 821. The inverter control parameter controls inversion based on the ratio of the sample rate to the center frequency, as described with respect toinverter control column 540 inFIG. 5 . A plurality ofmultiplexors 840 receives inputs selected from the plurality ofinverter output samples 830. Eachinverter output sample 830 i is distributed to at least 1multiplexor 840 j (not equal to i) corresponding to asignal sample 820 j that is separated by at least one sampling interval fromsignal sample 820 i. Eachmultiplexor 840 j receives up to threeinverter output samples 830 i, (i not equal to j) corresponding to separations of up to three sampling intervals fromsignal sample 820 j. Eachmultiplexor 840 i selects amultiplexor output sample 850 i from among theinverter output samples 830 j, where j does not equal i, input to themultliplexor 840 i. Themultiplexor output sample 850 i is selected according to amultiplexor control parameter 860. Themultiplexor control parameter 860 controls the sample selected based on the ratio of the sample rate to the center frequency, as described above with respect todemux control column 530 inFIG. 5 . The plurality of multiplexor output samples 850 andsignal samples 820 are input to a plurality ofadders 870. Eachadder 870 i addsmultiplexor output sample 850 i with itscorresponding signal sample 820 i to form a corresponding modifiedsample 880 i. Each modifiedsample 880 i corresponds to one of the options for y(i) in the modifiedsample column 550 inFIG. 5 , based on the ratio of the sample rate to the center frequency.Encoder 440 compresses the plurality of modifiedsamples 880 to producecompressed samples 211.Encoder 440 applies bit packing strategies well known to those skilled in the art as described above with reference toFIG. 4 .Compressed samples 211 can then be efficiently stored in memory or transferred over a data transfer interface, as indicated byblock 890. Other alternatives for compression of signal samples output from a TIADC are also described in the '771 application. - An alternative embodiment for
compressor 210 can use relatively simple lossy compression techniques, such as the removal of one or more least significant bits of samples, combined with bit packing. For example, a signal processing system incorporating 16-bit ADC for data acquisition can achieve 2:1 compression by storing the upper 8 bits of each 16-bit sample. Similarly, storing only the upper 4 bits achieves 4:1 compression. This compression technique suffers from a rise in noise floor and a corresponding decrease in SNR. While this embodiment is easily implemented, the distortion is significantly worse than that of preferred compression methods described above. - The present invention can be implemented in a system that includes signal capture followed by storage or transfer prior to frequency domain processing, including spectrum analyzer and signal detection systems. The present invention is applicable to a spectrum analyzer system that processes an input digital signal or includes an ADC to convert an input analog signal to a digital signal. A preferred implementation integrates the compressor of the present invention into the data acquisition portion of a spectrum analyzer system or other detection system. The compressor can be integrated into an application specific integrated circuit (ASIC) that includes an ADC. Alternatively, the compressor can be implemented in a separate, stand-alone ASIC that can be coupled to the output of an ADC chip. The stand-alone ASIC implementation can be fabricated using CMOS or other semiconductor process technology. Depending on the system architecture, the
decompressor 220,decompression controller 222 and theprocessor 130 may be incorporated in the same device, such as an ASIC or programmable processor, or on separate devices. Incorporating the present invention in a system may increase the gate count and power consumption. However, the benefits of compression will decrease other system costs, such as the cost of storage to capture the compressed samples or the cost of a bus or network to transfer the compressed samples todecompressor 220 andprocessor 130 for FFT or other transform calculation. - Embodiments of the present invention can also be implemented in one or more programmable processors. The programmable processors include software/firmware programmable processors such as computers, digital signal processors (DSP), microprocessors (including microcontrollers) and other programmable devices, and hardware programmable devices such as complex programmable logic devices (CPLD), field programmable gate arrays (FPGA) devices. Depending on the type of programmable processor, the program implementing the operations of the present invention is represented by software, firmware, netlist, bitstream or other type of processor executable instructions and data.
- Implementations of the present invention can perform compression or decompression in real time, that is, at least as fast as the sample rate of the digital signal. Compression and decompression operations include multiplexing operations, inversion operations and simple arithmetic operations including addition, subtraction and shifting. Embodiments using Huffman encoding also involve simple table look-ups.
- While the preferred embodiments of the invention have been illustrated and described, it will be clear that the invention is not limited to these embodiments only. Numerous modifications, changes, variations, substitutions and equivalents will be apparent to those skilled in the art, without departing from the spirit and scope of the invention, as described in the claims.
Claims (7)
1. In a frequency analysis system, a method for producing a frequency domain representation having a desired frequency domain resolution, wherein an input signal to the frequency analysis system is represented by signal samples having a sample rate and an uncompressed bit rate, wherein the frequency analysis system includes a data interface having an allocated capacity for storage or transfer of the signal samples that is limited to fewer than N of the signal samples at the uncompressed bit rate, the method comprising:
determining a number N of signal samples based on the desired frequency domain resolution, wherein the sample rate divided by N approximately equals the desired frequency domain resolution;
compressing the N signal samples to form compressed signal samples having a compressed bit rate, wherein the compressed bit rate is less than or equal to the allocated capacity;
transferring the compressed signal samples through the data interface;
decompressing the compressed signal samples to form N decompressed signal samples; and
calculating a frequency domain transformation the N decompressed signal samples to form frequency domain samples of the frequency domain representation having a frequency domain resolution that is less than or equal to the desired frequency domain resolution.
2. The method of claim 1 , wherein the signal is an analog signal, the method further comprising:
converting the analog signal to a digital form sampled at the sample rate and the uncompressed bit rate to produce the signal samples.
3. The method of claim 1 , wherein the data interface comprises a data storage device, the step of transferring further comprising storing the compressed signal samples in the data storage device and retrieving the compressed signal samples from the data storage device.
4. The method of claim 1 , wherein the data interface comprises a data transfer interface, the step of transferring further comprising transferring the compressed signal samples via the data transfer interface and receiving the compressed signal samples from the data transfer interface.
5. The method of claim 1 , wherein the frequency domain transformation is a discrete Fourier transform (DFT), a fast Fourier transform (FFT), a discrete sine transform (DST), a discrete cosine transform (DCT) or a z-transform.
6. The method of claim 1 , wherein the step of calculating a frequency domain transformation further comprises calculating magnitudes of the frequency domain samples to form a magnitude spectrum.
7. The method of claim 1 , wherein the step of compressing the N signal samples forms the compressed signal samples at a rate that is at least as fast as the sample rate.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/473,599 US20090254292A1 (en) | 2006-11-29 | 2009-05-28 | Frequency resolution using compression |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US86773406P | 2006-11-29 | 2006-11-29 | |
US11/734,967 US7558685B2 (en) | 2006-11-29 | 2007-04-13 | Frequency resolution using compression |
US12/473,599 US20090254292A1 (en) | 2006-11-29 | 2009-05-28 | Frequency resolution using compression |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/734,967 Continuation US7558685B2 (en) | 2006-11-29 | 2007-04-13 | Frequency resolution using compression |
Publications (1)
Publication Number | Publication Date |
---|---|
US20090254292A1 true US20090254292A1 (en) | 2009-10-08 |
Family
ID=39463655
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/734,967 Expired - Fee Related US7558685B2 (en) | 2006-11-29 | 2007-04-13 | Frequency resolution using compression |
US12/473,599 Abandoned US20090254292A1 (en) | 2006-11-29 | 2009-05-28 | Frequency resolution using compression |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/734,967 Expired - Fee Related US7558685B2 (en) | 2006-11-29 | 2007-04-13 | Frequency resolution using compression |
Country Status (2)
Country | Link |
---|---|
US (2) | US7558685B2 (en) |
WO (1) | WO2008067439A2 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8571159B1 (en) * | 2011-12-02 | 2013-10-29 | Altera Corporation | Apparatus and methods for high-speed interpolator-based clock and data recovery |
CN103475376A (en) * | 2013-09-24 | 2013-12-25 | 上海无线电设备研究所 | Radar Doppler return signal data compression method |
US20140119421A1 (en) * | 2012-10-29 | 2014-05-01 | Apple Inc. | Testing Radio-Frequency Performance of Wireless Communications Circuitry Using Fast Fourier Transforms |
US9007259B1 (en) | 2014-06-13 | 2015-04-14 | Advanced Testing Technologies Inc. | Flight line noise tester |
US9203459B2 (en) | 2013-04-18 | 2015-12-01 | Sikorsky Aircraft Corporation | Harmonic data transfer in rotary wing aircraft |
RU2756934C1 (en) * | 2020-11-17 | 2021-10-07 | Ордена Трудового Красного Знамени федеральное государственное образовательное бюджетное учреждение высшего профессионального образования Московский технический университет связи и информатики (МТУСИ) | Method and apparatus for measuring the spectrum of information acoustic signals with distortion compensation |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008152455A1 (en) * | 2007-06-13 | 2008-12-18 | Freescale Semiconductor, Inc. | Wireless communication unit |
KR101703207B1 (en) * | 2009-09-30 | 2017-02-06 | 알테라 코포레이션 | Enhanced multi-processor waveform data exchange using compression and decompression |
US8521460B2 (en) * | 2010-09-28 | 2013-08-27 | Tektronix, Inc. | Multi-domain test and measurement instrument |
EP2665208A1 (en) * | 2012-05-14 | 2013-11-20 | Thomson Licensing | Method and apparatus for compressing and decompressing a Higher Order Ambisonics signal representation |
US9342482B2 (en) * | 2012-11-12 | 2016-05-17 | Texas Instruments Incorporated | On-chip spectral analysis using enhanced recursive discrete Fourier transforms |
US10244504B2 (en) | 2013-03-15 | 2019-03-26 | DGS Global Systems, Inc. | Systems, methods, and devices for geolocation with deployable large scale arrays |
US10257728B2 (en) | 2013-03-15 | 2019-04-09 | DGS Global Systems, Inc. | Systems, methods, and devices for electronic spectrum management |
US11646918B2 (en) | 2013-03-15 | 2023-05-09 | Digital Global Systems, Inc. | Systems, methods, and devices for electronic spectrum management for identifying open space |
US10257729B2 (en) | 2013-03-15 | 2019-04-09 | DGS Global Systems, Inc. | Systems, methods, and devices having databases for electronic spectrum management |
US9622041B2 (en) | 2013-03-15 | 2017-04-11 | DGS Global Systems, Inc. | Systems, methods, and devices for electronic spectrum management |
US10257727B2 (en) | 2013-03-15 | 2019-04-09 | DGS Global Systems, Inc. | Systems methods, and devices having databases and automated reports for electronic spectrum management |
US8750156B1 (en) | 2013-03-15 | 2014-06-10 | DGS Global Systems, Inc. | Systems, methods, and devices for electronic spectrum management for identifying open space |
US10271233B2 (en) | 2013-03-15 | 2019-04-23 | DGS Global Systems, Inc. | Systems, methods, and devices for automatic signal detection with temporal feature extraction within a spectrum |
US10231206B2 (en) | 2013-03-15 | 2019-03-12 | DGS Global Systems, Inc. | Systems, methods, and devices for electronic spectrum management for identifying signal-emitting devices |
US10237770B2 (en) | 2013-03-15 | 2019-03-19 | DGS Global Systems, Inc. | Systems, methods, and devices having databases and automated reports for electronic spectrum management |
US10299149B2 (en) | 2013-03-15 | 2019-05-21 | DGS Global Systems, Inc. | Systems, methods, and devices for electronic spectrum management |
US10219163B2 (en) | 2013-03-15 | 2019-02-26 | DGS Global Systems, Inc. | Systems, methods, and devices for electronic spectrum management |
EP3187884B1 (en) * | 2015-12-28 | 2020-03-04 | Rohde&Schwarz GmbH&Co. KG | A method and apparatus for processing measurement tuples |
US10700794B2 (en) | 2017-01-23 | 2020-06-30 | Digital Global Systems, Inc. | Systems, methods, and devices for automatic signal detection based on power distribution by frequency over time within an electromagnetic spectrum |
US10498951B2 (en) | 2017-01-23 | 2019-12-03 | Digital Global Systems, Inc. | Systems, methods, and devices for unmanned vehicle detection |
US10459020B2 (en) | 2017-01-23 | 2019-10-29 | DGS Global Systems, Inc. | Systems, methods, and devices for automatic signal detection based on power distribution by frequency over time within a spectrum |
US10529241B2 (en) | 2017-01-23 | 2020-01-07 | Digital Global Systems, Inc. | Unmanned vehicle recognition and threat management |
CN107589424B (en) * | 2017-08-31 | 2021-12-17 | 努比亚技术有限公司 | Ultrasonic sampling method, device and computer readable storage medium |
WO2020030488A1 (en) * | 2018-08-07 | 2020-02-13 | Signify Holding B.V. | Compressive sensing systems and methods using edge nodes of distributed computing networks |
US10943461B2 (en) | 2018-08-24 | 2021-03-09 | Digital Global Systems, Inc. | Systems, methods, and devices for automatic signal detection based on power distribution by frequency over time |
US11362671B2 (en) * | 2019-03-25 | 2022-06-14 | Ariel Scientific Innovations Ltd. | Systems and methods of data compression |
CN111177823B (en) * | 2019-12-10 | 2022-09-27 | 南京理工大学 | Cavity expansion theoretical calculation method suitable for brick masonry penetration |
IL294187A (en) | 2019-12-23 | 2022-08-01 | Ariel Scient Innovations Ltd | Systems and methods of data compression |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5583784A (en) * | 1993-05-14 | 1996-12-10 | Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. | Frequency analysis method |
US5589763A (en) * | 1995-05-16 | 1996-12-31 | Texas Instruments Incorporated | Coherent undersampling digitizer for use with automatic field test equipment |
US7009533B1 (en) * | 2004-02-13 | 2006-03-07 | Samplify Systems Llc | Adaptive compression and decompression of bandlimited signals |
US7071852B1 (en) * | 2004-02-13 | 2006-07-04 | Samplify Systems Llc | Enhanced test and measurement instruments using compression and decompression |
US20080018502A1 (en) * | 2006-07-20 | 2008-01-24 | Samplify Systems Llc | Enhanced Time-Interleaved A/D Conversion Using Compression |
US7477999B2 (en) * | 2006-10-26 | 2009-01-13 | Samplify Systems, Inc. | Data compression for a waveform data analyzer |
-
2007
- 2007-04-13 US US11/734,967 patent/US7558685B2/en not_active Expired - Fee Related
- 2007-11-29 WO PCT/US2007/085887 patent/WO2008067439A2/en active Application Filing
-
2009
- 2009-05-28 US US12/473,599 patent/US20090254292A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5583784A (en) * | 1993-05-14 | 1996-12-10 | Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. | Frequency analysis method |
US5589763A (en) * | 1995-05-16 | 1996-12-31 | Texas Instruments Incorporated | Coherent undersampling digitizer for use with automatic field test equipment |
US7009533B1 (en) * | 2004-02-13 | 2006-03-07 | Samplify Systems Llc | Adaptive compression and decompression of bandlimited signals |
US7071852B1 (en) * | 2004-02-13 | 2006-07-04 | Samplify Systems Llc | Enhanced test and measurement instruments using compression and decompression |
US20080018502A1 (en) * | 2006-07-20 | 2008-01-24 | Samplify Systems Llc | Enhanced Time-Interleaved A/D Conversion Using Compression |
US7477999B2 (en) * | 2006-10-26 | 2009-01-13 | Samplify Systems, Inc. | Data compression for a waveform data analyzer |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8571159B1 (en) * | 2011-12-02 | 2013-10-29 | Altera Corporation | Apparatus and methods for high-speed interpolator-based clock and data recovery |
US8831157B1 (en) * | 2011-12-02 | 2014-09-09 | Altera Corporation | Apparatus and methods for high-speed interpolator-based clock and data recovery |
US20140119421A1 (en) * | 2012-10-29 | 2014-05-01 | Apple Inc. | Testing Radio-Frequency Performance of Wireless Communications Circuitry Using Fast Fourier Transforms |
US9203459B2 (en) | 2013-04-18 | 2015-12-01 | Sikorsky Aircraft Corporation | Harmonic data transfer in rotary wing aircraft |
CN103475376A (en) * | 2013-09-24 | 2013-12-25 | 上海无线电设备研究所 | Radar Doppler return signal data compression method |
US9007259B1 (en) | 2014-06-13 | 2015-04-14 | Advanced Testing Technologies Inc. | Flight line noise tester |
RU2756934C1 (en) * | 2020-11-17 | 2021-10-07 | Ордена Трудового Красного Знамени федеральное государственное образовательное бюджетное учреждение высшего профессионального образования Московский технический университет связи и информатики (МТУСИ) | Method and apparatus for measuring the spectrum of information acoustic signals with distortion compensation |
Also Published As
Publication number | Publication date |
---|---|
WO2008067439A3 (en) | 2008-07-24 |
WO2008067439A2 (en) | 2008-06-05 |
US7558685B2 (en) | 2009-07-07 |
US20080123731A1 (en) | 2008-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7558685B2 (en) | Frequency resolution using compression | |
US7650249B2 (en) | Data compression for a waveform data analyzer | |
US7088276B1 (en) | Enhanced data converters using compression and decompression | |
US7649484B1 (en) | Enhanced data converters using compression and decompression on a single integrated circuit | |
US7009533B1 (en) | Adaptive compression and decompression of bandlimited signals | |
US7071852B1 (en) | Enhanced test and measurement instruments using compression and decompression | |
US20090073006A1 (en) | Enhanced control for compression and decompression of sampled signals | |
US6760673B2 (en) | Method and apparatus for waveform measurement instrument | |
WO2008011315A9 (en) | Enhanced time-interleaved a/d conversion using compression | |
JP5448452B2 (en) | Data compression to generate spectral trace | |
KR100965473B1 (en) | Signal measuring apparatus and semiconductor testing apparatus | |
US20060182209A1 (en) | Multi-sampling monobit receiver | |
US6531971B2 (en) | Method for monitoring information density and compressing digitized signals | |
CN106375039B (en) | A method of improving vector network analyzer receiver dynamic range | |
US8228331B2 (en) | Method and device for displaying ordinate-abscissa value pairs on a display device | |
Wu et al. | Time domain averaging based on fractional delay filter | |
TN | Introduction to digital signal processing | |
CN109991084B (en) | Signal processing method and material testing machine | |
Kavanagh | FIR differentiators for quantized signals | |
US20240003946A1 (en) | Spectrum Analyzer, System and Method for Outputting Data from a Spectrum Analyzer | |
GB2507419A (en) | Processing a signal to avoid aliasing and errors due to windowing | |
Zhang et al. | Reducing frequency-domain artifacts of binary image due to coarse sampling by repeated interpolation and smoothing of Radon projections | |
JPH0875842A (en) | Radar signal processor | |
Harris et al. | Cost effective, versatile, high performance, spectral analysis in a synthetic instrument | |
US6724337B1 (en) | Method and device for analog digital converting a signal including a low-frequency component |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: EXPRESSLY ABANDONED -- DURING EXAMINATION |