Assisting Refinement in System-on-Chip Design

  • Hocine Mokrani
  • Rabéa Ameur-Boulifa
  • Emmanuelle Encrenaz-Tiphene
Part of the Lecture Notes in Electrical Engineering book series (LNEE, volume 311)


With the increasing complexity of systems on chip, designers have adopted layered design methodologies, where the description of systems is made by steps. Currently, those methods do not ensure the preservation of properties in the process of system development. In this paper, we present a system on chip design method, based on model transformations—or refinements—in order to guarantee the preservation of functional correctness along the design flow. We also provide experimental results showing the benefits of the approach when property verification is concerned.


System on a Chip (SoC) Architecture exploration Platform-Based Design (PBD) System modeling Formal verification Communication refinement Property-preservation checking 


  1. 1.
    Abdi S, Gajski D (2006) Verification of system level model transformations. Int J Parallel Prog 34:29–59. doi: 10.1007/s10766-005-0001-y CrossRefMATHGoogle Scholar
  2. 2.
    Abrial JR (1996) The B-book: assigning programs to meanings. Cambridge University Press, New YorkCrossRefMATHGoogle Scholar
  3. 3.
    Apvrille L, Muhammad W, Ameur-Boulifa R, Coudert S, Pacalet R (2006) A UML-based environment for system design space exploration. In: Proceedings of the 13th IEEE international conference on electronics, circuits and systems (ICECS) 2006, pp 1272–1275. doi: 10.1109/ICECS.2006.379694
  4. 4.
    Arnold A (1994) Finite transition systems—semantics of communicating systems. Prentice Hall, New JerseyMATHGoogle Scholar
  5. 5.
    Berthomieu B, Bodeveix J, Farail P, Filali M, Garavel H, Gaufillet P, Lang F, Vernadat F (2008) Fiacre: an intermediate language for model verification in the TOPCASED environment. In: Proceedings of the embedded real time software and systems (ERTS2) 2008, Toulouse, FranceGoogle Scholar
  6. 6.
    Colley JL (2010) Guarded atomic actions and refinement in a system-on-chip development flow: Bridging the specification gap with Event-B. PhD thesis, University of SouthamptonGoogle Scholar
  7. 7.
    Garavel H, Lang F, Mateescu R, Serwe W (2013) CADP 2011: A toolbox for the construction and analysis of distributed processes. Int J Softw Tools Technol Transfer (STTT) 15:89–107. doi: 10.1007/s10009-012-0244-z CrossRefGoogle Scholar
  8. 8.
    Kahn G (1974) The semantics of a simple language for parallel programming. In: Rosenfeld JL (ed) Information Processing ’74: Proceedings of the IFIP Congress, North-HollandGoogle Scholar
  9. 9.
    Kempf T, Doerper M, Leupers R, Ascheid G, Meyr H, Kogel T, Vanthournout B (2005) A modular simulation framework for spatial and temporal task mapping onto multi-processor SOC platforms. In: Proceedings of DATE’05. Munich, Germany, pp 876–881Google Scholar
  10. 10.
    Lieverse P, van der Wolf P, Deprettere E (2001) A trace transformation technique for communication refinement. In: CODES’01: Proceedings of the ninth international symposium on Hardware/software codesign, ACMGoogle Scholar
  11. 11.
    Marculescu R, Ümit Y (2006) Computation and communication refinement for multiprocessor SoC design: A system-level perspective. ACM Trans Des Autom Electron Syst 11:564–592CrossRefGoogle Scholar
  12. 12.
    Mateescu R, Thivolle D (2008) A model checking language for concurrent value-passing systems. In: Proceedings of the 15th international symposium on formal methods (FM), Springer, Berlin, pp 148–164. doi: 10.1007/978-3-540-68237-0_12
  13. 13.
    Mokrani H (2014) Assistance au raffinement dans la conception de systèmes embarqués. PhD thesis, LTCI/Telecom-ParisTechGoogle Scholar
  14. 14.
    Mokrani H, Ameur-Boulifa R, Coudert S, Encrenaz E (2011) Approche pour l’intégration du raffinement formel dans le processus de conception des SoCs. Journal Européen des Systèmes automatisés, MSR’11 pp 221–236Google Scholar
  15. 15.
    Pimentel A, Erbas C, Polstra S (2006) A systematic approach to exploring embedded system architectures at multiple abstraction levels. IEEE Trans Comput 55(2):99–112CrossRefGoogle Scholar
  16. 16.
    Pratt VR (1984) The pomset model of parallel processes: Unifying the temporal and the spatial. In: Proceedings of the seminar on concurrencyGoogle Scholar
  17. 17.
    Vahid F, Givargis T (2002) Embedded system design—a unified hardware/software introduction. Wiley, New YorkGoogle Scholar
  18. 18.
    Zivkovoc V, Deprettere E, van der Wolf P, de Kock E (2002) Design space exploration of streaming multiprocessor architectures. In: Proceedings of SIPS’02, San Diego, CAGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Hocine Mokrani
    • 1
  • Rabéa Ameur-Boulifa
    • 1
  • Emmanuelle Encrenaz-Tiphene
    • 2
    • 3
  1. 1.Institut Télécom, Télécom ParisTech, CNRS-LTCISophia-AntipolisFrance
  2. 2.Sorbonne Universités, Université Pierre et Marie Curie Paris 6UMR 7606, LIP6ParisFrance
  3. 3.CNRSUMR 7606, LIP6ParisFrance

Personalised recommendations