Skip to content

Commit

Permalink
Merge pull request #164 from junron/31more_mux_demux
Browse files Browse the repository at this point in the history
[GCI] Add multiplexer and demultiplexer examples
  • Loading branch information
Shivansh2407 authored May 18, 2020
2 parents 577798c + 1ea3d03 commit 948d496
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 16 deletions.
23 changes: 15 additions & 8 deletions docs/MSI/demux.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,23 +16,30 @@ A de-multiplexer is equivalent to a single pole multiple way switch as shown in

## Demultiplexers in multiple variations.

* 1 : 2 demultiplexer
* 1 : 4 demultiplexer
* 1 : 16 demultiplexer
* 1 : 32 demultiplexer


## Block Diagram
### 1 : 2 demultiplexer
#### Block Diagram
{: .no_toc }

<div style="text-align:center"><img src="../../assets/images/one_twodemultiplexer_blockdiagram.jpg" /></div>


## Truth Table
#### Truth Table
{: .no_toc }

<div style="text-align:center"><img src="../../assets/images/one_twodemultiplexer_truthtable.jpg" /></div>

<iframe width="100%" height="400px" src="https://circuitverse.org/simulator/embed/756" id="projectPreview" scrolling="no" webkitAllowFullScreen mozAllowFullScreen allowFullScreen> </iframe>


### 1 : 4 demultiplexer
<iframe width="100%" height="400px" src="https://circuitverse.org/simulator/embed/44768" id="projectPreview" scrolling="no" webkitAllowFullScreen mozAllowFullScreen allowFullScreen> </iframe>

### 1 : 8 demultiplexer
<iframe width="100%" height="400px" src="https://circuitverse.org/simulator/embed/44769" id="projectPreview" scrolling="no" webkitAllowFullScreen mozAllowFullScreen allowFullScreen> </iframe>

### 1 : 16 demultiplexer
A 1 : 16 demultiplexer can be implemented using **two** 1 : 8 demultiplexers.
<iframe width="100%" height="400px" src="https://circuitverse.org/simulator/embed/44796" id="projectPreview" scrolling="no" webkitAllowFullScreen mozAllowFullScreen allowFullScreen> </iframe>

{% include disqus.html %}

32 changes: 24 additions & 8 deletions docs/MSI/mux.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ comments: true
{: .no_toc }

Multiplexer is a special type of combinational circuit.
There are n-data inputs, one output and m select inputs with 2m = n.
There are n-data inputs, one output and m select inputs with 2<sup>m</sup> = n.
It is a digital circuit which selects one of the n data inputs and routes it to the output.
The selection of one of the n inputs is done by the selected inputs. Depending on the digital code applied at the selected inputs, one out of n data sources is selected and transmitted to the single output Y.
E is called the strobe or enable input which is useful for the cascading. It is generally an active low terminal that means it will perform the required operation when it is low.
Expand All @@ -25,18 +25,34 @@ E is called the strobe or enable input which is useful for the cascading. It is

## Multiplexers come in multiple variations

* 2 : 1 multiplexer
* 4 : 1 multiplexer
* 16 : 1 multiplexer
* 32 : 1 multiplexer

## Truth Table
### 2 : 1 multiplexer
#### Truth Table
{: .no_toc }

<div style="text-align:center"><img src="../../assets/images/two_onemultiplexer_truthtable.jpg" /></div>

<iframe width="100%" height="400px" src="https://circuitverse.org/simulator/embed/746" id="projectPreview" scrolling="no" webkitAllowFullScreen mozAllowFullScreen allowFullScreen> </iframe>

### 4 : 1 multiplexer
The 4 : 1 multiplexer has 4 inputs and 2 control signals.
<iframe width="100%" height="400px" src="https://circuitverse.org/simulator/embed/44747" id="projectPreview" scrolling="no" webkitAllowFullScreen mozAllowFullScreen allowFullScreen> </iframe>

<iframe width="100%" height="400px" src="https://circuitverse.org/simulator/embed/746" id="projectPreview" scrolling="no" webkitAllowFullScreen mozAllowFullScreen allowFullScreen> </iframe>
### 8 : 1 multiplexer
The 8 : 1 multiplexer has 8 inputs and 3 control signals.
<iframe width="100%" height="400px" src="https://circuitverse.org/simulator/embed/44766" id="projectPreview" scrolling="no" webkitAllowFullScreen mozAllowFullScreen allowFullScreen> </iframe>

You can implement a 8 : 1 multiplexer by chaining **two** 4 : 1 multiplexers, like this:
<iframe width="100%" height="400px" src="https://circuitverse.org/simulator/embed/44784" id="projectPreview" scrolling="no" webkitAllowFullScreen mozAllowFullScreen allowFullScreen> </iframe>

### 16 : 1 multiplexer
The 16 : 1 multiplexer has 16 inputs and 4 control signals.

It can be implemented with **two** 8 : 1 multiplexers:

<iframe width="100%" height="400px" src="https://circuitverse.org/simulator/embed/44795" id="projectPreview" scrolling="no" webkitAllowFullScreen mozAllowFullScreen allowFullScreen> </iframe>

It can also be implemented with **five** 4 : 1 multiplexers:
<iframe width="100%" height="400px" src="https://circuitverse.org/simulator/embed/44804" id="projectPreview" scrolling="no" webkitAllowFullScreen mozAllowFullScreen allowFullScreen> </iframe>

{% include disqus.html %}

0 comments on commit 948d496

Please sign in to comment.