The inputs are A[2:0], B[2:0] and C[2:0] respectively. The outputs are E,RA,RB,RC. If at least at one of the inputs (A,B,C) none of the bits are equal to 1 or if at least at one input the bits that are VALUED at 1 are more than 1, then E=1 and RA=RB=RC=0. If at each input(A,B,C) ONLY one bit is equal to 1, then E = 0 and; if the bits that are equal to one are at different positions(0,1 or 2) at every input, then RA=RB=RC=1. if the bit of one input that is valued at 1 is at a different position than the other bits of the other inputs that are valued at 1, then only the output of the different one is set to 1,while the others are set to 0 in any other case, RA=RB=RC=0.
i am 1st semester ECE student, i have tried for hours to split this problem into sub problems but i cant, how can this be solved??
Separate the conditions from the outputs
In the following, I am using cardinality expressions:
[lb, ub](X, Y, Z)is true, if the number of trueX,Y,Zis between lower boundlband upper boundub.Examples:
[1,1](true, false, false)is true while[2,3](false, true, false)is false.Condition X1: At least at one of the inputs (A,B,C) none of the bits are equal to 1.
Condition X2: At least at one input the bits that are VALUED at 1 are more than 1.
Condition X3: At each input (A,B,C) ONLY one bit is equal to 1,
Condition X4: Condition X3 and the bits that are equal to one are at different positions (0,1 or 2) at every input,
Condition X5A: The bit of input A that is valued at 1 is at a different position than the other bits of the other inputs that are valued at 1.
Condition X5B: The bit of input B that is valued at 1 is at a different position than the other bits of the other inputs that are valued at 1.
Condition X5C: The bit of input C that is valued at 1 is at a different position than the other bits of the other inputs that are valued at 1.
Cardinality implementations:
Outputs follow from conditions:
What happens if
(X1 or X2)is true andX3is true as well?What happens if
(X1 and X2)is true and(X4 or X5A)is true as well?