Area-Efficient VLSI Layouts for Binary Hypercubes

The hypercube is an interesting and useful topology for parallel computation. While hypercubes have been analyzed in graph theory, this analysis has done little to determine the minimum area required for realizations of the hypercube topology on two-dimensional chips. In a common VLSI layout of the hypercube, the hypercube nodes are placed in a single-row in numeric order. This paper derives an easily computed formula for the minimum number of tracks used by this configuration. For an n-node hypercube, the number of tracks required is roughly two-thirds of n. This result is also a useful upper bound on the number of tracks required under optimal ordering. In general, the number of tracks required is a function of the ordering, but finding the optimal order (optimal in the sense of requiring the minimum number of tracks over all orderings) is NP-hard. Finally, the formula is applied to more area-efficient and practical two-dimensional hypercube layouts. In general, it allows estimation of and control over implementation parameters such as area and chip aspect ratios.