2014-12-27 8 views
2

나는합성 translate_off는 어떻게 작동합니까?

-- synthesis translate_off 
... some sort of memory implementation/coding 
-- synthesis translate_on 

코드의이 부분을 삭제하면 코드 내 FPGA implementation에서 최종 출력에 영향을 미칠 것 있으면 알려 주시기 바랍니다 다음과 같은 구조의 코드가 있습니다.

감사합니다, 안부, Faras

+2

두 개의 pragma 주석 사이에 들어가는 코드를 넣으면 하드웨어가되지 않습니다. 일반적으로 여기에있는 코드는 시뮬레이션 용도로 사용됩니다. – user1155120

답변

4

metacomments synthesis translate_off... _on는 VHDL 합성 표준 (IEEE의 P1076.6)의 일부가 아닌, 그래서 행동은 도구 의존한다. 예를 들어

는 알테라의 Quartus II 문서는

는 ... 직접 분석 & 합성 설계 코드의 부분을 무시 말하는 translate_off and translate_on VHDL Synthesis Directives 설명 각 라인 인 것처럼 ... 지시문 사이의 텍스트가 취급 한 줄 주석 구분 기호가 앞에옵니다. ...

따라서 지시문 사이에서 코드를 삭제해도 최종 합성 출력에는 영향을 미치지 않습니다.

일반적으로 적용되는 메타 코드에 대한 설명은 Sigasi가 작성한 List of known VHDL metacomment pragma's을 참조하십시오.

VHDL 합성 표준 (IEEE P1076.6의)는 rtl_synthesis off ... on 및 사용을 규정하지만 Sigasi에 따라, 잘 지지되도록 나타나지 않는다.

마지막으로 무시 무시 지시문은 시뮬레이션에서 디자인을 변경하고 합성에서 디자인이 다르게 동작하여 디자인의 검증 및 디버그를 방해 할 수 있으므로주의해서 사용해야합니다.

0

로직 합성과 관련이없는 시뮬레이션과 관련된 설계 코드의 일부를 무시하도록 합성을 지시하는 VHDL 합성 지시문. & 합성.

translate_off 및 translate_on 합성 지시문을 사용하려면 Analysis & 합성을 무시하고 코드 바로 다음에있는 주석에 translate_on 합성 지시문을 지정하려는 코드 바로 앞에있는 주석에서 translate_off 합성 지시문을 지정할 수 있습니다 당신은 분석 & 합성을 무시하고 싶습니다. 주석에서 synthesis 지시어 앞에 합성 키워드를 사용하십시오. 지시. 사이의 텍스트는 각 행 앞에 단일 행 주석 분리.자가 오는 것처럼 처리됩니다. 구문 검사는 수행되지 않으며 텍스트가 유효한 VHDL 일 필요는 없습니다.

참고 : 분석 & 합성은 또한 동의어 합성 지시문 인 synthesis_off 및 synthesis_on을 인식합니다. 이러한 합성 지시문은 translate_off 및 translate_on 합성 지시문과 동일하게 작동합니다.

예를 들어, 다음 코드에서 Analysis & Synthesis는 코드 USE std.textio를 무시합니다.합성 translate_on (사용자가 다시 translate_off 및 translate_on 합성 지시자를 사용하지 않는) - 모든 ;, 및 주석 후에 코드의 논리 합성을 수행

- 합성 translate_off

사용 std.textio.all;

- 합성 translate_on

당신은 이전에 컴파일시 무시 섹션을 사용할 수 있도록 디자인의 모든 translate_off 및 translate_on 합성 지시를하지 않으려면 무시 translate_off 및 합성 지침 논리 옵션 translate_on을 사용할 수 있습니다.