Abstract
The practical constraints on the commercial FPGAs which contain dedicated wide function multiplexers in their slice structure are incorporated with one of the most advanced FPGA mapping algorithms based on the AIG (And-Inverter Graph), one of the best logic representations in academia. As the first step of the mapping process, cuts are enumerated as intermediate structures. And then, the cuts which can be mapped to the multiplexers are recognized. Without any increased complexity, the delay and area of multiplexers as well as LUTs are calculated after checking the requirements for the tree construction such as symmetry and depth limit against dynamically changing mapping of neighboring nodes. Besides, the root positions of multiplexer trees are identified from the RTL code, and annotated to the AIG as AOs (Auxiliary Outputs). A new AIG embedding the multiplexer tree structures which are intentionally synthesized by Shannon expansion at the AOs, is overlapped with the optimized AIG. The lossless synthesis technique which employs FRAIG (Functionally Reduced AIG) is applied to this approach. The proposed approach and techniques are validated by implementing and applying them to two RISC processor examples, which yielded 13~30% area reduction, and up to 32% delay reduction. The research will be extended to take into account the constraints on the dedicated hardware for carry chains.
광폭입력함수 전용 멀티플렉서가 슬라이스 구조에 포함되는 상용 FPGA의 현실적 제약 조건을 학계의 대표적 논리 표현 방식인 AIG (And-Inverter Graph)를 근간으로 개발된 FPGA 매핑 알고리즘에 적용하였다. AIG를 LUT (Look-Up Table)으로 매핑할 때 중간 구조로서 컷을 열거하는 데 이들 중에서 멀티플렉서를 인식해 낸 후 이들이 매핑될 때 지연 시간 및 면적을 복잡도 증가 없이 계산하도록 하였다. 이 때 트리 형성 전제 조건인 대칭성과 단수 제약 요건도 검사하도록 하였다. 또한, 멀티플렉서 트리의 루트 위치를 RTL 코드에서 찾아내고 이를 보조 출력 형태로 AIG에 추가하도록 하였다. 이 위치에서 섀넌확장을 통해 멀티플렉서 트리 구조를 의도적으로 합성한 후 최적 AIG에 겹치도록 하는 접근 방법을 최초로 제안하였다. 이때 무손실 합성을 가능하게 하는 FRAIG 방식이 응용되었다. 두 가지 프로세서에 대해 제안된 접근 방법과 기법들을 적용하여 약 13~30%의 면적 감소 및 최대 32%까지의 지연 시간 단축을 달성하였다. AIG 트리에 특정 구조를 의도적으로 주입시키는 접근 방법은 향후 캐리 체인 등에 확장 적용하는 연구가 진행될 것이다.