//Example 8.41 clc disp("Mod-12 synchronous counter using D flip-flop :") disp("Let Number of flip-flop required = n") disp(" 2^n >= 12") disp(" n = 4") disp("Excitation table") disp("Present State Next State ") disp("QD QC QB QA Q_D+1 Q_C+1 Q_B+1 Q_A+1") disp("0 0 0 0 0 0 0 1") disp("0 0 0 1 0 0 1 0") disp("0 0 1 0 0 0 1 1") disp("0 0 1 1 0 1 0 0") disp("0 1 0 0 0 1 0 1") disp("0 1 0 1 0 1 1 0") disp("0 1 1 0 0 1 1 1") disp("0 1 1 1 1 0 0 0") disp("1 0 0 0 1 0 0 1") disp("1 0 0 1 1 0 1 0") disp("1 0 1 0 1 0 1 1") disp("1 0 1 1 0 0 0 0") disp("") disp("K-map Simplification") disp(" For D_A") disp(" QB''QA'' QB''QA QBQA QBQA''") disp("QD''QC'' 1 0 0 1") disp("QD''QC 1 0 0 1") disp("QDQC X X X X") disp("QDQC'' 1 0 0 1") disp("D_A = QA''") disp("") disp(" For D_B") disp(" QB''QA'' QB''QA QBQA QBQA''") disp("QD''QC'' 0 1 0 1") disp("QD''QC 0 1 0 1") disp("QDQC X X X X") disp("QDQC'' 0 1 0 1") disp("D_B = QB'' QaA + QA'' QB") disp(" = QA XOR QB") disp("") disp(" For D_C") disp(" QB''QA'' QB''QA QBQA QBQA''") disp("QD''QC'' 0 0 1 0") disp("QD''QC 1 1 0 1") disp("QDQC X X X X") disp("QDQC'' 0 0 0 0") disp("D_C = QC QB'' + QC QA'' + QD'' QC'' QB QA") disp("") disp(" For D_D") disp(" QB''QA'' QB''QA QBQA QBQA''") disp("QD''QC'' 0 0 0 0") disp("QD''QC 0 0 1 0") disp("QDQC X X X X") disp("QDQC'' 1 1 0 1") disp("D_D = QD QB'' + QC QB QA + QD QA''")