WO1993006547A1 - Maximum search circuit - Google Patents

Maximum search circuit Download PDF

Info

Publication number
WO1993006547A1
WO1993006547A1 PCT/US1992/007729 US9207729W WO9306547A1 WO 1993006547 A1 WO1993006547 A1 WO 1993006547A1 US 9207729 W US9207729 W US 9207729W WO 9306547 A1 WO9306547 A1 WO 9306547A1
Authority
WO
WIPO (PCT)
Prior art keywords
flip
flop
input
selecting means
output
Prior art date
Application number
PCT/US1992/007729
Other languages
French (fr)
Inventor
Paul W. Dent
Jaap C. Haartsen
Original Assignee
Ericsson Ge Mobile Communications, Inc.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ericsson Ge Mobile Communications, Inc. filed Critical Ericsson Ge Mobile Communications, Inc.
Priority to CA002096432A priority Critical patent/CA2096432C/en
Priority to NL9220005A priority patent/NL194930C/en
Priority to BR9205409A priority patent/BR9205409A/en
Priority to DE4293456A priority patent/DE4293456B4/en
Priority to AU26563/92A priority patent/AU651737B2/en
Priority to JP50613893A priority patent/JP3285354B2/en
Priority to GB9309345A priority patent/GB2265033B/en
Publication of WO1993006547A1 publication Critical patent/WO1993006547A1/en
Priority to SE9301546A priority patent/SE515269C2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30021Compare instructions, e.g. Greater-Than, Equal-To, MINMAX
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/02Comparing digital values
    • G06F7/026Magnitude comparison, i.e. determining the relative order of operands based on their numerical value, e.g. window comparator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/22Arrangements for sorting or merging computer data on continuous record carriers, e.g. tape, drum, disc

Definitions

  • the present invention generally relates to methods and apparatus for digital signal processing or computational operations.
  • RAM random access memory
  • ROM read-only memory
  • a common method for finding the largest of a set of values involves sequentially scanning the set.
  • a register for storing the largest value is loaded with the first value (and its index) , and the contents of the register is compared to the second value. If the second value is larger, the second value and its index replace the first value and its index in the register.
  • the third value is then compared to the register contents, and if it is larger, the third value and its index replace the value and index stored in the register. The process continues until all subsequent values in the set have been compared to the register contents.
  • the present invention provides a fully parallel search method and circuit implementation using bit- serially presented digital values that determine the maximum value and its index in a time period that is independent of the number of values in the set searched.
  • the present invention is particularly useful for code division multiple access ("CDMA") communications techniques in cellular radio telephone communication systems, such as the enhanced CDMA demodulation scheme based on successive signal subtractions, in signal strength order, of multiple CDMA signals that is described in co-pending U.S. Patent Application Serial No. 07/628,359, filed December 17, 1990.
  • CDMA code division multiple access
  • M bits to be transmitted are converted to one of 2 H available 2 H -bit orthogonal codewords.
  • Decoding involves correlating a received signal with all members of the set of orthogonal codewords, and the index of the codeword giving the highest correlation yields the desired information. For example, if a signal's correlation with sixteen 16-bit codewords index-numbered 0 to 15 produces the highest correlation on the tenth codeword, the desired signal information is the -bit binary word 1010 (decimal 10) .
  • a comparison processor may determine which correlation has the largest magnitude and may set that signal to zero by opening a corresponding switch. In this manner, the demodulated signal is subtracted effectively from the composite signal.
  • the remaining spectrum with one component removed is processed and re-scrambled to reconstruct the original signal samples less the just-decoded signal.
  • the magnitude of the correlated signal is representative of signal strength and may be stored in a sorting processor along with the signal's corresponding scrambling code.
  • the processor orders the scrambling codes from greatest to weakest correlated signal magnitudes, and the code corresponding to the greatest magnitude may then be transmitted to the descrambler for the next signal demodulation.
  • the comparison processor may then determine which complex correlation has the greatest magnitude.
  • the real and imaginary components of the selected correlation may also be analyzed in the complex plane to determine if the phase has changed.
  • the present invention provides an electronic comparator for selecting and outputting the larger of first and second electrical, binary-coded input values presented bit-serially, most-significant-bit first, comprising: first and second input terminals; a logical exclusive-OR gate operatively connected to the first and second input terminals for forming a signal indicating a logical exclusive-OR of the first and second input values; a first resettable flip-flop operatively connected to the logical exclusive-OR gate, wherein an output of the first flip-flop is set from a "0" state to a "1" state when the exclusive-OR gate signal indicates the first and second input values are unequal; a second flip-flop operatively connected to the first flip-flop and the first input terminal, wherein an output of the second flip-flop is set to a "0" state or to a "1" state in correspondence with the first input value when the first flip-flop's output changes state; and means, operatively connected to the first and second input terminals and the second flip
  • the present invention provides an electronic comparator for selecting and outputting the larger of first and second electrical, binary-coded input values presented bit-serially, most- significant-bit first, comprising: first and second input terminals; a logical exclusive-OR gate operatively connected to the first and second input terminals for forming a signal indicating a logical exclusive-OR of the first and second input values; a first flip-flop operatively connected to the logical exclusive-OR gate for registering a value indicating whether corresponding bits of the first and second input values are equal or unequal, wherein the first flip-flop registers the value in synchrony with a train of bitclock pulses applied to the first flip-flop; a second resettable flip-flop operatively connected to the first flip-flop, wherein an output of the second flip-flop is set from a "0" state to a "1" state when the value registered by the first flip- flop indicates the two input values' bits are unequal; a third flip-flop operatively connected to the
  • traceback signals to indicate which of the first and second input values was selected by the selecting means and a signal indicating that the maximum value has been identified are also provided.
  • Figure 1 illustrates a binary tree structure for finding the greatest of eight values
  • Figure 2A is a block diagram of one embodiment of a bit-serial, most-significant-bit-first comparator in accordance with the present invention
  • Figure 2B is a block diagram of a structure of the comparators of Figure 2A for finding the greatest of eight values
  • Figure 3 is a block diagram of another embodiment of a comparator in accordance with the present invention.
  • Figure 4 is a diagram of a means for generating a signal that indicates that the maximum value has been identified.
  • the comparators 11-3, 11-4 and 12-2 could be eliminated and the input value V 4 could be presented directly to the comparator 13.
  • an asymmetric tree can be made symmetric by padding with a sufficient number of input zeroes or other known values.
  • the input values 5 - 7 could be set to zero and presented to the tree 10 shown in Figure 1.
  • the tree structure is advantageously implemented by a suitable number of comparators that each compare two input values presented bit-serially, most-significant-bit (“MSB") first, and pass the larger of the two with substantially no delay.
  • comparators stand in marked contrast to conventional comparators that are based on bit-serial subtraction and compare values presented least-significant-bit first.
  • each comparator generates a traceback bit for identifying the larger of its input values and passes traceback bits for identifying the comparators in the preceding stages that were deemed to have furnished the larger input values. It will be appreciated that such bit-serial, MSB-first comparators can be implemented in a suitable, otherwise conventional, integrated circuit.
  • Figure 2A illustrates one embodiment of a bit- serial, MSB-first comparator 100 according to the present invention that could implement the tree of Figure 1.
  • a pair of binary-coded values are presented bit-serially, MSB first, on inputs A and B to an otherwise conventional exclusive-OR (“XOR") gate 102 that produces a logic HIGH, or "1", output when the values on inputs A and B are unequal.
  • XOR exclusive-OR
  • the pair of input values are presented and compared bit by bit, MSB first, the input value having the binary "1" will be recognized as the larger on the first occasion that two unlike bits are encountered. (It will be appreciated that as long as the input bits are the same, it cannot be known which value is the larger, but in that case it does not matter which of the two inputs is passed to the output.)
  • the latch 104 which may be a conventional set-reset flip-flop, also has a reset input for a suitable control signal for initializing the latch output to logic LOW, or "0", before the first and between sets of input values.
  • the output of the latch 104 is connected to the clock input of a D-type flip-flop 106; thus, when the output of the latch 104 goes HIGH, the value of one of the inputs (input A, for example) is clocked into the flip-flop 106.
  • the Q output acts as a control signal indicated by the dotted line that causes an input-selector switch 108, such as a field-effect transistor (“FET”) , to switch to the "1" position as shown, thereby connecting the A input to the comparator output for the rest of the pair of input values.
  • FET field-effect transistor
  • the A input is a "0" when the output of the latch 104 goes HIGH, the A input is again clocked into the flip-flop 106, and the Q output goes LOW, causing the input-selector switch 108 to switch to the "0" position.
  • the B input is connected to the output for the rest of the pair of input values.
  • the input values are presented MSB first, it does not matter which input value is connected to the output before the output of the XOR gate 102 goes HIGH.
  • the Q output of the flip-flop 106 indicates which of the two inputs was selected (i.e., which value was "1"), and thus the Q output is provided as the comparator's traceback signal output C.
  • the binary traceback signal can be used as an index of the larger value by arbitrarily assigning its value "0" to input A and the value "1" to input B, for example.
  • the comparator 100 may also have an associated traceback-selector switch 110 that may have a plurality of poles (only one is shown in Figure 2A) .
  • the state of the switch 110 is also controlled by the Q output of the flip-flop 106, and each pole of the switch 110 passes either an A TRACEBACK or B TRACEBACK signal from comparators in preceding tree stages.
  • the number of poles provided in each traceback-selector switch 110 depends on how many traceback signals are to be passed from the preceding stage and the position of its associated comparator in the binary tree.
  • a binary tree can be implemented by a suitable plurality of comparators 100 and switches 110 that yields not only the largest value of a set of input values but also the index of the largest value.
  • the tree would have seven stages, the first of which would have sixty-four comparators.
  • the first- stage comparators would need no traceback-selector switches, but each would generate one (a first) traceback signal.
  • the thirty-two second-stage comparators would each have an associated one-pole traceback-selector switch and would each generate a second traceback signal.
  • the sixteen third-stage comparators would each have an associated two-pole traceback-selector switch and would each generate a third traceback signal. This would continue until the seventh stage, in which the one comparator would have a six-pole traceback-selector switch and would generate a seventh traceback signal.
  • the 7-bit traceback word consisting of the traceback signals passed and generated by the seventh stage would then be the index of the largest of the one hundred twenty-eight input values with the symbols "1" and "0" assigned to the comparator inputs as described above.
  • the symmetric tree 10 of Figure 1 implemented by such comparators and traceback-selector switches is illustrated in Figure 2B. Eight input values V 0 to V 7 are presented to four first stage comparators 11-1 to 11-4, none of which has a traceback-selector switch but each of which generates one of the first traceback signals C,-l to C.,-4.
  • the outputs of the first stage comparators are fed to the inputs of the two second stage comparators 12-1, 12-2, each of which has a one-pole traceback- selector switch 110-1, 110-2, respectively, for passing one of the pairs of traceback signals C,-l, 0,-2,and 0,-3, 0,-4, respectively, and generates second traceback signals C 2 -l, C 2 -2.
  • the outputs of the second stage comparators are fed to the inputs of the third stage comparator 13, which has a double-pole traceback-selector switch 110-3 and generates the third traceback signal C 3 .
  • One pole of the traceback-selector switch 110-3 passes one of the pair of traceback signals C 2 -l, C 2 -2, and the other pole passes one of the pair of outputs from preceding stage traceback selector switches 110-1, 110-2.
  • the output V ⁇ of the third stage comparator 13 is the largest of the input values V 0 to V ? .
  • the apparatus illustrated in Figure 2B outputs and identifies the largest input value in a time no longer than that needed to present them.
  • the maximal value's identification by the traceback word may be available in significantly less time; for example, a single large- magnitude input value could be identified early.
  • Figure 3 shows a preferred embodiment of a comparator 100* in accordance with the present invention that avoids such logic glitches.
  • a pair of input binary-coded values are presented bit- serially, MSB first, on inputs A 1 , B', to an otherwise conventional XOR gate 102' .
  • the output of gate 102' is connected to the D-input of a second D-type flip- flop 103' .
  • the flip-flop 103' is clocked by a BITCLOCK signal that is synchronized to the presentation of the input bits.
  • the Q output of the flip-flop 103' is passed to the SET input of the latch 104' , the output of which clocks a D-type flip-flop 106' as in comparator 100.
  • another effect of the second flip-flop 103' is to delay slightly the result of the decision by gate 102* whether the two input bits are the same or different.
  • the input-selector switch 108 would not take on the correct state until slightly after the input bits were presented, and the wrong value could be temporarily presented at the comparator output.
  • a modified input-selector switch 108' comprising five conventional NAND gates 108'- 1 to 108'-5 is provided.
  • the input-selector switch 108' has three states: (1) an initial state, in which the switch 108' behaves as an OR gate; (2) a select-A state; and (3) a select-B state.
  • the input-selector switch's OR function has the effect that the comparator output promptly goes to "1" when different A and B inputs are presented.
  • the bit value belonging to the larger input is presented at the output without waiting for the output of the XOR gate 102' to be clocked into flip-flop 103'.
  • a suitable three-state input- selector switch 108' comprises five two-input NAND gates 108'-1 to 108'-5. With the latch 104' initialized (reset), the NAND gates 108'-1, 108'-2, are both fed with a "0" from the latch before unlike input bits are encountered, forcing their outputs to "1" irrespective of the outputs of the gate 106'. Thus, the outputs of the
  • NAND gates 108'-3, 108'-4, are merely inversions of the A and B inputs, respectively. Also, the output of the gate 108'-5 is the inversion of its (equal) inputs, i.e., A OR B, which is the same as both the A and B inputs so long as the A and B inputs are equal.
  • latch 104* clocks the A input into the flip-flop 106' and sets a "1" on the inputs of gates 108*-l, 108'-2, thereby passing to gates 108'-3, 108*-4, information about which of the A and B inputs is "1".
  • an inversion of the Q output of flip-flop 106' i.e., A
  • an inversion of the Q output is presented to the inputs of the gate 108'-4
  • an inversion of the Q output i.e., A
  • the output of gate 108'-5 continues to track the input that was "1" for the rest of the pair of input values.
  • the Q output of flip-flop 106' indicates which of the A and B inputs was selected, and is output as the traceback signal C.
  • Figure 3 shows the Q output as a control signal for a three-pole traceback-selector switch 110' that passes A and B traceback signals from preceding comparators as described above.
  • a suitable means 112 for generating a signal that indicates that the maximum value has been identified is illustrated in Figure 4. Such a generating means 112 can be provided with either of the comparators 100, 100', and traceback selectors 110, 110'.
  • the state of a selector switch 114 is controlled by the Q output of the comparator's D-type flip-flop (i.e., either the flip-flop 106 in the comparator 100, or the flip-flop 106' in the comparator 100').
  • the output of the switch 114 is presented to one input of an AND gate 116, and the other input of the AND gate 116 is connected to the SET output of the comparator's latch (i.e., the latches 104, 104' in the comparators 100, 100', respectively).
  • Those inputs determine the state of the AND gate's output signal D.
  • the signals E, F, that are presented to the inputs of the switch 114 are the outputs from the preceding stage's AND gates 116; it will thus be appreciated that the signals
  • E, F are different from the traceback signals handled by the selector switches 110, 110'.
  • the generating means 112 are provided in a manner substantially similar to the manner in which the traceback selector switches are provided. Just as the first stage of the tree does not need any selector switches 110, 110', the first stage of the tree does not need any generating means 112.
  • the signals E, F, that are input to the respective switches 114 in the generating means associated with the tree's second stage are just the SET outputs of either the latches 104 or the latches 104' of the first stage comparators 100 or 100*, respectively.
  • the output of the last stage generating means's AND gate 116 goes to "1"
  • the traceback word presented from the last stage of the tree is valid (viz., the traceback bits identify the maximum value) , and the search can be halted.

Abstract

An electronic comparator (100) for selecting and outputting the larger of first and second electrical, binary-coded input values presented bit-serially, most-significant-bit first, has first and second input terminals; a logical exclusive-OR gate (102); a first resettable flip-flop (104); a second flip-flop (106); and a device (108) for selecting of the input values as an output of the comparator. In second embodiment, the electronic comparator has first and second input terminals; a logical exclusive-OR gate (102'); a first flip-flop synchronized with a train of bitclock pulses (103'); a second resettable flip-flop (104'); a third flip-flop (106') and a device (108') for selecting one of the input values as an output of the comparator. Devices for generating traceback signals indicating which input values were selected and a signal indicating that the maximum value has been identified are also disclosed.

Description

MAXIMUM SEARCH CIRCUIT
BACKGROUND
The present invention generally relates to methods and apparatus for digital signal processing or computational operations.
It is sometimes desired to find the greatest of a set of values that may be electrically stored as a set of digital words in memory elements such as registers, random access memory ("RAM") or read-only memory ("ROM") . Also, it is often desired to identify the largest such value, e.g., by finding its associated index number, which may be the number of the memory element in which the largest value is stored.
A common method for finding the largest of a set of values involves sequentially scanning the set. A register for storing the largest value is loaded with the first value (and its index) , and the contents of the register is compared to the second value. If the second value is larger, the second value and its index replace the first value and its index in the register. The third value is then compared to the register contents, and if it is larger, the third value and its index replace the value and index stored in the register. The process continues until all subsequent values in the set have been compared to the register contents.
Unfortunately, the amount of time needed for such a sequential search is proportional to the number of values in the set; thus, a sequential search may be too slow when the set is large. As described in more detail below, the present invention provides a fully parallel search method and circuit implementation using bit- serially presented digital values that determine the maximum value and its index in a time period that is independent of the number of values in the set searched. The present invention is particularly useful for code division multiple access ("CDMA") communications techniques in cellular radio telephone communication systems, such as the enhanced CDMA demodulation scheme based on successive signal subtractions, in signal strength order, of multiple CDMA signals that is described in co-pending U.S. Patent Application Serial No. 07/628,359, filed December 17, 1990.
In that co-pending patent application, it is explained that superior methods of spectrally spreading an information signal, such as occurs in a CDMA system, use error correction coding. When a single information bit is expanded into a pseudo-random sequence of R bits, the information bandwidth is spread without error- correction-coding gain; this technique may be termed "simple spreading". On the other hand, spreading a block of M information bits, where M > 1, into a pseudo-random sequence of M x R bits provides an error correction coding gain of the spreading ratio R. This technique, called "intelligent spreading", can involve either orthogonal or bi-orthogonal block coding of the information signal to be transmitted.
In orthogonal block coding, M bits to be transmitted are converted to one of 2H available 2H-bit orthogonal codewords. Decoding involves correlating a received signal with all members of the set of orthogonal codewords, and the index of the codeword giving the highest correlation yields the desired information. For example, if a signal's correlation with sixteen 16-bit codewords index-numbered 0 to 15 produces the highest correlation on the tenth codeword, the desired signal information is the -bit binary word 1010 (decimal 10) . A comparison processor may determine which correlation has the largest magnitude and may set that signal to zero by opening a corresponding switch. In this manner, the demodulated signal is subtracted effectively from the composite signal. The remaining spectrum with one component removed is processed and re-scrambled to reconstruct the original signal samples less the just-decoded signal. The magnitude of the correlated signal is representative of signal strength and may be stored in a sorting processor along with the signal's corresponding scrambling code. The processor orders the scrambling codes from greatest to weakest correlated signal magnitudes, and the code corresponding to the greatest magnitude may then be transmitted to the descrambler for the next signal demodulation.
Thus, after the comparison processor detects real and imaginary correlations and determines complex correlation magnitudes by calculating the square root of the sum of the squares of the real and imaginary components, the processor may then determine which complex correlation has the greatest magnitude. The real and imaginary components of the selected correlation may also be analyzed in the complex plane to determine if the phase has changed.
SUMMARY In one embodiment, the present invention provides an electronic comparator for selecting and outputting the larger of first and second electrical, binary-coded input values presented bit-serially, most-significant-bit first, comprising: first and second input terminals; a logical exclusive-OR gate operatively connected to the first and second input terminals for forming a signal indicating a logical exclusive-OR of the first and second input values; a first resettable flip-flop operatively connected to the logical exclusive-OR gate, wherein an output of the first flip-flop is set from a "0" state to a "1" state when the exclusive-OR gate signal indicates the first and second input values are unequal; a second flip-flop operatively connected to the first flip-flop and the first input terminal, wherein an output of the second flip-flop is set to a "0" state or to a "1" state in correspondence with the first input value when the first flip-flop's output changes state; and means, operatively connected to the first and second input terminals and the second flip-flop, for selecting one of the input values as an output of the comparator, wherein the selecting means selects the first input value when the second flip-flop is set to the "1" state, and the selecting means selects the second input value when the second flip-flop is set to the "0" state.
In a second embodiment, the present invention provides an electronic comparator for selecting and outputting the larger of first and second electrical, binary-coded input values presented bit-serially, most- significant-bit first, comprising: first and second input terminals; a logical exclusive-OR gate operatively connected to the first and second input terminals for forming a signal indicating a logical exclusive-OR of the first and second input values; a first flip-flop operatively connected to the logical exclusive-OR gate for registering a value indicating whether corresponding bits of the first and second input values are equal or unequal, wherein the first flip-flop registers the value in synchrony with a train of bitclock pulses applied to the first flip-flop; a second resettable flip-flop operatively connected to the first flip-flop, wherein an output of the second flip-flop is set from a "0" state to a "1" state when the value registered by the first flip- flop indicates the two input values' bits are unequal; a third flip-flop operatively connected to the second flip- flop and the first input terminal, wherein an output of the third flip-flop is set to a "0" state or to a "1" state in correspondence with the first input value's bit when the second flip-flop's output changes state; and means, operatively connected to the first and second input terminals and the second and third flip-flops, for selecting one of the input values as an output of the comparator, wherein the selecting means selects the logical OR gate signal as the output when the second flip-flop is in the "0" state, and the selecting means selects the first input value as the output when the third flip-flop is set to "1", and the selecting means selects the second input value as the output when the third flip-flop is set to "0".
In other aspects, traceback signals to indicate which of the first and second input values was selected by the selecting means and a signal indicating that the maximum value has been identified are also provided. BRIEF DESCRIPTION OP THE DRAWINGS The features and advantages of the invention will be understood after reading the following detailed description in conjunction with the drawings, in which:
Figure 1 illustrates a binary tree structure for finding the greatest of eight values;
Figure 2A is a block diagram of one embodiment of a bit-serial, most-significant-bit-first comparator in accordance with the present invention;
Figure 2B is a block diagram of a structure of the comparators of Figure 2A for finding the greatest of eight values; Figure 3 is a block diagram of another embodiment of a comparator in accordance with the present invention; and
Figure 4 is a diagram of a means for generating a signal that indicates that the maximum value has been identified.
DETAILED DESCRIPTION While portions of the present description are given in a context of cellular communications systems involving portable or mobile radio telephones and/or personal communication networks, it will be understood by those skilled in the art that the present invention may be used in other applications. In addition, binary values that are always positive, with 00...0 being the smallest value and 11...1 being the largest value, are described, but it will be understood that the description is readily adapted to other binary formats. As an aid in understanding the present invention, a process or apparatus for determining the greatest (or the least, for that matter) of a set of M values can be visualized as a binary tree that is symmetric, or regular, when M = 2N. For example, when M = 8 as shown in Figure 1, pairs of the M input values V0-V7 are compared in a first stage of a tree 10 having M/2 = 4 comparators 11-1 to 11-4; the larger value of each pair is selected and passed to a second stage having M/4 = 2 comparators 12-1, 12-2. The larger values of the two pairs are passed to the final, third stage having M/8 = 1 comparator 13, which passes the largest value V^ to its output. It will be appreciated that the number of stages needed for searching the M input values is just N. Even sets of input values generating asymmetric trees can be efficiently processed by a tree structure like that shown in Figure 1 but in which appropriate ones of the comparators are absent. For example, if only input values 0-V4 were presented in Figure 1, the comparators 11-3, 11-4 and 12-2 could be eliminated and the input value V4 could be presented directly to the comparator 13. Alternatively, an asymmetric tree can be made symmetric by padding with a sufficient number of input zeroes or other known values. For the previous example, the input values 5- 7 could be set to zero and presented to the tree 10 shown in Figure 1.
In one aspect of the invention, the tree structure is advantageously implemented by a suitable number of comparators that each compare two input values presented bit-serially, most-significant-bit ("MSB") first, and pass the larger of the two with substantially no delay. Such comparators stand in marked contrast to conventional comparators that are based on bit-serial subtraction and compare values presented least-significant-bit first. In another aspect of the invention, each comparator generates a traceback bit for identifying the larger of its input values and passes traceback bits for identifying the comparators in the preceding stages that were deemed to have furnished the larger input values. It will be appreciated that such bit-serial, MSB-first comparators can be implemented in a suitable, otherwise conventional, integrated circuit.
Figure 2A illustrates one embodiment of a bit- serial, MSB-first comparator 100 according to the present invention that could implement the tree of Figure 1. A pair of binary-coded values are presented bit-serially, MSB first, on inputs A and B to an otherwise conventional exclusive-OR ("XOR") gate 102 that produces a logic HIGH, or "1", output when the values on inputs A and B are unequal. Since the pair of input values are presented and compared bit by bit, MSB first, the input value having the binary "1" will be recognized as the larger on the first occasion that two unlike bits are encountered. (It will be appreciated that as long as the input bits are the same, it cannot be known which value is the larger, but in that case it does not matter which of the two inputs is passed to the output.)
When the output of the XOR gate 102 goes HIGH, indicating that the inputs A, B, are different,"it sets a latch 104 that remains set for the rest of the bits of the pair of input values. The latch 104, which may be a conventional set-reset flip-flop, also has a reset input for a suitable control signal for initializing the latch output to logic LOW, or "0", before the first and between sets of input values. The output of the latch 104 is connected to the clock input of a D-type flip-flop 106; thus, when the output of the latch 104 goes HIGH, the value of one of the inputs (input A, for example) is clocked into the flip-flop 106.
As seen in Figure 2A, when the A input value is larger than the B input value (e.g., A's MSB is a "1" and B's MSB is a "0"), the Q output of the flip-flop 106 goes
HIGH. The Q output acts as a control signal indicated by the dotted line that causes an input-selector switch 108, such as a field-effect transistor ("FET") , to switch to the "1" position as shown, thereby connecting the A input to the comparator output for the rest of the pair of input values. In the embodiment shown in Figure 2A, the ς> output of flip-flop 106 is not used.
On the other hand, if the A input is a "0" when the output of the latch 104 goes HIGH, the A input is again clocked into the flip-flop 106, and the Q output goes LOW, causing the input-selector switch 108 to switch to the "0" position. Thus, the B input is connected to the output for the rest of the pair of input values. As noted above, because the input values are presented MSB first, it does not matter which input value is connected to the output before the output of the XOR gate 102 goes HIGH.
It will be appreciated that the Q output of the flip-flop 106 indicates which of the two inputs was selected (i.e., which value was "1"), and thus the Q output is provided as the comparator's traceback signal output C. The binary traceback signal can be used as an index of the larger value by arbitrarily assigning its value "0" to input A and the value "1" to input B, for example.
The comparator 100 may also have an associated traceback-selector switch 110 that may have a plurality of poles (only one is shown in Figure 2A) . The state of the switch 110 is also controlled by the Q output of the flip-flop 106, and each pole of the switch 110 passes either an A TRACEBACK or B TRACEBACK signal from comparators in preceding tree stages. The number of poles provided in each traceback-selector switch 110 depends on how many traceback signals are to be passed from the preceding stage and the position of its associated comparator in the binary tree. Thus, a binary tree can be implemented by a suitable plurality of comparators 100 and switches 110 that yields not only the largest value of a set of input values but also the index of the largest value.
For example, if the largest of M = 128 values were to be found, the tree would have seven stages, the first of which would have sixty-four comparators. The first- stage comparators would need no traceback-selector switches, but each would generate one (a first) traceback signal. Thus, the thirty-two second-stage comparators would each have an associated one-pole traceback-selector switch and would each generate a second traceback signal. The sixteen third-stage comparators would each have an associated two-pole traceback-selector switch and would each generate a third traceback signal. This would continue until the seventh stage, in which the one comparator would have a six-pole traceback-selector switch and would generate a seventh traceback signal. The 7-bit traceback word consisting of the traceback signals passed and generated by the seventh stage would then be the index of the largest of the one hundred twenty-eight input values with the symbols "1" and "0" assigned to the comparator inputs as described above. The symmetric tree 10 of Figure 1 implemented by such comparators and traceback-selector switches is illustrated in Figure 2B. Eight input values V0 to V7 are presented to four first stage comparators 11-1 to 11-4, none of which has a traceback-selector switch but each of which generates one of the first traceback signals C,-l to C.,-4. The outputs of the first stage comparators are fed to the inputs of the two second stage comparators 12-1, 12-2, each of which has a one-pole traceback- selector switch 110-1, 110-2, respectively, for passing one of the pairs of traceback signals C,-l, 0,-2,and 0,-3, 0,-4, respectively, and generates second traceback signals C2-l, C2-2. The outputs of the second stage comparators are fed to the inputs of the third stage comparator 13, which has a double-pole traceback-selector switch 110-3 and generates the third traceback signal C3. One pole of the traceback-selector switch 110-3 passes one of the pair of traceback signals C2-l, C2-2, and the other pole passes one of the pair of outputs from preceding stage traceback selector switches 110-1, 110-2. The output V^ of the third stage comparator 13 is the largest of the input values V0 to V?.
It will be appreciated that the apparatus illustrated in Figure 2B outputs and identifies the largest input value in a time no longer than that needed to present them. In fact, the maximal value's identification by the traceback word may be available in significantly less time; for example, a single large- magnitude input value could be identified early. These advantages are potentially available no matter how many input values must be searched. It may sometimes be more efficient from a hardware size and cost point of view, however, to divide large sets of input values into subsets, find the maximal value of each subset, and then find the maximal value of those subset maximal values. In practice, a binary tree comprised of comparators such as that shown in Figure 2A could suffer from undesirable logic glitches due to varying propagation delays. Accordingly, Figure 3 shows a preferred embodiment of a comparator 100* in accordance with the present invention that avoids such logic glitches. A pair of input binary-coded values are presented bit- serially, MSB first, on inputs A1, B', to an otherwise conventional XOR gate 102' . Instead of being connected directly to the SET input of a set-reset flip-flop 104' as in the comparator 100, the output of gate 102' is connected to the D-input of a second D-type flip- flop 103' . The flip-flop 103' is clocked by a BITCLOCK signal that is synchronized to the presentation of the input bits. The Q output of the flip-flop 103' is passed to the SET input of the latch 104' , the output of which clocks a D-type flip-flop 106' as in comparator 100. Besides beneficially eliminating the effects of varying propagation delays by synchronizing the operation of the comparator to the BITCLOCK signal, another effect of the second flip-flop 103' is to delay slightly the result of the decision by gate 102* whether the two input bits are the same or different. Thus, if the flip- flop 103' were simply inserted into the comparator 100, the input-selector switch 108 would not take on the correct state until slightly after the input bits were presented, and the wrong value could be temporarily presented at the comparator output.
To avoid temporarily selecting the wrong input value as a result of that delay, a modified input-selector switch 108' comprising five conventional NAND gates 108'- 1 to 108'-5 is provided. The input-selector switch 108' has three states: (1) an initial state, in which the switch 108' behaves as an OR gate; (2) a select-A state; and (3) a select-B state. In the initial state, the input-selector switch's OR function has the effect that the comparator output promptly goes to "1" when different A and B inputs are presented. Thus, the bit value belonging to the larger input is presented at the output without waiting for the output of the XOR gate 102' to be clocked into flip-flop 103'. In the select-A state, the A value on the input A' is connected to the comparator output, and in the select-B state, the B value on the input B1 is connected to the comparator output, both for the rest of the pair of input values as described above. As seen in Figure 3, a suitable three-state input- selector switch 108' comprises five two-input NAND gates 108'-1 to 108'-5. With the latch 104' initialized (reset), the NAND gates 108'-1, 108'-2, are both fed with a "0" from the latch before unlike input bits are encountered, forcing their outputs to "1" irrespective of the outputs of the gate 106'. Thus, the outputs of the
NAND gates 108'-3, 108'-4, are merely inversions of the A and B inputs, respectively. Also, the output of the gate 108'-5 is the inversion of its (equal) inputs, i.e., A OR B, which is the same as both the A and B inputs so long as the A and B inputs are equal.
When the output of XOR gate 102' and the Q output of flip-flop 103' have gone HIGH, latch 104* clocks the A input into the flip-flop 106' and sets a "1" on the inputs of gates 108*-l, 108'-2, thereby passing to gates 108'-3, 108*-4, information about which of the A and B inputs is "1". Thus, an inversion of the Q output of flip-flop 106' (i.e., A) is presented to the inputs of the gate 108'-4, and an inversion of the Q output (i.e., A) is presented to the inputs of gate 108'-3.
If the A input is "1", that "1" and a "1" are presented on the inputs of gate 108'-3, and its output goes LOW. The B-input "0" and a "0" are presented on the inputs of gate 108'-4, and its output goes HIGH. Thus, the output of gate 108'-5 goes HIGH. If the A input is "0", that "0" and a "0" are presented on the inputs of gate 108'-3, and its output goes HIGH. The B-input "1" and a "1" are presented on the inputs of gate 108'-4, and its output goes LOW. Thus, the output of gate 108'-5 again goes HIGH. In either case, the output of gate 108'-5 continues to track the input that was "1" for the rest of the pair of input values. As described above in connection with Figure 2A, the Q output of flip-flop 106' indicates which of the A and B inputs was selected, and is output as the traceback signal C. In addition, Figure 3 shows the Q output as a control signal for a three-pole traceback-selector switch 110' that passes A and B traceback signals from preceding comparators as described above.
As discussed above, the maximum value's identification by the traceback word can become available after a time period significantly less than that needed to present the input values. A suitable means 112 for generating a signal that indicates that the maximum value has been identified is illustrated in Figure 4. Such a generating means 112 can be provided with either of the comparators 100, 100', and traceback selectors 110, 110'.
Referring to Figure 4, the state of a selector switch 114 is controlled by the Q output of the comparator's D-type flip-flop (i.e., either the flip-flop 106 in the comparator 100, or the flip-flop 106' in the comparator 100'). The output of the switch 114 is presented to one input of an AND gate 116, and the other input of the AND gate 116 is connected to the SET output of the comparator's latch (i.e., the latches 104, 104' in the comparators 100, 100', respectively). Those inputs determine the state of the AND gate's output signal D. The signals E, F, that are presented to the inputs of the switch 114 are the outputs from the preceding stage's AND gates 116; it will thus be appreciated that the signals
E, F, are different from the traceback signals handled by the selector switches 110, 110'.
The generating means 112 are provided in a manner substantially similar to the manner in which the traceback selector switches are provided. Just as the first stage of the tree does not need any selector switches 110, 110', the first stage of the tree does not need any generating means 112. The signals E, F, that are input to the respective switches 114 in the generating means associated with the tree's second stage are just the SET outputs of either the latches 104 or the latches 104' of the first stage comparators 100 or 100*, respectively. When the output of the last stage generating means's AND gate 116 goes to "1", the traceback word presented from the last stage of the tree is valid (viz., the traceback bits identify the maximum value) , and the search can be halted.
It is, of course, possible to embody the invention in specific forms other than those described above without departing from the spirit of the invention. The embodiments described above are merely illustrative and should not be considered restrictive in any way. The scope of the invention is given by the appended claims, rather than the preceding description, and all variations and equivalents which fall within the range of the claims are intended to be embraced therein.

Claims

CLAIMS :
1. An electronic comparator for selecting and outputting a larger of first and second electrical, binary-coded input values presented bit-serially, ost- significant-bit first, comprising: first and second input terminals; a logical exclusive-OR gate operatively connected to the first and second input terminals for forming a signal indicating a logical exclusive-OR of the first and second input values; a first resettable flip-flop operatively connected to the logical exclusive-OR gate, wherein an output of the first flip-flop is set from a "0" state to a "1" state when the exclusive-OR gate signal indicates the first and second input values are unequal; a second flip-flop operatively connected to the first flip-flop and the first input terminal, wherein an output of the second flip-flop is alternatively set to either a "0" state or a "1" state in correspondence with the first input value in response to the first flip- flop's output changing state; and first selecting means, operatively connected to the first and second input terminals and the second flip- flop, for selecting one of the input values as an output of the comparator, wherein the first selecting means selects the first input value when the second flip-flop is set to the "1" state, and the first selecting means selects the second input value when the second flip-flop is set to the "0" state.
2. An electronic comparator according to claim 1, wherein the second flip-flop generates a traceback signal to indicate which of the first and second input values was selected by the first selecting means.
3. An electronic comparator according to claim 2, further comprising second selecting means, responsive to the traceback signal, for alternatively selecting either a first traceback signal associated with the first input value or a second traceback signal associated with the second input value based on the input value selected by the first selecting means.
4. An electronic comparator according to claim 3, further comprising means, operatively connected to the first and second flip-flops, for generating a signal that indicates that the larger value has been identified.
5. An electronic comparator for selecting and outputting a larger of first and second electrical, binary-coded input values presented bit-serially, most- significant-bit first, comprising: first and second input terminals; a logical exclusive-OR gate operatively connected to the first and second input terminals for forming a signal indicating a logical exclusive-OR of the first and second input values; a first flip-flop operatively connected to the logical exclusive-OR gate for registering a value indicating whether corresponding bits of the first and second input values are equal or unequal, wherein the first flip-flop registers the value in synchrony with a train of bitclock pulses applied to the first flip-flop; a second resettable flip-flop operatively connected to the first flip-flop, wherein an output of the second flip-flop is set from a "0" state to a "1" state when the value registered by the first flip-flop indicates the two input values' bits are unequal; a third flip-flop operatively connected to the second flip-flop and the first input terminal, wherein an output of the third flip-flop is alternatively set either to a "0" state or a "1" state in correspondence with the first input value's bit in response to the second flip- flop's output changing state; and first selecting means, operatively connected to the first and second input terminals and the second and third flip-flops, for selecting one of the input values as an output of the comparator, wherein the first selecting means selects the logical OR of the first and second input values as the output when the second flip-flop is in the "0" state, and the first selecting means selects the first input value as the output when the third flip- flop is set to "1", and the first selecting means selects the second input value as the output when the third flip- flop is set to "0".
6. An electronic comparator according to claim 5, wherein the third flip-flop generates a traceback signal to indicate which of the first and second input values was selected by the first selecting means.
7. An electronic comparator according to claim 6, further comprising second selecting means, responsive to the traceback signal, for alternatively selecting either a first traceback signal associated with the first input value or a second traceback signal associated with the second input value based on the input value selected by the first selecting means.
8. An electronic comparator according to claim 6, further comprising means, operatively connected to the second and third flip-flops, for generating a signal that indicates that the larger value has been identified.
9. An electronic logic circuit for selecting and outputting a maximum of a plurality of electrical binary- coded values comprising a plurality of selecting means for selecting and outputting a larger of two selecting means input values, the plurality of selecting means being tree-connected to form a tree of selecting means and each selecting means including means for generating a traceback signal to indicate which of the two selecting means input values was selected, wherein pairs of the plurality of values are presented bit-serially, most- significant-bit first, to respective first ones of the selecting means disposed in a first stage of the tree, each first selecting means outputting a larger of the two selecting means input values as a first-stage output signal and outputting its traceback signal as a first- stage traceback signal, the first-stage output signals being presented bit-serially, most-significant-bit first, to respective second ones of the selecting means disposed in a second stage of the tree, and so forth for subsequent stages of the tree until the maximum of the input values is passed as an output signal from a last selecting means disposed in a last stage of the tree, and the first-stage traceback signals being presented to respective second ones of the selecting means disposed in a second stage of the tree, each second selecting means including means for selecting either the first traceback signal associated with the second selecting means' first selecting means input value or the first traceback signal associated with the second selecting means' second selecting means input value, and so forth for subsequent stages of the tree.
10. An electronic logic circuit according to claim 9, further comprising means, operatively connected to the selecting and outputting means, for generating a signal that indicates that the maximum value has been identified.
PCT/US1992/007729 1991-09-18 1992-09-18 Maximum search circuit WO1993006547A1 (en)

Priority Applications (8)

Application Number Priority Date Filing Date Title
CA002096432A CA2096432C (en) 1991-09-18 1992-09-18 Maximum search circuit
NL9220005A NL194930C (en) 1991-09-18 1992-09-18 Electronic comparator and electronic logic circuit.
BR9205409A BR9205409A (en) 1991-09-18 1992-09-18 ELECTRONIC COMPARATOR AND ELECTRONIC LOGIC CIRCUIT
DE4293456A DE4293456B4 (en) 1991-09-18 1992-09-18 Electronic logic circuit
AU26563/92A AU651737B2 (en) 1991-09-18 1992-09-18 Maximum search circuit
JP50613893A JP3285354B2 (en) 1991-09-18 1992-09-18 Maximum value search circuit
GB9309345A GB2265033B (en) 1991-09-18 1992-09-18 Maximum search circuit
SE9301546A SE515269C2 (en) 1991-09-18 1993-05-05 Maximum Search Circuit

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/761,380 US5187675A (en) 1991-09-18 1991-09-18 Maximum search circuit
US761,380 1991-09-18

Publications (1)

Publication Number Publication Date
WO1993006547A1 true WO1993006547A1 (en) 1993-04-01

Family

ID=25062025

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1992/007729 WO1993006547A1 (en) 1991-09-18 1992-09-18 Maximum search circuit

Country Status (16)

Country Link
US (1) US5187675A (en)
JP (1) JP3285354B2 (en)
AU (1) AU651737B2 (en)
BR (1) BR9205409A (en)
CA (1) CA2096432C (en)
DE (2) DE4293456T1 (en)
ES (1) ES2100114B1 (en)
FR (1) FR2681450B1 (en)
GB (1) GB2265033B (en)
HK (1) HK27196A (en)
IT (1) IT1255822B (en)
MX (1) MX9205325A (en)
NL (1) NL194930C (en)
SE (1) SE515269C2 (en)
TW (1) TW198776B (en)
WO (1) WO1993006547A1 (en)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5550809A (en) * 1992-04-10 1996-08-27 Ericsson Ge Mobile Communications, Inc. Multiple access coding using bent sequences for mobile radio communications
US5295153A (en) 1992-04-13 1994-03-15 Telefonaktiebolaget L M Ericsson CDMA frequency allocation
CA2176401C (en) 1994-02-17 2003-07-08 John H. Cafarella A high-data-rate wireless local-area network
US5953370A (en) 1994-09-09 1999-09-14 Omnipoint Corporation Apparatus for receiving and correlating a spread spectrum signal
US5757847A (en) 1994-09-09 1998-05-26 Omnipoint Corporation Method and apparatus for decoding a phase encoded signal
US5856998A (en) 1994-09-09 1999-01-05 Omnipoint Corporation Method and apparatus for correlating a continuous phase modulated spread spectrum signal
US5963586A (en) 1994-09-09 1999-10-05 Omnipoint Corporation Method and apparatus for parallel noncoherent correlation of a spread spectrum signal
US5881100A (en) 1994-09-09 1999-03-09 Omnipoint Corporation Method and apparatus for coherent correlation of a spread spectrum signal
US5515306A (en) * 1995-02-14 1996-05-07 Ibm Processing system and method for minimum/maximum number determination
JPH09293066A (en) * 1996-04-26 1997-11-11 Wacom Co Ltd Vector arithmetic device and method
US5862182A (en) * 1996-07-30 1999-01-19 Lucent Technologies Inc. OFDM digital communications system using complementary codes
US6452958B1 (en) 1996-07-30 2002-09-17 Agere Systems Guardian Corp Digital modulation system using extended code set
US5831977A (en) * 1996-09-04 1998-11-03 Ericsson Inc. Subtractive CDMA system with simultaneous subtraction in code space and direction-of-arrival space
GB9622540D0 (en) * 1996-10-30 1997-01-08 Discovision Ass Trackback for viterbi decoder
US6023477A (en) * 1996-12-18 2000-02-08 Ericsson Inc. System and method of time and frequency synchronization in a radiocommunication system
JPH10224224A (en) * 1997-02-03 1998-08-21 Sunao Shibata Semiconductor arithmetic unit
US6560461B1 (en) 1997-08-04 2003-05-06 Mundi Fomukong Authorized location reporting paging system
US6931424B1 (en) 2000-03-21 2005-08-16 Alantro Communications, Inc. Storage efficient minimization logic
US6948056B1 (en) * 2000-09-28 2005-09-20 Intel Corporation Maintaining even and odd array pointers to extreme values by searching and comparing multiple elements concurrently where a pointer is adjusted after processing to account for a number of pipeline stages
US7840624B2 (en) * 2000-12-29 2010-11-23 Intel Corporation Digital low pass filter
WO2004066141A2 (en) * 2003-01-15 2004-08-05 Globespanvirata Incorporated Apparatus and method for determining extreme values
US7221927B2 (en) 2004-02-13 2007-05-22 Trapeze Networks, Inc. Station mobility between access points
US7573859B2 (en) 2005-10-13 2009-08-11 Trapeze Networks, Inc. System and method for remote monitoring in a wireless network
US7551619B2 (en) 2005-10-13 2009-06-23 Trapeze Networks, Inc. Identity-based networking
US7558266B2 (en) 2006-05-03 2009-07-07 Trapeze Networks, Inc. System and method for restricting network access using forwarding databases
US7577453B2 (en) 2006-06-01 2009-08-18 Trapeze Networks, Inc. Wireless load balancing across bands
US7912982B2 (en) 2006-06-09 2011-03-22 Trapeze Networks, Inc. Wireless routing selection system and method
US8818322B2 (en) 2006-06-09 2014-08-26 Trapeze Networks, Inc. Untethered access point mesh system and method
US9191799B2 (en) 2006-06-09 2015-11-17 Juniper Networks, Inc. Sharing data between wireless switches system and method
US7844298B2 (en) 2006-06-12 2010-11-30 Belden Inc. Tuned directional antennas
US7724704B2 (en) 2006-07-17 2010-05-25 Beiden Inc. Wireless VLAN system and method
US8340110B2 (en) 2006-09-15 2012-12-25 Trapeze Networks, Inc. Quality of service provisioning for wireless networks
US8072952B2 (en) 2006-10-16 2011-12-06 Juniper Networks, Inc. Load balancing
US7873061B2 (en) 2006-12-28 2011-01-18 Trapeze Networks, Inc. System and method for aggregation and queuing in a wireless network
US8902904B2 (en) 2007-09-07 2014-12-02 Trapeze Networks, Inc. Network assignment based on priority
US8509128B2 (en) 2007-09-18 2013-08-13 Trapeze Networks, Inc. High level instruction convergence function
US8238942B2 (en) 2007-11-21 2012-08-07 Trapeze Networks, Inc. Wireless station location detection
US9785434B2 (en) 2011-09-23 2017-10-10 Qualcomm Incorporated Fast minimum and maximum searching instruction
US10318291B2 (en) * 2011-11-30 2019-06-11 Intel Corporation Providing vector horizontal compare functionality within a vector register
FR2997772B1 (en) * 2012-11-06 2014-12-26 Oberthur Technologies DATA COMPARISON METHOD, COMPUTER PROGRAM PRODUCT AND CORRESPONDING DEVICE
WO2018063912A1 (en) 2016-09-27 2018-04-05 Boston Scientific Neuromodulation Corporation Systems and methods for closed-loop pain management
WO2018063637A1 (en) 2016-09-27 2018-04-05 Boston Scientific Neuromodulation Corporation System for pain management using objective pain measure
US10667747B2 (en) 2016-10-25 2020-06-02 Boston Scientific Neuromodulation Corporation Method and apparatus for pain control using baroreflex sensitivity during posture change
US10675469B2 (en) 2017-01-11 2020-06-09 Boston Scientific Neuromodulation Corporation Pain management based on brain activity monitoring
US10631776B2 (en) 2017-01-11 2020-04-28 Boston Scientific Neuromodulation Corporation Pain management based on respiration-mediated heart rates
US10631777B2 (en) 2017-01-11 2020-04-28 Boston Scientific Neuromodulation Corporation Pain management based on functional measurements
EP3568861A1 (en) 2017-01-11 2019-11-20 Boston Scientific Neuromodulation Corporation Pain management based on emotional expression measurements
US10960210B2 (en) 2017-02-10 2021-03-30 Boston Scientific Neuromodulation Corporation Method and apparatus for pain management with sleep detection
EP3655091B1 (en) 2017-07-18 2021-08-25 Boston Scientific Neuromodulation Corporation Sensor-based pain management systems

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3740538A (en) * 1971-07-28 1973-06-19 Us Air Force Digital sorter and ranker
US4567572A (en) * 1983-02-22 1986-01-28 The United States Of America As Represented By The Director Of The National Security Agency Fast parallel sorting processor
US4903005A (en) * 1987-11-04 1990-02-20 Mitsubishi Denki Kabushiki Kaisha Comparator circuit

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2154854A5 (en) * 1971-09-28 1973-05-18 Telemecanique Electrique
US4644560A (en) * 1982-08-13 1987-02-17 Hazeltine Corporation Intranetwork code division multiple access communication system
JPS59161733A (en) * 1983-03-07 1984-09-12 Oki Electric Ind Co Ltd Pattern detecting circuit
FR2584884B1 (en) * 1985-07-09 1987-10-09 Trt Telecom Radio Electr FREE CHANNEL SEARCHING METHOD AND DEVICE FOR A MOBILE RADIO SYSTEM
DE3611301C2 (en) * 1986-04-04 1997-09-25 Philips Patentverwaltung Mobile radio system with communication channel and organization channel
US4901307A (en) * 1986-10-17 1990-02-13 Qualcomm, Inc. Spread spectrum multiple access communication system using satellite or terrestrial repeaters
CH676179A5 (en) * 1988-09-29 1990-12-14 Ascom Zelcom Ag
US4930140A (en) * 1989-01-13 1990-05-29 Agilis Corporation Code division multiplex system using selectable length spreading code sequences
US4965850A (en) * 1989-01-23 1990-10-23 Schloemer Jerry R System for and method of assigning frequencies in a communications system with no central control of frequency allocation
US5101501A (en) * 1989-11-07 1992-03-31 Qualcomm Incorporated Method and system for providing a soft handoff in communications in a cdma cellular telephone system
US5056109A (en) * 1989-11-07 1991-10-08 Qualcomm, Inc. Method and apparatus for controlling transmission power in a cdma cellular mobile telephone system
US5109390A (en) * 1989-11-07 1992-04-28 Qualcomm Incorporated Diversity receiver in a cdma cellular telephone system
US5022049A (en) * 1989-11-21 1991-06-04 Unisys Corp. Multiple access code acquisition system
US5038399A (en) * 1990-05-21 1991-08-06 Motorola, Inc. Method for assigning channel reuse levels in a multi-level cellular system
US5103459B1 (en) * 1990-06-25 1999-07-06 Qualcomm Inc System and method for generating signal waveforms in a cdma cellular telephone system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3740538A (en) * 1971-07-28 1973-06-19 Us Air Force Digital sorter and ranker
US4567572A (en) * 1983-02-22 1986-01-28 The United States Of America As Represented By The Director Of The National Security Agency Fast parallel sorting processor
US4903005A (en) * 1987-11-04 1990-02-20 Mitsubishi Denki Kabushiki Kaisha Comparator circuit

Also Published As

Publication number Publication date
US5187675A (en) 1993-02-16
CA2096432C (en) 2002-07-16
NL194930B (en) 2003-03-03
NL194930C (en) 2003-07-04
DE4293456B4 (en) 2004-12-09
AU651737B2 (en) 1994-07-28
DE4293456T1 (en) 1993-10-07
IT1255822B (en) 1995-11-17
ITMI922144A1 (en) 1994-03-17
ITMI922144A0 (en) 1992-09-17
AU2656392A (en) 1993-04-27
BR9205409A (en) 1994-03-15
ES2100114A1 (en) 1997-06-01
FR2681450A1 (en) 1993-03-19
SE9301546D0 (en) 1993-05-05
CA2096432A1 (en) 1993-03-19
NL9220005A (en) 1993-09-01
GB2265033B (en) 1995-03-22
GB9309345D0 (en) 1993-07-14
ES2100114B1 (en) 1998-02-16
HK27196A (en) 1996-02-23
GB2265033A (en) 1993-09-15
JPH06505587A (en) 1994-06-23
JP3285354B2 (en) 2002-05-27
SE9301546L (en) 1993-06-28
MX9205325A (en) 1993-08-01
SE515269C2 (en) 2001-07-09
FR2681450B1 (en) 1994-08-05
TW198776B (en) 1993-01-21

Similar Documents

Publication Publication Date Title
US5187675A (en) Maximum search circuit
EP1779522B1 (en) System and method for static huffman decoding
US4506372A (en) Method and apparatus for recognizing in a receiver the start of a telegram signal consisting of a bit impulse sequence
CA1056506A (en) Decoding circuit for variable length codes
US4463342A (en) Method and means for carry-over control in the high order to low order pairwise combining of digits of a decodable set of relatively shifted finite number strings
Neumann Efficient error-limiting variable-length codes
EP1436899A1 (en) Huffman coding
GB1580570A (en) Coding or decoding apparatus
CA2130551A1 (en) Method for determining the number of defective digital bits (defective bit number) transmitted over a data-transmission path to be tested, and device for the carring out of the method
EP1459466B1 (en) Insertion sorter
Nekritch Byte-oriented decoding of canonical Huffman codes
Neumann Error-limiting coding using information-lossless sequential machines
US4001779A (en) Digital error correcting decoder
KR100504465B1 (en) A Peuso Noise codes generator and the method thereof
US6446101B1 (en) Apparatus for fast determination of a prescribable number of highest value signals
JPH057189A (en) Unique word detector
KR950010919B1 (en) Synchronization acquisition device and method thereof using shift and add of code
JPH04280517A (en) Data compression and restoring system
JP3737388B2 (en) Maximum likelihood code search apparatus and method
RU2210869C2 (en) Frame synchronization marker separating device
Fujioka et al. Parallel architecture for high‐speed Lempel‐Ziv data coding/decoding
KR0159655B1 (en) Data compression apparatus using ccd
RU2271611C1 (en) Frame-synchronization marker selecting device
Kazakos et al. Exponential error bounds for coding through noisy channels with inaccurately known statistics and for generalized decision rules
JPH1127242A (en) Monitoring circuit of the number of errors generated in unit time in serial signal

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AU BR CA DE ES GB JP NL SE

WWE Wipo information: entry into national phase

Ref document number: 9309345.8

Country of ref document: GB

ENP Entry into the national phase

Ref document number: 9350009

Country of ref document: ES

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 009350009

Country of ref document: ES

Ref document number: P009350009

Country of ref document: ES

Ref document number: 2096432

Country of ref document: CA

RET De translation (de og part 6b)

Ref document number: 4293456

Country of ref document: DE

Date of ref document: 19931007

WWE Wipo information: entry into national phase

Ref document number: 4293456

Country of ref document: DE

WWP Wipo information: published in national office

Ref document number: 9350009

Country of ref document: ES

Kind code of ref document: A

WWG Wipo information: grant in national office

Ref document number: 9350009

Country of ref document: ES

Kind code of ref document: A