Abstract
Most traditional field programmable gate arrays (FPGAs) use look-up table (LUT) as the basic logic block. Adaptive logic module (ALM) is a novel structure of logic block adopted by Altera’s Stratix II [13] and later generations of Stratix family. An ALM can serve as one 6-input lookup table (LUT) or two smaller lookup tables under certain constraints. In a typical design flow, a netlist of LUTs formed after technology mapping has to be merged into ALMs and then packed into coarse-grained logic blocks (CLBs) before placement and routing. How the LUTs are merged and the ALMs are packed has a significant impact on the quality of the placement. We propose a novel wirelength-driven algorithm to merge the LUTs and pack the ALMs to ensure that it will not adversely a ect the final wirelength. Experimental results show that substituting AAPack [8] by our algorithm yields about 14.54% reduction in number of tracks and 17.97% wirelength improvement for ALM-based FPGA. Applying our algorithm to traditional FPGA, the minimum number of tracks and wirelength are reduced by 16.59% and 17.57%, respectively, compared to T-VPack [9].