Sequential logic circuit 순차논리회로 Sequential logic circuit 멀티미디어공학과 김 해 영 hykim@tu.ac.kr
순차 논리 회로(Sequential logic circuit) - 조합 논리 회로 + 메모리 요소(플립플롭) 출력 : 입력변수의 값과 현재상태[Q(t)]의 값에 의해 결정 Combinational Circuit = Gate Sequential Circuit = Gate + F/F Fig. 2-36 순차회로 블록도 동기식(synchronous) : 입력신호 타이밍이 클럭 발생기에서 규칙적으로 발생 비동기식(asynchronous) : 입력신호들이 변화하는 순서에 좌우됨 메모리 요소 : 플립플롭(f/f) 한 비트의 이진 정보를 저장할 수 있는 이진 셀(cell) 정상 출력 Q(t)과 보수 출력 Q’(t) 50
플립 플롭(Flip flop) 기본 플립 플롭 회로 2개의 NAND 게이트 혹은 NOR 게이트로 구성 SR 래치(latch) Fig. 2-38 50
플립 플롭(Flip flop) SR(Set/Reset) 플립플롭 S 와 R 이 동시에 1 이 될 수 없음 Fig. 2-39 논리도 기호 특성 방정식 S 와 R 이 동시에 1 이 될 수 없음 특성표
플립 플롭(Flip flop) JK(Jack/King) 플립플롭 Fig. 2-40 Fig. 2-41 D(Data) 플립플롭 RS 플립플롭의 변형으로 R=S=1인 경우, RS f/f 은 불능이 되므로 S와R이 동시에 1이 되지 않도록 회로적으로 보장한 것 Fig. 2-40 Fig. 2-41 JK(Jack/King) 플립플롭
플립 플롭(Flip flop) D(Data) 플립플롭 Fig. 2-40 RS 플립플롭의 변형으로 R=S=1인 경우, RS f/f 은 불능이 되므로 S와R이 동시에 1이 되지 않도록 회로적으로 보장한 것 Fig. 2-40
제어 입력을 갖는 D 래치 D Q CP Q Q(t) D Q(t+1) 1 D Q 1 Q(t+1) = D 특성표 특성 방정식
J/K 플립 플롭(J/K Flip flop) JK(Jack/King) 플립플롭 Fig. 2-41
J-K 플립플롭 K G3 Q CP G4 Q J Q(t+1) = JQ (t) + KQ(t) Q(t) J K Q(t+1) 1 K 1 K QJ 1 00 01 11 10 Q(t+1) = JQ (t) + KQ(t) 특성 방정식
T 플립 플롭(T-Flip flop) T(Toggle,반전) 플립플롭 : JK f/f 을 한개의 입력으로 한 것 Fig. 2-42 논리도 특성표 기호 특성 방정식
T 플립플롭 T G3 Q CP G4 Q Q(t) T Q(t+1) 1 T Q 1 Q(t+1) = TQ (t) + TQ(t) 1 T Q 1 Q(t+1) = TQ (t) + TQ(t) 특성표 특성 방정식
주-종(Master-Slave) 플립 플롭 주-종 플립플롭 CP = 0 : 주(master) 플립플롭 비활성화 CP = 1 : 종(slave) 플립플롭 비활성화 Fig. 2-43 주-종 플립플롭에서의 시차 관계 주-종 플립플롭 S=1, R=0 인 경우, CP가 0에서 1로 변하는 동안 주f/f 는 세트되고 종 f/f 는 CP=0 이므로 아무런 영향이 없음 CP=0 가 1 에서 0 으로 바뀌면 주f/f의 정보가 종f/f 에 전송되며 외부 출력이 Q=1 이 됨 주종 f/f 의 특성은 CP 가 0에서 1로 바뀌는 순간에 외부 출력 Q가 변화함 55
특성표와 여기표 특성표 여기표 현재상태의 입력 값에 의해 다음상태의 변화를 예측할 때 사용 플립플롭의 동작 정의와 분석에 유용 현재상태와 다음상태를 알 때, 플립 플롭에 어떤 입력을 넣어야 하는가 를 표로 나타낸 것 순차회로 설계 시 사용
플립 플롭의 여기표 여기표(Excitation Table) SR F/F Q(t) Q(t+1) S R 0 0 0 X 0 1 p109~ p112 의 특성표를 보고 여기표(Excitation Table) 현재 상태와 다음 상태를 알 때 플립플롭의 입력 조건 정의한 표 현재 상태(Present State) 와 다음 상태(Next State)로 표현 SR F/F Q(t) Q(t+1) S R 0 0 0 X 0 1 1 0 1 0 0 1 1 1 X 0 뒤에 설명
R-S 플립플롭의 여기표 R-S 플립플롭의 여기표 Q(t) Q(t+1) S R X 1 특성표 여기표 Q(t) S R 1 부정 Q(t) Q(t+1) S R X 1
J-K 플립플롭의 여기표 J-K 플립플롭의 여기표 Q(t) Q(t+1) J K X 1 특성표 여기표 Q(t) J K 1 Q(t) Q(t+1) J K X 1
D 플립플롭의 여기표 D 플립플롭의 여기표 특성표 여기표 Q(t) D Q(t+1) 1 Q(t) Q(t+1) D 1
T 플립플롭의 여기표 T 플립플롭의 여기표 특성표 여기표 Q(t) T Q(t+1) 1 Q(t) Q(t+1) T 1
플립플롭의 여기표 종합 Q(t) Q(t+1) S R X 1 J K X 1 T 1 D 1 1
플립 플롭의 트리거링(triggering) 레벨 트리거 플립플롭(Level -Triggered F/F) 상태 변화 : Clock Pulse가 1인 상태를 유지하는 동안의 입력신호 변화가 출력에 반영 예제 Fig. 2-45 (a) 출력 파형(초기상태 = low) (b) 블록도
플립 플롭의 트리거링(triggering) 에지 트리거 플립플롭(Level -Triggered F/F) 상태 변화 : Clock Pulse의 에지(상승에지와 하강에지) 동안에만 입력신호 변화가 출력에 반영 Fig. 2-46 상승 에지 하강 에지 (a) 클록 펄스의 에지 (b) 출력 파형(초기상태 = low) (c) 상승 에지 플립플롭 블록도 (d) 하강 에지 플립플롭 블록도
순차 논리 회로의 해석 순차 논리 회로의 해석 Clocked synchronous sequential circuit 논리도로 부터 상태표 혹은 상태도를 도출 Clocked synchronous sequential circuit 플립플롭 입력식( ) Boolean expression for F/F input 입력식 DA = Ax + B’x, DB = A’x 출력식 y = Ax’ + B’x’ Combinational Circuit Flip-Flops Input Output Clock 1 Fig. 2-47 Clock x DA A A’ 1 DB B B’ Clock y 60
순차 논리 회로의 해석 상태표(State Table) 상태도(State Diagram) Fig.2-47 의 회로에 입력값을 넣어서 작성 상태표(State Table) Present state, input, next state, output 표현 상태도(State Diagram) 상태도의 그래픽 표현(Graphical representation ) 원(상태: state), 직선(상태의 전이), I / O(input/output) Input Equ. = Next State
순차 논리 회로의 설계 순차 논리 회로 설계 과정 ① 설계 사양으로부터 상태표와 상태도를 구한다. ② 사용할 플립플롭의 종류를 선택하고 플립플롭의 수를 결정한다. ③ 플립플롭의 입력과 출력 각각에 문자 기호를 붙인다. ④ 상태표를 확장하여 여기표와 출력표를 구한다. ⑤ 맵을 이용하여 간소화된 플립플롭의 입력함수와 조합 회로 부분의 출력함수를 구한다. ⑥ 논리도를 그린다.
순차 논리 회로의 설계 설계 예 : 이진 카운터 설계 2비트 이진 카운터를 설계, JK 플립플롭 사용 상태의 변화는 외부입력 x=1일 때 이진 상태 00,01,10,11,00,…를 반복 1. 상태도 작성 JK 여기표 Next State = Output 2. 상태표/여기표 작성
순차 논리 회로의 설계 JA = Bx KA = Bx JB = x KB = x 3. 맵을 이용한 간소화 4. 논리 회로 작성 2비트 이진 카운터 논리도 KB = x
카운터의 설계 동기식 카운터: 설계가 어렵지만 정확 비동기식 카운터(리플 카운터) : 설계가 간단, 전파 지연시간 발생 비동기식 예제 : 0(0000)~9(1001)까지 카운터, 10(1010)에서 클리어0(0000) (a) 타이밍 차트 (b) 10진 카운터 회로 65
카운터의 설계 동기식 예제(3비트 이진 카운터) 하나의 공통 클럭이 모든 플립플롭의 클럭에 연결되며 이 공통 클럭에 의해 모든 플립플롭이 동시에 동작하는 카운터 n비트의 2진 카운터는 n개의 플립플롭으로 구성되며 0에서 2n-1까지 셀 수가 있음 1. 상태도 작성 2. 상태표와 여기표 작성 상태도 (b) 상태도와 여기표
카운터의 설계 동기식 예제(3비트 이진 카운터) 3. 맵을 이용한 간소화 TA = BC TB = C TC = 1 4. 논리 회로 작성
레지스터 레지스터 컴퓨터에서 사용하는 데이터를 기억하는 소규모 기억장치 2진 정보를 저장하는 기억소자 여러 개의 플립플롭으로 구성되고 CPU내의 임시 기억장치로 사용 n비트 레지스터 : n개의 플립플롭으로 구성 기능 : 저장, 시프트(Shift), 회전 등 4비트 레지스터
시프트 레지스터 시프트 레지스터 입출력 방식 오른쪽, 왼쪽으로 이진 정보를 시프트 n비트 시프트 레지스터 : n개의 플립플롭 + 제어 게이트 입출력 방식 Clock Pulse Serial Input Bit State of Register (parallel outputs) Output Bit Initial 1 2 3 4 x 오른쪽 시프트 레지스터의 블록도 4비트 오른쪽 시프트 레지스터의 직렬입력과 출력 직렬 입력 - 직렬 출력 직렬 입력 - 병렬 출력 병렬 입력 - 직렬 출력 병렬 입력 - 병렬 출력