Skip to main content

The VLSI Complexity of Sorting

  • Chapter
VLSI Systems and Computations

Abstract

The area-time complexity of sorting is analyzed under an updated model of VLSI computation. The new model has fewer restrictions on chip I/O than previous models. Also, the definitions of area and time performance have been adjusted to permit fair comparisons between pipelined and non-pipelined designs.

Using the new model, this paper briefly describes eleven different designs for VLSI sorters. These circuits demonstrate the existence of an area*time2 tradeoff for the sorting problem. The smallest circuit is only large enough to store a few elements at a time; it is, of course, rather slow at sorting N elements. The largest design solves a sorting problem in only 0(lg N) clock cycles. The area*time2 performance figure for all but three of the designs is close to the limiting value, Ω(N2).

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. H. Abelson and P. Andreae, “Information Transfer and Area-Time Tradeoffs for VLSI Multiplication,” CACM Vol. 23, No. 1, pp. 20–23, January 1980.

    MathSciNet  MATH  Google Scholar 

  2. Philip K . Armstrong, U.S. Patent 4131947, issued December 26, 1978.

    Google Scholar 

  3. R. P. Brent and H. T. Kung, “A Regular Layout for Parallel Adders,” CMU-CS-79-131, Carnegie-Mellon Computer Science Dept., June 1979. To appear in IEEE-TC.

    Google Scholar 

  4. R. P. Brent and H. T. Kung, “The Area-Time Complexity of Binary Multiplication,” J ACM Vol. 28, No. 3, pp. 521–534, July 1981.

    Article  MathSciNet  MATH  Google Scholar 

  5. B. Chazelle and L. Monier, “Towards More Realistic Models of Computation for VLSI,” Proc. 11th Annual ACM Symp. on Theory of Computing, pp. 209–213, April 1979.

    Google Scholar 

  6. Kin-Man Chung, Fabrizio Luccio, and C. K. Wong, “On the Complexity of Sorting in Magnetic Bubble Memory Systems,” IEEE-TC Vol. C-29, No. 7, pp. 553–562, July 1980.

    MathSciNet  Google Scholar 

  7. A. Despain, “Very Fast Fourier Transform Algorithms for Hardware Implementation,” IEEE-TC Vol. C-28, No. 5, pp. 333–341, May 1979.

    MathSciNet  Google Scholar 

  8. S. A. Evans, “Scaling I2L for VLSI,” IEEE Journal of Solid-State Circuits, Vol. SC-14, No. 2, pp. 318–326, April 1979.

    Article  Google Scholar 

  9. J-W Hong, “On Similarity and Duality of Computation,” unpublished manuscript, Peking Municipal Computing Center, China.

    Google Scholar 

  10. J-W Hong and H. T. Kung, “I/O Complexity: The Red-Blue Pebble Game,” Proc. 13th Annual ACM Symp. on Theory of Computing, pp. 326–333, May 1981.

    Google Scholar 

  11. R. B. Johnson, “The Complexity of a VLSI Adder,” Info.Proc. Letters, Vol. 11, No. 2, pp. 92–93, October 1980.

    Article  MATH  Google Scholar 

  12. M. B. Ketchen, “AC Powered Josephson Miniature System,” 1980 Int’l Conf. on Circuits and Computers, IEEE Computer Society, pp. 874–877, October 1980.

    Google Scholar 

  13. D. Kleitman, F. T. Leighton, M. Lepley, and G. L. Miller, “New Layouts for the Shuffle-Exchange Graph,” Extended Abstract, MIT Applied Mathematics Dept., 1981.

    Google Scholar 

  14. D. E. Knuth, The Art of Computer Programming, Vol. 3: Sorting and Searching, Addison-Wesley, 1973.

    Google Scholar 

  15. Zvi M. Kedem and Alessandro Zorat, “Replication of Inputs May Save Computational Resources in VLSI,” Proc. 22nd Symp, on the Foundations of Computer Science, IEEE Computer Society, October 1981.

    Google Scholar 

  16. C. E. Leiserson, “Area-Efficient Graph Layouts (for VLSI),” Proc. 21st Symp. on the Foundations of Computer Science, IEEE Computer Society, October 1980.

    Google Scholar 

  17. Richard J. Lipton and Robert Sedgewick, “Lower Bounds for VLSI,” Proc. 13th Annual ACM Symp. on Theory of Computing, pp. 300–307, May 1981.

    Google Scholar 

  18. C. Mead and L. Conway, Introduction to VLSI Systems, Addison-Wesley, 1980.

    Google Scholar 

  19. Hans P. Moravec, “Fully Interconnecting Multiple Computers with Pipelined Sorting Nets,” IEEE-TC Vol. C-28, No. 10, pp. 795–798, October 1979.

    Google Scholar 

  20. F. Preparata and J. Vuillemin, “The Cube-Connected Cycles: A Versatile Network for Parallel Computation,” 20th Annual Symp. on Foundations of Computer Science, IEEE Computer Society, pp. 140–147, October 1979.

    Google Scholar 

  21. F. Preparata and J. Vuillemin, “Area-Time Optimal VLSI Networks for Multiplying Matrices,” Info. Proc. Letters, Vol. 11, No. 2, pp. 77–80, October 1980.

    Article  MATH  Google Scholar 

  22. J. Savage, “Area-Time Tradeoffs for Matrix Multiplication and Related Problems in VLSI Models,” TR-CS-50, Brown University Dept. of Computer Science, August 1979.

    Google Scholar 

  23. J. Savage, “Planar Circuit Complexity and the Performance of VLSI Algorithms,” TR-CS-68, Brown University Dept. of Computer Science, July 1981.

    Google Scholar 

  24. C. L. Seitz, “Self-timed VLSI Systems,” Proc. Caltech Conf on VLSI Caltech Computer Science Dept., pp. 345–356, January 1979.

    Google Scholar 

  25. H. Stone, “Parallel Processing with the Perfect Shuffle,” IEEE-TC Vol. C-20, No. 2, pp. 153–161, February 1971.

    Google Scholar 

  26. C. D. Thompson, A Complexity Theory for VLSI, Ph.D. Thesis, Carnegie-Mellon Computer Science Dept., August 1980.

    Google Scholar 

  27. C. D. Thompson, “Fourier Transforms in VLSI,” UCB/ERL M80/51, October 1980.

    Google Scholar 

  28. J. Vuillemin, “A Combinatorial Limit to the Computing Power of VLSI Circuits,” Proc. 21st Symp. on the Foundations of Computer Science, IEEE Computer Society, pp. 294–300, October 1980.

    Google Scholar 

  29. A. C. Yao, “Some Complexity Questions Related to Distributive Comptuting,” Proc. 11th Annual ACM Symp. on Theory of Computing, pp. 209–213, May 1979.

    Google Scholar 

  30. A. C. Yao, “The Entropie Limits of VLSI Computations,” Proc. 13th Annual ACM Symp. on Theory of Computing, pp. 308–311, May 1981.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1981 Carnegie-Mellon University

About this chapter

Cite this chapter

Thompson, C.D. (1981). The VLSI Complexity of Sorting. In: Kung, H.T., Sproull, B., Steele, G. (eds) VLSI Systems and Computations. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-68402-9_13

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-68402-9_13

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-68404-3

  • Online ISBN: 978-3-642-68402-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics