12
\$\begingroup\$

What is the difference between full duplex and dual simplex? I can not really distinguish the difference. Is it the fact that in full duplex, data can be exchanged simultaneously in both channels while in dual simplex, it's only one at the time?

PCI Express, for example, is described in its 3.0 specification as "dual simplex".

\$\endgroup\$
1
  • 2
    \$\begingroup\$ Looks like this \$\endgroup\$
    – AltAir
    Commented Dec 24, 2017 at 20:05

3 Answers 3

10
\$\begingroup\$

Simplex simply means that a channel is one-way or unidirectional. So a given channel will only ever send data from a device to some other device, or receive data from that other device to the first.

Dual-simplex is a pair of simplex (one-way) channels pointed in opposite directions, using one channel per direction.

Half-duplex is a communication system could be used to communicate in either direction as long as that communication doesn't occur at the same time. In other words, if it is acting in TX mode, one must wait until it finishes transmitting whatever it is transmitting, only then can it be switched to RX mode. Walkie-talkies or other push-to-talk systems are a good familiar example of half-duplex systems.

Full-duplex is a communication system that can be used to communicate in either direction at the same time. A good, familiar example of this the phone. You can talk at the same time and hear each other, even talking over each other.

The difference here is subtle. It is important to understand that half- and full-duplex refer to communication systems, whereas simplex and dual-simplex refer to single channels.

A single channel can be full-duplex only if one can communicate in both directions at the same time on that channel. If one takes a dual-simplex pair, that pair as a system is full-duplex. But full-duplex does not imply any sort of mechanism or architecture, it only means that communication can occur in both directions simultaneously.

Dual-simplex is referring to a specific way of using 2 simplex channels: one tx and one rx. This is a means of achieving full-duplex communication, but dual-simplex could also implement half-duplix communication if some other limitation prevented the rx and tx wires from both being used at the same time.

Put simply, duplex can applied to any level of abstraction and only cares about how communication at that level can behave. One would say that the PCIe bus is full-duplex.

Simplex describes single channels at the same level of abstraction of said channels, specifying the topology of a single channel (or a pair of them in dual-simplex's case). One would call a single PCIe lane dual-simplex. You can also call it full-duplex as well but that is not quite as specific - it could be any number of channels, and each one might itself be half duplex or some other odd arrangement.

\$\endgroup\$
0
\$\begingroup\$

My humble opinion

In fiber connection you can have two strands or a single strand (bidi) between two ports

They are both duplex The single strand would be non dual simplex (WDM) The double strands would be dual simplex

\$\endgroup\$
0
\$\begingroup\$

revised

Simplex means the path is one-way only. So information may be transferred in either direction sharing the one path and only
Duplex means information between two points has two paths dedicated for sending and receiving. The path can be on the same medium yet different spectrum, modes or wavelengths or time-shared.

Half-Duplex means only one of two-way paths is active.

Full-Duplex means both may be active simultaneously.

Dual Simplex means the 2 lanes are two paths unidirectional in the same direction, but hardware could be configured in either direction.

(Thus Dual Simplex is different Full-Duplex which are in both directions.)

Full Duplex is also simultaneous unidirectional but by hardware design limited to opposing directions such as RS-232, USB 2

Flow control may be hardware or software controlled by design.

So Dual Simplex could be dual lanes in same direction for bandwidth doubling such as USB 3.

\$\endgroup\$
3
  • 1
    \$\begingroup\$ The PCIe spec rev. 3.0 disagrees with you. It describes "A Link is a dual- simplex communications path between two components." where a Lane is "A set of differential signal pairs, one pair for transmission and one pair for reception." The data transfer direction of each pair is fixed. (I don't know the difference between "dual simplex" and "full duplex" either.) \$\endgroup\$
    – blueshift
    Commented Sep 10, 2021 at 6:46
  • \$\begingroup\$ I think "A set of differential signal pairs, one pair for transmission and one pair for reception" is an implementation of "dual simplex" model. \$\endgroup\$ Commented Feb 12, 2022 at 6:14
  • 1
    \$\begingroup\$ @smwikipedia Thankyou for sharing your doubts, so I added more details to illuminate and clarify. But Simplex means reversible path to share information between 2 points, regardless of single wire , differential or wireless. and Multiplex means 1 to many or many to 1 while Matrix or cross-point is Many to Many \$\endgroup\$
    – D.A.S.
    Commented Feb 12, 2022 at 12:54

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.