Skip to main content

On the Design of Two-Level Pipelined Processor Arrays

  • Chapter
Book cover Application-Driven Architecture Synthesis

Abstract

This chapter addresses the design of two-level pipelined processor arrays. The parallelism of algorithms is exploited both in word-level and in bit-level operations. Given an algorithm in the form of a Fortran-like nested loop program, a two-step procedure is applied. First, any word-level parallelism is exploited by using loop transformation techniques, which include a uniformization method, if required, and a decomposition of the index space into disjoint sets, which may be executed in parallel. Second, the architecture of the processing element is specified in detail by analyzing its operation at the bit level. Processors using any arithmetic system may be described. The overall design methodology is illustrated by systematically deriving a processor array for the one-dimensional (1-D) convolution algorithm. It is based on an inner product step processor that utilizes residue number system arithmetic.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 169.99
Price excludes VAT (USA)
  • Durable hardcover 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. M. Birbas, D. Soudris, and C. Goutis. Design methodology for mapping iterative algorithms on array architectures. Proc. IEEE Int. Symp. on Circuits and Systems, Singapore, pages 3058–3061, 1991.

    Google Scholar 

  2. J. Bu. Systematic design of regular VLSI processor arrays. PhD thesis, Delft Univ. of Technology, May 1990.

    Google Scholar 

  3. E. D‘Hollander. Partitioning and labeling of index sets in do loops with constant dependence vectors. Proc. IEEE Int. Conf. on Parallel Processing, Vol. II, pages 139–144, 1989.

    Google Scholar 

  4. K. Hwang. Computer arithmetic: principles, architecture, and design. John WileyaaaaSons Inc., New York, 1979.

    Google Scholar 

  5. R. Karp, R. Miller, and S. Winograd. The organization for uniform recurrence equations. Journal of the Association for Computing Machinery, 14, pages 563–590, 1967.

    Article  MathSciNet  MATH  Google Scholar 

  6. H. T. Kung and M. Lam. Wafer-scale integration and two-level pipelined implementations of systolic arrays. Journal of Parallel and Distributed Computing, pages 32–63, 1984.

    Google Scholar 

  7. H. T. Kung and C. Leiserson. Systolic arrays for VLSI. SIAM Sparse Matrix Proceedings, pages 245–282, Nov 1978.

    Google Scholar 

  8. S. Y. Kung. VLSI Array Processors. Prentice-Hall, New Jersey, 1988.

    Google Scholar 

  9. E. Kyriakis-Bitzaros and C. Goutis. An efficient decomposition technique for mapping nested loops with constant dependencies onto regular array processors. Journal Parallel and Distributed Computing, 16, pages 258–264, 1992.

    Article  Google Scholar 

  10. L. Lamport. The parallel execution of do loops. Com. of ACM, pages 83–93, Feb 1974.

    Google Scholar 

  11. J. McCanny, J. McWhirter, and S. Kung. The use of data dependence graphs in the design of bit-level systolic arrays. IEEE Trans, on Acoustics, Speech, and Signal Processing, 38, pages 787–793, May 1990.

    Article  Google Scholar 

  12. D. Moldovan and J. Fortes, Partitioning and mapping algorithms into fixed size systolic arrays. IEEE Trans, on Computers, C-35, pages 1–12, 1986.

    Article  MATH  Google Scholar 

  13. V. Paliouras, D. Soudris, and T. Stouraitis. Systematic derivation of the processing element of a systolic array based on residue number system. Proc. IEEE Int. Symp. on Circuits and Systems, San Diego, CA, 1992.

    Google Scholar 

  14. C. Papadimitriou and K. Steiglitz. Combinatorial optimization, algorithms and complexity. Prentice Hall, New Jersey, 1982.

    Google Scholar 

  15. J. Peir and R. Cytron. Minimum distance: a method for partitioning recurrences for multiprocessors. IEEE Trans, on Computers, C-38, number 8, pages 1203–1211, 1989.

    Article  Google Scholar 

  16. C. Polychronopoulos. Parallel programming and compilers. Kluwer Academic Publishers, Boston, 1988.

    Book  MATH  Google Scholar 

  17. P. Quinton and V. Van Dongen. The mapping of linear recurrence equations on regular arrays. Journal of VLSI Signal Processing, 1, pages 95–113, Kluwer, Boston, 1989.

    Article  MATH  Google Scholar 

  18. S. Rajopadhye. Synthesizing systolic arrays with control signals from recurrence equations. Distributed Computing, 3, pages 88–105, 1989.

    Article  Google Scholar 

  19. S. Rao and T. Kailath. Regular iterative algorithms and their implementation on processor arrays. Proc. of IEEE, 76, number 3, pages 259–269, 1988.

    Article  Google Scholar 

  20. V. Roychowdhury, S. Rao, L. Thiele, and T. Kailath. On the localization of algorithms for VLSI processor arrays. In R. Brodersen, H. Moscovitz, editors, VLSI Signal Processing III, pages 459–470, IEEE Press, 1988.

    Google Scholar 

  21. W. Shang and J. Fortes. Independent partitioning of algorithms with uniform dependencies. Proc. of Int. Conf. on Parallel Processing, Vol. II, pages 26–33, 1988.

    Google Scholar 

  22. D. Soudris and C. Goutis. Mapping nested loops with if statements. ESPRIT 3281 technical report, PU/M30/C2/4 L. Svensson, editor, IMEC,Belgium, Feb 1992.

    Google Scholar 

  23. F. Taylor. Residue arithmetic: a tutorial with examples. IEEE Computer Magazine, pages 40–62, May 1984.

    Google Scholar 

  24. L. Thiele. On hierarchical design of VLSI processor arrays. Proc. IEEE Int. Symp. on Circuits and Systems, pages 2517–2520,1988.

    Google Scholar 

  25. V. Van Dongen. Quasi-regular arrays: definition and design methodology. Proc. IEEE Int. Conf. on Systolic Arrays, 1989.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer Science+Business Media New York

About this chapter

Cite this chapter

Soudris, D.J., Kyriakis-Bitzaros, E.D., Paliouras, V.R., Birbas, M.K., Stouraitis, T., Goutis, C.E. (1993). On the Design of Two-Level Pipelined Processor Arrays. In: Catthoor, F., Svensson, L. (eds) Application-Driven Architecture Synthesis. The Kluwer International Series in Engineering and Computer Science, vol 228. Springer, Boston, MA. https://doi.org/10.1007/978-1-4615-3242-2_5

Download citation

  • DOI: https://doi.org/10.1007/978-1-4615-3242-2_5

  • Publisher Name: Springer, Boston, MA

  • Print ISBN: 978-1-4613-6425-2

  • Online ISBN: 978-1-4615-3242-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics