How do you feel about this article? Help us to provide better content for you.
Thank you! Your feedback has been received.
There was a problem submitting your feedback, please try again later.
What do you think of this article?
A multiplexer (MUX) is a device that can receive multiple input signals and synthesize a single output signal in a recoverable manner for each input signal. It is also an integrated system that usually contains a certain number of data inputs and a single output. Here, as a beginner, what multiplexer really is in the CPU?
Multiplexer means many into one. In electronics, a multiplexer (MUX) is a logic gates circuit that employed to fetch a bit of data from computer memory at a given address. What’s more, a computer processor has several multiplexers to control the data and address buses. In other words, it is a special circuit device that selects one of n inputs and provides it on output. Multiplexer technology may follow one of the following principles, such as: TDM, FDM, CDM or WDM. It is also applied to software operations, such as the simultaneous transmission of multi-threaded information streams to equipment or programs.
As a beginner, when you study the Multiplexers, you'll have questions like this what they do in a CPU or ALU? Here I give you a proper description of Multiplexers.
What is Multiplexer with Example?
The purpose of using a multiplexer is to make full use of the capacity of the communication channel and greatly reduce the cost of the system. Giving a really simple example:
If you want to fetch a data bit from computer memory, a multiplexer allows you to specify an address (the input code), and the memory bit will be connected to the other pin.
For example, if you have 256 bits of memory and want to connect this to an output pin, then the multiplexer would need 8 bits for input codes. You proved a code say n, and bit n is connected through the logic gates to the output of the multiplexer. This multiplexer would have a total of 256 + 8 input lines.
That is, when the data stream on the multiplexed line is continuous, this sharing method can achieve good results. Obviously, this is more economical than using a communication line for each terminal. Multiplexers are always used in pairs. One continuous terminal, the other near the host, its function is to separate the received composite data stream according to the channel and send them to the corresponding output line, so it is called a Multiplexer.
The major concept of a mux then can be shown as a construct where select lines may be used to pick one out of many input signals. In a word, a Multiplexer is a selection device.
A big question covered as to where this may be useful? Generally, multiplexers are applied everywhere in computer architecture and ASIC design to help pick between multiple signals. In your computer processor, Multiplexers are employed to predict a branch ( when running a loop, the branch is the assembly instruction and the processor needs to guess if it should take the branch or not), used to get data from caches ( given an index in the cache muxes must be used to pick the correct data out of many ), to select control signals for the processor based on the instruction that comes in, and to select one out of the many ALU calculations made based on the operation needed, and more.
In short, multiplexer plays an important role that helps put together a processor, without it, you would have nothing.
Fun right? A useful tool recommended, Binary Multiplier Calculator, if you have any interest, you can have a deeper understanding of Multiplier.