• DocumentCode
    3252698
  • Title

    Efficient external memory segment intersection for processing very large VLSI layouts

  • Author

    Sharathkumar, R. ; Vinaykumar, M.T.C. ; Maheshwari, Puneet ; Gupta, Prosenjit

  • Author_Institution
    Algorithms & Comput. Theor. Lab., Int. Inst. of Inf. Technol., Hyderabad
  • fYear
    2005
  • fDate
    7-10 Aug. 2005
  • Firstpage
    740
  • Abstract
    One fundamental problem that arises in VLSI layout analysis and verification is the segment intersection problem: given a set of segments in the plane, find all pairwise intersections. This problem has been widely studied in the Computational Geometry. One problem with processing large VLSI layouts is that the data to be processed may be far too massive to fit in main memory. When dealing with data sets of sizes exceeding main memory, communication between the fast internal memory and the slow external memory is often the performance bottleneck and algorithms and data structures designed under the assumption of a single level of memory may be meaningless. External-memory algorithms try to optimize performance by taking into account disk accesses. One can certainly use the standard main memory algorithms for data that reside on disk but their performance is often considerably below the optimum because there is no control over how the operating system performs disk accesses. On demand thrashing can be high thus resulting in an increase in response time. Although a lot of research has been done in the recent past on efficient external-memory algorithms and data structures, such work in the area of VLSI computer-aided design is limited. We have designed and implemented a practical external-memory algorithm for reporting all intersecting pairs amongst a set of orthogonal segments. The key to our success is that we take advantage of the fact that real data sets from VLSI applications tend to obey the so-called "square-root" rule, i.e. in a set of TV line segments, the expected number of line segments intersecting a horizontal or vertical scanline in a VLSI layout is O(radic N), a fact ignored by known external-memory algorithms. Another factor that is crucial to our success is that other algorithms stores the data structures in external memory requiring I/O to access them. We reduce such disk accesses by using a clever storage scheme. Our algorithm outperforms not only a - - standard in-memory algorithm but also an existing external-memory algorithm for segment intersection reporting
  • Keywords
    VLSI; computational geometry; data structures; integrated circuit layout; storage allocation; VLSI computer-aided design; VLSI layout analysis; VLSI layout verification; computational geometry; data structures; external memory segment intersection; external-memory algorithm; in-memory algorithm; square-root rule; Algorithm design and analysis; Application software; Computational geometry; Control systems; Data structures; Delay; Design automation; Operating systems; TV; Very large scale integration;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Circuits and Systems, 2005. 48th Midwest Symposium on
  • Conference_Location
    Covington, KY
  • Print_ISBN
    0-7803-9197-7
  • Type

    conf

  • DOI
    10.1109/MWSCAS.2005.1594207
  • Filename
    1594207