How many times is the throughput of SX1301 compared to SX1276/8?
[Copy link]
1. Throughput, an important performance of LoRa gateway
In a broad sense, a gateway is a device that connects 2 different networks. If a device can connect a LoRa wireless network to the Internet, it is a LoRa gateway.
At present, most LoRa gateways use SX1301 baseband chips, and some use SX1276/8 single-channel chips. So, how many times is the throughput of SX1301 compared to SX1276/8? Let's discuss it together.
2. Misunderstanding 1: SX1301 = 48 SX1276/8
Some industry friends believe that SX1301 has 8 channels, each channel can receive 6 orthogonal (different rates, no interference) LoRa signals, then SX1301 = 8 x 6 = 48 SX1276/8.
However, this is incorrect!
The following is excerpted from "SX1301 Datasheet" Page-18 IF0 to IF7 channels
It clearly states that the SX1301 can demodulate no more than 8 LoRa data packets simultaneously.
If you only need to know the result, just look at the number above - 8, and that's it. Please move on.
If you are like us and like to explore the deeper reasons, please read the explanation below. Looking at the block diagram of SX1301 below, you will quickly get two inspirations:
1) It only has 8-way LoRa demodulator, which is the real bottleneck! Even if one channel (IF0~IF7) receives 6 orthogonal data packets, the demodulator is only responsible for processing one of them.
2) When a channel receives a LoRa signal, three working processes will be started: the data packet arbitration MCU, which assigns the demodulator to the "appropriate" LoRa channel; the preamble search engine, which finds the starting signal of a LoRa data packet; and the LoRa demodulator, which parses the LoRa data packet.
Just now we talked about: the data packet arbitration MCU, assigning the demodulator to the "appropriate" LoRa channel. So, what is appropriate? This priority includes: the rate of receiving data packets, the channel (IF0~IF7), the RF channel (that is, 2 SX1255/7, corresponding to Radio A and B respectively), and the signal strength of the received data packet.
The priority of the packet arbitration MCU is determined by Semtech's firmware and cannot be changed by the user. This is also the inherent advantage of chip manufacturers - setting the rules of the game and limiting the scope of players.
3. Misunderstanding 2: SX1301 = 8 SX1276/8
So, is SX1301 equal to 8 SX1276/8? This is not correct either! Because this ignores the ADR technology of SX1301.
ADR (Adaptive Data Rate), as shown in the figure below, depends on the distance between the Node and SX1301-Gateway: the closer the distance, the higher the rate; the farther the distance, the lower the rate. This can effectively improve network throughput.
4. More realistic assessment
The ADR technology of SX1301 can improve throughput, but it is difficult to accurately calculate the performance improvement because it depends on the physical location distribution of nodes in the actual network.
Because of LoRa's long-distance advantage, it is often based on low rate, that is, SF12=293bps in the table below; it can be seen that SF10 (medium rate) is about 3 times the low rate, and SF7 (high rate) is about 18 times the low rate.
To this end, we propose a mathematical statistical model. Assume that the location of network nodes is normally distributed (this is the most suitable probability distribution for engineering implementation). As shown in the following figure: 68.2% is normal, that is, ADR is not used; 27.2%, ADR can increase the throughput by about 3 times; 4.6%, ADR can increase the throughput by 18 times.
Thus, ADR increases throughput by: 68.2% x 1 + 27.2% x 3 + 4.6% x 18 = 232.6%
Summary: The throughput of SX1301 using ADR is equivalent to (8 x 232.6%) = 18.6 SX1276/8
5. Measured data platform
The above are all theoretical derivations. Next, let’s take a look at two actual measurement platforms.
Test 1: http://rimelink.timeddd.com/st/STS.aspx?id=66
This is a SX1278 LoRa gateway, based on TDMA (time division multiplexing) networking, with a total of 7 nodes, reporting 12 bytes of data (temperature, humidity, dew point; each 4 bytes, float type).
Careful observation will find that a node updates data every 35 seconds. This is the limitation of the SX1278 gateway. Because it is a single channel, the node can only use the bandwidth in time slots. Therefore, the delay of a node reporting will increase linearly with the number of nodes.
The throughput of this SX1278 gateway is: (7x 12 x 8)b / 35s = 19bps
Test 2: http://lorawan.timeddd.com/demo.aspx
This is a SX1301 LoRaWAN gateway, based on FDMA (frequency division multiplexing) networking, with a total of 12 nodes, reporting 12 bytes of data (temperature, humidity, dew point; each 4 bytes, float type).
Careful observation will find that a node updates data every 5 seconds or so. This is because SX1301 has 8 channels, allowing multiple nodes to report at the same time; of course, when the node randomly selects a channel, it may fail due to collision, and the probability of successful reporting is about 0.9.
The throughput of this SX1301 gateway is: (12x 12 x 8)b / 5s * 0.9 = 207bps
Comparing the throughput of the above two gateways: 207 /19 = 10.8 (times), why is it not as high as the theoretical 18.6 times? Because the 12 nodes based on the SX1301 gateway are placed together, without using the ADR technology, and using the lowest rate (SF12=293bps).
|