1. Field
The present invention relates generally to wireless communications, and more specifically to Radio Data System data demodulation.
2. Background
The capabilities of cellular handheld devices increase every day as advances in microchip technology enable more circuits and functionality to be built into the devices. Consequently, cellular handheld devices have quickly evolved beyond simple communication devices to become personal communication/entertainment/information resources. One source of information being incorporated into cellular handheld devices is the Radio Data Systems (RDS), which communicates broadcast radio digital data to properly equipped FM receivers. Broadcast radio data is typically used in FM radio stations, which transmit stereo-multiplex or monophonic (mono) signals in the VHF frequency band. This data may be obtained by any FM radio having the necessary circuitry and functionality to receive and decode the RDS signal. Broadcast radio data can be used by the FM radio stations to provide information relating to their radio broadcast. An FM radio, which receives the broadcast radio data, can reproduce that data on a display.
RDS is a technology that has been deployed in several countries around the world. Within the United States, the equivalent system is known as the radio broadcast data system (RBDS). For simplicity, references to RDS herein are intended to encompass RBDS, and the description of RDS technology is based on the U.S. RBDS implementation.
The RDS system makes use of a 57 kilohertz (kHz) subcarrier within an FM frequency band to transmit a low data rate signal. The RDS data stream is produced by the FM broadcaster, and so is unique to the broadcasting station. Not all FM broadcasts include RDS data, as it is an option available to broadcasters, but not a requirement. Data is transmitted at a rate of 1187.5 bits per second, but with error encoding and other overhead communication, the system transmits about 300 bits per second of usable data.
The 57 kHz subcarrier used by the broadcaster to carry the data must be coherently generated as a third harmonic of the 19 kHz pilot tone used by the broadcasting station so that the data can be decoded by a receiver with no frequency offset. Many FM broadcasters in stereo mode fail to meet RDS standard specifications in terms of RDS 57 kHz subcarrier phase alignment with the 3rd harmonic of 19 kHz pilot. This failure results in a residual frequency error on the received RDS signal and as a result, the RDS data cannot be demodulated. The widespread use of RDS in mono broadcasting having no 19 kHz pilot also results in the inability to demodulate RDS data.
There is therefore a need in the art for an easily implemented method and apparatus for switching between Coherent and Non-Coherent demodulation based on computed metrics, in cases where FM broadcasting stations do not adhere to specifications either by broadcasting non coherent RDS data where the 57 kHz data carrier is not locked to the 19 kHz pilot tone or by broadcasting RDS data in a mono signal having no 19 KHz pilot.
The word “exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any embodiment described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments.
The terms “wireless device” and “mobile device” as used herein refers to a wireless communication device such as a cellular telephone, wireless terminal, user equipment, laptop computer, High Data Rate (HDR) subscriber station, access terminal, or other personal communication system (PCS) device. The device may be either mobile or stationary.
The term “non-coherent Radio Data Signal” as used herein refers to a Radio Data Signal having no 19 kHz pilot, or having a 57 kHz subcarrier that is not synchronized to a 19 kHz pilot. A “non-coherent Radio Data Signal” is a Radio Data Signal having an unsynchronized subcarrier.
Many broadcasting stations in stereo mode, fail to meet RDS standard specifications in terms of RDS 57 kHz subcarrier phase alignment with a 3rd harmonic of the 19 kHz pilot. Failure to maintain phase alignment results in a residual frequency error on the RDS signal prohibiting demodulation and decoding of broadcast data. The use of RDS in Mono broadcasting having no pilot tone is also widespread. The disclosed embodiments resolve this frequency offset or lack of pilot signal comprising a non-coherent demodulator and a time tracking algorithm. In Mono broadcasting, a local 57 kHz free running signal reference is generated and then used to demodulate the RDS data in non-coherent mode.
An exemplary utilization of the RDS data of this disclosure is for the European RDS standard, which is defined in the European Committee for Electrotechnical Standardization, EN 50067 specification. Another exemplary utilization of the RDS data of this disclosure is for the North American radio broadcast data system (RBDS) standard (also referred to as NRSC-4), which is largely based on the European RDS standard. As such, the RDS data of this disclosure is not limited to one or more of the above standards/examples. The RDS data can include, additionally or alternatively, other suitable information related to a radio transmission.
A receiver 102 that receives the RDS data can reproduce that data on a display of the receiver or a host system. In this example, the receiver 102 is depicted as hosted by a car. However, receiving station 102 should not be limited as such, and can also represent, for example, a person, another mobile entity/device, or a stationary entity/device. Furthermore, the receiver can represent a computer, a laptop computer, a telephone, a mobile telephone, a personal digital assistant (PDA), an audio player, a game console, a camera, a camcorder, an audio device, a video device, a multimedia device, a component(s) of any of the foregoing (such as a printed circuit board(s), an integrated circuit(s), and/or a circuit component(s)), or any other device capable of supporting RDS. A host system can be stationary or mobile, and it can be a digital device.
I and Q arms of the received signal are oversampled and processed separately by matched filters 202a and 202b respectively. The matched filters 202a and 202b convolve the I and Q samples with matched filter coefficients to produce improved oversampled I and Q filtered signal outputs. In one exemplary embodiment, 16 times oversampling is produced. One skilled in the art would understand that other embodiments may produce any number of oversamples without departing from the scope of the invention. The oversampled filtered signals, having 16 samples of the transmitted bit symbol, are input to Signal Magnitude Estimator 204. Signal Magnitude estimator 204 detects the peak signal magnitude values of the 16 samples using signal amplitude estimations for input to Bit Synchronizer 206.
Bit Synchronizer 206 performs time tracking of the 16 times oversampled matched filtered signals determining the optimal sampling point and also when the peak sampling point rolls over on either ends to perform appropriate bit Add/Drop from the samples. Time tracking is achieved by monitoring the peak index calculated in the bit synchronizer. The bit synchronizer averages the 16 sample phases in a bit period, over a programmable number of bits. In the exemplary embodiment having 16 times oversampling, the number of bits is 64. One skilled in the art would understand that other embodiments may produce any number of bits without departing from the scope of the invention. Thus, the peak index of the exemplary embodiment is updated every 64 bits and this peak index is used to demodulate the received signal at the end of every bit boundary. In the event that the peak index shifts from 0 to 15, an additional bit is inserted. In a simplified embodiment, the same bit is repeated. If the peak index shifts from 15 to 0, a bit is dropped. In exemplary embodiments, a 1-bit register (not shown) allows selection between Coherent and Non Coherent modes of operation. A programmable 5-bit register (not shown) sets a threshold value needed for the bit add/drop mechanism.
Thus, the best sample of the 16 samples is selected by Bit Synchronizer 206 by averaging a running sum of the signal magnitudes over a predetermined window to calculate a peak sample index from the 16 samples output by matched filters 202a and 202b using the running sums and Samplers 208a and 208b.
The best sample selected by Bit Synchronizer 206 is input to differential decoder 210 for determination of its binary data bit value. Differential Decoder 210 outputs the received demodulated RDS data bit value of 0 or 1. The differential decoding operation of the differential decoder 210 is detailed below in
Coherent demodulation mode is compatible with any transmission having a 57 kHz subcarrier locked to a 19 kHz pilot. This mode allows RDS data to be received from broadcast stations that adhere to RDS specifications with improvement in sensitivity compared to non-coherent demodulation mode. Coherent demodulation mode will switch to non-coherent demodulation mode of operation if coherent mode data demodulation is unsuccessful, becomes degraded, or the received signal is broadcast from a mono station. Non-Coherent demodulation mode is compatible with any stereo broadcast station whose 57 kHz signal is not locked to its 19 kHz pilot or any mono broadcast station.
Operational mode selection begins in step 402 when a new broadcast signal is received. Control flow proceeds to step 404.
In step 404, the receiver determines whether the received broadcast signal comprises a 19 kHz pilot signal. If a 19 kHz pilot signal is present, control flow proceeds to step 406 where synchronization of the 57 kHz RDS data subcarrier will be examined to determine synchronization. Otherwise, control flow proceeds to step 410 for processing a mono signal having no pilot.
In step 406, if a synchronized 57 kHz RDS data sub-carrier, in phase with the 19 kHz pilot signal, is present control flow proceeds to step 408 where RDS data is demodulated in coherent mode. Otherwise, control flow proceeds to step 412 where RDS data is demodulated in non-coherent mode. Non-coherent RDS data demodulation mode is detailed in
In step 410, a free running 19 kHz and/or a 57 kHz signal is locally generated and control flow proceeds to 412 where RDS data is demodulated from the mono signal in non-coherent mode.
In step 504, I and Q arms of the received signal are processed separately by convolving the I and Q samples with matched filter coefficients to produce multiple improved bit samples. Control flow proceeds to step 506.
In step 506, a bit synchronization process selects the best sample from the multiple improved samples. Control flow proceeds to step 510.
In step 510, the selected sample is differentially decoded to produce a binary data bit value of either 0 or 1.
The methodology for RDS non-coherent demodulation described herein may be implemented by suitable instructions operating on the microprocessor 612 and memory 608 of Wireless device 600, but is certainly not limited to such an implementation and may alternatively be implemented in hardware circuitry. The microprocessor 612 is connected to power management 610 and memory 608 having code or instructions directing the microprocessor 612 to perform RDS non-coherent demodulation. Memory 608 may comprise instructions for performing hybrid RDS non-coherent demodulation. The memory 608 may include RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium or computer readable media known in the art. In an exemplary aspect, the control processor 612 executes instructions stored in memory 608 according to the steps of
Those of skill in the art would understand that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
The various illustrative logical blocks, modules, and circuits described in connection with the embodiments disclosed herein may be implemented or performed with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal. In the alternative, the processor and the storage medium may reside as discrete components in a user terminal.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
The present application for patent claims priority to Provisional Application No. 61/394,299 entitled, “RADIO DATA SYSTEM MONOPHONIC DEMODULATION” filed Oct. 18, 2010, and assigned to the assignee hereof and hereby expressly incorporated by reference herein.
Number | Date | Country | |
---|---|---|---|
61394299 | Oct 2010 | US |