폴스 패스(False Path)란?

회로상으로는 연결되어 있지만 실제 동작에서는 신호가 전달되지 않는 경로. STA 분석 대상에서 제외하는 타이밍 예외로, SDC에서는 set_false_path로 지정한다.

일본어 명칭: フォールスパス

폴스 패스(False Path)은(는) 타이밍 분석과 CDC, IC 설계 흐름과 EDA 등 2개 분야의 연습 문제 3개에 나와요.

분야: 타이밍 분석과 CDC

도전해 보기: 폴스 패스(False Path) 관련 문제

폴스 패스(set_false_path)를 설정하는 것이 적절한 경로는?

  1. A회로 구조상으로는 연결되어 있지만, 선택 조건이 양립하지 않는 등의 이유로 실제로는 신호가 전달되지 않는 경로
  2. B타이밍 위반이 크고 수정하기 어려운 경로
  3. C2사이클에 한 번만 데이터를 캡처하면 되는 경로
정답과 해설 보기

정답: A. 회로 구조상으로는 연결되어 있지만, 선택 조건이 양립하지 않는 등의 이유로 실제로는 신호가 전달되지 않는 경로

STA는 논리의 의미를 고려하지 않고 연결된 모든 경로를 조사합니다. 그래서 두 셀렉터가 같은 선택 신호로 서로 반대 입력을 선택하는 회로처럼, 실제로는 지나가지 않는 경로에서도 위반이 나올 수 있습니다. 이러한 경로를 폴스 패스로 지정하여 분석에서 제외합니다. 수정하기 어렵다는 이유로 제외하면 진짜 결함을 숨기게 됩니다. 2사이클에 한 번 캡처하는 경로는 멀티사이클 패스로서 시간을 늘려 분석을 계속해야 합니다.

비동기 FIFO의 그레이 코드 포인터를 상대 도메인으로 전달하는 경로를, 비동기라는 이유로 제약 없음(폴스 패스)으로 하면 문제가 될 수 있는 이유로 올바른 것은?

  1. A폴스 패스로 하면 동기화기의 플립플롭이 논리 합성에서 삭제되기 때문에
  2. B비트별 지연 차이가 포인터의 갱신 간격을 넘으면, 한 번에 1비트만 바뀐다는 전제가 수신 측에서 무너지기 때문에
  3. C폴스 패스로 하면 툴이 포인터를 바이너리로 되돌리기 때문에
정답과 해설 보기

정답: B. 비트별 지연 차이가 포인터의 갱신 간격을 넘으면, 한 번에 1비트만 바뀐다는 전제가 수신 측에서 무너지기 때문에

그레이 코드 포인터는 수신 측의 어느 에지에서 보더라도 변화 중인 비트가 하나 이내라는 것을 전제로 합니다. 경로를 제약 없음으로 하면 배치 배선에서 비트별 지연이 크게 달라질 수 있습니다. 예를 들어 송신 측 주기가 2 ns이고, 첫 번째에 바뀌는 비트가 도착하는 데 3 ns, 두 번째에 바뀌는 비트가 1 ns 걸리면 둘 다 시각 3 ns에 도착하여 2비트가 동시에 바뀐 것처럼 보입니다. 그래서 최대 지연 제약을 걸어 지연 차이를 송신 측의 1주기 이내로 억제합니다.

해설 속 폴스 패스(False Path)

폴스 패스(False Path)이(가) 나오는 문제 (3)

  1. 폴스 패스(set_false_path)를 설정하는 것이 적절한 경로는?
  2. 비동기 FIFO의 그레이 코드 포인터를 상대 도메인으로 전달하는 경로를, 비동기라는 이유로 제약 없음(폴스 패스)으로 하면 문제가 될 수 있는 이유로 올바른 것은?
  3. 논리 합성이나 정적 타이밍 분석에서 클록 주기나 입출력 지연 등 타이밍 조건을 기술한 것을 무엇이라고 하는가?

관련 용어

STA(정적 타이밍 분석) 멀티사이클 패스(Multicycle Path) 비동기 FIFO 그레이 코드(Gray Code) 배치 배선(P&R) 논리 합성 SDC PDK(Process Design Kit) 동기화 회로(Synchronizer) 리커버리 체크(Recovery Check)

용어집으로 돌아가기