跳到主要内容

東京大学 情報理工学系研究科 電子情報学専攻 2026年1月実施 専門 第2問

Author

瑞穂

Description

Recalled statement. A synchronous circuit has a one-bit input AA and a one-bit output YY. The output is 11 exactly when the previous sampled input was 00 and the current input is 11. Before the first input has been sampled, the output is 00 for either value of AA.

(1) Draw the state transition diagram.

(2) Draw the state transition table.

(3) Express the next-state bits siNs_i^N and output YY using the current state bits sis_i and input AA. Use Karnaugh maps to simplify the expressions.

(4) Draw an implementation using AND, OR, NOT gates and D flip-flops.

题目描述

同步电路有一位输入 AA 和一位输出 YY。前一次采样为 00、当前输入为 11 时输出 11,其余情况输出 00。尚未采样任何输入时,无论 AA 为何,输出均为 00。求状态图、状态表、由卡诺图化简的次态及输出表达式,并用指定逻辑门和 D 触发器实现。

Kai

The following (1)–(4) use a combinational Mealy output. A clocked Moore-output implementation is given afterward.

(1)

Use a Mealy machine. State S0S_0 means that the previous input was 00; state S1S_1 means that it was 11. The initial state can also be S1S_1, because its output is 00 for both possible first inputs. Edge labels are input/output.

(2)

Encode S0S_0 by s=0s=0 and S1S_1 by s=1s=1.

ssAAsNs^NYY
0000
0111
1000
1110

(3)

The Karnaugh maps are

sNs^N: ss / AA01
001
101
YY: ss / AA01
001
100

Grouping the two 11 cells of the first map gives

sN=A,Y=sA.\boxed{s^N=A,\qquad Y=\overline s A}.

(4)

Connect AA to the D input, and combine AA with the complemented Q output in an AND gate. Initialize Q to 11 before sampling starts. The output is evaluated from the current input and the state holding the previous sample; the active clock edge stores the current sample.

Rising-edge detector using a D flip-flop and an AND gate

Clocked state-output interpretation

If YY must remain at the detected value after the sampling edge, use a three-state Moore machine. Let PP mean “last input 00, output 00”, RR mean “last input 11, output 11”, and NN mean “last input 11, output 00”. Start in NN, whose initial output is 00.

Encode P=00P=00, R=01R=01, N=10N=10 in bits (s1,s0)(s_1,s_0). The state transition table is:

StateYYNext state for A=0A=0Next state for A=1A=1
P=00P=0000001
R=01R=0110010
N=10N=1000010

The Karnaugh maps, with unused state 1111 as a don't-care, are:

s1Ns_1^N: s1s0s_1s_0 / AA01
0000
0101
11dddd
1001
s0Ns_0^N: s1s0s_1s_0 / AA01
0001
0100
11dddd
1000
YY: s1s_1 / s0s_001
001
10dd

Thus, with the shared term B=s1s0B=s_1\lor s_0,

s1N=AB,s0N=AB,Y=s0.\boxed{s_1^N=AB,\qquad s_0^N=A\overline B,\qquad Y=s_0}.

The two D flip-flops use the same clock and start at (1,0)(1,0). The labelled s1,s0s_1,s_0 nets connect each register output to the OR inputs.

Three-state Moore rising-edge detector