skip to main content
research-article

Instant Multiunit Resource Hardware Deadlock Detection Scheme for System-on-Chips

Published:01 September 2012Publication History
Skip Abstract Section

Abstract

In this article, a brand new method of determining deadlock is presented. Most previous deadlock detection methods are algorithmic in the sense that they usually leverage some forms of Resource Allocation Graph (RAG) representations and then algorithms are devised to manipulate such representations in order to detect deadlock using information contained in the graph. Different from all previous methods, the proposed method actualizes the RAG with a digital circuit and uses it as a token-transmitting network. By supplying special input signals (tokens) to the network and observing the output tokens from the network, it is easier to identify which process nodes are reachable from each resource node in the graph. Using the reachability information, deadlock can be detected immediately. The time required to obtain the reachability information is determined by how fast the combinational circuit operates. Compared with previous algorithmic methods, the proposed deadlock detection can be deemed instant. We show that the proposed method is an order of magnitude faster than the previous fastest hardware mechanism and several orders of magnitude faster than traditional software-based algorithms.

References

  1. Holt, R. 1972. Some deadlock properties of computer systems. ACM Comput. Surv. 4, 3, 179--196. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Kim, J. 1997. Algorithmic approach on deadlock detection for enhanced parallelism in multiprocessing systems. In Proceedings of the 2nd Aizu International Symposium on Parallel Algorithms/Architecture Synthesis (PAS’97). 233--238. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Kim, J. and Koh, K. 1991. An O(1) time deadlock detection scheme in single unit and single request multiprocess system. In Proceedings of the IEEE Region 10 Conference (TENCON’91). 219--223.Google ScholarGoogle Scholar
  4. Lee, J. 2004. Hardware/software deadlock avoidance for multiprocessor multiresource system-on-a-chip. Ph.D. thesis, School of ECE, Georgia Institute of Technology. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Lee, J. and Mooney, V. 2006. A novel O(n) parallel banker’s algorithm for system-on-a-chip. IEEE Trans. Parallel Distrib. Syst. 17, 12, 1377--1389. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Leibfried, T. 1989. A deadlock detection and recovery algorithm using the formalism of a directed graph matrix. Oper. Syst. Rev. 23, 2, 45--55. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Maekawa, M., Oldehoeft, A. E., and Oldehoeft, R. R. 1987. Operating Systems: Advanced Concepts. Benjamin/Cummings Publishing Company. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Magnusson, P. Christensson, M., Eskilson, J., Forsgren, D., Hallberg, G., Hogberg, J., Larsson, F., Moestedt, A., and Werner, B. 2002. Simics: A full system simulation platform. IEEE Comput. 35, 2, 50--58. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Martineza, C., Pinnamanenia, M., and John, E. B. 2009. Performance of commercial multimedia workloads on the Intel Pentium 4: A case study. Comput. Elect. Engin. 35, 1, 18--32. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Nichols, B., Buttlar, D., and Farell, J. P. 1996. Pthreads Programming. O’Reilly & Associates. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Shiu, P., Tan, Y., and Mooney, V. 2001. A novel parallel deadlock detection algorithm and architecture. In Proceedings of the International Workshop on Hardware/Software Codesign (CODES’01). 73--78. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Shoshani, A. and Coffman, E. 1969. Prevention, detection and recover from deadlock in multiprocess, multiple resource systems. Tech. Rep. 80, Princeton University.Google ScholarGoogle Scholar
  13. Strukov, D. B. and Likharev, K. K. 2005. CMOL FPGA: A reconfigurable architecture for hybrid digital circuits with two-terminal nanodevices. Nanotechnology 16, 6, 888--900.Google ScholarGoogle ScholarCross RefCross Ref
  14. Sun, D., Blough, D., and Mooney, V. 2002. Atalanta: A new multiprocessor rtos kernel for system-on-a-chip applications. Tech. rep. GIT-CC-02-19, College of Computing, Georgia Tech.Google ScholarGoogle Scholar
  15. Virtutech 2007. Simics 3.0 User Guide for Unix. Virtutech.Google ScholarGoogle Scholar
  16. Xiao, X. and Lee, J. 2008. A novel O(1) deadlock detection methodology for multiunit resource systems and its hardware implementation for system-on-chip. IEEE Trans. Parallel Distrib. Syst. 19, 12, 1657--1670. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Xiao, X. and Lee, J. 2010. A true O(1) parallel deadlock detection algorithm for single-unit resource systems and its hardware implementation. IEEE Trans. Parallel Distrib. Syst. 21, 1, 4--19. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Instant Multiunit Resource Hardware Deadlock Detection Scheme for System-on-Chips

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Article Metrics

          • Downloads (Last 12 months)4
          • Downloads (Last 6 weeks)0

          Other Metrics

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!