플립 플롭이란?


25

플립 플롭과 래치에 대해 여러 가지 다른 정의가있는 것 같습니다. 그 중 일부는 모순됩니다.

내가 가르치는 과정에 대한 컴퓨터 과학 교과서는 아마도 가장 혼란 스러울 것입니다.

나는 적어도 논리 게이트 및 타이밍 다이어그램 측면에서 래치 (SR, 게이트 SR, 게이트 D)의 작동과 레벨 트리거 및 에지 트리거 장치의 차이점에 익숙합니다. 그러나 여전히 플립 플롭과 래치에 대한 간결한 정의를 찾고 있습니다.

이것이 내가 지금까지 믿는 것입니다.

"플립 플롭은 1 비트를 저장할 수있는 에지 트리거 이중 안정 장치입니다."

"래치는 1 비트를 저장할 수있는 레벨 트리거 이중 안정 장치입니다."

나는 이것에 대해이 웹 사이트의 이전 게시물을 보았고, 깨달음에 따라 여전히 결정적인 것을 찾고 있습니다.

확인하고자하는 나의 현재 이해는 아래 다이어그램에 있습니다.

나란히 이해하는 것은 레벨 트리거 게이트 D 래치의 두 가지 구현입니다.

아래에는 포지티브 에지 디텍터가 있습니다. NOT 게이트가 로우에서 하이로의 변경 입력에 응답하지 않은 짧은 순간, 즉 상승 에지 (빨간색은 1 파란색은 0)입니다.

마지막 다이어그램에서 가장자리 감지기는 날짜가 지정된 D 래치에 장착되었으며 이것이 플립 플롭입니다.

여기에 이미지 설명을 입력하십시오

마지막 다이어그램은 실제로 플립 플롭입니까, 아니면 여전히 걸쇠입니까?

그리고 왜 우리는이 장치가 훨씬 더 간단한 마스터 슬레이브 버전을 필요로합니까?


1
@DanielTork 왜 대답하지 않습니까?
Icy

10
호주와 뉴질랜드에서는 해변에서 자주 착용하거나 날씨가 좋을 때 신발을 신어야합니다. ;)
KyranF

3
미국에서도 마찬가지입니다. 그러나 우리는 그것들을 가죽 끈이라고 불렀습니다. 그러나 그것은 지금 다른 것을 말합니다
.

1
이제 플립 플롭으로 알려진 샌들로 그려진 회로도를보고 싶습니다.
keshlam

1
@immibis 여기에서 썩은 키위를 꺼내십시오!
KyranF

답변:


11

나는 오늘이 정의에 대해 많이 생각하고있다.

다른 사람들이 지적했듯이 정확한 의미는 다양합니다. 게다가,이 사이트에서도 더 많은 사람들이이 잘못을 저지르는 것을 보게 될 것입니다. 나는 위키피디아가 말하는 것을 상관하지 않습니다!

그러나 일반적으로 :

  • 플립 플롭은 클럭 사이클 당 최대 한 번 출력 상태를 변경합니다.
  • 래치는 투명도 창 동안 데이터가 전환되는 횟수만큼 상태를 변경합니다.

또한

  • 플립 플롭은 매우 안전합니다. 거의 바보. 이러한 이유로 합성 툴은 일반적으로 플립 플롭을 사용합니다. 그러나 래치보다 느리며 더 많은 전력을 사용합니다.
  • 래치는 제대로 사용하기가 어렵습니다. 그러나 플립 플롭보다 빠르며 작습니다. 따라서 커스텀 회로 설계자들은 종종 나쁜 타이밍 아크로부터 여분의 피코 초를 짜기 위해 디지털 블록 (양쪽의 반대쪽 끝의 래치)을 가로 질러 "플립 플롭을 퍼트립니다". 게시물 하단에 표시됩니다.

플립 플롭은 가장 일반적으로 마스터-슬레이브 토폴로지를 특징으로합니다. 이것은 두 개의 결합 된 (논리가있을 수 있음) 반대 위상 래치를 연속적으로 (때로는 L1 / L2라고하는 산업에서) 있습니다.

이것은 플립 플롭이 본질적으로 두 개의 메모리 요소로 구성됨을 의미합니다. 하나는 낮은주기 동안 유지하고 다른 하나는 높은주기 동안 유지합니다.

래치는 단일 메모리 요소 (SR 래치, D 래치, JK 래치) 일뿐입니다. 메모리 요소에 데이터 흐름을 게이트로 전달하는 클록을 도입한다고해서 플립 플롭이되지는 않는다고 생각합니다. 특정 시간 동안 투명하게 만듭니다.

아래는 두 개의 SR 래치 (반대 위상 클럭에 주목)에서 생성 된 실제 플립 플롭 입니다.

사실 d ff

그리고 두 개의 D- 래치 (전송 게이트 스타일)의 또 다른 진정한 플립 플롭 (VLSI에서 가장 일반적인 스타일)입니다. 다시 반대 위상 클럭을 확인하십시오 .

진정한 플립 플롭 tg 스타일

시계를 빠르게 래치에 펄스하면 플립 플롭 동작 (펄스 래치)과 유사하게 시작됩니다. 이는 D-> Out 및 Clk-> Out의 지연 시간이 짧고 지속 시간 동안 투명성에 의해 허용되는 설정 시간 (보유 시간도 증가해야하며 지불해야하는 가격이 적음)이 적기 때문에 고속 데이터 경로 설계에서 일반적입니다. 맥박. 이것이 플립 플롭인가요? 실제로는 아니지만 외관은 하나처럼 작동합니다!

그러나 이것은 작동을 보장하기가 훨씬 어렵습니다. 모든 프로세스 코너 (빠른 nmos, 느린 pmos, 높은 와이어 캡, 낮은 와이어 r; 하나의 예)와 에지 검출기의 펄스가 실제로 열릴 수있을만큼 넓게 유지되는 모든 전압 (낮은 전압이 문제를 일으킴)을 점검해야합니다. 걸쇠를 넣고 데이터를 넣습니다.

특정 질문에 대해 플립 플롭 대신 펄스 래치로 간주되는 이유는 실제로 단일 레벨의 민감한 비트 저장 요소 만 있기 때문입니다. 펄스가 좁더라도 플립 플롭을 생성하는 잠금 및 댐 시스템을 형성하지 않습니다.

다음은 문의와 매우 유사한 펄스 래치를 설명하는 기사입니다. 적절한 인용문 : "펄스 클록 파형이 래치를 트리거하는 경우, 펄스 클록 의 상승 및 하강 에지가 타이밍 측면에서 거의 동일하기 때문에 래치는 에지 트리거 플립 플롭 과 유사하게 클록 동기화된다 ."

편집 약간의 명확성을 위해 래치 기반 디자인의 그래픽을 포함 시켰습니다. 논리 사이에 L1 래치와 L2 래치가 있습니다. 래치가 플립 플롭보다 지연이 적기 때문에 지연을 줄일 수있는 기술입니다. 플립 플롭은 "확산되어"로직이 중간에 놓입니다. 이제 몇 게이트 지연을 저장합니다 (양쪽 플립 플롭과 비교)!

래치 기반 설계


"마스터-슬레이브 토폴로지의 특징"-행동 특성을 정의하는 것이 아니라 구현 세부 사항과 비슷합니다. 행동 적으로 플립 플롭 (정의로 정의)은 에지 트리거되는 단일 비트 메모리입니다. 실제로 에지 트리거링을 근사화하는 데 필요한 구현 마법에는 두 번째 저장 요소가 필요합니다!
Oliver Charlesworth

1
@OliverCharlesworth : 글쎄, 그것은 구현 세부 사항입니다. 물리적, 행동 적, 구조적 및 토폴로지 적 세부 사항뿐만 아니라. 플립 플롭은 래치처럼 보일 수 없습니다. 당신은 그것을 멀리 얻을 수 있지만 최대한 활용하려면 차이를 알아야합니다. 플립 플롭을 분리하면 반대 위상의 두 개의 분리 래치가 있습니다. 당신은 중간에 논리를 채울 수 있습니다. 양쪽 끝에 플립 플롭을 두는 것보다 빠릅니다. 또한 고속 설계에 매우 중요한 사이클 경계를 통해 "시간 차용"이 가능합니다.
jbord39

다음은 도움이 될 수있는 DFF의 유용한 사진입니다. 마지막 사진을 참조하십시오. 위에 게시 된 DFF는 클럭의 반대 위상에서의 래칭 (즉, 상승 에지의 마스터 래치, 하강의 슬레이브 래치)으로 인해 혼동됩니다. electronics.stackexchange.com/a/84247/42957
mrbean

여기에서 진정한 단상 에지 트리거 플립 플롭 ( "TSPC"DFF)의 예를 볼 수 있습니다.
mrbean

여기에 좋은 파워 포인트가 있습니다 : bwrcs.eecs.berkeley.edu/Classes/icdesign/ee241_s07/Lectures/…
mrbean

1

많은 사람들이 시계 장치를 "플립 플롭"이라고하고 시계 장치가 아닌 장치를 래치라고합니다. 내가 그것을 배웠을 때, 그것은 "시계 플립 플롭"과 "플립 플롭"이었습니다. 에지 트리거 될 수 있습니다.

중요 할 때는 단어 설명이 아닌 부품 번호 데이터 시트 및 타이밍 다이어그램에 의존하는 모호성이 충분합니다.


그렇다면 GTO-SCR도 플립 플롭입니까?
Bradman175

1

내 질문에 답변 한 모든 사람에게 감사합니다. 예상대로 약간의 의견 차이가 있습니다. 불행히도 시맨틱은 시험에 대한 이해보다 더 중요합니다. A 레벨 컴퓨터 과학 학생의 시험지를 잘못 표시하여 시험 보드와 논쟁해야하는 경우 (그리고 과거에 그렇게 했음), 나는 강력한 입장에 서기를 원합니다. 공식 A 레벨 코스 교재의 두 페이지를 여러분과 공유 할 것이라고 생각했습니다.

첫 번째 다이어그램은 액티브 로우 SR 래치입니다. 이 책은 그것을 플립 플롭이라고 부릅니다.

이 책에서는 "두 개의 플립 플롭을 사용하여 클럭 제어 회로를 사용하여 출력을 제어하고 하나의 클럭 펄스만큼 지연시키는 D- 타입 플립 플롭이라는 회로를 만들 수 있습니다. D는 지연을 나타냅니다. " 이 텍스트는 마스터 / 슬레이브 구성을 나타내는 것 같습니다. 두 번째 다이어그램 (그림 14.2)은 D 형 플립 플롭으로 표시되어 있습니다. 실제로 활성 하이 게이트 D 래치입니다.

별로 도움이되지 않습니다!

"플립 플롭은 가장 일반적으로 마스터-슬레이브 토폴로지로 특징 지어집니다." jbord39가 제안했듯이 플립 플롭이라는 용어는 종종 에지 트리거 래치를 의미하는 경우가 있으며 때로는 모든 종류의 래치를 의미합니다. 나는 이것이 설득력있게 거기에 도착하지는 않지만, 책에 의해 나오는 곳이라고 생각합니다.

다시 한번 감사드립니다.

여기에 이미지 설명을 입력하십시오 여기에 이미지 설명을 입력하십시오


2
그래, 그 책은 엉뚱한 책이야 또한 D는 지연이 아닌 데이터를 의미합니다 ... lol 중요한 부분은 작동 방식을 이해하고 의미에 너무 익숙하지 않은 것입니다. 나는 내가 일했던 회사에서 나에게 설명 된 의미를 설명했다. 그것은 지역과 경험 수준에 따라 다를 수 있습니다 (특히 내가 작업하는 논리 게이트의 내부와 관련이 있음).
jbord39

jbord39에 동의해야합니다. 내 대답에서 보듯이 E 입력은 데이터가 출력에만 영향을 줄 수 있습니다. 그러나 잘못된 정보로 구성된 교과서가 있습니다. 실제로 성가시다.
Bradman175

1

플립 플롭 래치 와 다릅니다 . 그것들은 쌍 안정 회로이지만, 실제로는 서로 다른 두 가지입니다.

래치 데이터 입력 핀에 수신 대기 활성화는 보유 / 핀이 높은 입력 때만. 낮 으면 래치가 멈춰서 상태를 기억합니다. 이제 입력을 조작해도 반응하지 않습니다.

플립 플롭 만 변화하는 펄스 (레벨 시프트)에 반응하는 대신에, 클록 핀을 포함한다. 구형파를 생각해보십시오. 꺼짐과 켜짐 사이의 과도 시간; 꺼짐과 켜짐은 회로가 입력 신호에 반응하는 시간입니다. 그래야만 핀이 안정적이며 완전히 켜져있을 때가 아니라 변경이 가능합니다.

플립 플롭 반응 시간

녹색 선은 입력을 청취하는 기간을 나타내고 빨간색 선은 입력을 청취하지 않는 기간을 나타냅니다. 래치는 맨 위 빨간색 선으로 표시된 기간 동안에 만 입력을 허용합니다.

독립형 SR은 실제로 실현 가능한 회로가 아닙니다.

실수를 지적한 것에 대한 jbord39의 크레딧 radio-elctronics.com에서 가져온 이미지.


플립 플롭은 래치가 아니지만 두 개의 반대쪽 위상 래치를 연속해서 구축 할 수 있습니다.
jbord39

답변 @ jbord39를 편집 함
Daniel Tork

@Peter Mortensen에게 감사합니다.
Daniel Tork

0

귀하의 질문에 사용하는 용어는 아날로그 IC 디자인과 관련하여 들었던 것과 100 % 일치합니다. 래치에는 레벨 감지 활성화 신호가 있고 플립 플롭에는 '시계'라고하는 에지 감지 활성화 신호가 있습니다. 온라인 또는 일부 책에서 두 유형 모두에 플립 플롭이라는 용어를 사용하는 것처럼 보이는 몇 가지 장소를 발견했습니다. 두 안정 점 사이의 회로 상태 "플립 플롭"에 대해 생각하면 디자이너가 말할 때마다 내가 작동하는 회로, 래치는 레벨에 민감하고 플립 플롭 (또는 일반적으로 "플롭")은 에지에 민감합니다.

플립 플롭을 에지 검출기와 한 쌍의 마스터-슬레이브 래치가있는 래치로 설계할지에 대한 다른 질문에 대해. 에지 디텍터에 충분한 지연이 있다고 가정하면 어느 쪽이든 작동 할 수 있습니다. 래치에는 약간의 활성화 시간이 있습니다. 에지 디텍터 기술을 사용하여 고속 플립 플롭을 만드는 것이 더 어렵다고 생각하고 셋업 / 홀드 시간은 프로세스 / 전압 / 온도에 따라 더 달라질 수 있습니다.


왜 겹치지 않는 로직 임계 값을 가진 마스터 / 슬레이브 쌍으로 구현 된 플롭이 드문 지 궁금합니다 (따라서 VDD / 4 미만의 입력 전압이 마스터를 활성화하고 VDD / 2보다 높은 전압이 슬레이브를 가능하게합니다). 느리게 상승하거나 시끄러운 입력 신호를 공급하는 경우 상승 에지에서 VDD / 2 이상의 전압을 본 후 VDD / 4 미만의 전압을 볼 수없는 경우에만 동작이 안정적입니다.
supercat

@ supercat 당신은 히스테리시스에 대해 이야기하고 있습니까?
Cort Ammon-복원 Monica Monica

@CortAmmon : 아뇨. 독립적 인 Schmidt 트리거가있는 두 개의 플립 플롭이 캐스케이드 연결되어 있으면 첫 번째 플롭이 클럭 에지를 인식하고 두 번째 플롭이 클럭 에지를 인식하기 전에 입력을 출력으로 전파하면 잘못된 작동이 발생할 수 있습니다. 플립 플롭이 스플릿 입력 임계 값을 사용하는 경우 클럭이 하위 임계 값을 초과 할 때 두 번째 플롭이 입력을 캡처하지만 클럭이 상위 임계 값에 도달 할 때까지 첫 번째 플롭의 출력은 변경되지 않습니다.
supercat

0

(OP의 마지막 회로가 플립 플롭인지 래치인지 알고 싶다면 끝까지 건너 뛰십시오.)

기본적으로 Flip-Flop은 이러한 상태 변경을 가능하게하는 클럭 핀과 함께 2 개 상태의 래칭을 허용하는 논리 게이트 (또는 구성 요소)의 배열입니다.

이제 플립 플롭과 래치의 차이점이 있습니다. 플립 플롭은 동기식이지만 래치는 비동기식입니다.

  • 비동기 래치에는 업데이트 핀이 필요하지 않으며, 일반적으로 CLK플립 플롭에서 (클럭의 짧은) 핀 이라고하는 업데이트 핀이 필요하지 않습니다 . 입력이 특정 상태에 있거나 HIGH또는 이면 관심이 있습니다 LOW. 입력에서 HIGHs와 LOWs 의 특정 조합 이 시작되면, 즉 회로가 동작을 수행하기로 결정하고 원하는 결과가 "즉시"반환됩니다. 래치에는 4 가지 가능한 조치가 있습니다.

    1. 아무것도하지 마세요
    2. 설정 QHIGH
    3. 설정 QLOW
    4. 무효 상태 (가정의 값을 반전 Q)

    Q'에 따라 달라집니다 Q.

한 가지 예는 래치가 수행 할 수있는 4 가지 가능한 모든 동작을 보여주는 SR 래치입니다. RS 래치

  1. S이다 LOW하고 R있다 LOW, 아무것도 변경되지 않습니다.
  2. S이다 HIGH하고 R있다 LOW, Q로 설정됩니다 HIGH.
  3. S이다 LOW하고 R있다 HIGH, Q로 설정됩니다 LOW.
  4. S이다 HIGH하고 R있다 HIGH, Q는 "예측할"빠른 속도로 반전된다. 이 상태는 유효하지 않습니다.
  • 동기식 플립 플롭을 사용하면 값을 데이터 핀으로 설정할 수 있습니다. 즉,이 핀의 상태 만 신경 쓰게됩니다. 그러나 회로는 아직 출력에 대한 조치를 취하지 않습니다. CLK위에서 언급 한대로 핀 이 있습니다 . 때 CLK핀 (로부터 어느 상태 변화 LOWHIGH반대 또는 모두), 상기 데이터 핀은 "포획"되어 동작이 조합에 기초하여 플립 플롭을 수행 HIGH들과 LOW데이터 핀에서 캡처 데이터이야. CLK핀 에는 두 가지 동작이 있습니다 .
  1. 아무것도하지 마세요
  2. 데이터 핀에서 데이터를 "캡처"하고 해당 특정 순간의 데이터 핀 값을 기반으로 출력에 대한 작업을 수행합니다.

다시 회로가 출력에 대해 수행 할 수있는 4 가지 가능한 동작이 있습니다.

  1. 아무것도하지 마세요
  2. 설정 QHIGH
  3. 설정 QLOW
  4. 값을 반전시킵니다 Q(현재는 한 번만 수행되므로 유효합니다)

이것은 플립 플롭이 아닙니다 :

여기에 이미지 설명을 입력하십시오

그러나 왜 물어볼 수 있습니까? 그 E핀은 클럭 핀이 아닙니다. 클럭 핀은 회로가 데이터 핀 ONCE의 정보를 분석하여 해당 정보가 출력에 대한 특정 작업을 수행하기위한 명령으로 전송되도록합니다. 그러나 이와 같은 핀을 활성화하면 회로가 데이터 핀이 높게 유지되고 출력 값을 지속적으로 설정하는 한 데이터 핀의 정보를 분석 할 수 있습니다. 따라서 걸쇠입니다. (내 실수를 지적한 jbord39에게 감사드립니다).

따라서 플립 플롭은 래치와 비슷하지만 CLK핀인 추가 "확인"단계가 필요합니다 .

그렇다면 OP 질문의 마지막 회로는 플립 플롭입니까? C를 높게 유지하고 D의 값을 변경할 때 출력이 변경되는지 확인하십시오. 출력이 변경되면 대신 enable이라고하고 래치입니다. 그러나 출력이 변경되지 않으면 (이 경우) 플립 플롭입니다.

이미지는 Wikipedia에서 제공합니다.


아니요, 많은 래치에는 클럭 핀이 있습니다. nxp.com/documents/data_sheet/74HC_HCT373.pdf 사실 당신이 보여준 회로는 플립 플롭이 아닌 래치입니다 ...
jbord39

@ jbord39? 어떤 시계 핀? 그리고 활성화 핀은 클럭 핀과 다릅니다.
Bradman175

@ jbord39 그리고 당신이 맞아요. 맨 아래 두 회로는 래치입니다. 내 답변을 재고하십시오.
Bradman175

플립 플롭은 각 입력을 확인하고 출력을 켜고 래치는 클럭을 확인하고 1 인 경우 작동하여 D의 값을 출력하므로 SR 래치는 클럭되지 않은 플립 플롭입니다. 그러나 D 래치는 진정한 래치입니다.
Daniel Tork

@DanielTork 문제는 여러 개의 "시계"가 있고 시계가 핀간에 교대 할 수 없으며 데이터 핀의 역할도한다는 것입니다.
Bradman175
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.