An integrated circuit comprises a main bus, one or more integrated processors, an external bus interface, memory, internal bus controller, a signal analyzer, timers, reset/clock generator, radio controller, optional data converters, and optional radio. The signal analyzer performs both time-domain and frequency-domain analysis of the input signal and supplies data to the one or more integrated processors for signal classification.
|
1. An integrated circuit, comprising:
a bus;
one or more integrated processors connected to the bus; and
a signal analyzer connected to the bus, the signal analyzer including a time-domain analyzer that provides time-domain data that indicates time-domain characteristics of signals and a frequency-domain analyzer that provides frequency-domain data that indicates frequency-domain characteristics of the signals,
wherein the one or more integrated processors cause adaptive scanning to be performed on two or more communications channels based upon at least the time-domain data provided by the time-domain analyzer and the frequency-domain data provided by the frequency-domain analyzer, wherein the adaptive scanning includes one or more of increasing a dwell time for at least one communications channel from the two or more communications channels or changing a scanning sequence for the two or more communications channels.
11. An integrated circuit, comprising:
a bus;
means for processing; and
means for performing signal analysis connected to the bus, the means for performing signal analysis including means for performing time-domain analysis that provides time-domain data that indicates time-domain characteristics of signals and means for performing frequency-domain analysis that provides frequency-domain data that indicates frequency-domain characteristics of the
wherein the means for processing causes adaptive scanning to be performed on two or more communications channels based upon at least the time-domain data provided by the means for performing time-domain analysis and the frequency-domain data provided by the means for performing frequency-domain analysis, wherein the adaptive scanning includes one or more of increasing a dwell time for at least one communications channel from the two or more communications channels or changing a scanning sequence for the two or more communications channels.
2. The integrated circuit of
3. The integrated circuit of
4. The integrated circuit of
5. The integrated circuit of
6. The integrated circuit of
7. The integrated circuit of
8. The integrated circuit of
9. The integrated circuit of
10. The integrated circuit of
12. The integrated circuit of
13. The integrated circuit of
14. The integrated circuit of
15. The integrated circuit of
16. The integrated circuit of
17. The integrated circuit of
18. The integrated circuit of
19. The integrated circuit of
20. The integrated circuit of
|
This application claims benefit as a Continuation-in-part of application Ser. No. 12/357,307, filed Jan. 21, 2009, entitled “Adaptive Channel Scanning For Detection and Classification Of RF Signals,” the entire contents of which is hereby incorporated by reference as if fully set forth herein, under 35 U.S.C. §120. The applicant(s) hereby rescind any disclaimer of claim scope in the parent application(s) or the prosecution history thereof and advise the USPTO that the claims in this application may be broader than any claim in the parent application(s).
This invention relates generally to radio frequency signal analysis.
The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, the approaches described in this section may not be prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
In many wireless communications applications, the available RF band is broken up into channels. For example, the 802.11g band is segmented into 14 channels (depending on the regulatory domain) which, theoretically, allows for at least three, non-overlapping channels of 20 MHz bandwidth, and thus three simultaneous non-interfering wireless links.
To exploit channelization of the band, most RF transceivers are designed for best performance (e.g. noise, linearity, interference rejection) in a single or perhaps a pair of channels. One frequently-used architecture for low-cost RF transceivers is shown in
This so-called direct conversion receiver has an RF bandwidth that covers multiple channels. In the case of 802.11g, RF bandwidth covers approximately 2.4 GHz to 2.5 GHz. An antenna 102 receives the signal. A front-end bandpass filter (BPF) 104 limits the RF band signal. The band-limited RF signal is amplified by a low-noise amplifier (LNA) 106 prior to a frequency shift to a baseband (BB) frequency using a mixer 110 receiving input from synthesizer 108. The final bandwidth of the receiver is defined by a pair of lowpass filters (BB LPF) 112. The baseband signal is further amplified by a variable-gain amplifier (VGA) 114. Control signals 116 can be applied to one or more of the LNA 106, synthesizer 108, BB LPF 112 and VGA 114 to adjust performance.
For the architecture illustrated in
For simplicity, the channels are shown to be disjoint with no gaps between them. Also for simplicity, the time to complete a channel change is assumed to be zero. The dwell time in each channel is the same.
In the channel configuration illustrated in the drawings, five channels are required to cover the RF band. Consequently, when the dwell time in each channel is the same, the duty factor for analysis in each channel is 1/5. Continuous scanning would be accomplished by repeating the channel sequence.
If there is no a priori indication of a signal-of-interest (SOI), specifically no knowledge of what channel in the band that the SOI would be likely to occur, then the scanning shown in
If a SOI is suspected to occupy one or more channels more frequently than others, then the scanning shown in
Examples are shown in
The proliferation of Wi-Fi enabled devices can be traced back to the first 802.11 standards promulgated by the Institute of Electrical and Electronics Engineers (IEEE) in 1997. Consumers are probably most familiar with devices using the 802.11b and 802.11g standards that operate in the Industrial Scientific Medical (ISM) frequency band located around 2.4 GHz. These devices are susceptible to interference from other devices, such as Bluetooth-enabled devices, microwave ovens, cordless telephones, and baby monitors.
As newer 802.11 standards, such as 802.11n, enter the marketplace, devices operating under the newer standards may be expected to ‘play well with others’ on frequency bands that are increasingly congested with signals from other 802.11 devices, as well as the devices lacking any type of 802.11 protocol but whose signals share the frequency bands, such as microwave ovens and cordless communication devices such as baby monitors.
In other non-consumer-based applications, it may be important to discern a signal of interest (SOI) from a signal that may contain both noise from various sources and other signals, in a signal environment susceptible to interference from both consumer devices, as well as from industrial signals, such as radar pulses and wireless local area network communications.
In the figures of the accompanying drawings like reference numerals refer to similar elements.
CONTENTS
In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the present invention. Various aspects of the invention are described below.
According to one aspect of the invention, a method for monitoring communications channels comprises: determining performance data for a plurality of communications channels during a first monitoring period, wherein a particular communications channel from the plurality of communications channels is monitored for a first amount of time during the first monitoring period; determining, based upon the performance data, that the particular communications channel includes a signal of interest; in response to determining, based upon the performance data, that the particular communications channel includes the signal of interest, determining a second amount of time for monitoring the particular communications channel, wherein the second amount of time is greater than the first amount of time; and during a second monitoring period that occurs after the first monitoring period, monitoring the particular communications channel for the second amount of time.
According to one aspect of the invention, an integrated circuit for signal analysis comprises: a bus; one or more integrated processors connected to the bus, and a signal analyzer connected to the bus. The signal analyzer includes a time-domain analyzer and a frequency domain analyzer. The one or more integrated processors perform adaptive scanning based upon input provided by the signal analyzer. The one or more integrated processors also perform automatic classification algorithms.
I. Example Architecture
In an embodiment, baseband signal processor 530 digitizes the collected signal. In an embodiment, baseband signal processor 530 performs a fast Fourier transform (FFT) on the collected signal data. In an embodiment, baseband signal processor 530 applies windows to the collected signal data in order to reduce spectral leakage that may occur in an FFT of a sampled finite-duration signal.
In an embodiment, baseband signal processor 530 obtains time-domain signal information that may include one or more of the following features:
In an embodiment, baseband signal processor 530 obtains frequency-domain signal information that may include or more of the following features:
The quantities described above are merely illustrative, with variations possible depending on the type of information desired. For example, a measure of the center frequency could incorporate statistical definitions such as mean, median, or mode.
After processing by baseband signal processor 530, the resulting signal features are passed to signal classifier 540 for classification. Example classification methods that may be performed by signal classifier 540 are further described below with respect to
Signal discriminants output by signal classifier 540 are received by scanning logic 550. In an embodiment, signal type information is also displayed to a user or processed by other logic (not shown in
II. Example Process Flows
The following processes can be implemented in hardware, software, or any combination of hardware and software. For example, theses processes could be implemented in an ASIC. However, at least some of the blocks in these processes could be implemented by executing instructions on a processor. These blocks in the following processes are discussed in a particular order as a matter of convenience to facilitate explanation. The processes are not limited to the order in which the blocks are discussed or depicted in the figures.
In step 602 of
In step 604, channels are scanned according to the determined scanning protocol, resulting in a set of sampled data. While this illustration presupposes a fixed data sampling rate, the data sampling rate could be incorporated into the scanning protocol as a parameter that could be varied. For example, it could be determined that a lack of an identified SOI may be caused in part by a data sampling rate that is too low, and thus the data sampling rate could be increased for future scans. Similarly, a data sampling rate may be lowered in certain situations, leading to a decrease in processing time.
In step 606, the received signal data is processed. As previously explained with regard to baseband signal processor 530, several filtering and signal processing techniques may be applied to the signal data to obtain time-domain and frequency-domain information.
In step 608, the calculated time-domain and frequency-domain information is used to form signal discriminants used to identify a SOI.
Each shaded region of the plots shown on
For this non-limiting, illustrated example, the selected signal discriminant is the frequency and bandwidth where the peak value occurs in the channel. For each shaded region of
Thus, for the combination of the: (1) scanning protocol illustrated in
In the example shown above, the selection of the SOI can be made by relative comparison of all possible candidates, with the selected SOI corresponding to the candidate whose value lies furthest from the average of samples. Such a selection method could obtain accurate and quick results in a situation in which (1) the noise floor for all channels is low, (2) no channels suffer from interference, (3) the true SOI fails to satisfy comparison tests with respect to actual values, but (4) the true SOI stands out relative to the other candidates.
In an embodiment, the selection of the SOI can be made by comparison of all possible candidates to values predicted by a model. In an embodiment, the selection of the SOI can be made using maximum likelihood estimation techniques.
In an embodiment, the selection of the SOI can be made by comparison of all possible candidates to values supplied as input. The selection of the SOI can itself be adaptive, using a neural network or another adaptive or trainable algorithm trained with data taken from known signal type and discriminant combinations.
With reference back to step 610 of
In an embodiment, the dwell time is increased on the channel believed to contain the SOI. In an alternative embodiment, the dwell time for each channel is held constant while multiple visits of the channel believed to contain the SOI are made during a full scanning cycle. In an alternative embodiment, the duration of the complete scanning cycle is fixed, and each channel not believed to contain the SOI remains in the scanning cycle, but is allocated a shortened dwell time, while the channel believed to contain the SOI is allocated an increased dwell time.
Although not illustrated, the adaptive channel scanner and method may be used to locate an SOI which itself follows an arbitrary hopping sequence, such as a pseudo-random hopping sequence used as part of a transmission made using the Bluetooth standard. Such a protocol likely would not be sequential, and may not be synchronous should a transmission remain on.
Although not illustrated, the adaptive channel scanner and method may be used to locate multiple signals of interest, in which each SOI is distinguishable by one or more signature characteristics such as peak magnitude frequency power, pulse-repetition interval, or any combination of information produced by baseband signal processor 530. For example, in an environment containing two radar signals, with one radar signal located closer to the adaptive channel scanner than the second radar signal, the adaptive channel scanner could differentiate between the two signals via a combination of differing pulse-repetition intervals and power-spectral densities, even if the radars operated on a common frequency.
III. Example Signal Analysis Data Flow
Data flow begins upon receipt of input signal waveforms by signal sensor 910. The system starts by receiving signal waveforms from the signal sensor. In an embodiment, signal sensor 910 is an internal radio implemented on the signal analysis integrated circuit which houses the hardware, software, and firmware that is the subject of this application. Example signal analysis integrated circuit architectures are discussed later below.
In an embodiment, signal sensor 910 is an external radio. In an embodiment, signal sensor is an external sensor, such as a hydrophone. Should signal sensor 910 either comprise an internal or external radio, once the radio demodulates received RF signals to baseband, then the signal leaving signal sensor 910 comprises in-phase (abbreviated I) and quadrature (abbreviated Q) components, shown in
Should signal sensor 910 not comprise a radio, then the signal leaving signal sensor 910 may comprise an analog baseband signal (with I and Q components).
I-data leaving signal sensor 910 enters ADC 912, and Q-data leaving signal sensor 910 enters ADC 914. Output of each of ADC 912 and ADC 914 is a digital representation of analog signals. Each digital representation is quantized to a finite number of bits. ADC 912 and ADC 914 each sample the analog signals at a specific clock frequency, known as the “sample frequency”. The sample frequency may be, for example, 80 MHz or equivalently 80 million samples per second.
Digital I-data leaving ADC 912 and digital Q-data leaving ADC 914 is then fed into front-end signal analyzer 918. Front-end signal analyzer 918 performs digital filtering and DC offset removal. Filtered I-data and filtered Q-data leaves front end signal analyzer 918 and enters signal analyzer 922 for determination of the time- and frequency-domain characteristics of the signal, along with FFT data suitable for spectrum analysis.
Signal analyzer 922 packetizes the time- and frequency-domain output for input to memory interface/DMA engine 926, which writes the signal features and FFT data to memory. This memory may be internal 930 to the IC or external 934 to the IC. External memory is accessed using an external bus that is connected to the IC.
IV. Example Signal Analysis Integrated Circuit Architecture
Main bus 1003 provides electrical connections among one or more integrated processors 1002, external bus interface 1006, memory 1014, signal analyzer 1020, timers 1050, and radio controller 1058. Control of main bus 1003 is provided by internal bus controller 1018. In the discussion below, components connected to main bus 1003 are first described, followed by a description of signal analyzer 1020.
A. Components Connected to Main Bus (Other Than Signal Analyzer)
Although only one connection from one or more integrated processors 1002 to main bus 1003 is displayed in
Each of the one or more integrated processors 1002 is programmable and used to process the time and frequency domain feature data provided by signal analyzer 1020. In an embodiment, one or more of the integrated processors 1002 is based on a RISC architecture and may include programmable firmware, instruction memory and cache, data memory and cache.
The programmable firmware provides for programming for many different applications. In an embodiment, at least one of the one or more integrated processors 1002 has control over a signal sensor, such as an external radio, connected to integrated circuit 1000. In an embodiment, at least one of the one or more integrated processors 1002 may tune an external radio to several different channels over a specific period, while signal analyzer 1020 collects data from each channel. In an embodiment, at least one of the one or more integrated processors 1002 may collect time domain and frequency domain features of pulses received by signal analyzer 1020 and run algorithms on the collected pulse data in order to classify the source of the received pulses.
Communications between integrated circuit 1000 and external devices is provided by external bus interface 1006 and bus bridge 1010. In an embodiment, external bus interface 1006 comprises a Peripheral Component Interface (PCI) bus interface. In an embodiment, external bus interface 1006 comprises a PCI Express bus interface. In an embodiment, external bus interface 1006 comprises a Universal Serial Bus (USB).
Bus bridge 1010 bridges the primary bus used by the integrated circuit 1000 to communicate with an external computer or device with a secondary bus interface. Devices attached to this secondary bus can then interface with the external computer or device on the primary bus through the bus bridge 1010.
Integrated circuit additionally contains memory 1014 connected to main bus 1003. Memory 1014 may include any types of volatile and non-volatile memory, depending upon a particular implementation. Memory 1014 is accessible via bus 1003, e.g., by integrated processors 1002 or signal analyzer 1020.
Timers 1050 communicate with main bus 1003 and with signal analyzer 1020. Timers 1050 (and connected reset/clock generator 1054) provide several general purpose timers that may be used by one or more integrated processors 1002. Timers 1050 may also be programmed to generate an interrupt signal to be sent to one or more integrated processors 1002 at a specified time. Reset/clock generator 1054 comprises a system timer which reports how long integrated circuit 1000 has been in operation. Signal analyzer 1020 also using timing information from reset/clock generator 1054 to time stamp “datagrams” or “feature vectors” created by signal analyzer 1020.
Radio controller 1058 also communicates with main bus 1003. Radio controller 1058 provides an interface to a radio internal to integrated circuit 1000 (such as optional radio 1066) or to a radio external to integrated circuit 1000. Radio controller 1058 connects gain pins of the radio to AGC 1034 located within signal analyzer 1020 (and discussed below). Radio controller 1058 also connects control lines and the serial interface of the radio to one or more integrated processors 1002 via main bus 1003.
B. Signal Analyzer
Signal analyzer 1020 determines the time-domain and frequency-domain characteristics of received signals. Information is compiled into packets and passed from signal analyzer 1020 to internal or external memory. In an embodiment, signal analyzer 1020 is implemented using a gate array design. In an embodiment, signal analyzer 1020 is implemented using a full-custom design. In an embodiment, signal analyzer 1020 is implemented using a structured/platform design.
Signal analyzer 1020 comprises front end 1022, time-domain analyzer 1026, frequency-domain analyzer 1030, automatic gain control (AGC) 1034, packetizer 1038, memory interface 1042, and controller 1046. Time-domain analyzer 1026 and frequency-domain analyzer 1030 will be more fully discussed later with respect to
Signal data enters signal analyzer 1020 through front end 1022. Front end 1022 operates on digital signal data originating either from analog data converters 1062 or analog data converters connected to integrated circuit 1020. Front end 1022 filters the incoming signal data using a low-pass filter to remove signals outside of a desired channel and to prevent aliasing if any further down-sampling is performed. Front end 1022 also measures, and optionally removes, the DC offset (DCO) of the signal that was added by either radio 1066 or analog data converters 1062.
AGC 1034 is used to ensure the signal level inside signal analyzer 1020 lies within a specified range. AGC 1034 computes an average magnitude of the incoming signal data and adjusts the gain of the component providing the data, such as a radio, to keep the signal level within the specified range.
Packetizer 1038 bundles signal feature data provided by time-domain analyzer 1026 and frequency-domain analyzer 1030 into a feature vector or datagram. Embodiments of a feature vector will be discussed later with respect to frequency-domain analyzer 1026 and time-domain analyzer 1030. The feature vector is collected for each individual pulse that is detected by time-domain analyzer 1026. In an embodiment, feature vectors are stored in a buffer, for access by memory interface 1042.
Memory interface 1042 writes feature vectors collected in packetizer 1038 either to memory 1014 or memory accessible through external bus interface 1006 or bus bridge 1010. In an embodiment, memory interface 1042 also provides an interrupt to one or more integrated processors 1002 indicating feature vectors are available for processing. In an embodiment, memory interface 1042 writes feature vectors collected in packetizer 1038 directly to one or more integrated processors 1002.
Controller 1046 synchronizes operation of time-domain analyzer 1026, frequency-domain analyzer 1030, packetizer 1038, and memory interface 1042. Additionally, controller 1046 ensures packetizer 1038 collects data from time-domain analyzer 1026, frequency-domain analyzer 1030 at the correct times so that packetizer 1038 may pass the collected data to memory interface 1042 for processing by one or more integrated processors 1002.
1. Time-Domain Analyzer
The data flow of an embodiment of time-domain analyzer 1026 is depicted in
Input signals received by time-domain analyzer 1026 include timing information received by pulse detector 1122, filtered I-data and filtered Q-data received by both envelope detector 1106 and correlators 1110, and AGC gain information received by RSSI estimator 1118.
As described below, controller 1102 controls various aspects of the processing performed by time-domain analyzer 1026. Connections between controller 1102 and envelope detector 1106, correlators 1110, digital differentiation filter (DDF) 1114, RSSI estimator 1118, pulse detector 1122, and PRI estimator 1126 are not depicted in
Envelope detector 1106 computes information corresponding to a smoothed signal envelope, and forwards this information to pulse detector 1122, DDF 1114, and RSSI estimator 1118.
Correlators 1110 perform auto-correlation or cross-correlation using filtered I-data and filtered Q-data against programmable pilot signals to detect known signal structures. For example, each member in the 802.11 family of protocol standards uses packetized data including a signal preamble. These known signal preambles may be programmed into correlators 1110. Additionally, a signal preamble believed to correspond to the upcoming 802.11n standard may programmed into correlators 1110, and should the final 802.11n standard use a different signal preamble, the final signal preamble may be programmed into correlators 1110.
In an embodiment, correlators 1110 comprise hardware delay lines, multipliers, adders, and control logic. Correlators 1110 output a signal that is passed to packetizer 1038. The signal output from correlators 1110 is also included as a component in a time-domain feature vector output from time-domain analyzer 1026.
In an embodiment, the output signal of correlators 1110 is also sent to controller 1102. Controller 1102 inspects the output signal value of correlators 1110, and should the output signal value indicate receipt of a known signal by radio 1066, controller 1102 may direct other modules located on integrated circuit 1000 to halt or modify signal processing. For example, upon determination by controller 1102, using the output signal of correlators 1110, that an input radio signal contains a preamble of a type belonging to the 802.11 family, controller 1102 may then direct frequency-domain analyzer 1030 to modify or halt processing.
DDF 1114 computes a low pass-filtered derivative of the signal envelope. The low pass-filtered derivative is then provided to pulse detector 1122. In an embodiment, DDF 1114 comprises a finite impulse response filter.
RSSI estimator 1118 computes a smoothed received signal strength indication (RSSI) of the power (in units of dBm) present in the received radio signal from radio 1066. In an embodiment, output of RSSI estimator 1118 is one of the components that comprise the time-domain feature vector output from time-domain analyzer 1026.
Pulse detector 1122 performs pulse detection and outputs a pulse width estimate and a pulse time of arrival (TOA). In an embodiment, both the pulse width estimate and the TOA are components in the time-domain feature vector output from time-domain analyzer 1026.
2. Frequency-Domain Analyzer
The data flow of an embodiment of frequency-domain analyzer 1030 is depicted in
In an embodiment, frequency-domain analyzer 1030 and time-domain analyzer 1026 process signal data concurrently. In an embodiment, concurrent processing by frequency-domain analyzer 1030 and time-domain analyzer 1026 may be modified in real-time by controller 1046. For example, controller 1046 may receive a signal from correlators 1110 indicating a particular type of input signal has been detected, and in response, controller 1046 directs time-domain analyzer 1026 to modify its current operations.
Input data enters frequency-domain analyzer 1030 is organized into frames and a windowing operation is applied in windowing step 1202. In an embodiment, a rectangular window is applied to the framed input data. In an embodiment, a Hamming window is applied to the framed input data. In an embodiment, a Hann window is applied to the framed input data. Other windows may also be applied.
At step 1206, a Fast Fourier Transform (FFT) is performed on the windowed signal data to compute a frequency-domain representation of the windowed signal data. The frequency-domain data is then normalized at step 1210, converted to decibels (dB) at step 1214, and scaled at step 1218.
The scaled data is then passed to three processing modules that operate in parallel. At step 1222, a max hold operation is performed on the scaled data over a specified number of frames. A max hold operation is effective at detecting low-duty cycle signals such as bursts or radar pulses.
Concurrent with step 1222, at step 1226 a decimate operation is performed on the scaled data to yield an average power value frame for every N input frames. A power average is effective at distinguishing weak, stationary signals.
Concurrent with steps 1222 and 1226, at step 1230 a smoothing operation is performed, followed at step 1234 by a peak and bandwidth estimation that yields a peak magnitude value, a peak location vale, and a signal bandwidth value.
In an embodiment, one or both of the max hold value and the average power value are components in the frequency-domain feature vector output from frequency-domain analyzer 1030. In an embodiment, one or more of the peak magnitude value, peak location value, and the signal bandwidth value are components in the frequency-domain feature vector output from frequency-domain analyzer 1030.
As previously described, the time-domain feature vectors and frequency-domain feature vectors are processed by firmware on one or more integrated processors 1002 for signal classification. Placement of all hardware and firmware for collection, time- and frequency-domain analysis, and signal classification on a single integrated circuit permits affords lowered power consumption, faster processing as data travels very small distances, and promotes a modular design in which firmware may be easily reprogrammed, or if necessary, customized features may introduced into a device using the integrated circuit, by a simple chip replacement.
V. Implementation Mechanisms
The integrated circuit approach for monitoring communications channels described herein may be implemented in a variety of ways and the invention is not limited to any particular implementation. The integrated circuit may be integrated into a wireless communications system or a wireless device, or may be implemented as a stand-alone mechanism. Furthermore, the approach may be implemented in computer software, hardware, or a combination thereof.
Computer system 1300 may be coupled via bus 1302 to a display 1312, such as a cathode ray tube (CRT), for displaying information to a computer user. An input device 1314, including alphanumeric and other keys, is coupled to bus 1302 for communicating information and command selections to processor 1304. Another type of user input device is cursor control 1316, such as a mouse, a trackball, or cursor direction keys for communicating direction information and command selections to processor 1304 and for controlling cursor movement on display 1312. This input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allows the device to specify positions in a plane.
The invention is related to the use of computer system 1300 for implementing the techniques described herein. According to one embodiment of the invention, those techniques are performed by computer system 1300 in response to processor 1304 executing one or more sequences of one or more instructions contained in main memory 1306. Such instructions may be read into main memory 1306 from another machine-readable medium, such as storage device 1310. Execution of the sequences of instructions contained in main memory 1306 causes processor 1304 to perform the process steps described herein. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the invention. Thus, embodiments of the invention are not limited to any specific combination of hardware circuitry and software.
The term “machine-readable medium” as used herein refers to any medium that participates in providing data that causes a machine to operation in a specific fashion. In an embodiment implemented using computer system 1300, various machine-readable media are involved, for example, in providing instructions to processor 1304 for execution. Such a medium may take many forms, including but not limited to storage media and transmission media. Storage media includes both non-volatile media and volatile media. Non-volatile media includes, for example, optical or magnetic disks, such as storage device 1310. Volatile media includes dynamic memory, such as main memory 1306. Transmission media includes coaxial cables, copper wire and fiber optics, including the wires that comprise bus 1302. Transmission media can also take the form of acoustic or light waves, such as those generated during radio-wave and infra-red data communications. All such media must be tangible to enable the instructions carried by the media to be detected by a physical mechanism that reads the instructions into a machine.
Common forms of machine-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other optical medium, punchcards, papertape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave as described hereinafter, or any other medium from which a computer can read.
Various forms of machine-readable media may be involved in carrying one or more sequences of one or more instructions to processor 1304 for execution. For example, the instructions may initially be carried on a magnetic disk of a remote computer. The remote computer can load the instructions into its dynamic memory and send the instructions over a telephone line using a modem. A modem local to computer system 1300 can receive the data on the telephone line and use an infra-red transmitter to convert the data to an infra-red signal. An infra-red detector can receive the data carried in the infra-red signal and appropriate circuitry can place the data on bus 1302. Bus 1302 carries the data to main memory 1306, from which processor 1304 retrieves and executes the instructions. The instructions received by main memory 1306 may optionally be stored on storage device 1310 either before or after execution by processor 1304.
Computer system 1300 also includes a communication interface 1318 coupled to bus 1302. Communication interface 1318 provides a two-way data communication coupling to a network link 1320 that is connected to a local network 1322. For example, communication interface 1318 may be an integrated services digital network (ISDN) card or a modem to provide a data communication connection to a corresponding type of telephone line. As another example, communication interface 1318 may be a local area network (LAN) card to provide a data communication connection to a compatible LAN. Wireless links may also be implemented. In any such implementation, communication interface 1318 sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
Network link 1320 typically provides data communication through one or more networks to other data devices. For example, network link 1320 may provide a connection through local network 1322 to a host computer 1324 or to data equipment operated by an Internet Service Provider (ISP) 1326. ISP 1326 in turn provides data communication services through the world wide packet data communication network now commonly referred to as the “Internet” 1328. Local network 1322 and Internet 1328 both use electrical, electromagnetic or optical signals that carry digital data streams. The signals through the various networks and the signals on network link 1320 and through communication interface 1318, which carry the digital data to and from computer system 1300, are exemplary forms of carrier waves transporting the information.
Computer system 1300 can send messages and receive data, including program code, through the network(s), network link 1320 and communication interface 1318. In the Internet example, a server 1330 might transmit a requested code for an application program through Internet 1328, ISP 1326, local network 1322 and communication interface 1318.
The received code may be executed by processor 1304 as it is received, and/or stored in storage device 1310, or other non-volatile storage for later execution. In this manner, computer system 1300 may obtain application code in the form of a carrier wave.
In the foregoing specification, embodiments of the invention have been described with reference to numerous specific details that may vary from implementation to implementation. Thus, the sole and exclusive indicator of what is the invention, and is intended by the applicants to be the invention, is the set of claims that issue from this application, in the specific form in which such claims issue, including any subsequent correction. Any definitions expressly set forth herein for terms contained in such claims shall govern the meaning of such terms as used in the claims. Hence, no limitation, element, property, feature, advantage or attribute that is not expressly recited in a claim should limit the scope of such claim in any way. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.
Mammoser, Douglas A., Bagge, Nils, Jones, Ben William, Wingert, Matthew P., Morton, John M., Bhulani, Bhavin, Killian, Harrison J.
Patent | Priority | Assignee | Title |
10659099, | Dec 12 2018 | Samsung Electronics Co., Ltd. | Page scanning devices, computer-readable media, and methods for bluetooth page scanning using a wideband receiver |
11683722, | Apr 14 2021 | Hewlett Packard Enterprise Development LP | Fine timing measurements in enterprise deployments using high bandwidth channels |
Patent | Priority | Assignee | Title |
2292387, | |||
4328581, | Jun 20 1980 | Rockwell International Corporation | Adaptive HF communication system |
4334322, | Oct 26 1979 | E-Systems, Inc. | Communication management system for providing antijam/privacy capabilities for voice radio communications |
4337822, | Aug 16 1979 | Digital thermostat | |
4355399, | Feb 23 1981 | Bell Telephone Laboratories, Incorporated | Adaptive spread spectrum FH-MFSK transmitter and receiver |
4554668, | May 27 1982 | Thomson-CSF | Frequency-hopping radio communications system |
4597087, | Oct 19 1984 | ITT Corporation | Frequency hopping data communication system |
4716573, | Nov 19 1984 | Telefonaktiebolaget LM Ericsson | Method of reducing the effect of narrowband jammers in radio communication between two stations |
4872182, | Mar 08 1988 | Harris Corporation | Frequency management system for use in multistation H.F. communication network |
4914699, | Oct 11 1988 | ITT Corporation | High frequency anti-jam communication system terminal |
4937822, | Jun 27 1989 | Rockwell International Corporation | Skywave adaptable communication apparatus |
4977612, | Oct 10 1989 | Motorola, Inc. | Channel selection in a multi-frequency radio data communication system |
4998290, | May 09 1988 | Canadian Marconi Corporation | Frequency-hopping radio communication network |
5079768, | Mar 23 1990 | Proxim Wireless Corporation | Method for frequency sharing in frequency hopping communications network |
5179569, | Jul 19 1985 | MCKESSON TECHNOLOGIES, INC ; MCKESSON TECHNOLOGIES INC | Spread spectrum radio communication system |
5287384, | Oct 15 1992 | LXE INC | Frequency hopping spread spectrum data communications system |
5323447, | Nov 01 1991 | AT&T Bell Laboratories | Apparatus and method for modifying a frequency hopping sequence of a cordless telephone operating in a frequency hopping system |
5337002, | Mar 01 1991 | Digital Control Incorporated | Locator device for continuously locating a dipole magnetic field transmitter and its method of operation |
5361401, | Dec 17 1991 | NCR Corporation | Channel hopping radio communication system and method |
5377221, | May 12 1984 | Racal Research Limited | Communications system |
5377222, | May 08 1992 | M&FC Holding, LLC | Frequency agile radio |
5394433, | Apr 22 1993 | IBM Corporation | Frequency hopping pattern assignment and control in multiple autonomous collocated radio networks |
5418839, | Apr 13 1990 | TRONTECH LICENSING INCORPORATED | Environmental adaptive mechanism for channel utilization in cordless telephones |
5448593, | Mar 06 1984 | DBI Corporation | Frequency hopping time-diversity communications systems and transceivers for local area networks |
5452319, | Jun 17 1993 | Exelis Inc | Method and system for increasing the reliability of multiple frequency communication systems |
5483557, | Oct 30 1990 | British Telecommunications public limited company | Channel equalisation in particular for fading channels |
5515369, | Jun 24 1994 | QUARTERHILL INC ; WI-LAN INC | Method for frequency sharing and frequency punchout in frequency hopping communications network |
5515396, | Feb 25 1994 | Motorola, Inc.; Motorola, Inc | Method and apparatus for selecting a spreading code in a spectrum spread communication system |
5541954, | Nov 24 1993 | Sanyo Electric Co., Ltd. | Frequency hopping communication method and apparatus changing a hopping frequency as a result of a counted number of errors |
5586141, | Jun 02 1993 | VTech Communications, Ltd. | Interface protocol method for use in a frequency hopping radio system having first hopping code for synchronization and second hopping code for communication |
5666655, | Feb 04 1994 | NTT Mobile Communication Network Inc. | Mobile communication system with autonomous distributed type dynamic channel allocation scheme |
5737359, | Sep 14 1993 | Nokia Technologies Oy | Method for supervising base station radio channels |
5757539, | Apr 21 1995 | QUARTERHILL INC ; WI-LAN INC | Thin film actuated mirror array for use in an optical projection system |
5809059, | Nov 21 1996 | Google Technology Holdings LLC | Method and apparatus for spread spectrum channel assignment |
5848095, | May 17 1996 | AWC HOLDINGS L L C | System and method for adaptive hopping |
5859662, | Aug 06 1993 | MEDIATEK INC | Apparatus and method for selectively viewing video information |
5870391, | Mar 25 1996 | Canon Kabushiki Kaisha | Wireless communication system using frequency hopping, and method of controlling the system |
5887022, | Jun 12 1996 | Telecommunications Research Laboratories | Peer-peer frequency hopping spread spectrum wireless system |
5933420, | Apr 30 1996 | Hewlett Packard Enterprise Development LP | Method and apparatus for assigning spectrum of a wireless local area network |
5937002, | Jul 15 1994 | Unwired Planet, LLC | Channel hopping in a radio communication system |
5956642, | Nov 25 1996 | Telefonaktiebolaget L M Ericsson | Adaptive channel allocation method and apparatus for multi-slot, multi-carrier communication system |
6052594, | Apr 30 1997 | AT&T Properties, LLC; AT&T INTELLECTUAL PROPERTY II, L P | System and method for dynamically assigning channels for wireless packet communications |
6115407, | Apr 03 1998 | Butterfly VSLI Ltd. | Frequency hopping communication method and apparatus for modifying frequency hopping sequence in accordance with counted errors |
6115408, | Apr 03 1998 | Butterfly VSLI Ltd. | Automatic transmission power level control method in a frequency hopping communication system |
6118805, | Jan 30 1998 | GENERAL DYNAMICS ADVANCED INFORMATION SYSTEMS, INC; GENERAL DYNAMICS MISSION SYSTEMS, INC | Method and apparatus for performing frequency hopping adaptation |
6122309, | Jan 30 1998 | GENERAL DYNAMICS ADVANCED INFORMATION SYSTEMS, INC; GENERAL DYNAMICS MISSION SYSTEMS, INC | Method and apparatus for performing interference suppression using modal moment estimates |
6130885, | Mar 20 1995 | Canon Kabushiki Kaisha | Frequency hopping wireless communication system capable of simultaneously communicating different data and frequency hopping wireless communication apparatus |
6131013, | Jan 30 1998 | Google Technology Holdings LLC | Method and apparatus for performing targeted interference suppression |
6151352, | Apr 16 1996 | Brother Kogyo Kabushiki Kaisha | Wireless communication using a frequency hopping method |
6195554, | Feb 16 1999 | Unwired Planet, LLC | Channel assignment based on uplink interference level and channel quality measurements with a forward and backward reassignment step |
6212221, | Mar 14 1997 | Brother Kogyo Kabushiki Kaisha | Communication apparatus |
6212386, | Jun 30 1998 | Unwired Planet, LLC | Automated tool method for frequency plan revision within a cellular telephone system |
6230026, | Oct 15 1998 | Intellectual Ventures I LLC | Basestation architecture supporting baseband frequency hopping utilizing time division multiplexed mapping between a radio transceiver and digital signal processing resources |
6240125, | Jul 13 1995 | Unwired Planet, LLC | Method and means for frequency hopping in a radio communication system |
6249540, | Jul 10 1998 | SIEMENS INFORMATION AND COMMUNICATIION NETWORKS, INC | Method and system for shifting frequency subsets to avoid base station interference in a frequency hopping cordless telephone system |
6272353, | Aug 20 1999 | NOKIA SOLUTIONS AND NETWORKS US LLC | Method and system for mobile communications |
6275518, | Jan 27 1995 | Hitachi, Ltd. | Frequency hopping radio LAN system and frequency hopping control method |
6292494, | Dec 24 1996 | IBM Corporation | Channel hopping protocol |
6295310, | Jun 12 1997 | Mitsubishi Denki Kabushiki Kaisha | Mobile communication system |
6298081, | May 31 1996 | Unwired Planet, LLC | Channel hopping in a radio communications system |
6351643, | Aug 28 1996 | BlackBerry Limited | Method and system for autonomously allocating a frequency hopping traffic channel in a private radio system |
6370356, | Oct 17 1997 | WSOU Investments, LLC | Apparatus and method of providing a mobile communication system |
6377609, | Mar 05 1999 | UBS AG, STAMFORD BRANCH, AS ADMINISTRATIVE AGENT | Spread spectrum frequency hopping system and method |
6389000, | Sep 16 1997 | Qualcomm Incorporated | Method and apparatus for transmitting and receiving high speed data in a CDMA communication system using multiple carriers |
6400751, | Jul 01 1998 | Harris Corporation | Adaptive frequency sharing method and apparatus |
6418317, | Dec 01 1999 | Telefonaktiebolaget L M Ericsson | Method and system for managing frequencies allocated to a base station |
6434183, | Aug 14 1997 | Gigaset Communications GmbH | Method and device for radio transmission of data by means of frequency hops |
6442156, | Sep 30 1997 | Telefonaktiebolaget LM Ericsson | Method and device in a mobile telecommunication network |
6466793, | May 28 1999 | Ericsson Inc | Automatic frequency allocation (AFA) for wireless office systems sharing the spectrum with public systems |
6480721, | Jul 10 1998 | Siemens Aktiengesellschaft | Method and system for avoiding bad frequency subsets in a frequency hopping cordless telephone system |
6487392, | Dec 07 1998 | NEC Corporation | Assign channel distributing system and distributing method therefor |
6501785, | Nov 17 1999 | AT&T Corp | Dynamic frequency hopping |
6519460, | May 10 1999 | Telefonaktiebolaget LM Ericsson | Resource management in uncoordinated frequency hopping system |
6526279, | Aug 11 1999 | Ericsson Inc. | Communication system with a mobile terminal supporting mobile assisted signal strength measurements for a plurality of networks and methods for operating the same |
6574266, | Jun 25 1999 | Telefonaktiebolaget LM Ericsson | Base-station-assisted terminal-to-terminal connection setup |
6577611, | Jan 09 1996 | Nokia Siemens Networks Oy | Methods and apparatus for excluding communication channels in a radio telephone |
6643278, | Mar 23 1999 | Texas Instruments Incorporated | Wireless network circuits, systems, and methods for frequency hopping with reduced packet interference |
6647053, | Aug 31 2000 | MONUMENT BANK OF INTELLECTUAL PROPERTY, LLC | Method and system for channel masking in a communication network |
6670920, | Aug 15 2002 | Bae Systems Information and Electronic Systems Integration INC | System and method for single platform, synthetic aperture geo-location of emitters |
6694141, | Jun 24 1997 | WSOU Investments, LLC | Channel selection in a radio link system |
6728300, | Feb 11 2000 | QUALECOMM INCORPORATED | Method and apparatus for maximizing standby time in remote stations configured to receive broadcast databurst messages |
6751249, | Sep 24 1999 | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | Received-signal-strength-based swap table for frequency hopping communication system |
6760319, | Jul 05 2000 | MOTOROLA SOLUTIONS, INC | Fixed frequency interference avoidance enhancement |
6807227, | Oct 26 2000 | OL SECURITY LIMITED LIABILITY COMPANY | Method of reconfiguration of radio parameters for power-aware and adaptive communications |
6934315, | May 17 2000 | MATSUSHITA ELECTRIC INDUSTRIAL CO , LTD | Cordless telephone and method for selecting communication channel thereof |
6954465, | Mar 22 2000 | AT&T Corp. | Dynamic channel assignment |
6961363, | Dec 02 1999 | Wistron Corporation | Frequency look-ahead and link state history based scheduling in indoor wireless pico-cellular networks |
6965590, | Feb 29 2000 | Texas Instruments Incorporated; Texas Instruments Inc | Dynamic slave selection in frequency hopping wireless communications |
6970495, | Feb 09 2000 | Texas Instruments Incorporated | Adjustment of slave frequency hopping pattern to improve channel measurement opportunities in wireless communications |
6975603, | Aug 20 1999 | Siemens Aktiengesellschaft | System and method for minimizing the loss of information in cordless communications |
6975684, | Feb 29 2000 | Texas Instruments Incorporated | Dynamic slave frequency selection for improving uplink frequency hopping wireless communications |
6977912, | Jun 11 1999 | AXXCELERA BROADBAND WIRELESS, INC ; Adaptive Broadband Corporation | Control signalling and dynamic channel allocation in a wireless network |
7006451, | Dec 27 2000 | Kabushiki Kaisha Toshiba | Method and apparatus for performing wireless communication using a plurality of frequency channels |
7050402, | Jun 09 2000 | Texas Instruments Incorporated | Wireless communications with frequency band selection |
7050479, | May 12 2000 | L-3 Communications Titan Corporation | System for, and method of, providing frequency hopping |
7068702, | Jan 12 2001 | Mediatek Incorporation | Method and apparatus for selective collision avoidance frequency hopping |
7079568, | May 27 1999 | Siemens Aktiengesellschaft | Frequency hopping method for a mobile radio telephone system |
7103030, | Jan 03 2001 | VTech Communications, Ltd | Adaptive frequency hopping strategy |
7151767, | Dec 27 2000 | UNILOC 2017 LLC | Method and apparatus for synchronizing frequency hopping transceivers |
7158493, | Sep 29 2000 | Apple Inc | Radio communications system with a minimal broadcast channel |
7280580, | Oct 15 1999 | Telefonaktlebolaget LM Ericsson (publ.) | Hop sequence adaptation in a frequency-hopping communications system |
7321847, | May 05 2006 | PerkinElmer Health Sciences, Inc | Apparatus and methods for reduction of coherent noise in a digital signal averager |
7440484, | Aug 09 2000 | Texas Instruments Incorporated | Reduced hopping sequences for a frequency hopping system |
7519106, | Feb 11 2000 | Qualcomm Incorporated | Method and apparatus for maximizing standby time in remote stations configured to receive broadcast databurst messages |
7532610, | Jan 16 2001 | Texas Instruments Incorporated | Structured adaptive frequency hopping |
7620396, | Feb 08 2005 | Cisco Technology, Inc | Monitoring for radio frequency activity violations in a licensed frequency band |
7684465, | Jan 21 2000 | Texas Instruments Incorporated | Frequency hopping communication protocol |
7952523, | Jun 09 2009 | The United States of America as represented by the Secretary of the Navy | Method and apparatus for passively locating radar emissions from rotating transmitters |
20020122462, | |||
20020191678, | |||
20030054827, | |||
20050078225, | |||
20060178145, | |||
20070032255, | |||
20070053410, | |||
20100184384, | |||
20100184395, | |||
20100287588, | |||
20140023118, | |||
CA2252012, | |||
DE3415032, | |||
EP182762, | |||
JP2002252573, | |||
JP8259443, | |||
JP8331012, | |||
JPEI10107693, | |||
WO147308, | |||
WO9848586, | |||
WO9909671, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Nov 05 2009 | WINGERT, MATTHEW P | BANDSPEED, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 023596 | /0372 | |
Nov 16 2009 | MORTON, JOHN M | BANDSPEED, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 023596 | /0372 | |
Nov 16 2009 | BHULANI, BHAVIN | BANDSPEED, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 023596 | /0372 | |
Nov 16 2009 | BAGGE, NILS | BANDSPEED, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 023596 | /0372 | |
Nov 16 2009 | JONES, BEN WILLIAM | BANDSPEED, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 023596 | /0372 | |
Nov 16 2009 | MAMMOSER, DOUGLAS A | BANDSPEED, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 023596 | /0372 | |
Nov 20 2009 | KILLIAN, HARRISON J | BANDSPEED, INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 023596 | /0372 | |
Nov 23 2009 | Bandspeed, Inc. | (assignment on the face of the patent) | / | |||
Nov 05 2014 | BANDSPEED, INC | Broadcom Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 034129 | /0081 | |
Feb 01 2016 | Broadcom Corporation | BANK OF AMERICA, N A , AS COLLATERAL AGENT | PATENT SECURITY AGREEMENT | 037806 | /0001 | |
Jan 19 2017 | BANK OF AMERICA, N A , AS COLLATERAL AGENT | Broadcom Corporation | TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS | 041712 | /0001 | |
Jan 20 2017 | Broadcom Corporation | AVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 041706 | /0001 | |
May 09 2018 | AVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | MERGER SEE DOCUMENT FOR DETAILS | 047230 | /0910 | |
Sep 05 2018 | AVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | CORRECTIVE ASSIGNMENT TO CORRECT THE ERROR IN RECORDING THE MERGER IN THE INCORRECT US PATENT NO 8,876,094 PREVIOUSLY RECORDED ON REEL 047351 FRAME 0384 ASSIGNOR S HEREBY CONFIRMS THE MERGER | 049248 | /0558 | |
Sep 05 2018 | AVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF THE MERGER PREVIOUSLY RECORDED AT REEL: 047230 FRAME: 0910 ASSIGNOR S HEREBY CONFIRMS THE MERGER | 047351 | /0384 |
Date | Maintenance Fee Events |
Mar 30 2018 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Mar 25 2022 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Date | Maintenance Schedule |
Sep 30 2017 | 4 years fee payment window open |
Mar 30 2018 | 6 months grace period start (w surcharge) |
Sep 30 2018 | patent expiry (for year 4) |
Sep 30 2020 | 2 years to revive unintentionally abandoned end. (for year 4) |
Sep 30 2021 | 8 years fee payment window open |
Mar 30 2022 | 6 months grace period start (w surcharge) |
Sep 30 2022 | patent expiry (for year 8) |
Sep 30 2024 | 2 years to revive unintentionally abandoned end. (for year 8) |
Sep 30 2025 | 12 years fee payment window open |
Mar 30 2026 | 6 months grace period start (w surcharge) |
Sep 30 2026 | patent expiry (for year 12) |
Sep 30 2028 | 2 years to revive unintentionally abandoned end. (for year 12) |