학부 디지털 설계 STA 실습, SDC 디버깅 경험
학부 STA 실습에서 SDC 파일을 처음 작성했을 때, 클럭 주기를 잘못 정의해서 타이밍 위반이 없는 것처럼 보이는 상황이 생겼습니다. 클럭 정의가 틀리면 STA 전체가 잘못된 기준으로 분석된다는 걸 그때 처음 알았습니다. 수정 후 실제 주기로 다시 돌리니 크리티컬 패스에 타이밍 위반이 다수 발생했고, 로직 구조를 다시 봐야 했습니다.
set_false_path와 set_multicycle_path 예외 설정을 잘못 쓰면 실제 타이밍 문제를 숨기는 결과가 된다는 것도 배웠습니다. CDC 경로는 STA로 올바르게 분석할 수 없어서 별도 도구로 동기화 로직을 검증해야 한다는 구분도 그때 알았습니다. 이후 저는 타이밍 분석을 시작할 때 SDC 완전성을 먼저 검토하는 습관이 생겼습니다. 제약 정의 실수가 나중에 더 큰 수정 비용으로 이어진다는 걸 그 경험에서 배웠습니다.