1
\$\begingroup\$

The jargon of terms in bus architecture literature is half the difficulty in understanding it. At some places the term 'multiplexed' bus is used while at some other places 'multi-master' bus is used. They both look same to me but maybe they are different in some sense also. How to know what exactly is the meaning of these two terms?

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

Muli-master is mainly for long serial communications. A bunch of masters on the same bus can simultaneously attempt to initate a transmission. Like a bunch of people trying to yell over each other in a room until everyone settles down to listen to just one person.

Multi-plexed is only (I think) for parallel processor to memory communications. It is definitely only for parallel since it has no meaning in serial. It is where not every line is dedicated to only a single address or data bit. Some lines might be used/shared for a low and high bit of the same type, or a data and address bit. This lets you reduce the number of lines between processor and memory at expense of speed.

These two things appear in different places. I don't know why they might ever overlap in application.

\$\endgroup\$
4
\$\begingroup\$

Any communications channel that is multiplex means it can be accessed by more than one transmitter. That's pretty general; in your context it means that different transmitters can use it at different times.

A bus master is the piece of hardware that actually controls who has access to the bus. So a multi-master bus is one that has a mechanism for multiple masters to take over the bus at different times. Following through on this thought, a multi-master bus has some sort of arbitration scheme so that if more than one master wants control over the bus at one time, only one of them actually gets that control.

\$\endgroup\$
  • \$\begingroup\$ It looks like multiplexed bus has more than one meaning based on context. \$\endgroup\$ – DKNguyen Jul 15 at 15:35
0
\$\begingroup\$

According to https://www.encyclopedia.com/computing/dictionaries-thesauruses-pictures-and-press-releases/multiplexed-bus, a multiplexed bus is a type of bus structure in which the number of signal lines comprising the bus is less than the number of bits of data, address, or control information being transferred between elements of the system.

I couldn't find a definition for it in any of the books I have in my personal library.

The definition may depend on the author and the context, but I personnally feed that the definition provided above is appropriate.

"By nature", a bus is shared amongst the "peripherals" connected to it. Every element will at some time be allowed to "talk" on the bus. So from that point of view any bus would be "multiplexed".

"Multi-master" already identifies a specific feature on a bus which is not possible in all systems. But this only indicates that the control over who can talk on the bus is possibly shared by multiple "peripherals" of the bus. It does not make it more or less multiplexed than other buses.

Therefore, it seems more logical that a multiplexed bus has less signal lines than there are number of bits of data, address or control information. A current example of a multiplexed bus is the ARM AXI bus at least according to their own documentation: http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0362c/Cfhbajif.html . The data width can be larger than the bus itself, so the data word is multiplexed on the bus.

By these definitions, the I2C bus is both a multiplexed and multimaster bus. There are only two signal lines: SCL and SDA. The SCL is the clock, and the SDA line will provide the address, the read/write signal, and the data bits.

To add to the confusion, one can also multiplex buses themselves. A document by cypress (https://www.cypress.com/file/130941/download ) explains that it is possible to switch between I2C buses - and they call that bus multiplexing. They do not call it a multiplexed bus though. I'ld say that bus multiplexing and a multiplexed bus are different definitions, but they can both apply to the same bus in a system.

In conclusion:

  • The signals of a multiplexed bus are in part used for different purposes. For example, a signal line can be an address bit at one time, and a data bit at another time.
  • A multimaster bus indicates that there can be more than one master, but it does not provide any information about the multiplexed nature of a bus.
  • It is possible to multiplex buses, which is called bus multiplexing. This can ba applied to multiplexed buses, multimaster buses, or buses with both of these properties.
\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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