Solve 3 Bit Grey Code Decoding: Output Logic

AI Thread Summary
The discussion centers on decoding a three-bit Grey code and designing a corresponding active low output decoder. The Grey code combinations for A[2:0] are correctly identified, showing a sequence where only one bit changes at a time. The confusion arises in deriving the boolean functions for the active low outputs X[0:7], where the outputs must be expressed as complements of the active high functions. Clarification is provided that using DeMorgan's law is essential to convert the active high expressions into their active low counterparts. The final conclusion emphasizes that the output function X0 is low only when all inputs A2, A1, and A0 are zero.
bd411
Messages
39
Reaction score
0

Homework Statement



Given that the variables A[2:0] form a three bit grey code to represent numerical values:

i) Write down all binary combinations for A[2:0], in ascending order of numerical value

ii) A three bit grey code to decimal decoder is to be designed, where the outputs X[0:7] are active low. Write down the boolean functions of each output terminal.

Homework Equations





The Attempt at a Solution



I think the first part is easy enough, it's just grey code (only change one bit at a time)

A2:A0

0 000
1 001
2 011
3 010
4 110
5 111
6 101
7 100

The second part is confusing me though, and it's to do with the "active low part". Initially I got what's below but how is it any different to if the outputs weren't active low ?!

X0 = A2'A1'A0'
X1 = A2'A1'A0
X2 = A2'A1A0
X3 = A2'A1A0'
X4 = A2A1A0'
X5 = A2A1A0
X6 = A2A1'A0
X7 = A2A1'A0'
 
Physics news on Phys.org
If, for example, 2 would be A2'A1A0 if it was active high, you want the complement for active low. Use DeMorgan's law. The complement of a product is not the product of the complements.
 
LCKurtz said:
If, for example, 2 would be A2'A1A0 if it was active high, you want the complement for active low. Use DeMorgan's law. The complement of a product is not the product of the complements.

Hmm ok so for X0 I had A2' . A1' . A0' when I should have all that [A2' . A1' . A0']'

So that becomes A2 + A1 + A0 ?
 
bd411 said:
Hmm ok so for X0 I had A2' . A1' . A0' when I should have all that [A2' . A1' . A0']'

So that becomes A2 + A1 + A0 ?

You tell me. Is that low only when they are all 0?
 
Yes, that function is low only when they are all 0.
 
Back
Top