Difference of Latch & Flip/flop

Posted 2008. 10. 8. 22:54 by MINOK

What is Latch?
1.하나 이상의 Bit들을 저장하기 위한 디지털 논리회로이다.
2.Latch는 하나의 데이터 입력, 하나의 클록 입력 그리고 하나의 출력을 갖는다.
3.클록 입력이 활성화되면, 입력되고 있는 데이터가 입수되어 저장되고,
즉시 또는 클록 입력이 비활성화될 때 출력 측으로 전달된다.
출력은 클록이 다시 활성화될 때까지 그 값을 유지한다.

특징
 1.비동기(클럭을 사용 안 함. static)
 2.회로가 비교적 간단하다.
 3.출력은 입력 신호가 바뀌는 순간에 결정되어 나타난다.
 4.데이터를 잠시 저장했다 그대로 전달할 때 사용한다.
 5.D Latch, S-R Latch 등이 있다.
What is Flip-Flop?
1.Flip-Flop은 두 가지 상태 사이를 번갈아 동작하는 전자회로를 말한다. Flip-Flop 에 전류가 부가되면, 현재의 반대 상태 (0 에서 1 로, 또는 1 에서 0 으로)로 변하며, 그 상태를 계속 유지하므로 한 Bit의 정보를 저장할 수 있는 능력을 가지고 있다.
2.여러 개의 Transistor로 만들어지며, SRAM이나 Hardware Register 등을 구성하는데 사용된다.
3.종류 :  RS, D, T, JK Flip-Flop등이 있다.
        특징
1.클럭을 사용한다.
2.두 개의 출력(Q, Q`)을 갖는다.
3.1또는 2개의 입력을 갖는다.
4.출력은 클럭이 천이(상승 또는 하강)될 때 결정되어 나타난다.
5.초기화를 위한 비동기 입력도 있을 수 있다(clear, preset)
6.데이터 기억, 데이터 토글, 데이터 기록, 삭제에 사용한다.
Difference of latch & flip-flop.
특징
◎Latch : 회로는 간단하나 동기시키는 동작시간이 클럭이 1혹은 0으로
             유지되는 비교적 긴 시간이므로 고속 동작에 유리하다.
◎Flip-Flop : 회로가 Latch보다 복잡하고 동기시키는 동작이 클럭 edge 부근의 
             짧은 시간에 이루어지므로 동기시키기가 쉽고 고속 동작에는 불리하다.
         입력>>출력
◎Latch는 클럭 신호가 1(Active High) 혹은 0(Active Low)상태의 모든 신호를
 다 데이터 D로 인정한다.
          ◎Flip-Flop은 클럭 신호가 0 >> 1의 순간 (Riging Edge) 혹은
  1 >> 0의 순간(Falling Edge)에만 입력 신호 D를 인정하고
  출력이 바뀐다. 그 외에 입력 신호 D자체의 변화는 무시한
  다.



위의 그림에서 쉽게 차이점을 확인할수있다.

Latch : 처음 CK신호가 1인 동안 입력신호 D의 변화를 모두 Q에서 출력함을 알 수 있다. 이후 CK신호가 0이 되고 그 동안에는 입력 D와는 무고나하게 Q는 현상태를 유지한다. 다시 CK신호가 1이되면 입력 신호D의 변화를 Q에 반영한다.
 이처럼 Latch는 클락신호가 Active High일 때만 입력신호가 출력신호로 전달된다.  

Flip-Flop : CK신호가 변화하는 순간에만 입력신호가 출력신호로 전달된다. 위의 회로도는 Rising Edge Trigger로써 0에서 1로 변화할 때만 입력이 전달된다. 최초 0에서 1로 변화할떄 입력신호 D의 값인 1이 Q로 전달되어 저장된다. 이후 CK신호가 0에서 1로변화하는 순간이 올때까지 그 상태를 유지하고있는다. CK이 0에서 1로 변화하는 부분오면 그 순간 입력신호 D의 값인 0을 Q로 전달하여 저장하고 다시 그상태를 유지하게 된다. 
 이처럼 Flip-Flop은 클락신호의 변화에만 신호가 전달된다.