Skip to main content

Advertisement

Log in

Emulation and verification framework for MPSoC based on NoC and RISC-V

  • Published:
Design Automation for Embedded Systems Aims and scope Submit manuscript

Abstract

Nowadays, embedded systems have multiprocessing capabilities to meet the complexity of modern applications, such as signal processing and multimedia. However, as the embedded system’s functionality expands, complexity increases and numerous constraints become necessary. Constraints, such as high performance, low power consumption, and development time, became critical demands. Therefore, emulation and verification are necessary to assess the correctness and performance of such architectures and accelerate the development phase. We propose a robust, scalable, and flexible hardware-software emulation framework that focuses on design space exploration for MPSoC architectures. Our framework supports 2D and 3D NoC-based architectures built on an open-source RISC-V. According to user configuration, the framework auto-generates the corresponding universal verification methodology environment to explore the design space, evaluate the performance, and compare the results for wide configurations and parameters. Then, it provides the best solution based on provided user criteria. Our framework uses an emulation co-modeling technology to enable the designer to explore and detect architecture failures. We provide numerous experimental results for different 2D and 3D NoC architectures to assess their correctness and performance, including energy and power consumption. Noticeably, results show an acceleration by \(40\times \) in comparison to software simulators.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23

Similar content being viewed by others

Data availability

Data-sets generated during and/or analyzed during the current study are available from the first author upon reasonable request.

Notes

  1. The length of time from the idea of a product until its availability on consumer markets.

References

  1. Hyeonguk J, Kyuseung H, Sukho L, Jae-Jin L, Woojoo L (2019) Mmnoc: embedding memory management units into network-on-chip for lightweight embedded systems. IEEE Access 7:80011–80019

    Article  Google Scholar 

  2. Muhammad E, Abdelhafid B (2011) A hardwired noc infrastructure for embedded systems on fpgas. Microprocess Microsyst 35:200–216

    Article  Google Scholar 

  3. Sgroi M, Sheets M, Mihal A, Keutzer K, Malik S, Rabaey J, Sangiovanni-Vencentelli A (2001)Addressing the system-on-a-chip interconnect woes through communication-based design. In: Proceedings of the 38th annual Design Automation Conference. ACM, pp 667–672

  4. Elmiligi H, Morgan AA, El-Kharashi MW, Gebali F (2007) A topology-based design methodology for networks-on-chip applications. In: Zorian Y, ElTahawy H, Ivanov A, Salem A (eds) Proceedings of the second IEEE International Design and Test Workshop (IDT 2007), Cairo, Egypt, pp 61–65

  5. Morgan AA, Elmiligi H, El-Kharashi MW, Gebali F (2010) Multiobjective optimization for networks-on-chip architectures using genetic algorithms. In: IEEE International Symposium on Circuits and Systems, 2010. ISCAS 2010. IEEE, Paris, pp 3725–3728

  6. Said M, Hassan H, Kim H, Khamis M (2017) A novel power reduction technique using wire multiplexing. In: 30th IEEE International System-on-Chip Conference (SOCC). IEEE, Munich, pp 149–152

  7. Dally WJ, Towles BP (2003) Principles and practices of interconnection networks. Elsevier, San Francisco

    Google Scholar 

  8. Benini L, Micheli GD (2002) Topology-based design methodology for networks-on-chip applications. Computer 35:70–78

    Article  Google Scholar 

  9. El-Naggar A, Medhat A, Al-Abassy B, Massoud E, Ibrahim H, amd MK, Shalaby A (2017)Performance evaluation of virtual channel ow control in centralized and distributed networks for system on chip. In: 29th International Conference on Microelectronics (ICM). IEEE, Beirut

  10. Micheli GD, Benini L (2006) Networks on chips: technology and tools. Academic Press

    Google Scholar 

  11. Wolkotte P, Holzenspies P, Smit G (2007) Fast, accurate and detailed NoC simulations. In: The IEEE/ACM Int. Symp. on Networks-on-Chip (NOCS). IEEE/ACM, Princeton, pp 323–332

  12. Wang D (2010) An FPGA-based accelerator platform for network-on-chip simulation. Masters thesis, University of Toronto, Toronto, ON, Canada

  13. Jian N, Becker DU, Michelogiannakis G, Balfour J, Towles B, Shaw DE, Kim J, Dally WJ (2013) A detailed and exible cycle-accurate network-on-chip simulator. In: 2013 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS). IEEE, Austin, pp 86–96

  14. Genko N, Atienza D, Micheli GD, Mendias JM, Hermida R, Catthoor F (2005) A complete network-on-chip emulation framework. In: Design, Automation & Test in Europe Conference & Exhibition (DATE), vol 1. IEEE, Munich, pp 246–251

  15. Liu Y, Liu P, Jiang Y, Yang M, Wu K, Wang W, Yao Q (2010) Building a multi-FPGA-based emulation framework to support NoC design and verification. Int J Electron 97:1241–1262

    Article  Google Scholar 

  16. Mentor a Siemens Business, Veloce. https://www.mentor.com/products/fv/emulation-systems/. Accessed 1 Sept 2020

  17. Hassoun S, Kudlugi M, Pryor D, Selvidge C (2005) A transaction-based unified architecture for simulation and emulation. IEEE Trans Very Large Scale Integr (VLSI) Syst 13:278–287

    Article  Google Scholar 

  18. Yun YN, Kim JB, Kim ND, Min B (2011) Beyond UVM for practical SoC verification. In: International SoC Design Conference (ISOCC). IEEE, Jeju, pp 158–162

  19. Eissa AS, Ibrahem MA, Elmohr MA, Zamzam Y, El-Yamany A, El-Ashry S, Khamis M, Shalaby A (2017) A reusable verification environment for NoC platforms using UVM. In: IEEE EU- ROCON 2017-17th International Conference on Smart Technologies. IEEE, pp 239–242

  20. El-Naggar A, Massoud E, Medhat A, Ibrahim H, Al-Abassy B, El-Ashry S, Khamis M, Shalaby A (2016) A narrative of UVM testbench environment for interconnection routers: a practical approach. In: 11th International Design & Test Symposium (IDT). IEEE

  21. Khamis M, El-Ashry S, Shalaby A, AbdElsalam M, El- Kharashi MW (2018) A Configurable RISC-V for NoC-based MPSoCs: a framework for hardware emulation. In: 11th International Workshop on Network on Chip Architectures (NoCArc). IEEE, Fukuoka

  22. Papamichael MK, Hoe JC (2012) Connect: re-examining conventional wisdom for designing NoCs in the context of FPGAs. In: Proceedings of the ACM/SIGDA international symposium on Field Programmable Gate Arrays. ACM/SIGDA, Monterey, pp 37–46

  23. Ost L, Mello A, Palma J, Moraes F, Calazans N (2005) MAIA: a framework for networks on chip generation and verification. In: Proceedings of the 2005 Asia and South Pacific Design Automation Conference. IEEE, Shanghai, pp 49–52

  24. Mello A, Calazans N, Moraes F (2011) Atlas—an environment for NoC generation and evaluation. In: Design, Automation & Test in Europe Conference & Exhibition (DATE), Grenoble, France

  25. Xu J, Wolf W, Henkel J, Chakradhar S, Lv T (2004) A case study in networks-on-chip design for embedded video. In: Design, Automation & Test in Europe Conference & Exhibition (DATE), vol 2. IEEE, Paris, pp 770–775

  26. Cheung N, Parameswaran S, Henkel J (2003) INSIDE: INstruction Selection/Identification & Design Exploration for extensible processors. In: IEEE/ACM International Conference on Computer Aided Design (IC- CAD), San Jose, CA, USA

  27. Monemi A, Tang JW, Palesi M, Marsono MN (2017) ProNoC: a low latency network-on-chip based many-core system-on-chip prototyping platform. Microprocess Microsyst 54:60–74

    Article  Google Scholar 

  28. Busseuil R, Barthe L, Almeida GM, Ost L, Bruguier F, Sassatelli G, Benoit P, Robert M, Torres L (2011) Open-scale: a scalable, open-source NOC-based MPSoC for design space exploration. In: International Conference on Reconfigurable Computing and FPGAs. IEEE, Cancun, pp 357–362

  29. Zhang Q, Zhou M, Chen J, Yang H (2015) A homogeneous many-core x86 processor full system framework based on NoC. In: 4th International Conference on Computer Science and Network Technology (ICCSNT), Harbin, China

  30. Balkind J, McKeown M, Fu Y, Nguyen T, Zhou Y, Lavrov A, Shahrad M, Fuchs A, Payne S, Liang X, Matl M, Wentzlaff D (2016) OpenPiton: an open source manycore research framework. CM SIGPLAN Notices 51:217–232

    Article  Google Scholar 

  31. Skalicky S, Schmidt AG, Lopez S, French M (2015) A unified hardware/ software mpsoc system construction and run-time framework. In: Design, Automation & Test in Europe Conference & Exhibition (DATE). IEEE, Grenoble, pp 301–304

  32. Prasad BMP, Parane K, Talawar B (2020) An efficient FPGA-based network-on-chip simulation framework utilizing the hard blocks. Circuits Syst Signal Process 39:5247–5271

    Article  Google Scholar 

  33. Ruaro M, Caimi LL, Fochi V, Moraes FG (2019) Memphis: a framework for heterogeneous many-core SoCs generation and validation. Des Autom Embed Syst 23:103–122

    Article  Google Scholar 

  34. Bertozzi D, Jalabert A, Murali S, Tamhankar R, Stergiou S, Benini L, Micheli GD (2005) NoC synthesis ow for customized domain specific multiprocessor systems-on-chip. IEEE Trans Parallel Distrib Syst 16:113–129

    Article  Google Scholar 

  35. Goossens K, Dielissen J, Radulescu A (2005) Æthereal network on chip: concepts, architectures, and implementations. IEEE Des Test v22 i5:414–421

    Article  Google Scholar 

  36. Siguenza-Tortosa D, Nurmi J (2002) Vhdl-based simulation environment for proteo NoC. In: High-level design validation and test workshop. IEEE, Cannes

  37. Genko N, Atienza D, Micheli GD, Benini L (2007) Feature-NoC emulation: a tool and design ow for MPSoC. IEEE Circuits Syst Mag 7:42–51

    Article  Google Scholar 

  38. Krasteva YE, Criado F, Torre E, Riesgo T (2008) A fast emulation-based NoC prototyping framework. In: International conference on reconfigurable computing and FPGAs. IEEE, Cancun, pp 211–216

  39. Sievers G, Ax J, Kucza N, Flaßkamp M, Jungeblut T, Kelly W, Porrmann M, Rückert U (2015) Evaluation of interconnect fabrics for an embedded MPSoC in 28 nm FD-SOI. In: IEEE International Symposium on Circuits and Systems, 2015. ISCAS 2015. IEEE, Lisbon, pp 1925–1928

  40. Hübener B, Sievers G, Jungeblut T, Porrmann M, Rückert U (2014) Coreva: a configurable resource-efficient vliw processor architecture. In: 2014 12th IEEE International Conference on Embedded and Ubiquitous Computing (EUC). IEEE, Milano, pp 9–16

  41. Carara EA, Oliveira RPD, Calazans NL, Moraes FG (2009) HeMPS—a framework for NoC-based MPSoC generation. In: IEEE International Symposium on Circuits and Systems, 2009. ISCAS

  42. Plasma core. https://opencores.org/projects/plasma. Accessed 1 Sept 2020

  43. Waterman A, Lee Y, Patterson DA, Asanovic K (2011) The RISC-V instruction set manual: base user-level ISA. In: EECS Department, UC Berkeley, Tech. Rep. UCB/EECS-2011-62, vol 1

  44. Traber A, Stucki S, Zaruba F, Gautschi M, Pullini A, Benini L (2015) Pulpino: a RISC-V based single-core system. In: OpenRISC Conference. ORCONF, Geneva

  45. Elmohr M, Eissa A, Ibrahim M, Khamis M, El-Ashry S, Shalaby A, AbdElsalam M, El Kharashi MW (2018) RVNoC: a framework for generating RISC-V NoC-based MPSoC. In: 26th Euromicro International Conference on Parallel, Distributed and Network-based Processing (PDP). IEEE, Cambridge, pp 617–621

  46. Becker DU (2012) Efficient microarchitecture for network-on-chip routers. Ph.D. thesis, Stanford University, Standford, CA, USA

  47. Khamis M, Said M, Shalaby A (2017) Work-in-progress: a flexible router architecture for 3D NoCs. In: IEEE Real-Time Systems Symposium (RTSS). IEEE, Paris, pp 1025–1040

  48. Khamis M, Zaytoon A, Shalaby A (2015) Evaluating the feasibility of centralized router for network on chip. In: 27th International Conference on Microelectronics (ICM). IEEE, Casablanca, pp 238–241

  49. Glass C, Ni L (1992) The turn model for adaptive routing. In: Computer Architecture, 1992. Proceedings. The 19th Annual International Symposium. IEEE, Gold Coast, pp 278–287

  50. Synopsys corporation, Zebu emulation platform. http://www.synopsys.com/verification/emulation.html/. Accessed 1 Sept 2020

  51. Hatem E, Mostafa K, Amr S, Mohammed K (2017) A novel assertions-based code coverage automatic cad tool. In: IEEE EUROCON 2017, 17th International Conference on Smart Technologies. IEEE, Ohrid, pp 277–281

  52. Roe S, Um U, Koh H, Ahn H, Kim Y, Choi S (2018) UVM acceleration using hardware mulator at pre-silicon stage. In: Proceedings of Design and Verification Conference (DVCON), San Jose, CA

  53. Rao N, Kumar KR, Verma V, Kumar G (2014) Using simulation acceleration to achieve 100X performance improvement with UVM based testbenches. In: Proceedings of Design and Verification Conference (DV- CON), Bangalore, India

  54. El-Ashry S, Khamis M, Ibrahim H, Shalaby A, Abdelsalam M, El-Kharashi MW (2020) On error injection for NoC platforms: a UVM-based generic verification environment. IEEE Trans Comput Aided Des Integr Circuits Syst 39:1137–1150

    Article  Google Scholar 

  55. El-Ashry S, Ibrahim H, Ibrahim M, Khamis M, Shalaby A, Abdelsalam M, El-Kharashi MW (2017)On error injection for NoC platforms: a UVM-based practical case study. In: 10th International Workshop on Network on Chip Architectures (NoCArc), Cambridge, MA, USA

  56. IEEE standard for Universal Verification Methodology language reference manual. In: IEEE Std 1800.2-2017, May 2017

  57. Cota E, Amory Ad, Lubaszewski MS (2012) Reliability, availability and serviceability of networks-on-chip. Springer

    Book  MATH  Google Scholar 

  58. Pande PP, Grecu C, Jones M, Ivanov A, Saleh R (2005) Performance evaluation and design trade-offs for network-on-chip interconnect architectures. IEEE Trans Comput 54:1025–1040

    Article  Google Scholar 

  59. Jerger NE, Peh LS (2009) On-chip networks, synthesis lectures on computer architecture. Morgan & Claypool publishers

    Google Scholar 

  60. Sahu PK, Manna K, Shah N, Chattopadhyay S (2014) Extending Kernighan-Lin partitioning heuristic for application mapping onto network on-chip. J Syst Archit 60:562–578

    Article  Google Scholar 

  61. Nicholas N, Peter S, Ralph B, Sebastian B, Gregory D, Guido T (2007) Minizinc: towards a standard CP modelling language. In: Principles and practice of Constraint Programming—CP, vol 4741. Springer, Berlin, pp 529–543

Download references

Funding

No funding was received to assist with the preparation of this manuscript.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to M. Watheq El-Kharashi.

Ethics declarations

Conflict of interest

The authors have no relevant financial or non-financial interests to disclose.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Springer Nature or its licensor holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Khamis, M., El-Ashry, S., AbdElsalam, M. et al. Emulation and verification framework for MPSoC based on NoC and RISC-V. Des Autom Embed Syst 26, 133–159 (2022). https://doi.org/10.1007/s10617-022-09265-1

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10617-022-09265-1

Keywords

Navigation