Abstract
In this paper, we propose a new technology mapping algorithm for CPLD consider area under time constraint(TMFCPLD). This technology mapping algorithm detect feedbacks from boolean networks, then variables that have feedback are replaced to temporary variables. Creating the temporary variables transform sequential circuit to combinational circuit. The transformed circuits are represented to DAG. After traversing all nodes in DAG, the nodes that have output edges more than two are replicated and reconstructed to fanout free tree. This method is for reason to reduce area and improve total run time of circuits by TEMPLA proposed previously. Using time constraints and delay time of device, the number of graph partitionable multi-level is decided. Initial cost of each node are the number of OR-terms that it have. Among mappable clusters, clusters of which the number of multi-level is least is selected, and the graph is partitioned. Several nodes in partitioned clusters are merged by collapsing, and are fitted to the number of OR-terms in a given CLB by bin packing. Proposed algorithm have been applied to MCNC logic synthesis benchmark circuits, and have reduced the number of CLBs by 62.2% than those of DDMAP. And reduced the number of CLBs by 17.6% than those of TEMPLA, and reduced the number of CLBs by 4.7% than those of TMCPLD. This results will give much efficiency to technology mapping for CPLDs.
본 논문에서는 시간제약 조건하에서 면적을 고려한 CPLD 기술매핑 알고리즘을 제안한다. 본 기술매핑 알고리즘은 주어진 EDIF나 부울식의 불린 네트워크에서 궤환을 검출한 후 궤환이 있는 변수를 임시 입력변수로 분리하여 조합논리회로로 구성한다. 구성된 회로는 DAG 형식으로 표현한다. DAG에서 각 노드를 검색한 후, 출력 에지의 수가 2이상인 노드는 분할하지 않고 노드만을 복제(replication)하여 팬 아웃 프리트리로 재구성한다. 이러한 구성 방법은 주어진 시간 조건 안에서 기존의 CPLD 기술 매핑 알고리즘으로 제안된 TEMPLA보다 적은 면적으로 회로를 구현하고, TMCPLD의 단점인 전체 수행 시간을 개선하기 위한 것이다. 시간제약 조건과 소자의 지연시간을 이용하여 그래프 분할이 가능한 다단의 수를 결정한다. 각 노드가 가지고 있는 OR 텀수를 비용으로 하는 초기비용과 노드 병합 후 생성될 OR 텀수인 전체비용을 계산하여 CPLD를 구성하고 있는 CLB의 OR텀수보다 비용이 초과되지 않는 노드를 병합하여 매핑 가능한 클러스터를 구성한다. 매핑 가능 클러스터들 중에서 가장 짧은 다단의 수를 갖는 클러스터들을 선택하여 그래프 분할을 수행한다. 분할된 클러스터들은 콜랍싱(collapsing)을 통해 노드들을 병합하고, 주어진 소자의 CLB안에 있는 OR텀 개수에 맞게 빈 패킹(Bin packing)을 수행하였다. 본 논문에서 제안한 기술매핑 알고리즘을 MCNC 논리합성 벤치마크 회로들에 적용하여 실험한 결과 DDMAP에 비해 62.6%의 논리블록의 수가 감소되었고, TEMPLA에 비해 17.6% 감소되었다. TMCPLD와의 결과 비교는 조합논리 회로의 5개 회로만을 비교한 결과 4.7% 감소되었다. 이와같은 실험결과는 CPLD를 이용한 기술매핑에 상당한 효율성을 제공할 것으로 기대된다.