----------------------------------------------------------------------------------------------sequence detector 1/4 시퀀스검출기 【1. 실험 목적】 1) 연속해서 입력되는 data stream에서 특정패턴으로 입력되는 데이터를 검출하는 방법 을 알아본다. 【2. 관련 이론】 시퀀스 검출기는 동전이 연속적으로 일정 수만큼 들어오면 물건을 출력해주는 자판기나, 통신회로에서 연속적으로 입력되는 데이터 흐름 속에서 특정 패턴의 데이터가 발견되면 출 력을 주는 회로 등에 사용된다. 예를 들어 입력이 [0 0 1 0 1 1 1 0 1 0 0 0] 등과 같이 계속되는 흐름 속에 [1 1 1] 과 같이 [1]의 값이 연속해서 3번 들어오는 경우만 출력이 1이 되도록 하는 회로를 만든다 면, 출력은 [ 0 0 0 0 0 0 1 0 0 0 0 0] 와 같을 것이다. x Sequence Detector z x=[0 0 1 0 1 1 1 0 1 0 0 0] z=[0 0 0 0 0 0 1 0 0 0 0 0] 위의 동작을 만족하는 회로를 만들기 위해서는 우선 1) state diagram을 그려 상태 흐름도를 작성하여야 한다. 그림 2 상태도 ----------------------------------------------------------------------------------------------sequence detector 2/4 2) 상태도에서 state table을 작성해 낸다. Input 0 A,0 A,0 A,0 A,0 A[0.0] B[0.1] C[1,0] D[1,1] 1 B,0 C,0 D,1 A,0 3) state table에서 플립플롭의 상태도를 작성한다.(Behavior Table) X Q1 Q0 J1 K1 J0 K0 Q1' Q0' Z 0 0 0 0 d 0 d 0 0 0 0 0 1 0 d d 1 0 0 0 0 1 0 d 1 0 d 0 0 0 0 1 1 d 1 d 1 0 0 0 1 0 0 0 d 1 d 0 1 0 1 0 1 1 d d 1 1 0 0 1 1 0 d 0 1 d 1 1 1 1 1 1 d 1 d 1 0 0 0 4) 간소화 위의 테이블을 만족하는 입출력관계에서 간소화 방법으로 적용하여 논리소자의 개수를 줄 인다. J1= XQ0 K1= X' +Q0 Q1Q0 00 01 11 10 0 0 0 d d 1 0 1 d d X J0= X Q1Q0 00 01 11 10 0 d d 1 1 1 d d 1 0 00 01 11 10 X K0= 1 Q1Q0 Q1Q0 00 01 11 10 0 0 d d 0 0 d 1 1 d 1 1 d d 1 1 d 1 1 d X Z= XQ1Q0‘ X ----------------------------------------------------------------------------------------------sequence detector 3/4 Q1Q0 00 01 11 10 0 0 0 0 0 1 0 0 0 1 X J1=XQ0 K1=X' J0=X K0=1 Z=XQ1Q0‘ 5) 간소화 결과로 회로도를 그린다. 【3. 실험 준비물】 • 7404(NOT) • 7432(OR) • 7408(AND) • 7402(NOR) • 7400(NAND) 【4. 실험 방법】 위의 내용을 참고로 하여 패턴이[101] 입력될 때 출력이 나오는 회로를 설계하라. 입력 x=[0 0 1 1 0 0 1 0 1 0 0 ] 이다. extra) [1011] 패턴에 대한 검출기를 설계하라. ----------------------------------------------------------------------------------------------sequence detector 4/4 [ 시뮬레이션 결과 ] 연속으로 [ 1 1 1 ] 패턴이 입력될 때 출력 z=1 STIM 입력 [ 0 0 1 0 1 1 1 0 1 0 0 0 ]