Multisim and Ultiboard

Showing results for 
Search instead for 
Did you mean: 

[MULTISIM] Simulate 74LS156 as 1 to 8 demux ?

Go to solution


I simulate 74LS156  in 1 to 4 demux mode, and it works well.

But how can I simulate it in 1 to 8 demux mode ?

Checking 74LS156's model, it contains two tables for package A & B.

But its datasheet show that it is possible to work as 1 to 8 demux.

How to do it ? Please help! Thanks! 
Sincerely, Tom Wang


0 Kudos
Message 1 of 5


Hi Tom Wang,



I don't have Multisim (Desktop) application version, I only use Multisim Live so I don't know how the pins of the 74LS156 are named in the application. I hope the pin/signal names that I use below match those in Multisim.


To use the 74LS156 as a Single 1 To 8 Line Demultiplexer:


  • Connect (active low) input 1G and (active low) input 2G together and use the junction as the new DATA INPUT (Din).
  • Connect (active high) input 1C and (active low) input 2C together and use the junction as SELECT INPUT C. Along with SELECT INPUT B and A, they select which one out of the 8 output lines will be active.


Note that as a Dual 1 to 4 Line Demultiplexer, the two sections have STROBE functions while as a Single 1 To 8 Line Demultiplexer it is always active (STROBE function lost).


If you can't identify or match the pin names that I used with those in Multisim, you can post the symbol (PNG image format can help facilitate my reply) used for 74LS156 and I will make a corresponding revision to my answer.



Best regards,

G. Goodwin


0 Kudos
Message 2 of 5

Dear G. Goodwin: 

Thanks for your timely reply. I've tried this in MULTISIM 14.2:


I hope to select C1 only (as 1 to 8 demux) , not C1 & C5 (two 1 to 4 demux's).  How to do it ?  

Not try MULTISIM Live (sorry, no License to use IC library).  Any suggestion ? 

Thanks!  Sincerely, Tom Wang



Message 3 of 5
Accepted by topic author tom_a_wang


First, regarding Multisim Live:


Not try MULTISIM Live (sorry, no License to use IC library).

It seems like 74LS156 is not available in Multisim Live even with Premium Access, it can be verified here. I'm only a Free Subscription user.


Then regarding your problem in Multisim (Desktop):


You have wired ~1G, ~2G, 1C, and ~2C according to my previous reply but, obviously, it doesn't work as intended. The wiring is supposed to activate only 1 output out of the 8 available. From your diagram you can clearly see that COL_C=0 enables the bottom section while COL_C=1 enables the top section. Unfortunately, the two sections activate simultaneously.


Before proceeding further, with COL_C as selection input MSB and COL_A as selection input LSB, you should rearrange your output assignments as below:


C7 = 1Y3

C6 = 1Y2

C5 = 1Y1

C4 = 1Y0

C3 = 2Y3

C2 = 2Y2

C1 = 2Y1

C0 = 2Y0


I already verified that the pinout of 74LS156 is correct. Here are my recommendations:


Temporarily replace 74LS156 with similar part from other "subfamily" (e. g., 74156 from Standard TTL) then run the simulation to compare the results.


If the results are the same temporarily replace 74LS156 with 74LS155 or other similar part from other "subfamily" (e. g., 74155 from Standard TTL) to compare the results. The 74LS156 and 74LS155 are functionally equivalent and pinout compatible but 74LS156 has open-collector output structure while 74LS155 has totem-pole output structure.


If you have suspicion, based on the results from temporary replacement ICs, that the 74LS156 model that you have has flaw you may want to perform an experiment using physical components (in a breadboard).


Note that I mentioned that the 74LS156 has open-collector output so it can only sink but not source current. There should be pull-up device(s) in its output terminals for it to function properly. Pull-up devices can be just a resistor or the load itself (e. g., LED in series with resistor).


Moreover, if what you really need is 1 to 8 Line Demultiplexer, the 74LS138 can perform this function more readily than the 74LS156 unless you specifically need open-collector output.


0 Kudos
Message 4 of 5

Thanks for your excellent analysis and suggestions. 

I've tried to add an inverter and get desired 1 to 8 demux operations, but an extra IC is needed. 


Due to open collector is needed for output, 74156 is preferred and lovely 74138 is reserved.

However, as a comparison., try to replace 74155 ,  and  Hey!  it can run as 1 to 8 demux ! 💡

image.png      image.png

Open property>value>edit model, compare 74155 & 17156,

I can only find timing and I/O logic difference,

Their logic block structures seem to be the same and  have no extra components. 

There could be some timing issues in 74156 model.  Not sure. Any comment or suggestion ?





0 Kudos
Message 5 of 5