Skip to main content

Parallel Simulation of Digital Logic Circuits Using Message Passing via CSP as an Educational Tool

  • Conference paper
  • First Online:
Human-Computer Interaction (HCI-COLLAB 2019)

Abstract

The present work shows an educational application of practical utility for the learning of the Parallel and Concurrent Programming with passage of messages, through the simulation of the digital logical circuits, as an excellent example of the inherent parallelism in the behavior of this type of systems. The Java class library called JPMI is used, which provides the base classes to generate processes, channels and composition of processes: sequential, parallel and alternative; for the parallel implementation of the most useful gates in the area of digital systems such as, the AND, OR and NOT gates. It shows a basic case study of the use of the JPMI library for the parallel implementation of a simple digital logic circuit and with this implementation simulate its logical behavior. But the full implementation of a 4-bit digital logic counter as an educational application or simulator is also shown. The objective of this work is, on the one hand, to demonstrate that the proposed implementations help the student through the simulation to understand and learn both the construction and the functioning of the digital systems, and on the other hand to show the inherent relationship of the parallelism with the operation of these systems.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

References

  1. Fujimoto, R.M.: Parallel and Distributed Simulation Systems. Wiley, Hoboken (2000). https://doi.org/10.1109/wsc.1999.823061

  2. Lea, D.: Concurrent Programming in Java. Addison-Wesley, Boston (1996)

    MATH  Google Scholar 

  3. Hiderink, J., Broenink, J., Bakkers, A.: Communicating Threads for Java. University of Twente: Draf-Rev 5, Netherlands (2000). https://doi.org/10.1109/isorc.2000.839557

  4. Davies, J., Schneider, S.: Real-Time CSP, UK (1995)

    Google Scholar 

  5. Hoare, C.A.R.: Communicating Sequential Processes. Prentice Hall, London (2003)

    MATH  Google Scholar 

  6. Andrews, G.R.: Concurrent Programming. Principles and Practice. Benjamin Cummings Publishing Company Inc., San Francisco (1991)

    MATH  Google Scholar 

  7. Capel, I.M., Rodriguez, V.S: Sistemas Concurrentes y Distribuidos. Teorìa y Pràctica: Copycentro Editorial, España (2012)

    Google Scholar 

  8. Farley, J.: JAVA Distributed Computing, pp. 138–188. O’Really, Newton (1998)

    Google Scholar 

  9. Cataldi, Z., Lage, F.J., Dominighini, C.: Fundamentos para el uso de simulaciones en la enseñanza. Revista de Informática Educativa y Medios Audiovisuales 10(17), 8–16 (2013). ISSN 1667-8338

    Google Scholar 

  10. Alzugaray, M., Carreri, R., Marino, L.A.: El software de Simulación en Física. Herramienta para el aprendizaje de contenidos. V Congreso de Tecnología en Educación y Educación en Tecnología (2010)

    Google Scholar 

  11. Morris, M.: Diseño Digital. Pearson Ed – Prentice Hall, México (2003). https://doi.org/10.1109/pgec.1964.263740

    Article  Google Scholar 

  12. Sánchez Santos, V., et al.: Electrónica Digital. Facultad de Ingeniería Mecánica Eléctrica (FIME). Universidad Veracruzana, México (2008). https://sites.google.com/site/electronicadigitaluvfime/home

  13. Palma, J.T., Garrido, M.C., et al.: Programación Concurrente. Thomson, España (2003)

    Google Scholar 

  14. Arnold, K., Gosling, J.A.: The Java Programming Language. Addison-Wesley, Boston (1996)

    MATH  Google Scholar 

  15. Lewis, B., Berg, D.J.: A Guide to Multithreading Programming. Prentice Hall, Upper Saddle River (1996)

    Google Scholar 

  16. Wilkinson, B., Allen, M.: Parallel Programming. Techniques and Applications Using Networked Workstations and Parallel Computers, pp. 38–81, 227–264. Prentice Hall, Upper Saddle River (2000)

    Google Scholar 

  17. Parlamento Europeo: Comisión de las Comunidades Europeas sobre las competencias clave para el aprendizaje permanente, Bruselas (2005)

    Google Scholar 

  18. Valiente, A., Galdeano, C., Professional Competences. Educación Química, vol. 21, no. 1, México (2010)

    Google Scholar 

  19. COPA: Concepts and Methods of the Competency Outcomes and Performance Assessment, New York (1999)

    Google Scholar 

  20. Spencer, L.M., Spencer, S.M.: Competence at Work. Models for Superior Performance. Wiley, New York (1993)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Mario Rossainz-López , Carmen Cerón-Garnica , Etelvina Archundia-Sierra , Patricia Cervantes-Márquez , David Carrasco-Limón or Bárbara Sánchez-Rinza .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Rossainz-López, M., Cerón-Garnica, C., Archundia-Sierra, E., Cervantes-Márquez, P., Carrasco-Limón, D., Sánchez-Rinza, B. (2019). Parallel Simulation of Digital Logic Circuits Using Message Passing via CSP as an Educational Tool. In: Ruiz, P., Agredo-Delgado, V. (eds) Human-Computer Interaction. HCI-COLLAB 2019. Communications in Computer and Information Science, vol 1114. Springer, Cham. https://doi.org/10.1007/978-3-030-37386-3_21

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-37386-3_21

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-37385-6

  • Online ISBN: 978-3-030-37386-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics