2013-10-14 1 views
3

조건부로 UCF 파일의 문을 사용하는 방법이 있습니까? 아니면 조건부로 UCF 파일을 다른 UCF 파일에 포함 할 수 있습니까?조건부 UCF 문 또는 조건부 UCF 파일 포함

내가 직면 한 문제는 generate 문을 통해 상위 모듈에서 특정 하위 모듈을 조건부로 인스턴스화하거나 제거하는 일련의 제네릭이있는 최상위 모듈이 있다는 것입니다.
그러나 이러한 서브 모듈의 대부분에는 프로젝트 UCF 파일에 정의 된 타이밍 제약 조건이 있습니다. 지도 또는 파동 중 어딘가에서 UCF 파일이 참조하는 인스턴스가 존재하지 않는다는 것을 나타내는 빌드 프로세스가 중단됩니다 (최상위 모듈에 제네릭을 선택했기 때문에 인스턴스가 생성되지 않았으므로 정확합니다).

이 문제를 피할 수있는 일종의 "조건부 제약 조건"을 달성하는 최선의 방법은 무엇입니까? (내 UCF 파일에서 다루는 명백한 전처리 기/스크립트 옆)

추 신 : 자일링스 ISE 14.4/Vivado 2012.4 명령 줄 도구를 사용하고 있습니다.

답변

3

이 질문은 요청 된 여러 번 :

http://forums.xilinx.com/t5/Design-Entry/include-and-ifdef-for-ucf-files/td-p/77822

http://forums.xilinx.com/t5/Design-Entry/Conditional-inclusion-of-ucf-files/td-p/195684

짧은 대답은 불행하게도, 아니 할 수 없습니다.

가장 좋은 방법은 두 개의 별도 UCF 파일을 만들고 둘 중 하나를 가리 키도록 스크립트를 만들거나 일반 스위치를 켜거나 끌 때마다 수동으로 바꾸는 것입니다.

+0

고마워요.하지만 그 두 게시물이 2010 년과 2011 년 이후로 변경되었을 가능성이 있습니다. – damage

+0

그랬 으면 좋겠어. – Russell

3

Vivado를 사용하는 경우 Vivado 합성에서 UCF 파일이 더 이상 지원되지 않는다는 것을 알아야합니다. XST를 사용해야하는 경우가 아니면 제한 사항에 대해 더 이상 날짜가 지정된 UCF 파일 형식을 사용하지 않아도됩니다. Vivado는 TCL의 하위 집합 인 XDC 제약 조건을 사용하고 있습니다. 즉, 원하는 방식으로 제약 조건을 처리 할 수있는 조건으로 코드를 작성할 수 있습니다.

당신은 그들의 도구의 최신 버전에 제약을 사용하는 방법에 moredetails 자일링스에서 UG (903)에서 좀 걸릴 수 있습니다

는 :

http://www.xilinx.com/support/documentation/sw_manuals/xilinx2012_2/ug903-vivado-using-constraints.pdf

+0

힌트를 보내 주셔서 감사합니다. 현재 사용중인 툴 체인을 사용하여 ucf 파일을 새 형식으로 이식 할 수 있는지 확인합니다 (현재 툴 체인이이 새로운 형식을 지원하는지 확실하지 않음). – damage

+0

음, Vivado를 사용하는 경우 선택의 여지가 없습니다. Vivado는 합성으로 XST를 사용하지 않는 한 UCF를 지원하지 않습니다. – FarhadA

1

또 다른 잠재적 인 솔루션은 자일링스 합성 속성을 사용하는 것입니다 .

이것은 UCF와 마찬가지로 그물 타이밍을 제한하기 위해 수행 할 수 있습니다.

차이점은 VHDL의 신호 선언 근처에서 속성을 인라인으로 처리 할 수 ​​있다는 것입니다. 그래도 어색해.

적합한 솔루션은 보유하고있는 제약 조건의 수에 따라 달라질 수 있습니다.

+1

사실 그렇지만 벤더 고유의 인라인 코드를 사용하는 아이디어가 마음에 들지 않습니다. – damage

+0

이 코드는 도구 안의 특정 옵션을 코드 안에 넣으면 사용하기가 어렵거나 매우 어렵습니다. 해당 특정 도구를 사용하고 있지 않습니다. 자일링스 전용으로 ISE 용으로 만 만들고 싶지 않다면, 계속 진행하십시오. 그렇지 않으면 툴 전용 인라인 명령을 사용하지 않아야합니다. – FarhadA

0

나는 FarhadA의 대답을지지하지만 XDC 파일이 TCL 스크립트라는 점을 강조하고 조건부 및 for 루프를 포함 할 수 있습니다. UCF 파일보다 훨씬 좋습니다.

Vivado의 제약 조건 처리의 또 다른 이점은 디자인과 일치하지 않는 제약 조건이 발생하면 위험 경고를 발행하고 계속 진행한다는 것입니다.