잘못된 경로 타이밍 제약 조건은 무엇입니까?


10

FPGA 세계에서 HDL 컴파일러에 대한 잘못된 경로 제약 조건은 정확히 무엇입니까? 왜 유용한가요?


1
이것은 단순한 FPGA 개념이 아닌 디지털 개념입니다.
W5VO

답변:


14

거짓 경로는 최종 디자인에서 실제로 실행되지 않는 타이밍 경로입니다. 4 비트 카운터를 설계하고 12에서 13으로 증가 할 때 매우 느린 지연 경로가 있다고 가정합니다. 카운트가 9가 될 때마다 카운터가 항상 재설정되면 느린 경로가 표시되지 않습니다. 실제 디자인. 잘못된 경로를 더 빨리 실행하기 위해 컴파일러에서 시간을 보내거나 로직을 추가하지 않도록 느린 경로를 잘못된 경로로 레이블 지정합니다.


5
허와 나는 잘못된 경로 가 PIC 대신에 Atmels를 사용하는 것과 관련이 있다고 생각했습니다 .
Olin Lathrop

더 중요한 유형의 잘못된 경로는 한 클럭의 가장자리에서 변경되고 다른 클럭의 가장자리에서 샘플링되는 신호이지만 두 번째 클럭이 변경되는 시간 근처에서 신호가 실제로 변경되지는 않습니다. 그것은 그 가치에 신경 쓰지 않을 것입니다. 두 번째 클록으로 제어되는 이중 동기화기를 추가하지 않으면 타이밍 분석 도구가 실패 할 수 있지만 이러한 동기화를 추가하면 디자인이 완전히 중단 될 수 있습니다. 예를 들어, 첫 번째 클록은 1MHz에서, 두 번째 클록은 32KHz에서 실행될 수 있지만, ...
supercat

... 신호를 생성하는 장치는 32KHz 클록에서 상승 에지를 본 후 3MHz의 1MHz 사이클로 변경 될 수 있습니다. 결과적으로 32kHz 클록에 의해 래치 된 신호는 추가 동기화없이 32kHz 래치의 샘플 / 홀드 요구 사항을 준수 할 수 있습니다. 1MHz 측의 로직이 32KHz 측이 수행 한 작업을 기반으로 데이터를 생성 한 경우 이러한 설계를 통해 32Khz 측의 한 사이클에서 생성 된 정보가 다음 사이클에 의해 두 가지 방식으로 침투 할 수 있습니다. 32Khz쪽에 이중 동기화를 추가하면 문제가 발생합니다.
supercat

8

잘못된 경로는 디자인에 존재하지만 작업에 영향을 미치지 않는 경로이므로 타이밍 분석에 포함 할 필요가 없습니다.
여러 가지 이유가있을 수 있지만 타이밍 분석 도구는 일반적으로 어떤 경로가 사용되는지 여부를 알지 못하기 때문에 (알 수있는 도구가 있지만) 알려야합니다. 다중 경로 경로와 유사하며 특정 경로에서 둘 이상의주기를 사용하여 완료 할 수 있음을 알 수 있습니다.

잘못된 경로의 예는 전원을 켤 때 한 번만 쓸 수 있지만 같은 상태를 유지하는 레지스터입니다.


1

간단히, 잘못된 경로는 타이밍 분석 중 타이밍을 충족하는지 확인하기 위해 제외 할 논리 경로입니다. 경로를 제외해야하는 두 가지 이유가 있습니다. 먼저 잘못된 경로는 툴이 해당 신호의 타이밍을 충족시키기 어렵게하여 합법적 인 신호 경로에 영향을 미쳐 추가 타이밍 오류를 유발할 수 있고 타이밍 검사로 인해 오류를보고 할 수 있기 때문입니다 적법한 타이밍 오류에서 디자이너를 산만하게 할 수 있습니다.

거짓 경로는 관련없는 비동기 클록 또는 동일한 주파수이지만 동일한 위상 관계를 갖는 클록 또는 정상적인 회로 작동 중에 절대 활성화되지 않는 경로 사이의 논리 경로로 인해 발생합니다. 도구가 경로를 무시하도록 지시한다고해서 타이밍이 확인되지 않은 것만 타이밍이 작동하지는 않습니다. 무시 된 신호 경로에 올바른 동기화 로직이 사용되는지 수동으로 확인하는 것은 설계자에게 달려 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.