skip to main content
10.1145/1046192.1046215acmconferencesArticle/Chapter ViewAbstractPublication PagesfpgaConference Proceedingsconference-collections
Article

Efficient static timing analysis and applications using edge masks

Published: 20 February 2005 Publication History

Abstract

Static timing analysis (STA) with multiple clock domains and complicated exception conditions is a complex practical problem that can dramatically increase compilation time, both for back-end analysis and during place and route. In FPGA placement, timing analysis with many constraints can dominate placement run-time.In this paper we introduce a simple binary edge-mask data structure on arcs in a timing netlist which allows for efficient timing analysis in the presence of many such constraints. The technique applies to either BFS or DFS-based timing analysis. Preliminary implementations on just the basic concept show a 59% decrease in STA run-time for multi-clock designs, indicating that significant benefit is to be gained from a complete implementation. On a set of heavily constrained designs this benefit improved to 80% run-time decrease.Further applications of the edge-mask concept are shown to efficiently deal with thru-x constraints, enumerating the k-longest paths in a timing graph, and partial/incremental timing analysis aimed at significant improvements in placement time.

References

[1]
Altera Corp. Application Note 123, "Using Timing Analysis in the Quartus II Software", available at http://www.altera.com.
[2]
V. Betz, J. Rose and A. Marquardt, "Architecture and CAD for Deep-Submicron FPGAs", Kluwer, 1999.
[3]
D. Blaauw, R. Panda and A. Das, "Removing user-specified false-paths from timing graphs", in Proc. 37th ACM/IEEE Design Automation Conference, 2000.
[4]
D. Blaauw et. al., "Slope Propagation in Static Timing Analysis", in Proc. ICCAD, 2000.
[5]
R. Fung, V. Betz and W. Chow, "Simultaneous Short-Path and Long-Path Timing Optimization for FPGAs", in Proc. ICCAD 2004, pp. 838--845.
[6]
R. Hitchcock, G. Smith and D. Cheng, "Timing Analysis of Computer Hardware", in IBM J. Research and Development, Jan. 1983.
[7]
M. Hutton. "Techniques For Using Edge Masks To Perform Timing Analysis", US Patent Pending 2003.
[8]
T. Kong, "A Novel Net-Weighting Algorithm for Timing-Driven Placement", in Proc. ICCAD, 2000.
[9]
Y. Kukimoto and R. Brayton, "Hierarchical Functional Timing Analysis", in Proc. 35th ACM/IEEE Design Automation Conference, 1998.
[10]
J. Lee and D. Tang, "An Algorithm for Incremental Timing Analysis", in Proc. 32nd ACM/IEEE Design Automation Conference, 1995.
[11]
V. Manohararajah, D. Singh, S. Brown and Z. Vranesic, "Post-Placement Functional Decomposition for FPGAs", in Proc. IWLS, 2004.
[12]
S. Sapatnekar, "Timing", Kluwer, 2004.
[13]
K. Schabas and S.D. Brown, "Using Logic Duplication to Improve Performance in FPGAs", in Proc. ACM/IEEE Symp. on FPGAs, 2002.
[14]
Synopsys Corp. Primetime documentation, available at www.synopsys.com.
[15]
R.E. Tarjan, "Depth-first Search and Linear Graph Algorithms", SIAM J. Computing 1(2), pp. 146--160, 1972.
[16]
S. Yen, D. Du and S. Ghanta, "Efficient Algorithms for Extracting the K most Critical Paths in Timing Analyis", in Proc. 26th ACM/IEEE Design Automation Conference.

Cited By

View all

Index Terms

  1. Efficient static timing analysis and applications using edge masks

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Conferences
      FPGA '05: Proceedings of the 2005 ACM/SIGDA 13th international symposium on Field-programmable gate arrays
      February 2005
      288 pages
      ISBN:1595930299
      DOI:10.1145/1046192
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Sponsors

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 20 February 2005

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. FPGA
      2. cut-path
      3. multicycle
      4. placement
      5. thru-x
      6. timing analysis

      Qualifiers

      • Article

      Conference

      FPGA05
      Sponsor:

      Acceptance Rates

      Overall Acceptance Rate 125 of 627 submissions, 20%

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)6
      • Downloads (Last 6 weeks)0
      Reflects downloads up to 03 Mar 2025

      Other Metrics

      Citations

      Cited By

      View all
      • (2024)Field-Programmable Gate Array ArchitectureHandbook of Computer Architecture10.1007/978-981-97-9314-3_49(417-463)Online publication date: 21-Dec-2024
      • (2023)System Static Timing Analysis Method Based on Hierarchization2023 International Symposium of Electronics Design Automation (ISEDA)10.1109/ISEDA59274.2023.10218386(179-183)Online publication date: 8-May-2023
      • (2023)Field-Programmable Gate Array ArchitectureHandbook of Computer Architecture10.1007/978-981-15-6401-7_49-1(1-47)Online publication date: 7-Jan-2023
      • (2020)Parallel Unary Computing Based on Function DerivativesACM Transactions on Reconfigurable Technology and Systems10.1145/341846414:1(1-25)Online publication date: 28-Oct-2020
      • (2020)An OpenGL Compliant Hardware Implementation of a Graphic Processing Unit Using Field Programmable Gate Array–System on Chip TechnologyACM Transactions on Reconfigurable Technology and Systems10.1145/341035714:1(1-24)Online publication date: 2-Sep-2020
      • (2020)CoNFVACM Transactions on Reconfigurable Technology and Systems10.1145/340911314:1(1-29)Online publication date: 18-Aug-2020
      • (2020)VTR 8ACM Transactions on Reconfigurable Technology and Systems10.1145/338861713:2(1-55)Online publication date: 1-Jun-2020
      • (2020)In-Circuit Debugging with Dynamic Reconfiguration of FPGA InterconnectsACM Transactions on Reconfigurable Technology and Systems10.1145/337545913:1(1-29)Online publication date: 30-Jan-2020
      • (2020)Feel Free to InterruptACM Transactions on Reconfigurable Technology and Systems10.1145/337249113:1(1-27)Online publication date: 28-Jan-2020
      • (2019)Unrolling Ternary Neural NetworksACM Transactions on Reconfigurable Technology and Systems10.1145/335998312:4(1-23)Online publication date: 18-Oct-2019
      • Show More Cited By

      View Options

      Login options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Figures

      Tables

      Media

      Share

      Share

      Share this Publication link

      Share on social media