U.S. patent application number 17/237383 was filed with the patent office on 2021-11-04 for wireless communication with coded data frames.
This patent application is currently assigned to SEMICONDUCTOR COMPONENTS INDUSTRIES, LLC. The applicant listed for this patent is SEMICONDUCTOR COMPONENTS INDUSTRIES, LLC. Invention is credited to Abhishek Kumar AGRAWAL, Peiman AMINI, Debashis DASH, Sigurd SCHELSTRAETE, Huizhao WANG.
Application Number | 20210344472 17/237383 |
Document ID | / |
Family ID | 1000005568810 |
Filed Date | 2021-11-04 |
United States Patent
Application |
20210344472 |
Kind Code |
A1 |
AGRAWAL; Abhishek Kumar ; et
al. |
November 4, 2021 |
WIRELESS COMMUNICATION WITH CODED DATA FRAMES
Abstract
An example method of wireless data transmission may include
obtaining, by a data link layer, a first data frame from a network
layer, the first data frame for wireless transmission and
obtaining, by the data link layer, a second data frame from the
network layer, the second data frame for wireless transmission. The
method may further include coding, at the data link layer, the
first data frame together with the second data frame to generate a
third data frame and encoding a first signal with the third data
frame using a first frequency segment. The method may further
include providing the first signal for wireless transmission.
Inventors: |
AGRAWAL; Abhishek Kumar;
(Fremont, CA) ; WANG; Huizhao; (San Jose, CA)
; AMINI; Peiman; (Fremont, CA) ; SCHELSTRAETE;
Sigurd; (Menlo Park, CA) ; DASH; Debashis;
(Newark, CA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
SEMICONDUCTOR COMPONENTS INDUSTRIES, LLC |
Phoenix |
AZ |
US |
|
|
Assignee: |
SEMICONDUCTOR COMPONENTS
INDUSTRIES, LLC
Phoenix
AZ
|
Family ID: |
1000005568810 |
Appl. No.: |
17/237383 |
Filed: |
April 22, 2021 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
63019220 |
May 1, 2020 |
|
|
|
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
H04L 1/0061 20130101;
H04W 72/0453 20130101; H04L 5/0053 20130101; H04L 5/0005
20130101 |
International
Class: |
H04L 5/00 20060101
H04L005/00; H04W 72/04 20060101 H04W072/04; H04L 1/00 20060101
H04L001/00 |
Claims
1. A method of wireless data communication, the method comprising:
obtaining, by a data link layer, a first data frame from a network
layer, the first data frame for wireless transmission; obtaining,
by the data link layer, a second data frame from the network layer,
the second data frame for wireless transmission; coding, at the
data link layer, the first data frame together with the second data
frame to generate a third data frame; encoding a first signal with
the third data frame using a first frequency segment; and providing
the first signal for wireless transmission.
2. The method of claim 1, further comprising: encoding a second
signal with the first data frame using a second frequency segment;
encoding a third signal with the second data frame using a third
frequency segment; and providing the second signal and the third
signal for wireless transmission.
3. The method of claim 2, wherein the first frequency segment is
included in a first frequency band configured to support a first
wireless network, the second frequency segment is included in a
second frequency band configured to support a second wireless
network, and the third frequency segment is included in a third
frequency band configured to support a third wireless network.
4. The method of claim 3, wherein the first frequency band, the
second frequency band, and the third frequency band are defined
under the 802.11 protocol and each of the first frequency band, the
second frequency band, and the third frequency band are one of: a
2.4 GHz band, a 5 GHz band, and a 6 GHz band.
5. The method of claim 1, wherein data of the first data frame
originates at a first device and data of the second data frame
originates at a second device, the third data frame includes an
indication that the third data frame is intended for the first
device and the second device, and the first signal is provided for
wireless transmission to both the first device and the second
device.
6. The method of claim 1, wherein a preamble of the third data
frame indicates that the third data frame is a coded data frame
that includes two data frames.
7. A device comprising: hardware configured to perform operations,
including for a data link layer, the operations including: obtain,
from a network layer, a first data frame for wireless transmission;
obtain, from the network layer, a second data frame for wireless
transmission; code, at the data link layer, the first data frame
together with the second data frame to generate a third data frame;
encode a first signal with the third data frame using a first
frequency segment; and providing the first signal for wireless
transmission; and front-end circuitry coupled to the hardware and
configured to adapt the first signal for wireless transmission.
8. The device of claim 7, wherein the operations further include:
encode a second signal with the first data frame using a second
frequency segment; and encode a third signal with the second data
frame using a third frequency segment; and the front-end circuitry
is further configured to adapt the second signal and the third
signal for wireless transmission such that at least a portion of
the first signal, a portion of the second signal, and a portion of
the third signal are simultaneously wireless transmitted.
9. The device of claim 7, wherein data of the first data frame
originates at a first device and data of the second data frame
originates at a second device, the third data frame includes an
indication that the third data frame is intended for the first
device and the second device, and the first signal is provided for
wireless transmission to both the first device and the second
device.
10. The device of claim 7, wherein a preamble of the third data
frame indicates that the third data frame is a coded data frame
that includes two data frames.
11. A method of wireless data communication, the method comprising:
wirelessly obtaining a first signal encoded with a first data
frame, the first data frame being generated before wireless
transmission by coding a second data frame together with a third
data frame; decoding, at a data link layer, the first data frame to
extract the second data frame and the third data frame; analyzing,
at the data link layer, the second data frame, the third data
frame, or both the second data frame and the third data frame; in
response to the analysis of the second data frame, the third data
frame, or both the second data frame and the third data frame:
discarding the second data frame decoded from the first data frame;
and providing the third data frame decoded from the first data
frame as a received data frame to a network layer.
12. The method of claim 11, further comprising determining an
integrity of the second data frame decoded from the first data
frame is maintained, wherein the second data frame is discarded
with the maintained integrity.
13. The method of claim 11, further comprising before wirelessly
obtaining the first signal encoded with the first data frame,
providing the second data frame for wireless transmission.
14. The method of claim 13, wherein the analysis of the second data
frame includes determining that the second data frame decoded from
the first data frame is the same as the second data frame provided
for wireless transmission and in response to determining that the
second data frame decoded from the first data frame is the same as
the second data frame provided for wireless transmission the second
data frame is discarded.
15. The method of claim 13, wherein the third data frame originates
at a device separate from the device that wirelessly transmits the
first data frame.
16. The method of claim 11, further comprising: wirelessly
obtaining a second signal encoded with the second data frame; and
wirelessly obtaining a third signal encoded with the third data
frame.
17. The method of claim 16, further comprising: determining an
integrity of the second data frame from the second signal;
determining an integrity of the third data frame from the third
signal; and in response to the analysis of the second data frame,
the third data frame, or both the second data frame and the third
data frame, the determined integrity of the second data frame from
the second signal, and the determined integrity of the third data
frame from the third signal: providing the second data frame from
the second signal as a second received data frame to the network
layer; and discarding the third data frame from the third
signal.
18. The method of claim 17, wherein the third data frame from the
third signal is discarded in response to the integrity of the third
data frame from the third signal being determined as not being
maintained.
19. The method of claim 11, further comprising: wirelessly
obtaining a second signal encoded with a fourth data frame;
wirelessly obtaining a third signal encoded with a fifth data
frame; wirelessly obtaining a fourth signal encoded with a sixth
data frame, the sixth data frame being generated before wireless
transmission by coding the fourth data frame together with the
determining an integrity of the fourth data frame and the fifth
data frame is maintained; and in response to determining the
integrity of the fourth data frame and the fifth data frame is
maintained, discarding the sixth data frame.
20. The method of claim 11, further comprising: wirelessly
obtaining a second signal encoded with a fourth data frame;
decoding the fourth data frame to extract a fifth data frame and a
sixth data frame; analyzing, at the data link layer, the fifth data
frame, the sixth data frame, or both the fifth data frame and the
sixth data frame; determining an integrity of the fifth data frame
is maintained; determining an integrity of the sixth data frame is
maintained; and in response to the analysis of the fifth data
frame, the sixth data frame, or both the fifth data frame and the
sixth data frame and the integrity of both the fifth data frame and
the sixth data frame being maintained, discarding the fifth data
frame and the sixth data frame.
Description
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This patent application claims priority to U.S. Provisional
Patent Application No. 63/019,220, filed on May 1, 2020, which is
incorporated herein by reference in its entirety.
FIELD
[0002] The implementations discussed herein are related to wireless
communication with coded data frames.
BACKGROUND
[0003] Unless otherwise indicated in the present disclosure, the
materials described in the present disclosure are not prior art to
the claims in the present application and are not admitted to be
prior art by inclusion in this section.
[0004] Wireless communications may occur by transmitting data over
frequencies designated for wireless transmission. For example, a
transmitting device may send data over a first contiguous range of
frequencies, such as frequencies associated with a channel within a
wireless frequency band of the frequency spectrum. The receiving
device may obtain the data using the first contiguous range of
frequencies. In response to the data not being correctly received,
the transmitting device may resend the data again over the first
contiguous range of frequencies.
[0005] The subject matter claimed in the present disclosure is not
limited to implementations that solve any disadvantages or that
operate only in environments such as those described above. Rather,
this background is only provided to illustrate one example
technology area where some implementations described in the present
disclosure may be practiced.
SUMMARY
[0006] An example method of wireless data transmission may include
obtaining, by a data link layer, a first data frame from a network
layer, the first data frame for wireless transmission and
obtaining, by the data link layer, a second data frame from the
network layer, the second data frame for wireless transmission. The
method may further include coding, at the data link layer, the
first data frame together with the second data frame to generate a
third data frame and encoding a first signal with the third data
frame using a first frequency segment. The method may further
include providing the first signal for wireless transmission.
BRIEF DESCRIPTION OF THE DRAWINGS
[0007] Example implementations will be described and explained with
additional specificity and detail through the use of the
accompanying drawings in which:
[0008] FIG. 1 illustrates an example environment that includes
wireless communication;
[0009] FIG. 2 illustrates an example process in wireless
communication;
[0010] FIG. 3 illustrates example elements of a device and
associated network layers;
[0011] FIG. 4 illustrates a flowchart of an example method of
wireless communication;
[0012] FIG. 5 illustrates a flowchart of another example method of
wireless communication;
[0013] FIG. 6 illustrates a flowchart of another example method of
wireless communication; and
[0014] FIG. 7 illustrates a block diagram of an example computing
system that may be used to perform or direct performance of one or
more operations described according to at least one implementation
of the present disclosure.
DETAILED DESCRIPTION OF SOME EXAMPLE IMPLEMENTATIONS
[0015] Implementations described herein may generally relate to
wireless communication.
[0016] In some implementations, wireless communication as described
in this disclosure may include transmission of data frames that are
coded with two or more data frames. For example, a data link layer
of a transmission device may code a first data frame together with
a second data frame to generate a third data frame. A signal may be
encoded with the third data frame using a frequency segment. The
signal may be wireles sly transmitted to a receiving device over a
communication link between the receiving device and a transmitting
device.
[0017] A receiving device may be configured to obtain the signal
over the communication link and decode the signal to obtain the
third data frame. In the data link layer of the receiving device,
the third data frame may be further decoded to obtain the first
data frame and the second data frame. Based on an analysis of the
first data frame and the second data frame, the receiving device at
the data link layer may discarded or maintain the first data frame
and/or the second data frame.
[0018] In some implementations, the receiving device may obtain the
first data frame and/or the second data frame over other
communication links between the receiving device and the
transmitting device that are different than the communication link
that carried the third data frame. As a result, the receiving
device may obtain the first data frame and the second data frame in
duplication. Based on the duplication of the first data frame and
the second data frame, the receiving device may discard the first
data frame and the second data frame. Transmitting the first data
frame and the second data frame in duplication may reduce the
likelihood that the receiving device does not receive either of the
first data frame and the second data frame. As such, transmitting
the first data frame and the second data frame in duplication may
reduce the likelihood that the receiving device may request
retransmission of either of the first data frame and the second
data frame. As a result, the reliability of data packet
transmission may be increased, and potential latency of data packet
transmission may be decreased.
[0019] These and other implementations of the present disclosure
will be explained with reference to the accompanying figures. It is
to be understood that the figures are diagrammatic and schematic
representations of such example implementations, and are not
limiting, nor are they necessarily drawn to scale. In the figures,
features with like numbers indicate like structure and function
unless described otherwise.
[0020] FIG. 1 illustrates an example environment 100 that includes
wireless data transmission, in accordance with one or more
implementations of the present disclosure. The environment 100 may
include a first device 110, a second device 120, a third device
130, and a fourth device 140. The first device 110 may include a
first antenna 112a, a second antenna 112b, and a third antennas
112c, "the antennas 112." The second device 120 may include a first
antenna 122a, a second antenna 122b, and a third antennas 122c,
"the antennas 122." The third device 130 may include a first
antenna 132a, a second antenna 132b, and a third antennas 132c,
"the antennas 132." The fourth device 140 may include a first
antenna 142a, a second antenna 142b, and a third antennas 142c,
"the antennas 142."
[0021] Each of the first device 110, the second device 120, the
third device 130, and the fourth device 140 may be configured to
transmit and receive wireless communications. In some
implementations, each of the first device 110, the second device
120, the third device 130, and the fourth device 140 may be any
electronic or digital device that is configured to transmit and
receive wireless communications. In these and other
implementations, the first device 110 may be configured as a device
that may assist in maintaining a wireless local area network. For
example, the first device 110 may include a gateway, a repeater, a
mesh node, or any other suitable device configured to host or
control access to a wireless local area network (WLAN).
[0022] In these and other implementations, each of the second
device 120, the third device 130, and the fourth device 140 may be
configured as a repeater, a mesh node, or any other suitable device
configured to host or control access to a wireless local area
network. Alternately or additionally, each of the second device
120, the third device 130, and the fourth device 140 may be
configured as a client device that may be configured to access a
wireless local area network. For example, each of the second device
120, the third device 130, and the fourth device 140 may include a
desktop computer, a laptop computer, a smartphone, a mobile phone,
a tablet computer, a vehicle, a repeater, a speaker, a smart
device, an appliance, or any other electronic device that may be
configured to transmit and/or receive wireless communications in a
wireless local area network.
[0023] The antennas 112, the antennas 122, the antennas 132, and
the antennas 142 may each be configured to operate in a first
frequency band, a second frequency band, and/or a third frequency
band, referred to as the frequency bands. The first, second, and
third frequency bands may each be different frequency bands of
operations and may each be used for a different wireless local area
network (WLAN). For example, the first antenna 112a may be
configured to operate in the 5.0 GHz frequency band and support a
first WLAN. The second antenna 112b may be configured to operate in
the 6.0 GHz frequency band and support a second WLAN. The third
antenna 112c may be configured to operate in the 2.4 GHz frequency
band and support a third WLAN. Alternately or additionally, each of
the antennas 112 may be configured to operate in the same frequency
band and support the same WLAN. Alternately or additionally, the
antennas 112, the antennas 122, the antennas 132, and the antennas
142 may be configured to operate in any configuration of frequency
bands. In some implementations, each of the antennas 112, the
antennas 122, the antennas 132, and the antennas 142 may be
configured to operate in a different frequency band of operation
during overlapping time periods, such as simultaneously. For
example, the first antenna 112a and the second antenna 112b may
simultaneously transmit and/or receive wireless communications in
the first and second frequency bands, respectively.
[0024] The first, second, and third WLANs may be implemented using
any of the 802.11 protocols or other suitable wireless standards or
protocols. In these and other implementations, the first, second,
and third frequency bands may be distinct radio frequency ranges
that are defined for wireless communications. In some
implementations, at least one of the first, second, and third
frequency bands may include a discontinuous range of
frequencies.
[0025] In some implementations, the first device 110 may be
configured to transmit data to the second device 120, the third
device 130, and the fourth device 140 over one or more
communication links. A communication link may be a contiguous
frequency segment of one of the frequency bands. For example, a
communication link may include one or more contiguous channels of
the 5 GHz frequency band. In some implementations, the first device
110 may be configured to transmit data to one or more of the second
device 120, the third device 130, and the fourth device 140 over
multiple communication links simultaneously.
[0026] In some implementations, the first device 110 may be
configured to transmit data frames to one or more of the second
device 120, the third device 130, and the fourth device 140 over
communication links to the one or more of the second device 120,
the third device 130, and the fourth device 140. For example, the
first device 110 may transmit data frames to the second device 120
by encoding a first signal with a data frame using a frequency
segment of a communication link between the first device 110 and
the second device 120. Note that during the description of FIG. 1,
communications between the first device 110 and the second device
120 may be described without mentioning communications between the
first device 110 and third device 130 or the fourth device 140. Not
mentioning the third device 130 or the fourth device 140 is for
ease of explanation. Any communication between the first device 110
and the second device 120 may pertain to the third device 130, the
fourth device 140, or other devices.
[0027] In some implementations, the first device 110 may transmit
coded data frames to the second device 120. In these and other
implementations, the first device 110 may be configured to generate
a coded data frame for transmission to the second device 120 that
is a union of two or more data frames. For example, the first
device 110 may obtain a first data frame and a second data frame.
The first device 110 may code the first data frame together with
the second device to generate a third data frame. The first device
110 may provide the third frame to the second device 120. The
second device 120 may decode the third frame to obtain a decoded
first data frame and a decoded second frame. As such, the first
device 110 may transmit a single data frame to the second device
120, but the second device 120 may obtain both the first data frame
and the second data frame. Further details regarding the coding and
decoding process is provided with respect to FIG. 2.
[0028] In some implementations, the first device 110 may transmit
coded data frames in various scenarios. For example, the first
device 110 may transmit coded data frames while relaying data
between two different devices, such as the second device 120 and
the third device 130. In this and other examples, the second device
120 may provide a first data frame to the first device 110 with a
destination of the third device 130. The third device 130 may
provide a second data frame to the first device 110 with a
destination of the second device 120. The first device 110 may code
together the first data frame and the second data frame to generate
a third data frame. The third data frame may indicate that the
third data frame is coded and information regarding the first and
second data frames coded together to form the third data frame. The
first device 110 may transmit the third data frame in a single
transmission with a destination of both the first device 110 and
the second device 120.
[0029] In some implementations, the second device 120 may be
configured to decode the third data frame to obtain a decoded first
data frame and a decoded second data frame. The second device 120
may be configured to analyze the decoded first data frame and the
decoded second data frame. The analysis of the decoded first data
frame and the decoded second data frame may determine whether an
integrity of the decoded first data frame and the decoded second
data frame is maintained. The second device 120 may also be
configured to determine based on the analysis or the preamble of
the third data frame, which of the decoded first data frame and the
decoded second data frame originated at the third device 130 and
which originated at the second device 120.
[0030] In some implementations, in response to the integrity of the
decoded first and second data frames being maintained, the second
device 120 may discard the decoded second data frame because the
decoded second data frame originated at the second device 120.
Thus, the decoded second data frame may not be indicated as
received outside of the datalink layer. The second device 120 may
provide the decoded third data frame as a received data frame to
the other network layers of the second device 120. In response to
the integrity of the decoded first and second data frames not being
maintained, the second device 120 may request retransmission of the
third data frame. The third device 130 may proceed in a manner
analogous to the second device 120 but may provide the decoded
second data frame as a received data frame to the other network
layers of the third device 130.
[0031] In another scenario, the first device 110 may provide a
first data frame to the second device 120. The integrity of the
first data frame may not be maintained. For example, a checksum of
the first data frame as received by the second device 120 may
indicate that the first data frame was not correctly transmitted.
In these and other implementations, the second device 120 may
request retransmission of the first data frame. The first device
110 may also include a second data frame to transmit to the second
device 120. In these and other implementations, the first device
110 may code the first data frame and the second data frame
together to generate the third data frame. The first device 110 may
provide the third data frame to the second device 120. The second
device 120 may obtain the third data frame and decode the third
data frame to obtain the first data frame and the second data
frame. As a result, the second device 120 may obtain both the first
data frame and the second data frame without a delay in reception
of the second data frame based on retransmission of the first data
frame.
[0032] In another scenario, the first device 110 may be configured
to select a communication technique for transmission of data to the
second device 120, the third device 130, and/or the fourth device
140. In these and other implementations, the communication
technique may be selected based on a type of service indication of
the data and/or network factors of the one or more WLANs associated
with the first device 110. For example, a type of service
indication of the data may indicate latency requirements,
reliability requirements, and/or throughput requirements, among
other requirements. For example, data from a low latency program
such as a video conferencing may use a first communication
technique and data where latency is not a concern may use a second
communication technique.
[0033] A first communication technique may include coding together
multiple frames as discussed in this disclosure to form a coded
frame and transmission of the coded frame. A second communication
technique may include using an existing link between the first
device 110 and a receiving device, such as the second device 120
without coding of a data frame. A third communication technique may
include selecting a link from multiple links in one or more of the
frequency bands, e.g., the first frequency band, the second
frequency band, and/or the third frequency band, with an
appropriate stability and throughput for the type of service
indicated for the data. To select between links, the first device
110 may be configured to obtain link state information. The link
state information may be based on analysis of data frames
previously exchanged and information collected from the second
device 120, the third device 130, and/or the fourth device 140. The
information collected may include channel quality indicator (CQI)
information. In some implementations, the CQI information may be
provided to the first device 110 outside of normal times when CQI
information is collected. For example, additional CQI information
outside of what normally is provided in a wireless protocol may be
provided by inserting the additional CQI information in a larger
frame. In these and other implementations, the CQI information may
include information such as a duty cycle of the interference
information.
[0034] Using the link state information, the first device 110 may
determine a success rate and/or a maximum data rate for the
multiple links. Based on the success rate and/or the maximum data
rate, the first device 110 may select a link that is appropriate
for the type of service indicated for the data.
[0035] A fourth communication technique may include duplication of
data frames. For example, a data frame may be simultaneously
transmitted over multiple links from the first device 110 to a
receiving device, such as the second device 120. For example, the
data frame may be simultaneously transmitted over a first link and
over a second link from the first device 110 to the second device
120. In these and other implementations, the data frame may be
encoded into a first signal using a first frequency segment of a
frequency spectrum and the data frame may be encoded into a second
signal using a second frequency segment of the frequency spectrum.
In some implementations, the first device 110 may transmit the
first signal and the second signal to the receiving device such
that at least a portion of the first signal and a portion of the
second are simultaneously transmitted. In some implementations, the
first link and the second link may be part of different WLANs.
Alternately or additionally, the first link and the second link may
be part of the same WLAN.
[0036] After selection of the communication technique, the first
device 110 may be configured to direct the data for transmission to
the second device 120, the third device 130, and/or the fourth
device 140 using the selected technique.
[0037] In some implementations, the communication technique
selected may change from data frame to data frame for the data to
the transmitted to a receiving device. For example, for a first
data frame, the fourth communication technique may be used. For a
second data frame, the first communication technique may be used
and for a third data frame, the third communication technique may
be used. Any combination of communication techniques may be used
for series of data frames for transmitting data from the first
device 110 to a receiving device. In these and other
implementations, the first device 110 may use different techniques
for transmitting to different receiving devices. For example, the
first device 110 may use the fourth communication technique for
transmission to the second device 120 and the first communication
technique for transmission to the third device 130. Alternately or
additionally, any combination of the techniques may be selected.
For example, the first, third, and/or fourth communication
techniques may be combined.
[0038] As an example, the third communication technique may be used
to select multiple frequency segments for the fourth communication
technique and the data frames sent over the multiple frequency
segments may be coded data frames that represent two or more data
frames as described in this disclosure.
[0039] As another example, multiple frequency segments, each of a
different WLAN and communication link between the first device 110
and a receiving device, such as the second device 120 may be
selected for transmission. A first data frame and a second data
frame may be configured for transmission from the first device 110
to the second device 120. In these and other implementations, the
first data frame and the second data frame may be coded together to
form a third data frame. The first data frame may be transmitted by
the first device 110 over a first frequency segment of a first
WLAN, the second data frame may be transmitted by the first device
110 over a second frequency segment of a second WLAN, and the third
data frame may be transmitted by the first device 110 over a third
frequency segment of a third WLAN. Thus, the second device 120 may
obtain each of the first and second data frames in duplication
after decoding of the third data frame.
[0040] In some implementations, duplication of the first and second
data frames may reduce how often the second device 120 may request
a retransmission of either of the first and second data frames. For
example, the second device 120 may determine an integrity of the
first and second data frames as obtained for the first and second
frequency segments. In response to the integrity of one or both of
the first and second data frames not being maintained, the second
device 120 may use one or both of the first and second data frames
decoded from the obtained third data frame based on the integrity
of the third data frame also being maintained. In these and other
implementations, in response to the integrity of one or both of the
first and second data frames being maintained, the second device
120 may discard the first and second data frames decoded from the
obtained third data frame even when the integrity of the first and
second data frames decoded from the obtained third data frame is
maintained.
[0041] Modifications, additions, or omissions may be made to the
environment 100 without departing from the scope of the present
disclosure. For example, the environment 100 may include any number
of other elements or may be implemented within other systems or
contexts than those described. For example, the first device 110,
the second device 120, the third device 130, and/or the fourth
device 140 may include addition antennas. As another example, the
environment 100 may include fewer or more devices than the device
illustrated.
[0042] FIG. 2 illustrates an example process 200 in wireless
communication, in accordance with one or more implementations of
the present disclosure. The process 200 illustrates a coding and
decoding process of data frames in a transmitting device 250 and a
receiving device 260.
[0043] The transmitting device 250, such as the first device 110 of
FIG. 1, may include a first frame 202 and a second frame 204 that
are provided to a coding process 210. The coding process 210 may
generate a third data frame 212 using the first frame 202 and the
second frame 204. The transmitting device 250 may transmit the
third data frame 212 to the receiving device 260.
[0044] In some implementations, the coding process 210 may occur in
a datalink layer of network protocol layers of the transmitting
device 250. The network protocol layers may refer to different
categories of networking functions performed by a device. Example
network protocols may include the open system interconnection model
(OSI), Internet Protocol Suite (TCP/IP), among other network
protocols. The datalink layer, as used in this disclosure, may be
described by different names in different protocols, such as a
network access layer, network interface layer, or link layer. The
datalink layer, as used in this disclosure, may refer to the layer
directly above the physical or hardware layer. In some instances
with respect to wireless communications, the media access control
(MAC) layer may be part of or may be used to describe the datalink
layer for wireless communications. The term network layer as used
in this disclosure may refer to the layer directly above the
datalink layer. The data in the network layer may be referred to as
data packets and the data in the datalink layer may be referred to
as data frames.
[0045] In some implementations, the first frame 202 and the second
frame 204 may be data frames received in the datalink layer of the
transmitting device 250. For example, the first frame 202 and the
second frame 204 may correspond to data packets in the network
layer of the transmitting device 250. The first frame 202 and the
second frame 204 may be formed by different data. For example, the
data in the first frame 202 may correspond to a first packet in a
network layer and the data in the second frame 204 may be
correspond to a second packet in the network layer.
[0046] In some implementations, the coding process 210 may be
configured to code the first frame 202 together with the second
frame 204 to generate the third data frame 212. Different types of
coding may be used to code the first frame 202 together with the
second frame 204 to generate the third data frame 212. For example,
an XOR or linear coefficient functions coding may be used, among
other types of coding functions. In these and other
implementations, the third data frame 212 may code together
different portions of the first frame 202 and the second frame 204
to form coded portions of the third data frame 212.
[0047] In some implementations, particular portions of the header
portion and other portions of the third data frame 212 may be based
on the coded portions. For example, the frame check sequence or
other portions of the third data frame 212 may be based on the
coded portions. Other portions of the third data frame 212 may be
based on other portions of one or more of the first frame 202
and/or the second frame 204. For example, addresses and other frame
control information of the third data frame 212 may be based on
analogous portions of the first frame 202 and/or the second frame
204. In some implementations, the third data frame 212 may include
an indication that the third data frame 212 includes coded
portions. In these and other implementations, the indication may
provide information regarding a type of coding performed to
generate the coded portions.
[0048] In some implementations, the coding process 210 may allow
the third data frame 212 to be decoded to restore the first frame
202 and the second frame 204 or relevant portions of the first
frame 202 and the second frame 204, such as sequence numbers,
payloads, checksums, and other portions of the first frame 202 and
the second frame 204 that may be used for verification of integrity
of the first frame 202 and the second frame 204 and/or used by
other network layers of a receiving device. For example, a coded
payload portion of the third data frame 212 may be decoded to
restore the payload portion of the first frame 202 and the payload
portion of the second frame
[0049] In some implementations, the coding process 210 may be
decoded using a coefficient. In these and other implementations,
the coefficient may be a shared secret between the transmitting
device 250 and the receiving device 260. Thus, the coding process
210 may result in a layer of security for the third data frame
212.
[0050] The receiving device 260, such as the second device 120 of
FIG. 1, may receive the third data frame 212. The receiving device
260 may provide the third data frame 212 to a decoding process 220.
The decoding process 220 may generate a decoded first data frame
222 and a decoded second data frame 224. In these and other
implementations, the decoding process 220 may be configured to
decode the coded third data frame 212 to generate the decoded first
data frame 222 and the decoded second data frame 224.
[0051] In some implementations, the process 220 may analyze the
preamble to determine that the third data frame 212 is a coded data
frame and/or to determine a type of coding. Based on the preamble,
the process 220 may decode the third data frame 212. The decoded
first data frame 222 may include portions that are the same as the
first frame 202. However, the first data frame 222 may not include
all of the fields of the first frame 202. Alternately or
additionally, the decoded second data frame 224 may include
portions that are the same as the second frame 204. However, the
decoded second data frame 224 may not include all of the fields of
the second frame 204.
[0052] Modifications, additions, or omissions may be made to the
process 200 without departing from the scope of the present
disclosure. For example, in some implementations, the process 200
may include coding more than two data frames together to generate
an additional data frame for transmission. For example, three,
four, five, or six data frames may be coded together to form
another data frame.
[0053] FIG. 3 illustrates an example device 300 configured for
wireless data transmission, in accordance with one or more
implementations of the present disclosure. The device 300 may be an
example implementation of one of the devices of FIG. 1. The device
300 may include an antenna element 302, a processor 310, memory
312, hardware 320, and a RF front-end circuit 330.
[0054] In some implementations, the hardware 320 may be part of a
datalink layer of the device 300. The hardware 320 may be
configured to code together multiple data frames to generate
additional data frames. The hardware 320 may also be configured to
encode transmit signals with data frames using a baseband
frequency. The hardware 320 may provide the transmit signals to the
RF front-end circuit 330. The hardware 320 may also be configured
to obtain receive signals at a baseband frequency from the RF
front-end circuit 330 and to decode the obtained receive signals to
obtain data frames. Based on information in the obtained data
frames, the hardware 320 may decode the obtained data frames to
obtain additional obtained data frames. In some implementations,
the hardware 320 may provide one or more of the obtained data
frames or additional data frames to processor 310 for further
processing.
[0055] In some implementations, the hardware 320 may be configured
to encode signals with data frames based on a communication
technique selected for transmission of the data frames. For
example, the hardware 320 may generate two or more baseband
transmit signals from a single transmit data frame. The hardware
320 may provide the two or more baseband transmit signals to the RF
front-end circuit 330.
[0056] In some implementations, the hardware 320 may be configured
to receive a type of service for a data frame. The type of service
may indicate a latency level and/or reliability level requested for
the data frame. The hardware 320 may also be configured to receive
one or more network factors regarding the WLAN hosted by the device
300. The network factors may include frequency band data, such as
potential data rates of frequency bands supported by the device
300, ranges of the frequency bands supported the device 300, and
power requirements of the frequency band supported the device 300;
environment data such as interferes in the environment and other
wireless networks in the environment that includes the device 300;
and device data such as frequency bands of operation of the device
300, among other types of data.
[0057] In these and other implementations, the hardware 320 may be
configured to select a communication technique for the data frames
provided to the hardware 320 based on the type of service and/or
the network factors. Based on the selected communication technique,
the hardware 320 may perform operations to implement the selected
communication technique. For example, in response to selecting
duplication of a data frame, the hardware 320 may be configured to
select frequency segments for multiple signals configured to carry
the duplicated data frame. Alternately or additionally, in response
to selecting frame coding, the hardware 320 may be configured to
code multiple data frames together to generate another data frame
for transmission.
[0058] In some implementations, the hardware 320 may be further
configured to process received data frames. For example, the
hardware 320 may analyze the data frames to determine where the
data frames are coded data frames and/or duplicate data frames and
an integrity of the data frames. For example, the hardware 320 may
analyze the preamble to extract information indicating the data
frames are coded frames and/or duplicate data frames. Alternately
or additionally, the hardware 320 may analyze characteristics of
data frames to determine the data frames are duplicates, such as a
sequence number and/or a length, among other characteristics. In
these and other implementations, the hardware 320 may discard one
or more of the data frames based on the analysis. Alternately or
additionally, the hardware 320 may provide one or more of the data
frames as received data frames to the processor 310 based on the
analysis.
[0059] In some implementations, the RF front-end circuit 330 may be
part of a physical layer of the device 300. The RF front-end
circuit 330 may be configured to obtain baseband transmit signals
from the hardware 320. The RF front-end circuit 330 may include a
conversion circuit configured to shift the baseband transmit
signals to different frequency segments based on the selected
communication technique. For example, the RF front-end circuit 330
may shift a first baseband transmit signal to a first frequency
segment of a first frequency band for transmission by the antenna
element and shift a second baseband transmit signal to a second
frequency segment of a second frequency band for transmission by
the antenna element 302.
[0060] The RF front-end circuit 330 may further be configured to
obtain receive signals from the antenna elements 302. The
conversion circuit of the RF front-end circuit 330 may be
configured to shift the receive signals to the baseband frequency
and provided the receive signals at the baseband frequency to the
hardware 320. The RF front-end circuit 330 may further include
additional circuitry that may be configured to further condition
transmit and receive signals for the supported frequency bands,
such as filters, amplifiers, and other circuitry.
[0061] In some implementations, the processor 310 may be part of a
network layer or other networking layers of the device 300. The
processor 310 may be configured to provide data frames to the
hardware 320 for transmission. The processor 310 may also obtain
data frames from the hardware 320 as obtained data frames. The
processor 310 may not be aware of the communication technique
selection, duplication of data frames, and/or data frame coding
that may be performed by the hardware 320.
[0062] An example of the processor 310 may include the processor
2050 of FIG. 7. An example of the memory 312 may include the memory
2052 and/or the data storage 2054 of FIG. 7. Modifications,
additions, or omissions may be made to the device 300 without
departing from the scope of the present disclosure.
[0063] FIG. 4 illustrates a flowchart of an example method 400 of
wireless data transmission, in accordance with one or more
implementations of the present disclosure. The method 400 may be
implemented, in whole or in part, by one or more of the devices of
FIG. 1 or 3.
[0064] At block 402, network factors and a type of service for one
or more data frames may be obtained. For example, hardware of a
datalink layer of a device, such as the first device 110 of FIG. 1,
may obtain the network factors and the type of service.
[0065] At block 404, a communication technique for the one or more
data frames may be selected based on the network factors and the
type of service. For example, data frame coding of data frames may
be selected for a first data frame and a second data frame.
[0066] At block 406, one or more signals may be constructed based
on the selected communication techniques. For example, a first
signal may be encoded with a third data frame generated by coding
the first data frame together with the second data frame.
[0067] At block 408, the one or more signals may be transmitted.
For example, the first signal may be transmitted.
[0068] At block 410, the one or more signals may be received. For
example a receiving device may receive the first signal.
[0069] At block 412, the one or more data frames may be obtained
from the one or more signals. The first signal may be decoded to
obtain a first copy of the third data frame. The receiving device
may analyze the first copy of the third data frame to determine the
third data frame is a coded data frame. Based on the analysis, the
receiving device may decode the third data frame to obtain a copy
of the first data frame and a copy of the second data frame.
[0070] One skilled in the art will appreciate that, for this and
other processes and methods disclosed herein, the functions
performed in the processes and methods may be implemented in
differing order, simultaneously, etc. Furthermore, the outlined
steps and operations are only provided as examples, and some of the
steps and operations may be optional, combined into fewer steps and
operations, or expanded into additional steps and operations
without detracting from the essence of the disclosed
implementations.
[0071] FIG. 5 illustrates a flowchart of an example method 500 of
wireless data transmission, in accordance with one or more
implementations of the present disclosure. The method 500 may be
implemented, in whole or in part, by one or more of the devices of
FIG. 1 or 3.
[0072] At block 502, a first data frame for wireless transmission
may be obtained by a data link layer. The first data frame may be
obtained from a network layer. At block 504, a second data frame
for wireless transmission may be obtained by the data link layer.
The second data frame may be obtained from the network layer.
[0073] At block 506, coding, at the data link layer, the first data
frame together with the second data frame to generate a third data
frame. In some implementations, a preamble of the third data frame
indicates that the third data frame is a coded data frame that
includes two data frames. Alternately or additionally, data of the
first data frame may originate at a first device and data of the
second data frame may originate at a second device. In these and
other implementations, the third data frame may include an
indication that the third data frame is intended for the first
device and the second device and the first signal is provided for
wireless transmission to both the first device and the second
device.
[0074] At block 508, a first signal may be encoded with the third
data frame using a first frequency segment. At block 510, the first
signal may be provided for wireless transmission.
[0075] In some implementations, the method 500 may further include
encoding a second signal with the first data frame using a second
frequency segment and encoding a third signal with the second data
frame using a third frequency segment. In these and other
implementations, the method 500 may further include providing the
second signal and the third signal for wireless transmission. In
these and other implementations, at least a portion of the first
signal, a portion of the second signal, and a portion of the third
signal may be simultaneously wireless transmitted.
[0076] In some implementations, the first frequency segment may be
included in a first frequency band configured to support a first
wireless network, the second frequency segment may be included in a
second frequency band configured to support a second wireless
network, and the third frequency segment may be included in a third
frequency band configured to support a third wireless network. In
these and other implementations, the first frequency band, the
second frequency band, and the third frequency band may be defined
under the 802.11 protocol and each of the first frequency band, the
second frequency band, and the third frequency band may be one of:
a 2.4 GHz band, a 5 GHz band, and a 6 GHz band.
[0077] FIG. 6 illustrates a flowchart of an example method 600 of
wireless data transmission, in accordance with one or more
implementations of the present disclosure. The method 600 may be
implemented, in whole or in part, by one or more of the devices of
FIG. 1 or 3.
[0078] At block 602, a first signal encoded with a first data frame
may be wirelessly obtained. In some implementations, the first data
frame may be generated before wireless transmission by coding a
second data frame together with a third data frame.
[0079] At block 604, the first data frame may be decoded at a data
link layer to extract the second data frame and the third data
frame. At block 606, the second data frame, the third data frame,
or both the second data frame and the third data frame may be
analyzed at the data link layer.
[0080] At block 608, the second data frame decoded from the first
data frame may be discarded in response to the analysis of the
second data frame, the third data frame, or both the second data
frame and the third data frame.
[0081] At block 610, the third data frame decoded from the first
data frame may be provided as a received data frame to a network
layer in response to the analysis of the second data frame, the
third data frame, or both the second data frame and the third data
frame.
[0082] In some implementations, the method 600 may further include
determining an integrity of the second data frame decoded from the
first data frame is maintained. In these and other implementations,
the second data frame may be discarded with the maintained
integrity.
[0083] In some implementations, the method 600 may further include
before wirelessly obtaining the first signal encoded with the first
data frame, providing the second data frame for wireless
transmission. In these and other implementations, the analysis of
the second data frame includes determining that the second data
frame decoded from the first data frame is the same as the second
data frame provided for wireless transmission and in response to
determining that the second data frame decoded from the first data
frame is the same as the second data frame provided for wireless
transmission, the second data frame is discarded. In these and
other implementations, the third data frame may originate at a
device separate from the device that wirelessly transmits the first
data frame.
[0084] In some implementations, the method 600 may further include
wirelessly obtaining a second signal encoded with the second data
frame and wirelessly obtaining a third signal encoded with the
third data frame. In these and other implementations, at least a
portion of the first signal, a portion of the second signal, and a
portion of the third signal are simultaneously obtained.
[0085] In these and other implementations, the method 600 may
further include determining an integrity of the second data frame
from the second signal and determining an integrity of the third
data frame from the third signal. The method 600 may further
include in response to the analysis of the second data frame, the
third data frame, or both the second data frame and the third data
frame, the determined integrity of the second data frame from the
second signal, and the determined integrity of the third data frame
from the third signal: providing the second data frame from the
second signal as a second received data frame to the network layer
and discarding the third data frame from the third signal. In these
and other implementations, the third data frame from the third
signal may be discarded in response to the integrity of the third
data frame from the third signal being determined as not being
maintained.
[0086] In some implementations, the method 600 may further include
wirelessly obtaining a second signal encoded with a fourth data
frame and wirelessly obtaining a third signal encoded with a fifth
data frame. The method 600 may also include wirelessly obtaining a
fourth signal encoded with a sixth data frame, decoding the fourth
data frame to extract a copy of the fifth data frame and a copy of
the sixth data frame, determining an integrity of the copy of the
fifth data frame is not maintained, and providing the fifth data
frame from the third signal and the sixth data frame from the
fourth signal as received data frames to the network layer.
[0087] In some implementations, the method 600 may further include
wirelessly obtaining a second signal encoded with a fourth data
frame, decoding the fourth data frame to extract a fifth data frame
and a sixth data frame, and analyzing, at the data link layer, the
fifth data frame, the sixth data frame, or both the fifth data
frame and the sixth data frame. The method 600 may further include
determining an integrity of the fifth data frame is maintained,
determining an integrity of the sixth data frame is maintained, and
in response to the analysis of the fifth data frame, the sixth data
frame, or both the fifth data frame and the sixth data frame and
the integrity of both the fifth data frame and the sixth data frame
being maintained, discarding the fifth data frame and the sixth
data frame.
[0088] The subject technology of the present disclosure is
illustrated, for example, according to various aspects described
below. Various examples of aspects of the subject technology are
described as numbered examples (1, 2, 3, etc.) for convenience.
These are provided as examples and do not limit the subject
technology. The aspects of the various implementations described
herein may be omitted, substituted for aspects of other
implementations, or combined with aspects of other implementations
unless context dictates otherwise. For example, one or more aspects
of example 1 below may be omitted, substituted for one or more
aspects of another example (e.g., example 2) or examples, or
combined with aspects of another example. The following is a
non-limiting summary of some example implementations presented
herein.
[0089] Example 1 may include a method of wireless data transmission
that may include obtaining, by a data link layer, a first data
frame from a network layer, the first data frame for wireless
transmission and obtaining, by the data link layer, a second data
frame from the network layer, the second data frame for wireless
transmission . The method may further include coding, at the data
link layer, the first data frame together with the second data
frame to generate a third data frame and encoding a first signal
with the third data frame using a first frequency segment. The
method may further include providing the first signal for wireless
transmission.
[0090] Example 2 may include a device include hardware configured
to perform operations, including for a data link layer. The
operations may include obtain, from a network layer, a first data
frame for wireless transmission and obtain, from the network layer,
a second data frame for wireless transmission. The operations may
also include code, at the data link layer, the first data frame
together with the second data frame to generate a third data frame,
encode a first signal with the third data frame using a first
frequency segment, and providing the first signal for wireless
transmission. The device may also include front-end circuitry
coupled to the hardware and configured to adapt the first signal
for wireless transmission.
[0091] Example 3 may include a method of wireless data
communication that may include wirelessly obtaining a first signal
encoded with a first data frame. The first data frame may be
generated before wireless transmission by coding a second data
frame together with a third data frame. The method may also include
decoding, at a data link layer, the first data frame to extract the
second data frame and the third data frame and analyzing, at the
data link layer, the second data frame, the third data frame, or
both the second data frame and the third data frame. The method may
also include in response to the analysis of the second data frame,
the third data frame, or both the second data frame and the third
data frame: discarding the second data frame decoded from the first
data frame and providing the third data frame decoded from the
first data frame as a received data frame to a network layer.
[0092] FIG. 7 illustrates a block diagram of an example computing
system 2002 that may be used to perform or direct performance of
one or more operations described according to at least one
implementation of the present disclosure. The computing system 2002
may include a processor 2050, a memory 2052, and a data storage
2054. The processor 2050, the memory 2052, and the data storage
2054 may be communicatively coupled.
[0093] In general, the processor 2050 may include any suitable
special-purpose or general-purpose computer, computing entity, or
processing device including various computer hardware or software
modules and may be configured to execute instructions stored on any
applicable computer-readable storage media. For example, the
processor 2050 may include a microprocessor, a microcontroller, a
digital signal processor (DSP), an application-specific integrated
circuit (ASIC), a Field-Programmable Gate Array (FPGA), or any
other digital or analog circuitry configured to interpret and/or to
execute computer-executable instructions and/or to process data.
Although illustrated as a single processor, the processor 2050 may
include any number of processors configured to, individually or
collectively, perform or direct performance of any number of
operations described in the present disclosure.
[0094] In some implementations, the processor 2050 may be
configured to interpret and/or execute computer-executable
instructions and/or process data stored in the memory 2052, the
data storage 2054, or the memory 2052 and the data storage 2054. In
some implementations, the processor 2050 may fetch
computer-executable instructions from the data storage 2054 and
load the computer-executable instructions in the memory 2052. After
the computer-executable instructions are loaded into memory 2052,
the processor 2050 may execute the computer-executable
instructions.
[0095] The memory 2052 and the data storage 2054 may include
computer-readable storage media for carrying or having
computer-executable instructions or data structures stored thereon.
Such computer-readable storage media may include any available
media that may be accessed by a general-purpose or special-purpose
computer, such as the processor 2050. By way of example, and not
limitation, such computer-readable storage media may include
tangible or non-transitory computer-readable storage media
including Random Access Memory (RAM), Read-Only Memory (ROM),
Electrically Erasable Programmable Read-Only Memory (EEPROM),
Compact Disc Read-Only Memory (CD-ROM) or other optical disk
storage, magnetic disk storage or other magnetic storage devices,
flash memory devices (e.g., solid state memory devices), or any
other storage medium which may be used to carry or store particular
program code in the form of computer-executable instructions or
data structures and which may be accessed by a general-purpose or
special-purpose computer. Combinations of the above may also be
included within the scope of computer-readable storage media.
Computer-executable instructions may include, for example,
instructions and data configured to cause the processor 2050 to
perform a certain operation or group of operations.
[0096] Some portions of the detailed description refer to different
modules configured to perform operations. One or more of the
modules may include code and routines configured to enable a
computing system to perform one or more of the operations described
therewith. Additionally or alternatively, one or more of the
modules may be implemented using hardware including any number of
processors, microprocessors (e.g., to perform or control
performance of one or more operations), DSP's, FPGAs, ASICs or any
suitable combination of two or more thereof. Alternatively or
additionally, one or more of the modules may be implemented using a
combination of hardware and software. In the present disclosure,
operations described as being performed by a particular module may
include operations that the particular module may direct a
corresponding system (e.g., a corresponding computing system) to
perform. Further, the delineating between the different modules is
to facilitate explanation of concepts described in the present
disclosure and is not limiting. Further, one or more of the modules
may be configured to perform more, fewer, and/or different
operations than those described such that the modules may be
combined or delineated differently than as described.
[0097] Some portions of the detailed description are presented in
terms of algorithms and symbolic representations of operations
within a computer. These algorithmic descriptions and symbolic
representations are the means used by those skilled in the data
processing arts to convey the essence of their innovations to
others skilled in the art. An algorithm is a series of configured
operations leading to a desired end state or result. In example
implementations, the operations carried out require physical
manipulations of tangible quantities for achieving a tangible
result.
[0098] Unless specifically stated otherwise, as apparent from the
discussion, it is appreciated that throughout the description,
discussions utilizing terms such as detecting, determining,
analyzing, identifying, scanning or the like, can include the
actions and processes of a computer system or other information
processing device that manipulates and transforms data represented
as physical (electronic) quantities within the computer system's
registers and memories into other data similarly represented as
physical quantities within the computer system's memories or
registers or other information storage, transmission or display
devices.
[0099] Example implementations may also relate to an apparatus for
performing the operations herein. This apparatus may be specially
constructed for the required purposes, or it may include one or
more general-purpose computers selectively activated or
reconfigured by one or more computer programs. Such computer
programs may be stored in a computer readable medium, such as a
computer-readable storage medium or a computer-readable signal
medium. Computer-executable instructions may include, for example,
instructions and data which cause a general-purpose computer,
special-purpose computer, or special-purpose processing device
(e.g., one or more processors) to perform or control performance of
a certain function or group of functions.
[0100] Although the subject matter has been described in language
specific to structural features and/or methodological acts, it is
to be understood that the subject matter configured in the appended
claims is not necessarily limited to the specific features or acts
described above. Rather, the specific features and acts described
above are disclosed as example forms of implementing the
claims.
[0101] An example apparatus can include a Wireless Access Point
(WAP) or a station and incorporating a VLSI processor and program
code to support. An example transceiver couples via an integral
modem to one of a cable, fiber or digital subscriber backbone
connection to the Internet to support wireless communications, e.g.
IEEE 802.11 compliant communications, on a Wireless Local Area
Network (WLAN). The WiFi stage includes a baseband stage, and the
analog front end (AFE) and Radio Frequency (RF) stages. In the
baseband portion wireless communications transmitted to or received
from each user/client/station are processed. The AFE and RF portion
handles the upconversion on each of transmit paths of wireless
transmissions initiated in the baseband. The RF portion also
handles the downconversion of the signals received on the receive
paths and passes them for further processing to the baseband.
[0102] An example apparatus can be a multiple-input multiple-output
(MIMO) apparatus supporting as many as N.times.N discrete
communication streams over N antennas. In an example the MIMO
apparatus signal processing units can be implemented as N.times.N.
In various implementations, the value of N can be 4, 6, 8, 12, 16,
etc. Extended MIMO operation enables the use of up to 2N antennae
in communication with another similarly equipped wireless system.
It should be noted that extended MIMO systems can communicate with
other wireless systems even if the systems do not have the same
number of antennae, but some of the antennae of one of the stations
might not be utilized, reducing optimal performance.
[0103] Channel State Information (CSI) from any of the devices
described herein can be extracted independent of changes related to
channel state parameters and used for spatial diagnosis services of
the network such as motion detection, proximity detection, and
localization which can be utilized in, for example, WLAN diagnosis,
home security, health care monitoring, smart home utility control,
elder care, automotive tracking and monitoring, home or mobile
entertainment, automotive infotainment, and the like.
[0104] Unless specific arrangements described herein are mutually
exclusive with one another, the various implementations described
herein can be combined in whole or in part to enhance system
functionality and/or to produce complementary functions. Likewise,
aspects of the implementations may be implemented in standalone
arrangements. Thus, the above description has been given by way of
example only and modification in detail may be made within the
scope of the present disclosure.
[0105] With respect to the use of substantially any plural or
singular terms herein, those having skill in the art can translate
from the plural to the singular or from the singular to the plural
as is appropriate to the context or application. The various
singular/plural permutations may be expressly set forth herein for
sake of clarity. A reference to an element in the singular is not
intended to mean "one and only one" unless specifically stated, but
rather "one or more." Moreover, nothing disclosed herein is
intended to be dedicated to the public regardless of whether such
disclosure is explicitly recited in the above description.
[0106] In general, terms used herein, and especially in the
appended claims (e.g., bodies of the appended claims) are generally
intended as "open" terms (e.g., the term "including" should be
interpreted as "including but not limited to," the term "having"
should be interpreted as "having at least," the term "includes"
should be interpreted as "includes but is not limited to," etc.).
Furthermore, in those instances where a convention analogous to "at
least one of A, B, and C, etc." is used, in general, such a
construction is intended in the sense one having skill in the art
would understand the convention (e.g., "a system having at least
one of A, B, and C" would include but not be limited to systems
that include A alone, B alone, C alone, A and B together, A and C
together, B and C together, or A, B, and C together, etc.). Also, a
phrase presenting two or more alternative terms, whether in the
description, claims, or drawings, should be understood to include
one of the terms, either of the terms, or both terms. For example,
the phrase "A or B" will be understood to include the possibilities
of "A" or "B" or "A and B."
[0107] Additionally, the use of the terms "first," "second,"
"third," etc., are not necessarily used herein to connote a
specific order or number of elements. Generally, the terms "first,"
"second," "third," etc., are used to distinguish between different
elements as generic identifiers. Absence a showing that the terms
"first," "second," "third," etc., connote a specific order, these
terms should not be understood to connote a specific order.
Furthermore, absence a showing that the terms first," "second,"
"third," etc., connote a specific number of elements, these terms
should not be understood to connote a specific number of
elements.
[0108] The present invention may be embodied in other specific
forms without departing from its spirit or essential
characteristics. The described implementations are to be considered
in all respects only as illustrative and not restrictive. The scope
of the invention is, therefore, indicated by the appended claims
rather than by the foregoing description. All changes which come
within the meaning and range of equivalency of the claims are to be
embraced within their scope.
* * * * *