skip to main content
article

Dual Flow Nets: Modeling the control/data-flow relation in embedded systems

Published: 01 February 2006 Publication History

Abstract

This paper addresses the interrelation between control and data flow in embedded system models through a new design representation, called Dual Flow Net (DFN). A modeling formalism with a very close-fitting control and data flow is achieved by this representation, as a consequence of enhancing its underlying Petri net structure. The work presented in this paper does not only tackle the modeling side in embedded systems design, but also the validation of embedded system models through formal methods. Various introductory examples illustrate the applicability of the DFN principles, whereas the capability of the model to with complex designs is demonstrated through the design and verification of a real-life Ethernet coprocessor.

References

[1]
ANSI/IEEE. 1991. Information Processing Systems---Local Area Networks---Part 3: Carrier Sense Multiple Access with colision Detection (CSMA/CD) access method and physical Layer Specifications. IEEE, New York.
[2]
Bellini, P., Mattolini, R., and Nesi, P. 2000. Temporal Logics for Real-Time System Specification. ACM Computing Surveys 32, 1 (Mar.), 12--42.
[3]
Brage, J. P. 1993. Foundations of a high-level synthesis system. Ph.D. thesis, Department of Computer Science, Technical University of Denmark, Lyngby, Denmark.
[4]
Burch, J. R., Clarke, E. M., McMillan, K. L., Dill, D. L., and Hwang, L. J. 1992. Symbolic Model Checking: 1020 states and beyond. Imperial College of Science, Technology and Medicine 98, 2, 142--170.
[5]
Cadence. 2001. The SMV Model Checker. http://www-cad.eecs.berkeley.edu/~kenmcmil/smv/.
[6]
Clarke, E. M., Grumberg, O., and Peled, D. A. 1999. Model Checking. MIT Press, Cambridge, MA.
[7]
Cortés, L. A., Eles, P., and Peng, Z. 2000. Verification of Embedded Systems using a Petri Net based Representation. In Proceedings of the 13th International Symposium on System Level Synthesis (ISSS). Madrid, Spain. 149--155.
[8]
Dimiev, S. and Markov, K. 2002. Gauss Integers and Diophantine Figures. In Proceedings of the 31st Conference on Union of Bulgarian's mathematicians. Borovetz, Bulgaria.
[9]
Eles, P., Kuchcinski, K., Peng, Z., Doboli, A., and Pop, P. 1998. Scheduling of conditional process graphs for the synthesis of embedded systems. In Proceedings of the 1st Design, Automation and Test in Europe (DATE). Paris, France.
[10]
Emerson, E. A. 1990. Temporal and Modal Logic. In Handbook of Theoretical Computer Science, J. van Leeuwen, Ed. vol. B: Formal Models and Semantics. Elseiver Science, New York, Chapter 16, 995--1072.
[11]
Emerson, E. A. and Halpern, J. Y. 1986. ‘Sometimes’ and ‘Not Never’ revisted: on Branching versus Linear Time Temporal Logic. ACM 33, 1, 151--178.
[12]
Esser, R. 1996. An object oriented petri net approach to embedded system design. Ph.D. thesis, Computer Engineering and Networks Lab (TIK), Swiss Federal Institute of Technology (ETH) Zurich, Gloriastrasse 35, CH-8092 Zurich.
[13]
Finkel, A. and Memmi, G. 1985. An Introduction to FIFO nets --Monogeneous nets: A subclass of FIFO nets. Theoret. Computer Sci. 35, 191--214.
[14]
Gajski, D. D., Ed. 1987. Silicon Compilers. Addison--Wesley, Reading, MA.
[15]
Gajski, D. D. 1997. Principles of Digital Design. Prentice-Hall, Englewood Cliff, NJ.
[16]
Genrich, H. 1987. Predicate/Transition-Nets. In Advances in Petri Nets 1986 Part I: Petri Nets, central models and their properties, W. Brauer, W. Reisig, and G. Rozenberg, Eds. Lecture Notes in Computer Science, vol. 254. Springer-Verlag. 207--247.
[17]
Gill, A. 1962. Introduction to the Theory of Finite-State Machines. Electronic Sciences Series. McGraw-Hill, New York, 10020.
[18]
Grode, J., Madsen, J., and Jerraya, A.-A. 1998. Performance Estimation for Hardware/Software Codesign using Hierarchical Colored Petri Nets. In International Symposium on High Performance Computing.
[19]
Gupta, R. K. and De Micheli, G. 1992. System Synthesis via Hardware-Software Co-Design. Technical Report CSL-TR-92-548, Stanford University, Computer Systems Laboratory.
[20]
Jensen, K. 1992. Coloured Petri Nets---Basic Concepts, Analysis Methods and Practical Use. EATCS Monographs in Theoretical Computer Science 1, Basic Concepts, 1--234.
[21]
Jensen, K. 1994. Coloured Petri Nets---Basic Concepts, Analysis Methods and Practical Use. EATCS Monographs in Theoretical Computer Science 2, Analysis Methods.
[22]
Jensen, K. 1997. Coloured Petri Nets---Basic Concepts, Analysis Methods and Practical Use. EATCS Monographs in Theoretical Computer Science 3, Practical Use.
[23]
Kern, C. and Greenstreet, M. R. 1999. Formal Verification in Hardware Design: A Survey. ACM Transaction on Design Automation of Embedded Systems 4, 2 (Apr.), 1--67.
[24]
Kleinjohann, B., Tacken, J., and Tahedl, C. 1997. Towards a Complete Design Method for Embedded Systems Using Predicate/Transition-Nets. In Proceedings of the 13th IFIP WG 10.5 Conference on Computer Hardware Description Languages and Their Applications (CHDL). Toledo, Spain.
[25]
Kupferman, O. and Vardi, M. Y. 1995. On the Complexity of Branching Modular Model Checking. In 6th International Conference on Concurrency Theory (CONCUR). Philadelphia, Pennsylvania.
[26]
Lee, E. A. and Messerschmitt, D. G. 1987. Synchronous Dataflow. Proceedings of the IEEE 75, 9 (Sept.), 1235--1245.
[27]
McMillan, K. L. 1993. Symbolic Model Checking. Kluwer Academic Pub, Boston, MA.
[28]
Merlin, P. and Faber, D. J. 1976. Recoverability of Communication Protocols. IEEE Transaction on Communications 24, 9, 1036--1043.
[29]
Murata, T. 1989. Petri Nets: Properties, Analysis and Applications. Proceedings of the IEEE 77, 4 (Apr.), 541--580.
[30]
Naik, V. G. and Sistla, A. P. 1994. Modeling and Verification of a Real Life Protocol Using Symbolic Model Checking. In Proceedings of the 6th International Conference on Computer Aided Verification. Lecture Notes in Computer Science, vol. 818. Stanford, CA.
[31]
Narayan, S. and Vahid, F. 1992. Modeling with SpecCharts. Technical Report ICS-TR-90-20, University of California, Irvine, Department of Information and Computer Science. Oct.
[32]
Österling, A., Benner, T., and Ernst, R. 1997. Code Generation and Context Switching for Static Scheduling of Mixed Control and Data Oriented HW/SW Systems. In Proceedings of the APCHDL'97. Taiwan. 131--135.
[33]
Peng, Z. 1987. A formal methodology for automated synthesis of vlsi systems. Ph.D. thesis, Linköping University.
[34]
Peng, Z. and Kuchcinski, K. 1994. Automated Transformation of Algorithms into Register-Transfer Level Implementations. IEEE Transaction on Computer-Aided Design of Integrated Circuits and Systems 13, 2 (Feb.), 150--166.
[35]
Pnueli, A. 1985. Linear and Branching Structures in the Semantics and Logics of Reactive Systems. In 12th International Colloquium on Automata, Languages, and Programming. Springer-Verlag, Berlin, 15--32.
[36]
Staunstrup, J. and Wolf, W., Eds. 1997. Hardware/Software Co-Design: Principles and Practice. Kluwer Academic Publishers, Dordrecht, The Netherlands.
[37]
Strehl, K., Thiele, L., Gries, M., Ziegenbein, D., Ernst, R., and Teich, J. 2001. FunState---an internal design representation for codesign. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 9, 4 (Aug.), 524--544.
[38]
Vardi, M. Y. 2001. Branching vs. linear time: Final showdown. In European Joint Conference on Theory and Practice of Software. Genova, Italy.
[39]
Wang, F. 2004. Formal Verification of Timed Systems: A Survey and Perspective. Proceedings of the IEEE 92, 8 (Aug.), 1283--1305.
[40]
Wolf, W. H. 2003. A Decade of Hardware/Software Codesign. IEEE Computer 36, 4 (Apr.), 38--43.
[41]
Ziegenbein, D., Richter, K., Ernst, R., Thiele, L., and Teich, J. 1999. SPI---An Internal Representation for Heterogeneously Specified Embedded Systems. In Proceedings of the GI/ITG/GMM Workshop “Entwurfsmethoden & Beschreibungssprachen.”” Braunschweig, Germany.

Cited By

View all
  • (2024)A hovering swarm particle swarm optimization algorithm based on node resource attributes for hardware/software partitioningThe Journal of Supercomputing10.1007/s11227-023-05603-780:4(4625-4647)Online publication date: 1-Mar-2024
  • (2021)DICER 2.0: A New Model Checker for Data-Flow Errors of Concurrent Software SystemsMathematics10.3390/math90909669:9(966)Online publication date: 25-Apr-2021
  • (2017)PRESGenProceedings of the 2017 Workshop on Software Engineering Methods for Parallel and High Performance Applications10.1145/3085158.3086158(13-20)Online publication date: 26-Jun-2017
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Embedded Computing Systems
ACM Transactions on Embedded Computing Systems  Volume 5, Issue 1
February 2006
258 pages
ISSN:1539-9087
EISSN:1558-3465
DOI:10.1145/1132357
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Journal Family

Publication History

Published: 01 February 2006
Published in TECS Volume 5, Issue 1

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. CTL
  2. Dual flow nets
  3. LTL
  4. Petri nets
  5. embedded systems
  6. formal verification
  7. modeling
  8. symbolic model checking
  9. tripartite graph

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

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

Other Metrics

Citations

Cited By

View all
  • (2024)A hovering swarm particle swarm optimization algorithm based on node resource attributes for hardware/software partitioningThe Journal of Supercomputing10.1007/s11227-023-05603-780:4(4625-4647)Online publication date: 1-Mar-2024
  • (2021)DICER 2.0: A New Model Checker for Data-Flow Errors of Concurrent Software SystemsMathematics10.3390/math90909669:9(966)Online publication date: 25-Apr-2021
  • (2017)PRESGenProceedings of the 2017 Workshop on Software Engineering Methods for Parallel and High Performance Applications10.1145/3085158.3086158(13-20)Online publication date: 26-Jun-2017
  • (2016)Checking the Inconsistent Data in Concurrent Systems by Petri Nets with Data Operations2016 IEEE 22nd International Conference on Parallel and Distributed Systems (ICPADS)10.1109/ICPADS.2016.0073(501-508)Online publication date: Dec-2016
  • (2013)Coverage-directed observability-based validation for embedded softwareACM Transactions on Design Automation of Electronic Systems10.1145/2442087.244209018:2(1-20)Online publication date: 11-Apr-2013
  • (2011)Expanded Petri-Net Modeling for Real Time Embedded System Context-awareness ServiceThe Journal of the Korea Contents Association10.5392/JKCA.2011.11.1.01611:1(16-25)Online publication date: 28-Jan-2011
  • (2011)Vital Signal Monitoring Simulation System by Various Visual StimulusThe Journal of the Korea Contents Association10.5392/JKCA.2011.11.1.00111:1(1-8)Online publication date: 28-Jan-2011
  • (2011)Scheduling Real-Time Embedded Systems Based on TCPNIAJournal of Software10.4304/jsw.6.3.340-3486:3Online publication date: 21-Mar-2011
  • (2009)A Petri net-based model for verification of obligations and accountability in cooperative systemsIEEE Transactions on Systems, Man, and Cybernetics, Part A: Systems and Humans10.1109/TSMCA.2008.201075139:2(299-308)Online publication date: 1-Mar-2009
  • (2007)Dual Workflow Nets: Mixed Control/Data-Flow Representation for Workflow Modeling and VerificationAdvances in Web and Network Technologies, and Information Management10.1007/978-3-540-72909-9_46(433-444)Online publication date: 2007
  • Show More Cited By

View Options

Login options

Full Access

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