A Novel Design of Software System on Chip for Embedded System

More and more transistors are integrated onto a single chip. Embedded systems have powerful cores compared with traditional ones. On-chip SRAM is also integrated to provide faster memory access, which is controlled by software and called SPM. In this paper, a novel software system on chip is proposed to take use of SPM. This system consists of microkernel, optimized scheduling module, and the support for multi-programs in parallel. Software system on chip resides in SPM, which can avoid many main memory accesses, improve the performance and reduce the power consumption. Experimental results show that the system can achieve the design goal.

[1]  Nikil D. Dutt,et al.  Efficient utilization of scratch-pad memory in embedded processor applications , 1997, Proceedings European Design and Test Conference. ED & TC 97.

[2]  Mahmut T. Kandemir,et al.  Shared scratch-pad memory space management , 2006, 7th International Symposium on Quality Electronic Design (ISQED'06).

[3]  Gang Wang,et al.  A Novel Operating System on Chip with Information Security Support for Embedded System , 2009, J. Softw..

[4]  Mahmut T. Kandemir,et al.  Banked scratch-pad memory management for reducing leakage energy consumption , 2004, IEEE/ACM International Conference on Computer Aided Design, 2004. ICCAD-2004..

[5]  Miodrag Potkonjak,et al.  MediaBench: a tool for evaluating and synthesizing multimedia and communications systems , 1997, Proceedings of 30th Annual International Symposium on Microarchitecture.

[6]  Sally A. McKee,et al.  Hitting the memory wall: implications of the obvious , 1995, CARN.

[7]  M.F. Jacome,et al.  Energy-delay efficient data memory subsystems: suitable for embedded media "processing" , 2005, IEEE Signal Processing Magazine.

[8]  Trevor Mudge,et al.  MiBench: A free, commercially representative embedded benchmark suite , 2001 .

[9]  Francesco Poletti,et al.  Communication-aware allocation and scheduling framework for stream-oriented multi-processor systems-on-chip , 2006, Proceedings of the Design Automation & Test in Europe Conference.

[10]  G.E. Moore No exponential is forever: but "Forever" can be delayed! [semiconductor industry] , 2003, 2003 IEEE International Solid-State Circuits Conference, 2003. Digest of Technical Papers. ISSCC..

[11]  Reinhard Wilhelm,et al.  Grand challenges in embedded software , 2007, EMSOFT '07.

[12]  Francky Catthoor,et al.  Reuse analysis of indirectly indexed arrays , 2006, TODE.

[13]  Meng Wang,et al.  Temperature-Aware Data Allocation for Embedded Systems with Cache and Scratchpad Memory , 2015, TECS.

[14]  Bin Xie,et al.  Embedded hard real-time scheduling algorithm based on task's resource requirement , 2010, Int. J. High Perform. Comput. Netw..

[15]  Bernd Burgstaller,et al.  Minimizing bank selection instructions for partitioned memory architecture , 2006, CASES '06.

[16]  Mary Jane Irwin,et al.  Banked scratch-pad memory management for reducing leakage energy consumption , 2004, ICCAD 2004.

[17]  Peter Marwedel,et al.  Assigning program and data objects to scratchpad for energy reduction , 2002, Proceedings 2002 Design, Automation and Test in Europe Conference and Exhibition.

[18]  Peter Marwedel,et al.  An Accurate and Fine Grain Instruction-Level Energy Model Supporting Software Optimizations , 2007 .

[19]  Peter Marwedel,et al.  Embedded system design , 2021, Embedded Systems.

[20]  Rajeev Barua,et al.  Dynamic allocation for scratch-pad memory using compile-time decisions , 2006, TECS.

[21]  Luca Benini,et al.  Energy-aware design of embedded memories: A survey of technologies, architectures, and optimization techniques , 2003, TECS.

[22]  Peter Marwedel,et al.  Influence of memory hierarchies on predictability for time constrained embedded software , 2005, Design, Automation and Test in Europe.

[23]  Jan Reineke,et al.  Ascertaining Uncertainty for Efficient Exact Cache Analysis , 2017, CAV.

[24]  Tianzhou Chen,et al.  Well Utilization of Cache-Aware Scratchpad Concerning the Influence of the Whole Embedded System , 2006, 2006 2nd IEEE/ASME International Conference on Mechatronics and Embedded Systems and Applications.

[25]  P. Machanick Approaches to Addressing the Memory Wall , 2022 .

[26]  Luca Benini,et al.  A post-compiler approach to scratchpad mapping of code , 2004, CASES '04.

[27]  Nikil D. Dutt,et al.  Virtualizing on-chip distributed ScratchPad memories for low power and trusted application execution , 2013, Des. Autom. Embed. Syst..

[28]  Erik Brockmeyer,et al.  Data and memory optimization techniques for embedded systems , 2001, TODE.

[29]  Keith D. Cooper,et al.  Compiler-controlled memory , 1998, ASPLOS VIII.

[30]  Peter Marwedel,et al.  Data partitioning for maximal scratchpad usage , 2003, ASP-DAC '03.

[31]  Mahmut T. Kandemir,et al.  Volatile STT-RAM Scratchpad Design and Data Allocation for Low Energy , 2014, ACM Trans. Archit. Code Optim..

[32]  Margarida F. Jacome,et al.  Xtream-fit: an energy-delay efficient data memory subsystem for embedded media processing , 2005, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[33]  Mahmut T. Kandemir,et al.  Compiler-directed scratch pad memory hierarchy design and management , 2002, DAC '02.

[34]  Meikang Qiu,et al.  Resource allocation robustness in multi-core embedded systems with inaccurate information , 2011, J. Syst. Archit..

[35]  Sumesh Udayakumaran,et al.  Compiler-decided dynamic memory allocation for scratch-pad based embedded systems , 2003, CASES '03.

[36]  Seyed Ghassem Miremadi,et al.  In-Scratchpad Memory Replication , 2015, ACM Trans. Design Autom. Electr. Syst..

[37]  Meikang Qiu,et al.  Three-phase time-aware energy minimization with DVFS and unrolling for Chip Multiprocessors , 2012, J. Syst. Archit..

[38]  Chia-Lin Yang,et al.  Software-controlled cache architecture for energy efficiency , 2005, IEEE Transactions on Circuits and Systems for Video Technology.