셋업·홀드 타이밍 계산기

이 계산기는 플립플롭에서 플립플롭으로 가는 단일 경로에 정적 타이밍 분석(STA)과 같은 방식을 적용해 셋업 슬랙과 홀드 슬랙을 구합니다. 지연과 스큐를 바꿔 보면서 어느 검사가 먼저 실패하는지 확인할 수 있습니다. 모든 값의 단위는 나노초(ns)입니다.

입력(ns)

결과

셋업 슬랙
–
홀드 슬랙
–
최대 주파수
–

충족 위반

위쪽 행은 가장 늦은 데이터가 셋업 기한(점선)보다 먼저 도착하는지, 아래쪽 행은 가장 이른 데이터가 홀드 기한보다 나중에 도착하는지 검사합니다. 슬랙이 음수이면 위반입니다.

셋업 검사

새 데이터가 캡처 플립플롭에 도달하는 가장 늦은 시간은 최대 클럭-Q 지연에 최대 조합 논리 지연을 더한 값입니다. 데이터는 다음 캡처 에지(주기 + 스큐)에서 셋업 타임과 클럭 불확실성을 뺀 시점보다 먼저 도착해야 합니다. 셋업 슬랙은 기한에서 도착 시간을 뺀 값이며, 음수이면 주기가 너무 짧은 것이므로 주파수를 낮추거나 논리를 줄여야 합니다.

홀드 검사

홀드 검사는 같은 클럭 에지에서 런치된 데이터가 너무 빨리 도착해, 캡처 플립플롭이 아직 래치하고 있는 값을 망가뜨리지 않는지를 확인합니다. 가장 이른 도착 시간, 즉 최소 클럭-Q 지연과 최소 조합 논리 지연의 합은 스큐에 홀드 타임을 더한 시점보다 늦어야 합니다. 홀드 검사에는 클럭 주기가 나타나지 않으므로 클럭을 느리게 해도 홀드 위반은 결코 해결되지 않습니다. 대신 툴이 짧은 경로에 지연 버퍼를 삽입합니다.

스큐가 두 검사에 미치는 영향

캡처 클럭이 런치 클럭보다 늦게 도착하면(양의 스큐) 셋업 기한이 뒤로 밀려 셋업에는 유리하지만 홀드에는 불리합니다. 음의 스큐는 그 반대입니다. 설계자는 크리티컬한 셋업 경로를 살리기 위해 일부러 스큐를 넣기도 하지만(useful skew), 그 경우 홀드를 다시 검사해야 합니다. 실제 STA는 모든 경로를 최악 조건에서 검사합니다. 셋업은 슬로 코너에서, 홀드는 패스트 코너에서 검사합니다.

최대 주파수

셋업 슬랙이 정확히 0이 되는 주기가 그 경로의 최소 주기이며, 그 역수가 최대 주파수입니다: fmax = 1 / (클럭-Q + 조합 논리 지연 + 셋업 + 불확실성 − 스큐). 칩의 최대 주파수는 가장 느린 경로, 즉 크리티컬 패스에 의해 정해집니다. 파이프라인 단을 추가하면 단당 논리가 짧아져 달성 가능한 주파수가 높아집니다.

논리 설계 문제 풀어 보기

플립플롭의 셋업 시간에 대한 설명으로 올바른 것은?

  1. A클록 에지 이후에 데이터를 계속 유지해야 하는 최소 시간
  2. B클록 에지 이전에 데이터 입력이 안정되어 있어야 하는 최소 시간
  3. C전원을 켠 후 동작하기까지의 시간
정답과 해설 보기

정답: B. 클록 에지 이전에 데이터 입력이 안정되어 있어야 하는 최소 시간

플립플롭이 올바르게 받아들이려면 클록 에지보다 일정 시간 전부터 데이터가 안정되어 있어야 하며, 이것이 셋업 시간입니다. 데이터 경로의 지연이 클록 주기에서 셋업 시간을 뺀 값을 넘으면 위반이 되며, 클록을 느리게 하면 해소할 수 있습니다. 에지 이후 데이터를 유지해야 하는 시간은 홀드 시간이며, 둘 중 하나라도 만족하지 못하면 잘못된 값의 취득이나 메타스터빌리티의 원인이 됩니다.

플립플롭의 홀드 시간에 대한 설명으로 올바른 것은?

  1. A클록의 유효 에지 전에 데이터 입력을 확정해 두어야 하는 시간
  2. B클록이 들어온 후 출력이 바뀔 때까지의 시간
  3. C클록의 유효 에지 이후에도 데이터 입력을 바꾸지 않고 유지해야 하는 시간
정답과 해설 보기

정답: C. 클록의 유효 에지 이후에도 데이터 입력을 바꾸지 않고 유지해야 하는 시간

홀드 시간은 클록 에지 이후에도 데이터를 안정적으로 유지해야 하는 최소 시간입니다. 앞단 플립플롭에서 다음 단까지의 경로가 너무 짧으면, 같은 에지로 갱신된 새 데이터가 다음 단에 너무 빨리 도달하여 위반이 됩니다. 주기와 무관하므로 클록을 느리게 해도 해결되지 않으며, 데이터 경로에 버퍼를 삽입하여 지연을 추가하는 것이 대책입니다. 제조 후에 발견되면 칩을 쓸 수 없게 되므로 설계 시 검증이 중요합니다.

자주 묻는 질문

셋업 위반과 홀드 위반은 어떻게 다르게 해결합니까?

셋업 위반은 클럭 주파수를 낮추거나, 논리를 빠르게 하거나 재구성하거나, 파이프라인 단을 추가해 해결합니다. 홀드 위반은 주파수와 무관하므로 짧은 경로에 버퍼를 추가해 지연을 늘려 해결합니다.

클럭 스큐는 셋업과 홀드 중 어느 쪽에 영향을 줍니까?

양쪽 모두에 반대 방향으로 영향을 줍니다. 캡처 클럭이 늦게 도착하는 양의 스큐는 셋업에 유리하고 홀드에 불리하며, 음의 스큐는 그 반대입니다.

타이밍 분석에서 슬랙이란 무엇입니까?

슬랙은 타이밍 여유로, 요구 시간에서 실제 도착 시간을 뺀 값입니다. 슬랙이 양수이면 검사를 통과하고, 음수이면 위반입니다.

관련 용어

셋업 시간(Setup Time) 홀드 시간(Hold Time) 클록 스큐(Clock Skew) STA(정적 타이밍 분석) 메타스터빌리티(Metastability) 지터(Jitter)

반도체 계산 도구

웨이퍼당 다이 수 및 수율 계산기웨이퍼 지름·다이 크기·결함 밀도로 다이 수, 수율, 양품 1개당 비용을 계산노광 해상도 및 초점 심도 계산기파장, NA, k1로 해상도(하프 피치), 초점 심도, 피치 분할 수 계산MOSFET I-V 특성 (ID–VDS)Vth, W/L, λ를 바꿔 ID–VDS 곡선과 동작점(영역, ID, gm, ro)을 확인합니다퀴즈 세트 만들기주제와 문항 수를 고르면 수업과 교육에 공유할 수 있는 퀴즈 링크를 만들어 드립니다접합 온도 및 열저항 계산기소비 전력과 열저항으로 접합 온도, Tj(max)까지의 여유, 최대 전력 계산메모리 대역폭 계산기전송 속도와 버스 폭으로 DDR, LPDDR, GDDR, HBM의 피크 및 실효 대역폭 계산ADC SNR과 유효 비트 수(ENOB)분해능, 클럭 지터, 오버샘플링으로 ADC의 SNR과 유효 비트 수 계산암달의 법칙과 병렬 속도 향상병렬화 비율과 프로세서 수로 암달의 법칙과 구스타프슨의 법칙에 따른 속도 향상률과 병렬 효율 계산캐시 주소 분할과 평균 메모리 접근 시간캐시 크기, 라인 크기, 연관도로 태그·인덱스·오프셋 비트 수와 평균 메모리 접근 시간 계산CMOS 소비 전력 (동적·정적)활동률, 용량, 전압, 주파수, 누설 전류로 동적·정적 소비 전력과 DVFS 적용 후 전력 계산PN 접합의 내장 전위와 공핍층 폭도핑 농도와 역방향 바이어스로 PN 접합의 내장 전위, 공핍층 폭, 최대 전계, 접합 용량 계산열산화막 두께 (Deal-Grove 모델)온도, 시간, 건식·습식 분위기, 면방위로 Deal-Grove 모델에 따른 실리콘 산화막 두께와 소비되는 실리콘 계산