With the increasing design complexity and performance requirement, data arrays in behavioral specification are usually mapped to fast on-chip memories in behavioral synthesis. In this paper, we over-come two limitations of the previous works on the problem of memory-allocation and array-mapping to memories. Specifically, our key features are (1) a tight link to the scheduling effect, which was totally or partially ignored by the existing memory synthesis systems, and supporting (2) nonuniform access speeds among the ports of memories, which greatly diversify the possible (practical) memory configurations. To support this, we propose an efficient approach which solves features (1) and (2) in an integrated fashion to explore memory configurations more fully and effectively. Experimental data on a set of benchmark filter designs are provided to show the effectiveness of the proposed exploration strategy in finding globally best memory configurations.
behavioral synthesis에 있어서 디자인의 복잡도는 나날이 증가되고 있으며 동시에 성능에 대한 요구가 커져 가고 있다. 일반적으로 많은 양의 데이터를 처리하는 behavioral description에서는 배열을 사용하여 데이터의 저장 장소를 표현하는데, 이 배열은 최종적으로 고속의 on-chip 메모리에 의해 구현된다. 본 논문에서는 메모리 allocation과 배열 assignment의 문제를 푸는 데 있어, 기존의 방법들이 가지고 있었던 두 가지 한계를 극복하는 새로운 알고리즘을 제안하였다. 첫째로, 현존하는 메모리 synthesis 시스템에서 전체적 혹은 부분적으로 무시되던 스케쥴링 효과를 고려하며, 둘째, 각 메모리 포트의 다양한 접근 속도를 인정한다. 이를 지원하기 위해서 우리는 메모리 configuration을 보다 충실하고 효율적으로 탐색하기 위한 통합된 형식의 알고리즘을 제시하였다. 여러 벤치마크 필터 디자인들에 대한 실험 결과는 제시된 탐색 방법이 전체적으로 훌륭한 메모리 configuration을 찾는다는 것을 보여준다.