관련 질문이 없지만 무엇을 검색해야할지 모르겠습니다. 합성 도구를 사용할 때 (특정 도구가 필요하면 Synplify라고 말하지만, 여러 도구에서 작동하는 표준 호환 버전이있는 것이 가장 좋습니다) 모듈의 인스턴스 수를 추적하고이를 지원하는 것이 가능합니까? 합성 가이드? 나는 의심 스럽지만, 이와 같은 것에 대해 많은 유스 케이스를 볼 수있다. 제가 의미하는 바를 몇 가지 예를 들어 설명하겠습니다.종합 글로벌 인스턴스 수
일부 컨텍스트는 FPGA 개발을 염두에두고 작성한 것이지만 ASIC 디자인에도 사용하겠다고 생각합니다.
장치에 10 개의 곱셈기가 있고 복잡한 곱셈기와 같은 몇 가지 연산을 가지고 있다고 가정 해 봅시다. 생성 루프 만 아니라 디자인 전체에서 여러 위치에서 인스턴스화하려고합니다. 이 함수를위한 전용 승수를 사용하여 하나의 구현이 있다고 가정 해 봅시다. 그러나이 패브릭을 사용하는 복소 승수도 있습니다. 필자의 복합 승수가 패브릭 구현으로 넘어 가기 전에 전용 승수를 소모하고 싶습니다.
복잡한 승수를 래퍼를 통해 인스턴스화 할 수 있습니까?이 래퍼가 정교화되는 동안 인스턴스화 될 때마다 글로벌 인스턴스 카운트가 증가하므로 사용 된 곱셈기의 수를 추적 할 수 있습니까? 또한이 전역 변수를 generate-if 문이나 다른 구문으로 사용하여 사용 된 배율기 모듈의 인스턴스 수를 기반으로 두 구현 간의 결정을 내릴 수 있습니까?
예를 들어 승수를 사용하고 있습니다. 이 동작을 얻기 위해 배율을 추론 할 수 있다는 것을 알았습니다. 나는이 전역 변수의 현재 값을 기반으로 다른 필터 구조 (예 : 탭 지연 선 FIR 필터 대 분산 산술 FIR 필터)를 추론 할 수있는 디자인을 상상해 봅니다. 이것은 새로운 FPGA로 코드를 포팅 할 때 확실히 도움이 될 것입니다.
나는 잠시 동안 이와 같은 것을 찾고 있었지만 그것이 존재하지 않는다고 생각합니다. 나는 내 시스템의 아키텍처를 옳은 방식으로 설계함으로써 내가 원한 것에 가깝게 할 수 있다는 것을 깨닫는다. 여기서 의도하는 것은 설계에서 프로세스를 자동화하는 것입니다. 따라서 디자인에 대한 이후 변경으로 인해 (타이밍 또는 리소스 제한이 작용하지 않는 한) 전체 시스템 레이아웃을 리팩터링 할 필요가 없습니다. 또한 이것은 동일한 패밀리의 매우 다른 리소스 할당 (더 많은 DSP 조각이 있고 더 많은 LUT가있는 등)을 사용하는 장치간에 코드를 이식 할 수있게하는 수단으로 생각합니다.
이것은 하나의 도구 또는 하나의 언어로만 존재하는 경우에도 여전히 만족스러운 해결책입니다. 확실한 증거 또는 왜 작동하지 않는 논리적 인 이유를 제공 할 수 있다면 그것은 나에게 수용 가능한 해결책이 될 것입니다.
관련 질문 [VHDL 리소스 사용 프로파일 링 도구가 있습니까?] (https://stackoverflow.com/questions/41907940/are-there-any-vhdl-resource-usage-profiling-tools). – user1155120