오래 못 할 짓 하지 않기

논리 설계 18(Flip-Flop) 본문

2학년 1학기/논리 설계 ( Logic design )

논리 설계 18(Flip-Flop)

쫑알bot 2023. 5. 2. 14:46
728x90

D latch 와 D F/F ( positve and negative ) 를 비교해보자

 

 Qa: latch

Latch와 F/F의 가장 큰 차이점은 동작 시점 이다 . 

이 Latch는 CLK이 1인 상태인 동안에 D가 변하는대로 함께 간다.

즉, CLK = 1일 때   →   D와 같이 움직임

      CLK = 0일 때  → 0이 시작될 때의 D의 상태대로 1이 될 때까지 그 상태로 굳음

 

Qb: F/F (positive edge)

이 F/F의 동작 시점은 CLK이 0에서 1로 '올라가는 순간'에 동작한다.

그 순간 D의 입력에 따라서 Qb가 따라간다.

그리고 CLK이 0에서 1로 '올라가는 순간' 이 다시 올 때까지 그 값을 유지한다. 

 

Qc: F/F (negative edge)

이 F/F의 동작 시점은 CLK이 1에서 0으로 '내려가는 순간'에 동작한다.

그 순간 D의 입력에 따라서 Qc가 따라간다.

그리고 CLK이 1에서 0으로 '내려가는 순간' 이 다시 올 때까지 그 값을 유지한다. 

 


Setup time : ' 변할 준비 '
CLK값 이 변하기에 앞서, D가 안정적으로 있어야하는 필요한 최소한의 시간

Hold time :  '적응기'
CLK값 이 변한 뒤에 D가 해당 상태로 유지해야하는 최소한의 시간.


D F/F

CLK 들어가는 곳에 버블이 있으면 Negative , falling edge임

D (입력)가 들어온 것에 맞춰서  q*=(q(t+1)) 를 출력한다.

그냥 q라고 표시하는 거 같긴함.

--> 그냥 D 따라간다고 생각하면 됨 

 

q = 현재 상태 / q* = 이제 어떻게 될 거다. 라고 생각하면 됨

 

Negative edge triggered

 

그래프로 그려보자

Negative edge trigger라고 했으니, q는 CLK이 falling 인 순간 D의 값을 따라간다. 

각각 CLK이 변할 때의 값을 a와 b의 값으로 보자. 결과는 같다.

 

 

Positive edge triggered

 

Positive edge trigger라고 했으니, q는 CLK이 rising 인 순간 D의 값을 따라간다. 

rising 으로 값을 받고는 그 다음 rising까지는 그 상태로 유지함.

 

Two F/F

둘 다 CLK은 버블이 있으므로 Falling 일 때 작동.

q의 결과가 그 다음 F/F의 입력이 되므로 q먼저 구하고, r을 구한다.

 

※Unknown은 작동을 시작하고, 한 번이라도 입력이 정의되지 않았을 때, q와 같은 경우에는 CLK이 0>1인 순간에 입력에 대한 상태를 가지고 유지하는데, 아직 한 번이라도 그 상태를 갖은 적 없는 것을 뜻함.
아무 것 아닌 상태를 뜻한다고 생각해도 될 듯

밑에 보면 첫번째 edge에 q가 unknown  상태인데 그게 인풋이 되니까 다음 r은 다음 edge까지 unknown으로 감

 


F/F  with Clear and Preset Inputs

 

- Pre에 1이 들어가면 입력 상관없이 출력이 1

- CLR에 1이 들어가면 입력 상관없이 출력이 0

## CLK도 신경 안 쓰고 출력을 바꿔버림

 


  S R  F/F 

 

 

S(set)

R(reset)입력이 들어가서 작동하는 F/F

 

 

 


T Flip-Flop

- Toggle = ~p을 출력 
   p를 invert함

 

 

 

CLR' 가 켜지면, CLK 이나 다른 거 상관 안 하고 바로 0으로 초기화 함

그 뒤에는 CLK마다 T의 값에 따라 q의 값이 정해짐

 

 

설명: 
circuit으로 봤을 때,

1. 세 개 다 인풋을 공통으로 1로 가져감

2. 2번째 회로부터는 CLK 역할은 앞의 출력의 inversion이 함. 

 


JK F/F

S = 1 , R = 1 이 Invalid가 아니고

가능한 SR F/F라고 생각하면 됨
둘 다 1 1 일 땐 T F/F처럼 작동!

 

                                                                           JK F/F = SR F/F + T F/F 

 

 

 

 

 

 

 

 

한동대학교 고윤민교수님 - 논리 설계 PPT