24
\$\begingroup\$

According to the IEA 250 TWh of power was consumed in 2019 due to data transmission globally, about 1% of worldwide electrical power use.

I would like to pose a very simple question regarding power consumption in data transmission. Does it use more power to transmit a zero or a one? - Is there a difference?

If there is a difference, then could power consumption be lessened by inverting Ethernet frames to optimise for more "ones" or "zeros", and the addition of a bit to indicate if the frame has been inverted or not.

Assuming there could be a power saving to be made, is there a way this could be implemented in a backwards compatible way?

\$\endgroup\$
17
  • 11
    \$\begingroup\$ What is your basis for believing that transmitting "zeros" takes less power than transmitting "ones"? \$\endgroup\$
    – jwh20
    Commented Jul 11, 2021 at 10:09
  • 2
    \$\begingroup\$ OOK for instance \$\endgroup\$ Commented Jul 11, 2021 at 10:13
  • 19
    \$\begingroup\$ My intuition also tells me that zeros and ones must be balanced for efficient coding. If they're not, then there may be greater power savings to be made by not transmitting the redundant information at all. \$\endgroup\$ Commented Jul 11, 2021 at 10:52
  • 3
    \$\begingroup\$ @Mast it's not. Source coding (==compression) is not optional for many reasons, and 1s and 0s use the same amount of energy – there's no efficient schemes where they don't. You don't do the same between two transistors as you do for communications over distances! Also, we understand communication systems well enough to know that source coding uses a relatively negligible amount of power compared to what it saves in bits to be transmitted for all but data that's already been de-correlated somewhere else (e.g. cryptography), and even for that you still need to do source coding to guarantee … \$\endgroup\$ Commented Jul 12, 2021 at 14:52
  • 1
    \$\begingroup\$ I agree that the suggested (by the OP) solution involved data compression, the question cited total power consumption. I neglected to suggest looking the components of that consumption and going after the large contributors. \$\endgroup\$
    – JRobert
    Commented Jul 13, 2021 at 12:06

6 Answers 6

47
\$\begingroup\$

TL;DR: no, there's no such scheme that we wouldn't already be using. There's reasons, below.

Information theory tells us that we have to transmit the least bits (using less energy than transmitting more bits) if we use source coding to compress the input data – making 0 and 1 equally likely.

The job of channel coding is to then take these equally likely bits and find a transmission scheme that is optimal for the end-to-end system – typically optimal as in least bit error rate for a given transmit power, or least power needed for a fixed bit error rate. There can be many other parameters to take into consideration, but these are the main things we usually look at when we optimize channel coding for long-haul high-rate communications, which use the most power.

So, what you propose is "already done", and there's 80 years of extensive theory and practice in communications engineering going into it.

For example, we know that schemes who are off to signal one bit value and transmit something for the other are in almost all cases power-wise inefficient, really. The medium of transmission is an electromagnetic wave – be it the radio interface of your phone, be it the field between the wires in a twisted pair, or be it the optical fiber for >= 100 Gbit/s links. And these have a phase, which allows us to transmit, say, amplitudes of -0.5/+0.5 instead of 0.0/1.0, and get the same "distance" between noisy received symbols at the receiver. However, the average power used by the first scheme is \$0.5^2=\frac14\$, whereas in the second case it's \$\frac12\left(0^2+1^2\right)=\frac12\$. This BPSK (binary phase-shift keying) vs OOK (on-off keying) example serves to illustrate that there's beauty in making things symmetrical – and then, you lose the "bit that has lower energy" argument altogether.

Now, there's not only symbol sets that have a constant power; on the contrary, in high-rate communications, we do use sets that have very high ranges of different powers. However, if you start "shaping" the probability distribution of these symbols, you run into a problem:

Say, you had a constellation with 1024 different possible transmit symbols (1024-QAM, for example). If you simply take 10 input bits and pick the symbol with that number, your single symbol transports 10 bits of information! Easy. That also means every symbol is equally likely, as every 10 bit sequence of bits is equally likely.

Now, you come along and say, you want to optimize for power, so the higher-amplitude symbols should be occurring less often than the lower-amplitude ones. Turns out that under that condition, each symbols does no longer carry 10 bits; 10 bits per symbol is the maximum you can get across with 210=1024 symbols, and that happens when you choose the probabilities of all the symbols identically. So, to transmit the same, say, 1 million bits, where in the equidistributed scheme you needed 100 thousand symbols, you now need more. How much more depends on how exactly you shape the probability¹.

Now, so to be more power-efficient per symbol you transmit, you need to transmit more symbols!

It gets worse: at the receiver, a decision which symbol you've sent has to be made. This gets significantly more involved when the symbols are not equally distributed. Receiver signal processing and channel decoding contribute significantly to communication power demand. With significant, I mean, easily up to half of the overall system consumption is spent in the receiver, not the transmitter, which has to bring the symbols physically onto the transmission channel!

So, this is a path that usually leads nowhere.

It does lead somewhere if your channel is not nice and linear, and higher signal powers lead to more distortion. This is what we see in highest-rate (think 400 Gbit/s upwards) fiber links, where you'll find probabilistic shaping used to maximize the mutual information between transmitter and receiver. It really doesn't apply to simpler use cases today, and the community has been pretty good at mathematically proving that the situations where it does yield a gain are really not these use cases with lower data rates.


¹ We actually have formulas to describe that: the maximum you could get out of a source \$X\$ with such shaped symbol set probability \$(P(x_i))_{i=1,\ldots,1024}\$ is the source's entropy:

$$H(X) = -\sum_{i=1}^{1024} P(x_i) \log_2(P(x_i))$$

With a bit of analysis you'll find that has a global maximum for \$P(x_1)=P(x_2)=\ldots=\frac1{1024}\$, as probabilities have to always add up to 1. The value of the entropy at that is \$H(X) = -1024\cdot \frac1{1024}\log_2\left(\frac1{1024}\right) = -(-10)=10\$ (bit).

\$\endgroup\$
13
  • \$\begingroup\$ If transmit energy reduction is more important than speed of transmission, communications formats that send active pulses at less than 50% duty cycle can get by with less power than would be needed for those where every time slot is either +0.5 or -0.5. For example, a protocol that sends three active pulses every 26 time slots, each of which could be either +1 or -1 (with the receiver being able to tell the difference), could send 16 bits of data in the process, thus using only 0.1875 units of power per bit--a substantial savings versus always using 0.5 units of power per time slot. \$\endgroup\$
    – supercat
    Commented Jul 12, 2021 at 20:02
  • 1
    \$\begingroup\$ @supercat no that's wrong, because if you reduce speed, you'll just have to sent longer for the same data. that doesn't yield a net energy-per-bit gain. The problem is that your pulses need to be more powerful to be as robust against noise - and then you're back into the same problem as before. In your 26 choose 3 (that's 2600 possible slot combinations - strange number) scenario, you have 26 slots where you could either misinterpret a "off+noise" for a "on", or vice versa; and then you're losing a lot of useful information (bits). It really doesn't work out – PPM (pulse-position modulation) \$\endgroup\$ Commented Jul 12, 2021 at 20:24
  • 2
    \$\begingroup\$ such that one could listen to an idle line for millions of bit times without receiving a single erroneous bit. that just literally means you're putting your threshold higher than you need to, and are therefore wasting energy while transmitting! If you've got that great a channel, don't transmit with high power but rarely, but put with low, and incorporate channel coding. That will get you closer to Shannon limit, @supercat, far as I can tell from here. \$\endgroup\$
    – mmmm
    Commented Jul 13, 2021 at 1:48
  • 2
    \$\begingroup\$ let me jump in here: @supercat that's not correct; sure, for low probabilities of collision, a scheme that occupies few slots works. But it's still not better than not to do that! Assume you have linearly independent access sequences. You can correlate with the individual sequence, and get an SNR gain that way. That means no matter how you distribute the energy over slots, your receiver compares the sum of it against the sum of noise amplitudes. You gain nothing energy-wise by concentrating the energy in few slots! Error-probability wise, you actually lose, for typical noise PDFs: \$\endgroup\$ Commented Jul 13, 2021 at 15:37
  • 1
    \$\begingroup\$ @supercat that's not right. terrestrial receivers for microwave are very much noise-limited: \$kTB\$, right. Seriously, you've got some very interesting conceptions, but it's far out of scope trying to discuss this in the comments. \$\endgroup\$ Commented Jul 13, 2021 at 15:48
10
\$\begingroup\$

It depends completely on what interface and encoding is used for data, if there is any difference of transmitting ones or zeroes, so there is no general answer.

For your extremely complex case of Ethernet, it depends on which Ethernet you mean.

For example, 10Mbps Ethernet uses Manchester encoding, so there is no difference if you send a frame full of ones or zeroes, the signal looks identical except for the phase of the square wave.

100Mbps Ethernet will always transmit IDLE symbol when link is up and there are no frames transmitted. And moreover, the data is scrambled with a pseudorandom noise generator to make the actual transmitted data to not affect much how the data looks on the wires.

Gigabit Ethernet is rather similar. And that's only the common types of Ethernet over copper PHYs, as you have also Ethernet over optical interfaces.

For your TV remote, a protocol like Sony SIRCS does send longer light pulses for logic 1 bits, so yes, that is an example that does use more power for transmitting ones than zeroes. But you can't make changes that are backwards compatible with it.

\$\endgroup\$
1
  • 4
    \$\begingroup\$ There is Energy-Efficient Ethernet (802.3az) which adds low power idle to the Ethernet standard, so you don't have to send IDLE symbols at line rate. OP might be interested in how power savings are actually made. \$\endgroup\$
    – richardb
    Commented Jul 12, 2021 at 14:12
7
\$\begingroup\$

I only know one case. Here transmitting more ones saves power.

GDDR4 and DDR4 memories have a feature called Data Bus Inversion. The data lines are pulled up with resistors (terminated to high) and driven low with MOSFET switches. In this case driving low takes more power. So if the byte to be transmitted has many zeros, the driver will invert all bits in the bytes along with a marker in order to drive more ones and save power.

The RAM bus is special in that it is high-speed, parallel, not differential, and multi-drop. Slow buses don't need pullup resistors that terminate the lines and thus they take little power to transmit any bit pattern. Many interfaces that aren't so slow are terminated at the driver and open at the receiver. They only take energy to toggle the bits. Faster interfaces usually have differential current-steering drivers. They take the same power to transmit any bit pattern. Thus I am not aware of any other use case of Data Bus Inversion.

\$\endgroup\$
1
  • \$\begingroup\$ CAN bus is another. Ones are free in that you let the lines be pulled together by the 120ohm terminators while zeros cost about 15mA to drive them 2V apart. \$\endgroup\$ Commented Jul 16, 2021 at 16:56
6
\$\begingroup\$

could power consumption be lessened by inverting Ethernet frames to optimise for more "ones" or "zeros"

Pretty much the majority of long-haul data transmissions are synchronous. These consume the majority of the total power. Synchronous means that clock and data are embedded. In turn, this means that on average, the high bit-count equals the low-bit count hence, no saving.

Apart from that, the majority of long-haul data is transmitted differentially over copper to obtain an adequate level of protection against noise and surges. When data is transmitted differentially, one line will be high while the other is low and, this state inverts each time data changes hence, there is no net difference in power consumed.

\$\endgroup\$
7
  • 5
    \$\begingroup\$ I'd argue that by today, "long-haul", assuming that means > 50 km is mostly fiber, or microwave, but your answer stands nevertheless: where 1990's fiber still used on/off signalling (but balanced, for good reason!), modern optical communications literally do quadrature modulation – just like your phone does, and hence never use the "off" state of the channel. \$\endgroup\$ Commented Jul 11, 2021 at 11:22
  • 1
    \$\begingroup\$ Even when OOK is used in long distance fiber links it uses externally modulated lasers so there's no power savings when transmitting a 0. \$\endgroup\$
    – The Photon
    Commented Jul 11, 2021 at 13:51
  • \$\begingroup\$ I guess you could argue that the current for the laser LED is going to be slightly above the extinction threshold and therefore power is wasted on "zeros" but, the same deal arises over making the data synchronous hence, no savings involved on inverting the data. \$\endgroup\$
    – Andy aka
    Commented Jul 11, 2021 at 14:15
  • 2
    \$\begingroup\$ Or if you were replying to my comment, an externally modulated laser in an OOK system means that the laser outputs a constant power and the modulator throws away half the power when transmitting a 0. The laser operation is never operated near the extinction threshold, it's always operated at the '1' power level. (This prevents undesired optical phase modulation due to laser chirp, avoiding signal degradation due to dispersion in the fiber) \$\endgroup\$
    – The Photon
    Commented Jul 11, 2021 at 15:22
  • 1
    \$\begingroup\$ @ThePhoton cool. You are the guy on stuff like this! \$\endgroup\$
    – Andy aka
    Commented Jul 11, 2021 at 15:53
2
\$\begingroup\$

Other people have pointed out that in most cases the energy used to transmit a zero is the same as the energy used to transmit a one. However, if that is not the case, then you are correct that it is more energy-efficient to transmit more of one or the other.

If the probability of a 1 symbol is p and the probability of a 0 symbol is 1 − p, then the average amount of information (entropy) communicated per bit is −_p_ log p − (1 − p) log(1 − p). This function is zero at p = 0 and p = 1, and has a maximum of log 2 (one bit of information) at p = 1/2.

Let E0 and E1 be the amount of energy needed to transmit a 0 and 1, respectively; then let r = E0 / (E0 + E1). For example, if the energy for the symbols is equal then r = 1/2, and if a 1 requires twice as much energy as a 0 then r = 1/3.

The average amount of energy needed to transmit a symbol is proportional to r(1 − p) + (1 − r)p, and the average amount of energy needed to transmit one bit of information (on average) is [r(1 − p) + (1 − r)p] / [−_p_ log p − (1 − p) log(1 − p)]. This expression has a minimum when r / (1 − r) = log(p − 1) / log p. The graph of r versus p looks like:

So, if 0s take less energy (r → 0), then you should transmit fewer 1s (p → 0) and vice versa.

For example, in the scenario where a 1 costs twice as much as a 0 (r = 1/3), then p = (3 − sqrt(5)) / 2 ≈ 0.3819…

\$\endgroup\$
3
  • \$\begingroup\$ This is only true if the data is transmitted "as-is" - in many cases a specific encoding scheme is used, to ensure readability, meaning for example that a zero is transmitted as a leading/trailing edge, rather than a pulse. \$\endgroup\$
    – MikeB
    Commented Jul 14, 2021 at 9:29
  • \$\begingroup\$ @MikeBrockington You are correct, my analysis only applies to the transmitted symbols, after any line coding is applied. It also has the limitation that it only applies if the energy of the symbols can be considered independently (e.g. if transitioning between symbols is what causes energy usage, then this analysis does not apply). \$\endgroup\$ Commented Jul 14, 2021 at 16:14
  • \$\begingroup\$ One example of a case that this analysis applies to is infrared remote controls that use a pulse-length modulation. \$\endgroup\$ Commented Jul 14, 2021 at 16:20
0
\$\begingroup\$

It's only true if your consider OOK modulation. In OOK, a signal emission corresponds to a 1 and no signal to a 0. However it's not widely used because of hardware complications.

With BPSK modulation, a 0 is send as a -1. It makes hardware design easier as you always have the same energy level to manage. => For the emission, you can make your amplifier work near compression point. => For the reception, you just have to monitor the rms power ( -1×-1 = 1x1 = 1) to adjust your gain.

With higher order modulation, rms power will again vary but in a better way than OOK.

It's as always a balance to find.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.