U.S. patent application number 17/169591 was filed with the patent office on 2022-08-11 for received-signal rate detection.
The applicant listed for this patent is MELLANOX TECHNOLOGIES, LTD.. Invention is credited to Amir Dabbagh, Albert Gorshtein, Eran Notkin, Nir Sheffi.
Application Number | 20220255829 17/169591 |
Document ID | / |
Family ID | 1000005412871 |
Filed Date | 2022-08-11 |
United States Patent
Application |
20220255829 |
Kind Code |
A1 |
Dabbagh; Amir ; et
al. |
August 11, 2022 |
Received-signal rate detection
Abstract
A rate Detection Apparatus (RDA) includes a power spectral
density (PSD) estimator and a rate selector. The PSD estimator is
configured to receive samples of a signal, and to estimate a PSD of
the signal. The rate selector is configured to identify a
transmission rate of the signal responsively to the estimated
PSD.
Inventors: |
Dabbagh; Amir; (Haifa,
IL) ; Notkin; Eran; (Nahalal, IL) ; Gorshtein;
Albert; (Ashdod, IL) ; Sheffi; Nir; (Rehovot,
IL) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
MELLANOX TECHNOLOGIES, LTD. |
Yokneam |
|
IL |
|
|
Family ID: |
1000005412871 |
Appl. No.: |
17/169591 |
Filed: |
February 8, 2021 |
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
H04L 43/16 20130101;
H04L 43/0888 20130101; H04L 47/11 20130101; H04L 25/0262 20130101;
H04L 43/0811 20130101 |
International
Class: |
H04L 12/26 20060101
H04L012/26; H04L 12/801 20060101 H04L012/801 |
Claims
1. A rate Detection Apparatus (RDA), comprising: a power spectral
density (PSD) estimator, configured to receive samples of a signal,
and to estimate a PSD of the signal in multiple frequency slices
that correspond at least to multiple expected transmission rates;
and a rate selector, configured to identify a transmission rate of
the signal by selecting the transmission rate of the signal from
among the expected transmission rates responsively to the estimated
PSD.
2. (canceled)
3. The RDA according to claim 1, wherein the PSD estimator is
further configured to estimate the PSD of the signal in one or more
additional frequency slices that do not correspond to any of the
expected transmission rates, and wherein the rate selector is
configured to select the transmission rate depending on the PSD
estimated in the one or more additional frequency slices.
4. The RDA according to claim 3, wherein the PSD estimator is
configured to evaluate the one or more additional frequency slices
for one or more of the expected transmission rates that are
characterized by an insertion loss exceeding a defined
threshold.
5. The RDA according to claim 3, wherein the PSD estimator is
configured to specify the one or more additional frequency slices,
for a given expected transmission rate, to one or more highest
harmonics of the given expected transmission rate that fall below a
Nyquist rate of the received signal.
6. The RDA according to claim 1, wherein the rate selector is
further configured to identify a physical-layer (PHY) protocol of
the signal based on the identified transmission rate.
7. The RDA according to claim 1, wherein the PSD calculator is
configured to estimate a Peak-to-Average Power Ratio (PAPR) of the
signal in at least one of the frequency slices, and wherein the
rate selector is configured to identify the transmission rate
depending on the PAPR.
8. A rate Detection Apparatus (RDA), comprising: a power spectral
density (PSD) estimator, configured to receive samples of a signal,
and to estimate a PSD of the signal, wherein the PSD estimator
comprises multiple Goertzel filters, each configured to receive
power samples of the signal and to output the power samples
filtered around a respective frequency; and a rate selector,
configured to identify a transmission rate of the signal
responsively to the estimated PSD.
9. The RDA according to claim 8, wherein the rate selector is
configured to identify the transmission rate responsively to a
comparison among outputs of the Goertzel filters.
10. The RDA according to claim 1, wherein the PSD estimator
comprises multiple PSD calculators, each configured to receive
power samples filtered around a respective frequency and to output
an estimate of the PSD at the respective frequency.
11. A rate Detection Apparatus (RDA), comprising: a power spectral
density (PSD) estimator, configured to receive samples of a signal,
and to estimate a PSD of the signal over a measurement time period;
a rate selector, configured to identify a transmission rate of the
signal responsively to the estimated PSD; and a phase error
injection circuit, which is configured to insert phase noise into
the signal during the measurement time period.
12. The RDA according to claim 1, wherein the rate selector is
configured to identify that the transmission rate is higher than a
Nyquist rate of the signal.
13. A rate detection method, comprising: receiving samples of a
signal; estimating a Power Spectral Density (PSD) of the signal in
multiple frequency slices that correspond at least to multiple
expected transmission rates; and identifying a transmission rate of
the signal by selecting the transmission rate of the signal from
among the expected transmission rates responsively to the estimated
PSD.
14. (canceled)
15. The method according to claim 13, wherein estimating the PSD
comprises estimating the PSD of the signal in one or more
additional frequency slices that do not correspond to any of the
expected transmission rates, and wherein identifying the
transmission rate comprises selecting the transmission rate
depending on the PSD estimated in the one or more additional
frequency slices.
16. The method according to claim 15, wherein selecting the
transmission rate comprises evaluating the one or more additional
frequency slices for one or more of the expected transmission rates
that are characterized by an insertion loss exceeding a defined
threshold.
17. The method according to claim 15, wherein selecting the
transmission rate comprises specifying the one or more additional
frequency slices, for a given expected transmission rate, to one or
more highest harmonics of the given expected transmission rate that
fall below a Nyquist rate of the received signal.
18. The method according to claim 13, further comprising
identifying a physical-layer (PHY) protocol of the signal based on
the identified transmission rate.
19. The method according to claim 13, wherein identifying the
transmission rate comprises estimating a Peak-to-Average Power
Ratio (PAPR) of the signal in at least one of the frequency slices,
and identifying the transmission rate depending on the PAPR.
20. The method according to claim 13, wherein estimating the PSD
comprises providing power samples of the signal to multiple
Goertzel filters, and outputting, from each of the Goertzel
filters, the power samples filtered around a respective
frequency.
21. The method according to claim 20, wherein identifying the
transmission rate comprises comparing among outputs of the Goertzel
filters.
22. The method according to claim 13, wherein estimating the PSD
comprises applying multiple PSD calculators to each receive power
samples filtered around a respective frequency and output an
estimate of the PSD at the respective frequency.
23. The method according to claim 13, wherein estimating the PSD
comprises estimating the PSD over a measurement time period, and
further comprising inserting phase noise into the signal during the
measurement time period.
24. The method according to claim 13, wherein identifying the
transmission rate comprises identifying that the transmission rate
is higher than a Nyquist rate of the signal.
Description
FIELD OF THE INVENTION
[0001] The present invention relates generally to high-speed
digital signal transmission, and particularly to the detection of
signal bitrate.
BACKGROUND OF THE INVENTION
[0002] In some communication networks, the receiver automatically
detects the characteristics of a received signal.
[0003] For example, U.S. Pat. No. 7,813,381 discloses automatic
data rate detection systems and methods, including a system that
includes a clock and data recovery circuit embodied in a first
integrated circuit, the clock and data recovery circuit being
configured to re-clock a data stream and an automatic rate
detection system that is embodied in a second integrated circuit,
where the first integrated circuit is in data communication with
the second integrated circuit, and the automatic rate detection
system is configured to determine a data rate of the data stream
upon identifying a transition in the data rate of the data stream
based upon the state of the at least one status flag received from
the clock and data recovery circuit.
[0004] U.S. Pat. No. 6,112,325 discloses a device for determining
the rate of a received communication frame, including a plurality
of encoded signal quality estimators each at a different rate, a
decision controller, connected to the encoded signal quality
estimators, a decoder connected to the controller and an erasure
detection unit connected to the decoder and the controller, wherein
each of the quality estimators processes the received encoded frame
according to an encoded signal quality criteria, thereby producing
a quality value, and, wherein the controller selects the rate with
the best quality value, the decoder decodes the encoded frame
according to the selected rate and the erasure detection unit
analyzing the decoded frame, thereby determining it as allowed or
as erased.
SUMMARY OF THE INVENTION
[0005] An embodiment of the present invention that as described
herein provides a rate Detection Apparatus (RDA) including a power
spectral density (PSD) estimator and a rate selector. The PSD
estimator is configured to receive samples of a signal, and to
estimate a PSD of the signal. The rate selector is configured to
identify a transmission rate of the signal responsively to the
estimated PSD.
[0006] In some embodiments, the PSD estimator is configured to
estimate the PSD of the signal in multiple frequency slices that
correspond at least to multiple expected transmission rates, and
the rate selector is configured to select the transmission rate of
the signal from among the expected transmission rates.
[0007] In some embodiments, the PSD estimator is further configured
to estimate the PSD of the signal in one or more additional
frequency slices that do not correspond to any of the expected
transmission rates, and the rate selector is configured to select
the transmission rate depending on the PSD estimated in the one or
more additional frequency slices. In an example embodiment, the PSD
estimator is configured to evaluate the one or more additional
frequency slices for one or more of the expected transmission rates
that are characterized by an insertion loss exceeding a defined
threshold. In a disclosed embodiment, the PSD estimator is
configured to specify the one or more additional frequency slices,
for a given expected transmission rate, to one or more highest
harmonics of the given expected transmission rate that fail below a
Nyquist rate of the received signal.
[0008] In another embodiment, the rate selector is further
configured to identify a physical-layer (PHY) protocol of the
signal based on the identified transmission rate. In yet another
embodiment, the POD calculator is configured to estimate a
Peak-to-Average Power Ratio (PAPR) of the signal in at least one of
the frequency slices, and the rate selector is configured to
identify the transmission rate depending on the PAPR.
[0009] In some embodiments, the PSD estimator includes multiple
Goertzel filters, each configured to receive power samples of the
signal and to output the power samples filtered around a respective
frequency. In an embodiment, the rate selector is configured to
identify the transmission rate responsively to a comparison among
outputs of the Goertzel filters.
[0010] In a disclosed embodiment, the PSD estimator includes
multiple PSD calculators, each configured to receive power samples
filtered around a respective frequency and to output an estimate of
the POD at the respective frequency. In another embodiment, the POD
estimator is configured to estimate the POD over a measurement time
period, and the RDA further includes a phase error injection
circuit configured to insert phase noise into the signal during the
measurement time period. In an embodiment, the rate selector is
configured to identify that the transmission rate is higher than a
Nyquist rate of the signal.
[0011] There is additionally provided, in accordance with an
embodiment of the present invention, a rate detection method
including receiving samples of a signal, and estimating a Power
Spectral Density (PSD) of the signal. A transmission rate of the
signal is identified responsively to the estimated PSD.
[0012] The present invention will be more fully understood from the
following detailed description of the embodiments thereof, taken
together with the drawings in which:
BRIEF DESCRIPTION OF THE DRAWINGS
[0013] FIG. 1 is a block diagram that schematically illustrates the
structure of a rate detection apparatus, in accordance with an
embodiment of the present invention;
[0014] FIG. 2 is a block diagram that schematically illustrates the
structure of a spectral-tone extractor in the apparatus of FIG. 1,
in accordance with an embodiment of the present invention;
[0015] FIG. 3 is a flowchart that schematically describes a method
for rate selection, in accordance with an embodiment of the present
invention; and
[0016] FIG. 4 is a flowchart that schematically describes a method
for rate detection, in accordance with an embodiment of the present
invention.
DETAILED DESCRIPTION OF EMBODIMENTS
Overview
[0017] Communication networks may sometimes use a variety of
frequencies, modulation schemes, baud-rates and bitrates
(collectively referred to hereinbelow as communication rates). In
some applications, an auto-negotiation session may take place
between network devices that are connected to the network, in which
the transmitter and the receiver interrogate each other's
capabilities and set a suitable communication rate. In other
applications, the receiver automatically detects the transmission
rate from a group of possible communication rates.
[0018] Measuring the power spectrum of the received signal may
provide valuable information required for the automatic detection
of the transmitted baud-rate (which, many applications, has a
one-to-one correspondence with the communication protocol);
however, two issues complicate the detection of the transmitted
protocol by observing the power spectrum of the received signal.
The first issue is that harmonics of a lower-frequency protocol may
be observed in a higher-frequency protocol when the higher
frequency is an integer multiple of the lower frequency (which is
the case in some applications, e.g., InfiniBand.TM.). The second
issue is insertion loss transmission media typically attenuate the
signal level; the attenuation is typically not equal across the
frequency spectrum, and protocols that use frequencies near the end
of the supported band are typically attenuated far more than
relatively lower frequencies.
[0019] Automatic detection of the transmission protocol could in
principle be done using a plurality of Clock Data Recovery (CDR)
circuits, each CDR configured to detect one of a preset group of
protocols; decoding the received data in each CDR; and, checking
for data validity, e.g., by checking a Cyclic-Redundancy-Check
(CRC) code that may be embedded in the received data. Such method,
however, is both slow and, in terms of required hardware resources
and power consumption, expensive.
[0020] Embodiments of the present invention that are disclosed
herein provide methods and apparatuses for automatic rate detection
of a received communication signal. The disclosed techniques may be
used in network devices such as switches, host-channel adapters and
others that are required to automatically detect a transmission
rate. In some embodiments, a rate-detecting receiver comprises an
analog to digital converter (ADC) that converts received analog
signals to digital samples at a conversion frequency The
rate-detecting receiver further comprises a rate detection
apparatus (RDA).
[0021] In an embodiment, the transmitter may transmit data in one
of a plurality of communication rates, and the RDA is configured to
select a most likely input rate (in embodiments, each communication
rate corresponds to a unique transmission frequency). In an
embodiment, the input frequencies that the receiver may receive are
below the Nyquist frequency, which is equal to half the ADC
conversion frequency; in another embodiment the input frequencies
may comprise a frequency that is beyond the Nyquist frequency.
[0022] In an embodiment, the RDA comprises band-pass filters that
filter the power spectral density of the received signal in a
series of frequency slices, which are centered about the signal
frequencies that the rate-detecting receiver is expected to receive
(denoted Fvalid). In some embodiments, the series of frequency
bands also covers one or more additional frequencies, which are not
expected to be received but may be useful in confronting the
effects of two phenomena: insertion loss (IL), or the drop in
received power at high frequencies, and frequency ambiguity, which
may occur when two receive frequencies are multiples of each other.
As the sequence length that typical bandpass filters require for
frequency analysis is relatively small, rate detection may be
rapidly achieved, after a small number of signal samples is
acquired.
[0023] In some embodiments, the list of frequencies to be analyzed
Fanalysis is defined for each frequency Fi.di-elect cons.Fvalid; in
embodiments, the list may comprise, in addition to Fi, other
frequencies of Fvalid, and, in embodiment, the list may comprise
one or more extended frequencies.
[0024] In some embodiments, the RDA calculates the power-spectral
density using a group of Goertzel filters and Power Spectral
Density (PSD) calculators, which calculate the power in the
respective frequency bands from the outputs of the Goertzel
filters. (For Goertzel filters and
[0025] Goertzel algorithms background, see "An Algorithm for the
Evaluation of Finite Trigonometric Series," Goertzel (January
1958), American Mathematical Monthly, 65 (1): 34-35.) Each of the
Goertzel filters may be tuned to one of Fvalid frequencies or to
one of the extended frequencies.
[0026] According to an embodiment, the RDA selects the most likely
received frequency responsive to the PSD, using a flowchart that
will be described below.
[0027] Thus, according to embodiments of the present invention, a
rate detection receiver may detect the input rate rapidly, using
digital circuits and computations (in addition to a mixed-signal
ADC). As would be appreciated, in some embodiments each PHY
protocol that may be used by the transmitter is characterized by a
different rate, and, hence, detecting the input rate also
identifies the PHY protocol.
[0028] The disclosed rate-detection techniques can be used in any
suitable receiver that receives digital signals. One example
application is a receive port of a network device. A network device
may comprise, for example, a network adapter such as an Ethernet
Network Interface Controller (NIC), an Infiniband Host Channel
Adapter (HCA), a Data Processing Unit (DPU) or "Smart-NIC", a
network-enabled Graphics Processing Unit (GPU), or any other
suitable network device. Alternatively, the disclosed techniques
can be used for rate detection in other sorts of receivers that
detect digital signals, such as receivers of various wireless
protocols, receivers of test equipment, and the like.
System Description
[0029] FIG. 1 is a block diagram that schematically illustrates the
structure of a Rate-Detecting Receiver 100, in accordance with an
embodiment of the present invention. Receiver 100 can be used, for
example, in a receive port of a network device such as a network
adapter or switch, for identifying the baud rate of an incoming
signal.
[0030] The set of frequencies corresponding to all the transmission
rates that the Rate-Detecting Receiver may receive is referred to
as Fvalid. As will be described below, to reliably detect the
transmission rate, the Rate-Detecting Receiver may analyze
additional frequencies; the set comprising both Fvalid and the
additional frequencies will be referred to as Fextended.
[0031] The number of frequencies in Fvalid (number of set members)
will be referred to as Nvalid, and the number of extended
frequencies in Fextended will be referred to as Nextended. In some
embodiments, Nvalid=13 whereas Nextended=14.
[0032] The rate-detecting receiver comprises an Analog to Digital
Converter (ADC) 102, which is configured to convert the analog
input signal to a digital signal, and a "Regular Receiver" 104,
which is configured to receive an input-rate indication and,
responsively, decode the digital signal, generating a stream of
decoded input data. (We use the term "Regular Receiver" to denote
any receiver used in the art that does riot comprise a rate
detection circuitry; such receivers are typically configured to
receive a single-rate signal, or one of a plurality of signal
rates, wherein the rate is indicated by an external circuitry.)
[0033] For brevity, we will refer hereinbelow to digital signals,
comprising a sequence of digital samples of an amplitude of the
corresponding analog signal, as "signals"; we will use the term
"power signal" to indicate sequences of digital samples of the
power of a signal.
[0034] The rate Fs in which the analog signal is sampled by ADC 102
will be referred to as the "sampling rate" or the "sampling
frequency" hereinbelow. We will also use the term "Nyquist
Frequency" to denote half the sampling frequency. The Nyquist
frequency sets the maximum signal frequency that can be directly
detected (according to Nyquist-Shannon sampling theorem) and will
also be referred to as the "Nyquist Limit" (in the description
hereinbelow we will disclose an embodiment that indirectly detects
a rate which is beyond the Nyquist limit).
[0035] Rate-detecting receiver 100 further comprises a Memory 106,
which is configured to store the signal generated by ADC 102, and a
Rate Detection Apparatus (RDA) 108, which is configured to
automatically detect the signal baud-rate and indicate the rate to
receiver 104. In some embodiments, memory 106 collects groups of
signal samples, which will be referred to as "blocks", wherein the
block length is equal to or greater than the number of samples
required for spectral tone extraction (spectral tone extraction and
the required number of samples will be described below). In other
embodiments, memory 106 is configured to collect a plurality of
blocks. In an example embodiment, the block length is 2000 samples,
and memory 106 collects four such blocks. We will refer below to
the block length as BlockLen, and to the number of blocks that
memory 106 collects as NumOfBlocks.
[0036] RDA 108 comprises a power estimation circuit 110, which is
configured to derive the power of the signal by squaring the signal
samples stored in memory 106; a Second Moment circuit 112, which is
configured to calculate an average power of the signal; a signal
subtractor 114, which is configured to subtract the average power
of the signal from the power of the signal (in order to suppress
the common DC tone and the amplification of the nearby
frequencies), a spectral-tone extractor (STE) 116, comprising a
plurality of filters and configured to calculate a Power-Spectral
Density (PSD) of the signal at a predefined set of frequencies;
and, a Rate Selection circuit 118, which is configured to select a
signal rate from the given set of rates corresponding to Fvalid,
according to the power levels of the signal at the predefined set
of frequencies.
[0037] In some embodiments, the STE is configured to calculate the
power density at Nvalid frequencies, corresponding to the set of
Fvalid possible signal frequencies. In an embodiment, the highest
frequency of Fvalid is beyond the Nyquist limit and, therefore, its
power cannot be calculated by the STE. We will refer below to the
number of frequencies that the STE supports (that is--computes the
PSD of) as K; in some embodiments K=Nvalid and in other embodiments
K=Nvalid-1.
[0038] In embodiments, Second Moment circuit 112 is configured to
calculate the average power of each block of signal samples; in
other embodiments, the Second Moment circuit is configured to find
an average power of a group of blocks. In embodiments, the second
moment may be stable, and the second moment circuit is configured
to calculate the second moment only upon power up and/or upon a
trigger input that the second moment circuit receives (e.g., from a
CPU).
[0039] STE 116 is configured to estimate the signal power at the
set Fextended, which includes frequencies corresponding to the
expected set of rates, and additional frequencies (as will be
explained below). In embodiments, the STE comprises a Discrete
Fourier Transform (DFT) circuit, which is degenerated to transform
only the frequency bands of interest; in other embodiments the STE
comprises a set of tuned band-pass filters, e.g., Goertzel filters.
The number of samples that the SIP requires (BlockLen) is typically
derived from the filter characteristics (e.g., from the bandwidth
of the filters). In some embodiments, the STE receives NumOfBlocks
blocks, each with BlockLen samples, to reduce the probability of
false detection.
[0040] Rate Selection circuit 118 executes an algorithm that
determines the most likely rate of the input signal according to
the signal power at the predefined set of frequencies. In some
embodiments, the expected false detection error rate may be less
than 10.sup.-3 to 10.sup.-4 when the insertion loss of the channel
is up to 60 dB at the Nyquist frequency.
[0041] In summary, according to the example embodiment illustrated
in FIG. 1, Rate-Detecting Receiver 100 comprises an RDA, which
receives the input signal from a memory; the rate detection
circuitry calculates a PSD of the input signal, and then detects
the energy in a set of predefined frequencies, including
frequencies from the set Fvalid, the frequencies corresponding to
the expected set of signal rates, and additional frequencies. A
Rate selection circuit then selects a most likely baud rate of the
input signal, with high accuracy.
[0042] As would be appreciated, the structure of rate-detecting
receiver 100 described above is cited by way of example.
Embodiments of a rate-detecting receiver in accordance with the
disclosed techniques are not limited to the description
hereinabove. Elements of RDA 108 may be implemented in software, in
hardware or by combination of hardware and software.
Spectral Tone Extraction
[0043] STE 108 is configured to compute the PSD of the received
signal at a given set of frequencies. As described above, the input
to the STE is one or more BlockLen sequences of samples y(n),
wherein each sample is equal to the difference between the PSD and
a PSD average:
y(n)=x.sup.2(n)-E[x.sup.2]
[0044] Note that the value of the second moment E[x.sup.2] is
calculated over an entire block of BlockLen y(n) samples that are
derived from a corresponding block of BlockLen samples of the input
signal; in some embodiments, the second moment may be calculated
over a plurality of blocks. In an embodiment, E[x.sup.2] is
calculated once during power-up, or upon a trigger that the second
moment circuit may receive.
[0045] FIG. 2 is a block diagram that schematically illustrates the
structure of STE 116 (FIG. 1), in accordance with an embodiment of
the present invention. The STE comprises N infinite Impulse
Response (IIR) filters 200, N switches 202, N PSD Calculators 204,
and a Spectral Tone-Power buffer 206.
[0046] According to the example embodiment illustrated in FIG. 2,
IIR filters 200 comprise Goertzel filters, having the following
transfer function:
S i ( n ) = 1 1 - 2 .times. C i .times. Z - 1 + Z - 2
##EQU00001##
[0047] wherein C.sub.i are the Goertzel coefficients, set according
to the filter frequency. In some embodiments, the Goertzel
coefficients C.sub.i are pre-calculated according to:
c.sub.i=cos(2.pi.f.sub.i/F.sub.s)
[0048] wherein f.sub.i is the filter frequency (the i.sup.th
element of Fextended) and Fs is the sampling frequency.
[0049] Switches 202 are configured to forward the last two values
generated by each IIR filter (e.g., S.sub.i (n-1) and S.sub.i(n) to
the corresponding PSD calculators, wherein n and n-1 are the last
two calculated S values for each block of power samples.
[0050] PSD calculators 204 are configured to calculate the power
spectral density (PSD) of each frequency Pi, according to the
following formula:
P.sub.i=S.sub.i.sup.2(n)+S.sub.i.sup.2(n-1)-2C.sub.iS.sub.i(n)S.sub.i(n--
1)
[0051] wherein S.sub.i are the outputs of the respective Goertzel
filters and C.sub.i are the Goertzel filter coefficients.
[0052] Spectral Tone-Power buffer 206 receives groups of Pi
signals, each group comprising N values (each value corresponding
to a single frequency), and temporarily stores one or more groups.
In an embodiment, Spectral Tone-Power buffer 206 is configured to
store data corresponding to NumOfBlocks groups (e.g., four groups).
The output of Spectral Tone-Power buffer 206 comprises: i) Power
Values-NumOfBlocks PxxBlock vectors, each vector comprising N power
values of the N frequencies; and ii) PxxBlockAvg--an--N-size
vector, denoting the average power of each frequency, over the
NumOfBlocks blocks.
[0053] In some embodiments, to guarantee the existence of at least
one segment with good sampling phase, an artificial ppm-error is
injected into the system by an additional circuitry configured to
inject random errors. In an embodiment the additional circuitry
comprises a degenerated Clock Recovery Unit (CRU).
[0054] As would be appreciated, the structure of STE 116 described
above is cited by way of example. Spectral-Tone Extraction circuits
according to the present invention are not limited to the
description hereinabove. For example, in alternative embodiments
different types of IIR filters may be used.
Rate Selection
[0055] According to embodiments of the present invention, the power
values in each of the blocks and the average power values over
NumOfBlock blocks, for each of the frequencies, are input to a
Rate-Selection circuit 118 (FIG. 1). In embodiments, the group of
allowed transmission rates comprises thirteen rates:
TABLE-US-00001 TABLE 1 Infiniband baud rates PHY Protocol Baud Rate
(GBd) 100 G/NDR 53.125 50 G/HDR 26.5625 25 G/EDR 25.78125 FDR-20
20.6250 FDR 14.0625 FDR-10 10.3125 QDR 10 FDR-5 5.15625 DDR 5
FDR-2.5 3.125 SDR 2.5 FDR-1 1.25 DME 0.3125
[0056] Some of the transmission rates in the above table are
defined by the InfiniBand.TM. specifications, e.g.; in
"TnfiniBand.TM. Architecture Specifications," Volume 2, Release
1.3.1, chapter 6.8.
[0057] In the example embodiments to be described hereinbelow, the
sampling frequency Fs in which ADC 102 is sampled equals to the NDR
frequency of 53.125 GHz (and, hence, the Nyquist limit equals
26.5625 GHz). The STE detects a frequency from a set of frequencies
Fextended, comprising the expected set of frequencies shown in the
table above, except for the NDR 53.125 G frequency and with the
addition of an extended frequency (25 GHz):
[0058] Fextended=[0.3125, 1.25, 2.5, 3.125, 5, 5.15625, 10,
10.3125, 14.0625, 20.625, 25.78125, 26.5625, 25] GHz.
[0059] To check if the received signal frequency is a Fi
(Fi.di-elect cons.Fvalid), the RDA analyses the PSD of the signal
at a set of frequencies which includes the corresponding frequency
and may include other frequencies of Fextended, as shown in the
following PSD Analysis Frequencies table below (each entry i of the
table comprises a set of frequencies to be analyzed, which will be
referred to as Fanalysis(i)):
TABLE-US-00002 TABLE 2 PSD Analysis Frequencies Detected PSD
analysis Protocol frequencies DME [PDME, P1G, PSDR, P2P5G, PDDR,
PQDR, P10G, PFDR, PEXT, PHDR] 1G [P1G, PSDR, PDDR, PQDR, PEXT] SDR
[PSDR, PDDR, PEXT] 2.5 G [P2P5G, PEXT] DDR [PDDR, PQDR, PEXT] 5 G
[P5G, P10G] QDR PQDR 10 G P10G FDR PFDR 20 G P20G 25 G PEDR HDR
PHDR
[0060] (Note that the highest rate, NDR, is beyond the Nyquist
limit and cannot be directly detected; NDR is detected by default,
as will be described below.)
[0061] The set of frequencies Fanalysis(i), to be analyzed for each
signal frequency Fi, includes the PSD values of all PHY protocols
with frequency that is an integer multiple of Fi. For example, in
SDR, the DDR and the extended frequency are an integer multiple of
the SDR frequency. Hence, part of the power of a received SDR
signal is detected by the DDR filter (this phenomenon will be
referred to as frequency selection ambiguity).
[0062] The extended frequency, which is used for the detection of a
plurality of transmission frequencies, is set to serve the
following two purposes: i) help resolve the frequency selection
ambiguity (for example, SDR may be selected when Psdr, Pddr, and
Pext are significantly above PxxAvg); and ii) improve performance
robustness in channels with significant insertion loss (IL) near
the HDR Nyquist frequency. As shown in the table above, the
extended tone frequency is set near the highest supported
frequencies; this enables detecting highly suppressed EDR and HDR
transmissions by locating a local maximum.
[0063] FIG. 3 is a flowchart 300 that schematically describes a
method for rate selection, in accordance with an embodiment of the
present invention. The flowchart is executed by Rate Selection
circuit 118 (FIG. 1; will be referred to hereinbelow as "RSC"),
responsively to P=Block and PxxBlockAvg power values that the RSC
receives from the STE.
[0064] To simplify the description of flowchart 300, we first
introduce a detection conditions table, which describes conditions
that are referred to in the flowchart:
TABLE-US-00003 TABLE 3 Detection Conditions Detection Name
Detection Condition Comments PAPR_LOW_DET Pmax-PxxAvg < Low PAPR
condition PAPR_LOW for NDR (PAPR_LOW = 10 dB) HDR_DET (Phdr-PxxAvg
> HDR is within Pavg DET_TH_LOW & range with a Phdr-Pedr
> substantial local peak PAPR_LOCAL_HDR & (DET_TH_LOW = -3
dB Phdr-Pext > PAPR_LOCAL_HDR = 13 dB) PAPR_LOCAL_HDR) EDR_DET
(Pedr-PxxAvg > EDR is within Pavg DET_TH_LOW & range with a
Pedr-Phdr > substantial local PAPR_LOCAL_EDR & peak
Pedr-Pext > (PAPR_LOCAL_EDR = 10 dB) PAPR_LOCAL_HDR) EXT_DET
(Pext-PxxAvg > Extended 25 GHz DET_TH_LOW & frequency is
within Pext-Pedr > Pavg range with a PAPR_LOCAL_HDR &
substantial local Pext-Phdr > peak PAPR_LOCAL_HDR)
DME_DET_IN_NDR (Pdme-PxxAvq > First three tones are
DME_NDR_DET_TH & substantially higher Plg-PxxAvg > than
PxxAvg-use DME_NDR_DET_TH & lower TH in low PAPR Psdr-PxxAvg
> DME_NDR_DET_TH) DET_COND (1) (Pdme-PxxAvq > First three
tones are DET_TH_HIGH & substantially higher Plg-PxxAvq >
than PxxAvg DET_TH_HIGH & (DET_TH_HIGH = 8 dB) Psdr-PxxAvg >
DET_TH_HIGH) DET_COND (2) (Plg-PxxAvg > First three tones are
DET_TH_HIGH & substantially higher Psdr-PxxAvq > than PxxAvg
DET_TH_HIGH & Pddr-PxxAvg > DET_TH_HIGH) DET_COND (3)
(Psdr-PxxAvg > First two tones DET_TH_HIGH & are
substantial, Pddr-PxxAvg > and an extended DET_TH_HIGH &
condition is true EXT_DET) DET_COND (4) (P2p5g-PxxAvq > First
tone is DET_TH_HIGH & substantial, EXT_DET) and an extended
condition is true
[0065] In Table 3 above, PAPR is the Peak to Average Power
Ratio--the maximum power at any frequency divided by the average
power.
[0066] Flowchart 300 starts at an Average-over-Frequencies step
302, wherein the RSC calculates the average power PxxAvg over all
frequencies. Next, the RSC enters a Find-Pmax step 304, and finds
the maximum power for any of the frequencies and then, in a Check
PAPR_LOW step 306, detects a PAPR_LOW condition (as described in
Table 3). According to the example embodiment illustrated in FIG.
3, step 306 is the main split of flowchart 300; the PAPR_LOW check
is aimed mainly for the detection of NDR.
[0067] If, step 306, the PAPR is low (PAPR_LOW on is true), the RSC
enters an HCR-Detect step 308, and checks the detect condition for
HDR, according to the definition in Table 3. If the detection
condition is true, the RSC selects the HDR rate, and the flowchart
ends. If, in step 308, the detect condition is false, the RSC
enters an EDR-Detect step 310, and checks the FDR-detection
condition according to Table 3. If the condition is true, the RSC
selects the NCR rate, and the flowchart ends.
[0068] If, in step 310, the condition is false (e.g., EDR is not
detected), the RSC enters a Check-DME-in-NDR step 312 and checks
for the DME-in-NCR condition according to Table 3. If the condition
is true, the RSC selects the DME rate, and the flowchart ends. If
the condition in step 312 is false, the default NCR rate is
selected and the flowchart ends.
[0069] Steps 308 to 312 described above pertain to the case where
the peak power is not substantially higher than the average power.
If, in step 306, PAPR_LOW is not detected, the RSC enters a
Find_First_Fi_with_Large_Pxx with_Large_Pxx step 314, in which the
RSC scans all valid frequencies Fvalid, from DME and up (with
increasing frequencies), and looks for the first frequency for
which the following two conditions are met: i) the power for the
frequency Pxx is larger than Pmax by at least a preset limit (e.g.,
6 dB); and, the energy of one of the frequencies Fanalysis
corresponding to Fi (in Table 2) equals Pmax. When both conditions
are met, the RSC enters a Check_i_GT_4_or_Det_COND or Det_COND step
316 and performs a check that is defined as follows:
Check=(i>4)? true: DET_COND(i)? true: false.
[0070] In the logic equation of step 316 above, i is the index of
the frequency that was determined in step 314, and DET_COND(i) is a
detection condition that is defined in Table 2 (DET_COND(1) through
DET_COND(4) in the table; note that DEC_COND(3) and DET_COND(4)
comprises an EXT_DET condition, which is also defined in Table
3).
[0071] If the check of step 316 is true, the RSC selects a rate
that corresponds to i, and the flowchart ends. If the check of step
316 is false, the RSC enters a Check-HDR step 318 and checks the
HDR Detect condition, according to Table 3. If the HDR detect
condition is true, the RSC selects HDR and the flowchart ends. If,
in step 318, the condition is false, the RSC enters a Check-EDR
step 320 and checks the EDR_Detect condition, according to Table 3.
If the EDR detect condition is true, the RSC selects EDR and the
flowchart ends. If, in step 320, the condition is false, the RSC
selects NDR and the flowchart ends.
[0072] In summary, rate selection flowchart 300 comprises
calculating average powers, finding a maximum power and then split
according to the PAPR level: if the PAPR is below a preset
threshold, detect HDR, EDR or DME or, if all fail, default to DDR.
If the PAPR is not below the threshold, scan the frequencies to
find one sufficiently close to the maximum power and containing, in
its Fanalysis, the frequency with the maximum power, and then
detect the found frequency or, if not detected, detect HDR or FDR
or. If neither is detected, default to NDR. All the detection
conditions are described in Table 3.
Notes Pertaining to Flowchart 300
[0073] 1. According to the example embodiment illustrated in FIG.
3, since NDR is beyond the Nyguist limit, NDR is selected by
default, if no other rate is found. This may result in an
ambiguity, because NDR will be selected also when no signal is
received. In some embodiments, the ambiguity is resolved by an
additional circuitry, configured to verify that the received signal
power is above a predefined threshold.
[0074] 2. The detection conditions of Table 2 rely on different
comparisons between the computed PSD values. For example, the HDR
detector compares the HDR power to PxxAvg, Pedr, and Pext. In this
case, the comparison to PxxAvg is significantly improved by the
addition of the EDR and the extended frequencies; in fact, in this
case, the RSC performs a local-max based selection that
significantly improves the robustness of the rate-selection flow
across different channel models with varying degrees of IL (where
high frequencies can be severely suppressed).
[0075] 3. The split of the flowchart according to the PAPR level
(in step 306) is mainly for distinguishing the NDR case, which is
expected to be flat (without spectral lines) across the entire
bandwidth. The PAPR in this case is defined as the difference (in
dB) between the maximum power found for all possible frequencies
and the average PSD over the entire bandwidth.
[0076] 4. As shown, in the low PARR case, the RSC may still select
HDR, EDR or DME if any of the corresponding detection conditions is
true. For HDR and EDR this may occur when there is a large IL
causing the tone power for HDR or EDR to fall below the average. In
this case, Pmax may belong to some other Fi, and, to rule out HDR
or EDR, the RSC also checks if a local-peak condition exists.
[0077] The RSC may also select DME in the low PAPR case mainly
because the repeating peaks every 0.3125 GHz lowers the PAPR. In
this case, the DME detect condition checks for the significance of
the first three frequencies in Fanalysis (DME) (Table 2).
[0078] 5. In step 314, the RSC searches for the condition in all
Fi.di-elect cons.Fvalid frequencies except NDR. The main test
condition checks if the Fi power is within a predefined threshold
from Pmax, and that Pmax belongs to one of the Fanalysis (Fi), as
shown in Table 2.
[0079] As would be appreciated, flowchart 300 is an example
embodiment that is cited merely for the sake of conceptual clarity.
Rate selection according to the present invention is not limited to
the description hereinabove. For example, in some embodiments, all
test conditions of Table 2 are first checked, and then the selected
frequency is read from a table that is indexed by a concatenation
of all condition checks.
Rate Detection Method
[0080] We now present a complete method for the rate detection,
which is based on the disclosures presented hereinabove.
[0081] FIG. 4 is a flowchart 400 that schematically describes a
method for rate detection, in accordance with an embodiment of the
present invention. The flowchart is executed by rate-detecting
receiver 100 (FIG. 1), and sub-circuits thereof. For brevity, we
will refer to the rate-detecting receiver as RDR hereinbelow.
[0082] The method starts at a Convert-Signal, wherein an ADC (e.g.,
ADC 102, FIG. 1) of the RDR converts the input signal to digital
format, at a conversion frequency (sampling frequency) Fs. Next, at
a Store step 404, the RDR stores NumOfBlock blocks of the digital
signal, each block with a length BlockLen, in a memory (e.g., RAM
106, FIG. 1). In an embodiment, NumOfBlocks=4 and
BlockLen=2000.
[0083] The RDR then enters an IIR step 404, wherein the signal is
band-pass filtered in Nextended (e.g., 13) different frequencies,
using, for example, Nextended Goertzel filters. Next, at a PSD step
408, the RDR calculates a PSS of each of Nextended frequencies, for
example, using a plurality of PSD calculators 204 (FIG. 2).
[0084] At a Buffer-Spectral-Tone step 410, the Rate-Detecting
receiver temporarily stores a group of NumOfBlocks power signals,
each power signal comprising the power of each of the Nextended
frequencies in the corresponding block. Step 410 may also comprise
calculating Power Values: i) NumOfBlocks PxxBlock vectors, each
vector comprising N power values of the N frequencies; and ii)
PxxBlockAvg--an N-size vector, denoting the average power of each
frequency, over the NumOfBlocks blocks. Step 410 may be executed,
for example, by Spectral Tone-Power buffer 206 (FIG. 2).
[0085] After step 410, the RDR enters a
Select-Most-Likely-Frequency step 412, and selects, responsive to
the PxxBlock and the PxxBlockAvg vectors, a most-likely input
signal rate. In embodiment, step 412 may comprise executing
flowchart 300 (FIG. 3).
[0086] As would be appreciated, flowchart 400 is an example
embodiment that is cited merely for the sake of conceptual clarity.
Rate detection according to the present invention is not limited to
the description hereinabove. For example, in some embodiments, some
of the steps described above may be executed concurrently. In an
embodiment, execution may be pipelined, wherein a block of samples
is stored while the most-likely frequency according to the previous
block is assessed and, at a final step, the most likely frequency
according to all blocks is determined.
Other Protocol Sets
[0087] In some embodiments, a different set of protocols with a
different Fvalid set of corresponding frequencies may be used.
Flowchart 300, table 2 and table 3 should be modified accordingly.
An extended set of frequencies rather than a single extended
frequency may be required to detect protocols with high insertion
loss; and the extended frequencies should be selected so that for
each frequency Fi, the extended frequency is the highest frequency
below Nyguist which falls in the set of Ni ambiguous
frequencies.
[0088] Thus, in some embodiments, RDA 108 adds extended frequencies
for one or more protocols that are characterized by high insertion
loss (e.g., an insertion loss that exceeds a defined threshold).
For a given protocol whose fundamental frequency is Fi, RDA 108 may
choose the (one or more) harmonics of Fi that fall below the
Nyguist rate of the signal, to serve as the (one or more) extended
frequencies.
[0089] The apparatuses and methods described hereinabove, with
reference to FIGS. 1 through 4; the configurations of
rate-detecting receiver 100, RDA 108 and all units and subunits
thereof, are example configurations and methods that are shown
purely for the sake of conceptual clarity. Any other suitable
methods and configurations can be used in alternative
embodiments.
[0090] In various embodiments, rate-detecting receiver 100 may be
implemented using suitable hardware, such as one or more
Application-Specific Integrated Circuits (ASIC) or
Field-Programmable Gate Arrays (FPGA), or a combination of ASIC and
FPGA.
[0091] In some embodiments, rate selection 118 circuit may comprise
a general-purpose programmable processor, which programmed in
software to carry out the functions described herein. The software
may be downloaded to the processor in electronic form, over a
network, for example, or it may, alternatively or additionally, be
provided and/or stored on non-transitory tangible media, such as
magnetic, optical, or electronic memory. In other embodiments, rate
selection circuit 118 may comprise a special-purpose processor; in
yet other embodiments the rate selection may comprise dedicated
hardware, or a combination of hardware and software.
[0092] Although the embodiments described herein mainly address
rate detection in a digital receiver, the methods and systems
described herein can also be used in other applications such as in
clock-data recovery (CDR).
[0093] It will thus be appreciated that the embodiments described
above are cited by way of example, and that the present invention
is not limited to what has been particularly shown and described
hereinabove. Rather, the scope of the present invention includes
both combinations and sub-combinations of the various features
described hereinabove, as well as variations and modifications
thereof which would occur to persons skilled in the art upon
reading the foregoing description and which are not disclosed in
the prior art. Documents incorporated by reference in the present
patent application are to be considered an integral part of the
application except that to the extent any terms are defined in
these incorporated documents in a manner that conflicts with the
definitions made explicitly or implicitly in the present
specification, only the definitions in the present specification
should be considered.
* * * * *