Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Logic Gates: Realize OR gate using ONLY XOR gates

I am doing some revision for my exams and one of the questions that frequently asked in last year question paper is how to realize a OR gate using only XOR gates. I am trying to do from last 1 hour and also searched on Internet. But failed. Hope to get some help here.

like image 631
Venus Kalra Avatar asked May 24 '11 07:05

Venus Kalra


People also ask

How would you realize XOR operation using only NOR gates?

= (A' + B') (A + B) This equation looks like it can be implemented using NOR Gates. We need totally five NOR gates (two for inverting A and B, one for NOR of A and B, one for NOR of A' and B' and the final one to obtain the above equation). The following image shows the XOR Gate implemented using NOR Gates.

Can you make an OR gate out of XOR gates?

You cannot implement OR or AND gate only by using XOR because it is not a universal gate. Also the XOR function can't tell the difference between '1,1' and '0,0' at it's inputs. Inverting the inputs/output in whatever combination makes a new gate with an XOR or XNOR function.

What are universal gates realize XOR gate using universal gates?

In Boolean Algebra, the NAND and NOR gates are called universal gates because any digital circuit can be implemented by using any one of these two i.e. any logic gate can be created using NAND or NOR gates only. Every logic gate has a representation symbol.


1 Answers

You can't derive an OR (or AND, NOR, NAND) gate from only XOR (or XNOR) gates, because they are not universal gates.

Here is an argument against XOR and XNOR as universal gates.

An XOR gate is a parity generator. Cascading parity generators always produce parity generators. AND and OR are not parity functions.

An XOR gate can be used as an inverter. An XNOR gate is an XOR followed by an inverter, so it is also a parity generator.

To be an universal gate, a gate needs to satisfy both the following conditions:

  1. You should be able to create an inverter using the gate.
  2. You should be able to block the input (i.e. setting N - 1 inputs to 0 or 1, the remaining input is ignored)
like image 110
Mitch Wheat Avatar answered Nov 07 '22 08:11

Mitch Wheat