
나는 플립플롭에 저장된 값이 클럭 간격에서만 펄스로 변경될 수 있다는 래치와 플립플롭의 차이점을 이해합니다.
하지만 실제로 그렇게 해야 하는 이유는 무엇입니까?
입력에 의해 값이 변경될 수 있다면 왜 시스템 시계에 의해 제어되어야 합니까?
감사해요
답변1
전환 중 오류를 방지합니다. (구글 "전자제품 결함")
예를 들어 2개의 입력이 있는 경우 전환 중에 동시에 변경되어 예상치 못한 결과가 발생할 수 있습니다.
예를 들어, A=1, B=0, A+B=1 (+ = OR) 동시에 변경되는 경우: A=0, B=1, A+B=1이지만 이 전환 중에 A=0일 때, B는 상승할 수 있지만 여전히 B=0을 나타내며 짧은 간격 동안 A+B=0을 얻게 됩니다.
CLK 에지에서만 모든 플립플롭 상태를 변경하고 다음 에지까지 모든 신호가 안정되고 로직이 원하는 값에서 수행됩니다.