We consider the following algorithmic problem, which arises in connection with optimally choosing beam widths and positions for electron exposure of integrated circuit wafers. Let H > 0 be a fixed real number, and let c be a fixed, positive-valued, nondecreasing cost function defined on (0, H]. An instance of the problem consists of a given range R = [a, b] and n given intervals I i = [a i , b i ], 1 ≤ i ≤ n, each contained in R and of length not exceeding H. A solution (or feasible solution) for such an instance is a collection of segments, Si, S 2 , …, S k , each of length at most H and contained in R, such that each given interval is contained in at least one segment and the union of all the segments is R. The goal is to find an optimal solution with respect to c, i.e., a solution for which the sum of the costs of the individual segment lengths is as small as possible. The segments in a solution describe the beam positions and widths, projected on one side of the wafer, and the given intervals correspond to particularly sensitive regions on the layout mask, each of which must be entirely exposed by a single scan. The cost function gives the time required for a single scan of given width, including alignment overhead. Using dynamic programming techniques, we give efficient algorithms and data structures for solving this problem for several natural classes of cost functions, the most general of which is the class of all concave increasing functions, solved by an algorithm that runs in time O(n2).
Read full abstract